fansunited-data-layer 0.2.0 → 0.2.1
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/api/fansunited/constants.d.ts +5 -0
- package/api/fansunited/constants.d.ts.map +1 -0
- package/api/fansunited/football/competition/index.d.ts +30 -0
- package/api/fansunited/football/competition/index.d.ts.map +1 -0
- package/api/fansunited/football/competition/transformer.d.ts +11 -0
- package/api/fansunited/football/competition/transformer.d.ts.map +1 -0
- package/api/fansunited/football/competition/types.d.ts +70 -0
- package/api/fansunited/football/competition/types.d.ts.map +1 -0
- package/api/fansunited/football/competitions/index.d.ts +27 -0
- package/api/fansunited/football/competitions/index.d.ts.map +1 -0
- package/api/fansunited/football/competitions/transformer.d.ts +14 -0
- package/api/fansunited/football/competitions/transformer.d.ts.map +1 -0
- package/api/fansunited/football/competitions/types.d.ts +67 -0
- package/api/fansunited/football/competitions/types.d.ts.map +1 -0
- package/api/fansunited/football/http.d.ts +8 -0
- package/api/fansunited/football/http.d.ts.map +1 -0
- package/api/fansunited/football/index.d.ts +19 -0
- package/api/fansunited/football/index.d.ts.map +1 -0
- package/api/fansunited/football/matches/index.d.ts +61 -0
- package/api/fansunited/football/matches/index.d.ts.map +1 -0
- package/api/fansunited/football/matches/transformer.d.ts +28 -0
- package/api/fansunited/football/matches/transformer.d.ts.map +1 -0
- package/api/fansunited/football/matches/types.d.ts +328 -0
- package/api/fansunited/football/matches/types.d.ts.map +1 -0
- package/api/fansunited/football/players/index.d.ts +30 -0
- package/api/fansunited/football/players/index.d.ts.map +1 -0
- package/api/fansunited/football/players/transformer.d.ts +10 -0
- package/api/fansunited/football/players/transformer.d.ts.map +1 -0
- package/api/fansunited/football/players/types.d.ts +70 -0
- package/api/fansunited/football/players/types.d.ts.map +1 -0
- package/api/fansunited/football/search/index.d.ts +49 -0
- package/api/fansunited/football/search/index.d.ts.map +1 -0
- package/api/fansunited/football/search/transformer.d.ts +10 -0
- package/api/fansunited/football/search/transformer.d.ts.map +1 -0
- package/api/fansunited/football/search/types.d.ts +151 -0
- package/api/fansunited/football/search/types.d.ts.map +1 -0
- package/api/fansunited/football/teams/index.d.ts +30 -0
- package/api/fansunited/football/teams/index.d.ts.map +1 -0
- package/api/fansunited/football/teams/transformer.d.ts +10 -0
- package/api/fansunited/football/teams/transformer.d.ts.map +1 -0
- package/api/fansunited/football/teams/types.d.ts +87 -0
- package/api/fansunited/football/teams/types.d.ts.map +1 -0
- package/api/fansunited/http.d.ts +54 -0
- package/api/fansunited/http.d.ts.map +1 -0
- package/api/fansunited/index.d.ts +10 -0
- package/api/fansunited/index.d.ts.map +1 -0
- package/api/sportal365-sports/constants.d.ts +16 -0
- package/api/sportal365-sports/constants.d.ts.map +1 -0
- package/api/sportal365-sports/football/competitions/competition.types.d.ts +148 -0
- package/api/sportal365-sports/football/competitions/competition.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/competitions/index.d.ts +54 -0
- package/api/sportal365-sports/football/competitions/index.d.ts.map +1 -0
- package/api/sportal365-sports/football/competitions/utils.d.ts +14 -0
- package/api/sportal365-sports/football/competitions/utils.d.ts.map +1 -0
- package/api/sportal365-sports/football/http.d.ts +8 -0
- package/api/sportal365-sports/football/http.d.ts.map +1 -0
- package/api/sportal365-sports/football/index.d.ts +19 -0
- package/api/sportal365-sports/football/index.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/index.d.ts +151 -0
- package/api/sportal365-sports/football/matches/index.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/transformers/commentary.d.ts +12 -0
- package/api/sportal365-sports/football/matches/transformers/commentary.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/transformers/index.d.ts +10 -0
- package/api/sportal365-sports/football/matches/transformers/index.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/transformers/lineup.d.ts +11 -0
- package/api/sportal365-sports/football/matches/transformers/lineup.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/transformers/match-event.d.ts +12 -0
- package/api/sportal365-sports/football/matches/transformers/match-event.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/transformers/match.d.ts +11 -0
- package/api/sportal365-sports/football/matches/transformers/match.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/transformers/odds.d.ts +11 -0
- package/api/sportal365-sports/football/matches/transformers/odds.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/transformers/statistics.d.ts +11 -0
- package/api/sportal365-sports/football/matches/transformers/statistics.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/types/commentary.types.d.ts +27 -0
- package/api/sportal365-sports/football/matches/types/commentary.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/types/event.types.d.ts +19 -0
- package/api/sportal365-sports/football/matches/types/event.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/types/index.d.ts +16 -0
- package/api/sportal365-sports/football/matches/types/index.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/types/lineup.types.d.ts +80 -0
- package/api/sportal365-sports/football/matches/types/lineup.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/types/match.types.d.ts +47 -0
- package/api/sportal365-sports/football/matches/types/match.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/types/minute.types.d.ts +8 -0
- package/api/sportal365-sports/football/matches/types/minute.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/types/odds.types.d.ts +80 -0
- package/api/sportal365-sports/football/matches/types/odds.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/types/option.types.d.ts +129 -0
- package/api/sportal365-sports/football/matches/types/option.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/types/referee.types.d.ts +13 -0
- package/api/sportal365-sports/football/matches/types/referee.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/types/statistics.types.d.ts +45 -0
- package/api/sportal365-sports/football/matches/types/statistics.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/types/status.types.d.ts +13 -0
- package/api/sportal365-sports/football/matches/types/status.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/types/team.types.d.ts +17 -0
- package/api/sportal365-sports/football/matches/types/team.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/matches/types/winner.types.d.ts +15 -0
- package/api/sportal365-sports/football/matches/types/winner.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/search/index.d.ts +45 -0
- package/api/sportal365-sports/football/search/index.d.ts.map +1 -0
- package/api/sportal365-sports/football/search/search.transformer.d.ts +10 -0
- package/api/sportal365-sports/football/search/search.transformer.d.ts.map +1 -0
- package/api/sportal365-sports/football/search/search.types.d.ts +147 -0
- package/api/sportal365-sports/football/search/search.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/standings/index.d.ts +43 -0
- package/api/sportal365-sports/football/standings/index.d.ts.map +1 -0
- package/api/sportal365-sports/football/standings/standing.transformer.d.ts +15 -0
- package/api/sportal365-sports/football/standings/standing.transformer.d.ts.map +1 -0
- package/api/sportal365-sports/football/standings/standing.types.d.ts +73 -0
- package/api/sportal365-sports/football/standings/standing.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/statistics/index.d.ts +42 -0
- package/api/sportal365-sports/football/statistics/index.d.ts.map +1 -0
- package/api/sportal365-sports/football/statistics/player-season.transformer.d.ts +11 -0
- package/api/sportal365-sports/football/statistics/player-season.transformer.d.ts.map +1 -0
- package/api/sportal365-sports/football/statistics/player-season.types.d.ts +84 -0
- package/api/sportal365-sports/football/statistics/player-season.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/teams/index.d.ts +53 -0
- package/api/sportal365-sports/football/teams/index.d.ts.map +1 -0
- package/api/sportal365-sports/football/teams/squad.types.d.ts +63 -0
- package/api/sportal365-sports/football/teams/squad.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/teams/team.types.d.ts +58 -0
- package/api/sportal365-sports/football/teams/team.types.d.ts.map +1 -0
- package/api/sportal365-sports/football/teams/utils.d.ts +24 -0
- package/api/sportal365-sports/football/teams/utils.d.ts.map +1 -0
- package/api/sportal365-sports/http.d.ts +59 -0
- package/api/sportal365-sports/http.d.ts.map +1 -0
- package/api/sportal365-sports/index.d.ts +14 -0
- package/api/sportal365-sports/index.d.ts.map +1 -0
- package/api/sportal365-sports/search/http.d.ts +8 -0
- package/api/sportal365-sports/search/http.d.ts.map +1 -0
- package/api/sportal365-sports/search/index.d.ts +43 -0
- package/api/sportal365-sports/search/index.d.ts.map +1 -0
- package/api/sportal365-sports/search/search.transformer.d.ts +10 -0
- package/api/sportal365-sports/search/search.transformer.d.ts.map +1 -0
- package/api/sportal365-sports/search/search.types.d.ts +209 -0
- package/api/sportal365-sports/search/search.types.d.ts.map +1 -0
- package/api/sportal365-sports/shared/index.d.ts +6 -0
- package/api/sportal365-sports/shared/index.d.ts.map +1 -0
- package/api/sportal365-sports/shared/providerRef.helper.d.ts +79 -0
- package/api/sportal365-sports/shared/providerRef.helper.d.ts.map +1 -0
- package/api/sportal365-sports/shared/types.d.ts +189 -0
- package/api/sportal365-sports/shared/types.d.ts.map +1 -0
- package/api/sportal365-sports/statistics/http.d.ts +8 -0
- package/api/sportal365-sports/statistics/http.d.ts.map +1 -0
- package/api/sportal365-sports/statistics/index.d.ts +55 -0
- package/api/sportal365-sports/statistics/index.d.ts.map +1 -0
- package/api/sportal365-sports/statistics/team-stats.transformer.d.ts +14 -0
- package/api/sportal365-sports/statistics/team-stats.transformer.d.ts.map +1 -0
- package/api/sportal365-sports/statistics/team-stats.types.d.ts +45 -0
- package/api/sportal365-sports/statistics/team-stats.types.d.ts.map +1 -0
- package/client.cjs +8 -0
- package/client.d.ts +20 -0
- package/client.d.ts.map +1 -0
- package/client.js +12065 -0
- package/config/index.d.ts +31 -0
- package/config/index.d.ts.map +1 -0
- package/config/types.d.ts +36 -0
- package/config/types.d.ts.map +1 -0
- package/fansunited-data-layer.cjs +1 -0
- package/fansunited-data-layer.js +1739 -0
- package/helpers/competition.helpers.d.ts +22 -0
- package/helpers/competition.helpers.d.ts.map +1 -0
- package/helpers/index.d.ts +7 -0
- package/helpers/index.d.ts.map +1 -0
- package/helpers/team.helpers.d.ts +289 -0
- package/helpers/team.helpers.d.ts.map +1 -0
- package/index-Cogo-Kkd.cjs +1 -0
- package/index-D7T2Yy11.js +1170 -0
- package/index.d.ts +39 -0
- package/index.d.ts.map +1 -0
- package/package.json +12 -15
- package/providers/competition/hooks/index.d.ts +6 -0
- package/providers/competition/hooks/index.d.ts.map +1 -0
- package/providers/competition/hooks/useCompetitionStats.d.ts +8 -0
- package/providers/competition/hooks/useCompetitionStats.d.ts.map +1 -0
- package/providers/competition/hooks/useGoalDistribution.d.ts +11 -0
- package/providers/competition/hooks/useGoalDistribution.d.ts.map +1 -0
- package/providers/competition/hooks/useMatchHelpers.d.ts +16 -0
- package/providers/competition/hooks/useMatchHelpers.d.ts.map +1 -0
- package/providers/competition/hooks/useStandingsCalculations.d.ts +18 -0
- package/providers/competition/hooks/useStandingsCalculations.d.ts.map +1 -0
- package/providers/competition/hooks/useStandingsHelpers.d.ts +23 -0
- package/providers/competition/hooks/useStandingsHelpers.d.ts.map +1 -0
- package/providers/competition/hooks/useTeamPosition.d.ts +8 -0
- package/providers/competition/hooks/useTeamPosition.d.ts.map +1 -0
- package/providers/competition/hooks/useTeamResultsTable.d.ts +9 -0
- package/providers/competition/hooks/useTeamResultsTable.d.ts.map +1 -0
- package/providers/competition/utils/competitionStats.d.ts +42 -0
- package/providers/competition/utils/competitionStats.d.ts.map +1 -0
- package/providers/competition/utils/goalDistribution.d.ts +41 -0
- package/providers/competition/utils/goalDistribution.d.ts.map +1 -0
- package/providers/competition/utils/index.d.ts +6 -0
- package/providers/competition/utils/index.d.ts.map +1 -0
- package/providers/competition/utils/standingsCalculations.d.ts +24 -0
- package/providers/competition/utils/standingsCalculations.d.ts.map +1 -0
- package/providers/competition.context.d.ts +8 -0
- package/providers/competition.context.d.ts.map +1 -0
- package/providers/competition.provider.d.ts +3 -0
- package/providers/competition.provider.d.ts.map +1 -0
- package/providers/competition.types.d.ts +118 -0
- package/providers/competition.types.d.ts.map +1 -0
- package/providers/fansunited-config.context.d.ts +6 -0
- package/providers/fansunited-config.context.d.ts.map +1 -0
- package/providers/fansunited-config.hooks.d.ts +19 -0
- package/providers/fansunited-config.hooks.d.ts.map +1 -0
- package/providers/fansunited-config.provider.d.ts +44 -0
- package/providers/fansunited-config.provider.d.ts.map +1 -0
- package/providers/fansunited-config.types.d.ts +48 -0
- package/providers/fansunited-config.types.d.ts.map +1 -0
- package/providers/fansunited-sdk.hook.d.ts +40 -0
- package/providers/fansunited-sdk.hook.d.ts.map +1 -0
- package/providers/index.d.ts +20 -0
- package/providers/index.d.ts.map +1 -0
- package/providers/match/hooks/useEventHelpers.d.ts +12 -0
- package/providers/match/hooks/useEventHelpers.d.ts.map +1 -0
- package/providers/match/hooks/useHeadToHeadHelpers.d.ts +13 -0
- package/providers/match/hooks/useHeadToHeadHelpers.d.ts.map +1 -0
- package/providers/match/hooks/useLineupHelpers.d.ts +13 -0
- package/providers/match/hooks/useLineupHelpers.d.ts.map +1 -0
- package/providers/match/hooks/useMatchStandingsCalculations.d.ts +20 -0
- package/providers/match/hooks/useMatchStandingsCalculations.d.ts.map +1 -0
- package/providers/match/hooks/useMatchStatus.d.ts +12 -0
- package/providers/match/hooks/useMatchStatus.d.ts.map +1 -0
- package/providers/match/hooks/useOddsHelpers.d.ts +10 -0
- package/providers/match/hooks/useOddsHelpers.d.ts.map +1 -0
- package/providers/match/hooks/useScoreHelpers.d.ts +16 -0
- package/providers/match/hooks/useScoreHelpers.d.ts.map +1 -0
- package/providers/match/hooks/useStandingsHelpers.d.ts +22 -0
- package/providers/match/hooks/useStandingsHelpers.d.ts.map +1 -0
- package/providers/match/hooks/useStatisticsHelpers.d.ts +13 -0
- package/providers/match/hooks/useStatisticsHelpers.d.ts.map +1 -0
- package/providers/match/hooks/useTeamHelpers.d.ts +11 -0
- package/providers/match/hooks/useTeamHelpers.d.ts.map +1 -0
- package/providers/match/hooks/useTeamStatsHelpers.d.ts +12 -0
- package/providers/match/hooks/useTeamStatsHelpers.d.ts.map +1 -0
- package/providers/match.context.d.ts +8 -0
- package/providers/match.context.d.ts.map +1 -0
- package/providers/match.provider.d.ts +3 -0
- package/providers/match.provider.d.ts.map +1 -0
- package/providers/match.types.d.ts +151 -0
- package/providers/match.types.d.ts.map +1 -0
- package/providers/team/hooks/useFormStats.d.ts +49 -0
- package/providers/team/hooks/useFormStats.d.ts.map +1 -0
- package/providers/team/hooks/useMatchHelpers.d.ts +12 -0
- package/providers/team/hooks/useMatchHelpers.d.ts.map +1 -0
- package/providers/team/hooks/useSquadHelpers.d.ts +17 -0
- package/providers/team/hooks/useSquadHelpers.d.ts.map +1 -0
- package/providers/team.context.d.ts +8 -0
- package/providers/team.context.d.ts.map +1 -0
- package/providers/team.provider.d.ts +3 -0
- package/providers/team.provider.d.ts.map +1 -0
- package/providers/team.types.d.ts +68 -0
- package/providers/team.types.d.ts.map +1 -0
- package/types/canonical/base.types.d.ts +366 -0
- package/types/canonical/base.types.d.ts.map +1 -0
- package/types/canonical/commentary.types.d.ts +42 -0
- package/types/canonical/commentary.types.d.ts.map +1 -0
- package/types/canonical/event.types.d.ts +31 -0
- package/types/canonical/event.types.d.ts.map +1 -0
- package/types/canonical/index.d.ts +17 -0
- package/types/canonical/index.d.ts.map +1 -0
- package/types/canonical/lineup.types.d.ts +33 -0
- package/types/canonical/lineup.types.d.ts.map +1 -0
- package/types/canonical/match.types.d.ts +153 -0
- package/types/canonical/match.types.d.ts.map +1 -0
- package/types/canonical/odds.types.d.ts +73 -0
- package/types/canonical/odds.types.d.ts.map +1 -0
- package/types/canonical/search.types.d.ts +101 -0
- package/types/canonical/search.types.d.ts.map +1 -0
- package/types/canonical/sports-search.types.d.ts +151 -0
- package/types/canonical/sports-search.types.d.ts.map +1 -0
- package/types/canonical/squad.types.d.ts +30 -0
- package/types/canonical/squad.types.d.ts.map +1 -0
- package/types/canonical/standing.types.d.ts +85 -0
- package/types/canonical/standing.types.d.ts.map +1 -0
- package/types/canonical/statistics.types.d.ts +81 -0
- package/types/canonical/statistics.types.d.ts.map +1 -0
- package/types/index.d.ts +10 -0
- package/types/index.d.ts.map +1 -0
- package/utilities/stats/core/helpers.d.ts +65 -0
- package/utilities/stats/core/helpers.d.ts.map +1 -0
- package/utilities/stats/core/index.d.ts +7 -0
- package/utilities/stats/core/index.d.ts.map +1 -0
- package/utilities/stats/core/types.d.ts +39 -0
- package/utilities/stats/core/types.d.ts.map +1 -0
- package/utilities/stats/index.d.ts +27 -0
- package/utilities/stats/index.d.ts.map +1 -0
- package/utilities/stats/match/headToHead.d.ts +73 -0
- package/utilities/stats/match/headToHead.d.ts.map +1 -0
- package/utilities/stats/match/homeVsAway.d.ts +30 -0
- package/utilities/stats/match/homeVsAway.d.ts.map +1 -0
- package/utilities/stats/match/index.d.ts +8 -0
- package/utilities/stats/match/index.d.ts.map +1 -0
- package/utilities/stats/match/overUnder.d.ts +59 -0
- package/utilities/stats/match/overUnder.d.ts.map +1 -0
- package/utilities/stats/match/result.d.ts +13 -0
- package/utilities/stats/match/result.d.ts.map +1 -0
- package/utilities/stats/team/commonOpponents.d.ts +28 -0
- package/utilities/stats/team/commonOpponents.d.ts.map +1 -0
- package/utilities/stats/team/goalStats.d.ts +42 -0
- package/utilities/stats/team/goalStats.d.ts.map +1 -0
- package/utilities/stats/team/index.d.ts +7 -0
- package/utilities/stats/team/index.d.ts.map +1 -0
- package/utilities/stats/team/streaks.d.ts +48 -0
- package/utilities/stats/team/streaks.d.ts.map +1 -0
- package/vite.svg +1 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import type { DataLayerConfig } from "../config";
|
|
3
|
+
import type { EnvironmentType, LangType, IdSchemaType, ErrorHandlingModeType, OddClientConfig, CookieTokenType } from "fansunited-sdk-esm/Core/Configurator/Types/ConfiguratorTypes";
|
|
4
|
+
import type { FansUnitedAuthInterface } from "fansunited-sdk-esm/Core/Configurator/Models/FansUnitedAuthInterface";
|
|
5
|
+
/**
|
|
6
|
+
* FansUnited SDK configuration
|
|
7
|
+
* Configuration for the FansUnited JavaScript SDK
|
|
8
|
+
*/
|
|
9
|
+
export interface FansUnitedSDKConfig {
|
|
10
|
+
/** API key for FansUnited services (required) */
|
|
11
|
+
apiKey: string;
|
|
12
|
+
/** Client ID for FansUnited services (required) */
|
|
13
|
+
clientId: string;
|
|
14
|
+
/** Environment to use (default: "prod") */
|
|
15
|
+
environment?: EnvironmentType;
|
|
16
|
+
/** Language code (default: "en") */
|
|
17
|
+
lang?: LangType;
|
|
18
|
+
/** ID schema for entity mapping */
|
|
19
|
+
idSchema?: IdSchemaType;
|
|
20
|
+
/** Error handling mode */
|
|
21
|
+
errorHandlingMode?: ErrorHandlingModeType;
|
|
22
|
+
/** Odd client configuration for odds namespace */
|
|
23
|
+
oddClient?: OddClientConfig;
|
|
24
|
+
/** Cookie token configuration for server-side authentication */
|
|
25
|
+
cookieToken?: CookieTokenType;
|
|
26
|
+
/** Authentication provider for client-side authentication */
|
|
27
|
+
authProvider?: FansUnitedAuthInterface;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* FansUnited configuration type
|
|
31
|
+
* Contains all configuration for FansUnited services
|
|
32
|
+
*/
|
|
33
|
+
export interface FansUnitedConfig {
|
|
34
|
+
/** Data layer API configuration */
|
|
35
|
+
dataLayer: DataLayerConfig;
|
|
36
|
+
/** FansUnited SDK configuration (optional - only needed if using SDK features) */
|
|
37
|
+
sdk?: FansUnitedSDKConfig;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Props for FansUnitedConfigProvider
|
|
41
|
+
*/
|
|
42
|
+
export interface FansUnitedConfigProviderProps {
|
|
43
|
+
/** Configuration object */
|
|
44
|
+
config: FansUnitedConfig;
|
|
45
|
+
/** Child components */
|
|
46
|
+
children: ReactNode;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=fansunited-config.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fansunited-config.types.d.ts","sourceRoot":"","sources":["../../src/lib/providers/fansunited-config.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EACR,eAAe,EACf,QAAQ,EACR,YAAY,EACZ,qBAAqB,EACrB,eAAe,EACf,eAAe,EAClB,MAAM,8DAA8D,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qEAAqE,CAAC;AAEnH;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAChC,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,QAAQ,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,oCAAoC;IACpC,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,mCAAmC;IACnC,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,0BAA0B;IAC1B,iBAAiB,CAAC,EAAE,qBAAqB,CAAC;IAC1C,kDAAkD;IAClD,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,gEAAgE;IAChE,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,6DAA6D;IAC7D,YAAY,CAAC,EAAE,uBAAuB,CAAC;CAC1C;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC7B,mCAAmC;IACnC,SAAS,EAAE,eAAe,CAAC;IAC3B,kFAAkF;IAClF,GAAG,CAAC,EAAE,mBAAmB,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC1C,2BAA2B;IAC3B,MAAM,EAAE,gBAAgB,CAAC;IACzB,uBAAuB;IACvB,QAAQ,EAAE,SAAS,CAAC;CACvB"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type FansUnitedSDKModel from "fansunited-sdk-esm/Core/Global/Models/FansUnitedSDKModel";
|
|
2
|
+
/**
|
|
3
|
+
* Hook to access the FansUnited SDK instance
|
|
4
|
+
*
|
|
5
|
+
* This hook initializes and returns a shared SDK instance based on the configuration
|
|
6
|
+
* provided to FansUnitedConfigProvider. The SDK instance is memoized and shared
|
|
7
|
+
* across all components that use this hook.
|
|
8
|
+
*
|
|
9
|
+
* **Client-side only**: Returns null on server-side rendering.
|
|
10
|
+
*
|
|
11
|
+
* @returns The FansUnited SDK instance or null if:
|
|
12
|
+
* - Running on server-side
|
|
13
|
+
* - SDK configuration is not provided
|
|
14
|
+
* - SDK configuration is invalid
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```typescript
|
|
18
|
+
* "use client";
|
|
19
|
+
*
|
|
20
|
+
* import { useFansUnitedSDK } from 'fansunited-data-layer/client';
|
|
21
|
+
*
|
|
22
|
+
* function MyComponent() {
|
|
23
|
+
* const sdk = useFansUnitedSDK();
|
|
24
|
+
*
|
|
25
|
+
* if (!sdk) {
|
|
26
|
+
* return <div>SDK not available</div>;
|
|
27
|
+
* }
|
|
28
|
+
*
|
|
29
|
+
* // Use the SDK
|
|
30
|
+
* const handleGetProfile = async () => {
|
|
31
|
+
* const profile = await sdk.profile.getOwn().getInfo();
|
|
32
|
+
* console.log(profile);
|
|
33
|
+
* };
|
|
34
|
+
*
|
|
35
|
+
* return <button onClick={handleGetProfile}>Get Profile</button>;
|
|
36
|
+
* }
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
export declare function useFansUnitedSDK(): FansUnitedSDKModel | null;
|
|
40
|
+
//# sourceMappingURL=fansunited-sdk.hook.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fansunited-sdk.hook.d.ts","sourceRoot":"","sources":["../../src/lib/providers/fansunited-sdk.hook.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,kBAAkB,MAAM,0DAA0D,CAAC;AAI/F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,gBAAgB,IAAI,kBAAkB,GAAG,IAAI,CAyD5D"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Providers - React Context providers for data management
|
|
3
|
+
*/
|
|
4
|
+
export { FansUnitedConfigProvider } from "./fansunited-config.provider";
|
|
5
|
+
export { useFansUnitedConfig, useDataLayerConfig } from "./fansunited-config.hooks";
|
|
6
|
+
export { useFansUnitedSDK } from "./fansunited-sdk.hook";
|
|
7
|
+
export type { FansUnitedConfig, FansUnitedConfigProviderProps, FansUnitedSDKConfig } from "./fansunited-config.types";
|
|
8
|
+
export type { EnvironmentType, LangType, IdSchemaType, ErrorHandlingModeType, OddClientConfig, CookieTokenType, } from "fansunited-sdk-esm/Core/Configurator/Types/ConfiguratorTypes";
|
|
9
|
+
export type { FansUnitedAuthInterface } from "fansunited-sdk-esm/Core/Configurator/Models/FansUnitedAuthInterface";
|
|
10
|
+
export { CompetitionProvider } from "./competition.provider";
|
|
11
|
+
export { useCompetition, CompetitionContext } from "./competition.context";
|
|
12
|
+
export type { CompetitionConfig, Season, CompetitionContextValue, CompetitionProviderProps } from "./competition.types";
|
|
13
|
+
export { TeamProvider } from "./team.provider";
|
|
14
|
+
export { useTeam, TeamContext } from "./team.context";
|
|
15
|
+
export type { TeamConfig, TeamContextValue, TeamProviderProps } from "./team.types";
|
|
16
|
+
export type { TeamFormStats } from "./team/hooks/useFormStats";
|
|
17
|
+
export { MatchProvider } from "./match.provider";
|
|
18
|
+
export { useMatch, MatchContext } from "./match.context";
|
|
19
|
+
export type { MatchConfig, MatchContextValue, MatchProviderProps, HomeAwayFilter } from "./match.types";
|
|
20
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/providers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAGtH,YAAY,EACR,eAAe,EACf,QAAQ,EACR,YAAY,EACZ,qBAAqB,EACrB,eAAe,EACf,eAAe,GAClB,MAAM,8DAA8D,CAAC;AACtE,YAAY,EAAE,uBAAuB,EAAE,MAAM,qEAAqE,CAAC;AAEnH,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3E,YAAY,EAAE,iBAAiB,EAAE,MAAM,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAExH,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACtD,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACpF,YAAY,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACzD,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { FUSportsMatch, FUSportsMatchEvent } from "../../../types/canonical";
|
|
2
|
+
/**
|
|
3
|
+
* Hook for event-related helper functions
|
|
4
|
+
*/
|
|
5
|
+
export declare function useEventHelpers(match: FUSportsMatch | undefined, events?: FUSportsMatchEvent[]): {
|
|
6
|
+
getGoals: () => FUSportsMatchEvent[];
|
|
7
|
+
getCards: () => FUSportsMatchEvent[];
|
|
8
|
+
getSubstitutions: () => FUSportsMatchEvent[];
|
|
9
|
+
getEventsByTeam: (teamId: string) => FUSportsMatchEvent[];
|
|
10
|
+
getEventsByPeriod: (period: string) => FUSportsMatchEvent[];
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=useEventHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useEventHelpers.d.ts","sourceRoot":"","sources":["../../../../src/lib/providers/match/hooks/useEventHelpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAElF;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,EAAE,MAAM,CAAC,EAAE,kBAAkB,EAAE;;;;8BAyB9E,MAAM;gCAYN,MAAM;EAgBtB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { FUSportsMatch } from "../../../types/canonical";
|
|
2
|
+
/**
|
|
3
|
+
* Hook for head-to-head helper functions
|
|
4
|
+
*/
|
|
5
|
+
export declare function useHeadToHeadHelpers(match: FUSportsMatch | undefined, headToHeadMatches?: FUSportsMatch[]): {
|
|
6
|
+
getHeadToHeadStats: () => {
|
|
7
|
+
homeWins: number;
|
|
8
|
+
awayWins: number;
|
|
9
|
+
draws: number;
|
|
10
|
+
};
|
|
11
|
+
getLastMeetings: (limit?: number) => FUSportsMatch[];
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=useHeadToHeadHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useHeadToHeadHelpers.d.ts","sourceRoot":"","sources":["../../../../src/lib/providers/match/hooks/useHeadToHeadHelpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,EAAE,iBAAiB,CAAC,EAAE,aAAa,EAAE;8BAC3D;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;8BA2CpF,MAAM,KAAO,aAAa,EAAE;EAkB3C"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { FUSportsMatch, FUSportsMatchLineups, FUSportsCompetitorLineup, FUSportsLineupMember } from "../../../types/canonical";
|
|
2
|
+
/**
|
|
3
|
+
* Hook for lineup-related helper functions
|
|
4
|
+
*/
|
|
5
|
+
export declare function useLineupHelpers(match: FUSportsMatch | undefined, lineups?: FUSportsMatchLineups): {
|
|
6
|
+
getHomeLineup: () => FUSportsCompetitorLineup | undefined;
|
|
7
|
+
getAwayLineup: () => FUSportsCompetitorLineup | undefined;
|
|
8
|
+
getTeamLineup: (teamId: string) => FUSportsCompetitorLineup | undefined;
|
|
9
|
+
getStartingEleven: (teamId: string) => FUSportsLineupMember[];
|
|
10
|
+
getSubstitutes: (teamId: string) => FUSportsLineupMember[];
|
|
11
|
+
getFormation: (teamId: string) => string | undefined;
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=useLineupHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useLineupHelpers.d.ts","sourceRoot":"","sources":["../../../../src/lib/providers/match/hooks/useLineupHelpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACR,aAAa,EACb,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACvB,MAAM,0BAA0B,CAAC;AAElC;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,oBAAoB;yBACvD,wBAAwB,GAAG,SAAS;yBAIpC,wBAAwB,GAAG,SAAS;4BAK7D,MAAM,KAAG,wBAAwB,GAAG,SAAS;gCAU7C,MAAM,KAAG,oBAAoB,EAAE;6BAQ/B,MAAM,KAAG,oBAAoB,EAAE;2BAQ/B,MAAM,KAAG,MAAM,GAAG,SAAS;EAkB3C"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { FUSportsStandings, FUSportsMatch } from "../../../types/canonical";
|
|
2
|
+
/**
|
|
3
|
+
* Hook to calculate form, offence, and defence tables from context matches
|
|
4
|
+
* Provides overall, home, and away variants for all calculations
|
|
5
|
+
* Uses ALL matches from contextMatches for accurate calculations
|
|
6
|
+
*/
|
|
7
|
+
export declare function useMatchStandingsCalculations(standings?: FUSportsStandings, contextMatches?: FUSportsMatch[]): {
|
|
8
|
+
getFormTable: (matchCount?: number) => FUSportsStandings | null;
|
|
9
|
+
getHomeFormTable: (matchCount?: number) => FUSportsStandings | null;
|
|
10
|
+
getAwayFormTable: (matchCount?: number) => FUSportsStandings | null;
|
|
11
|
+
getOffenceStandings: () => FUSportsStandings | null;
|
|
12
|
+
getFormOffenceStandings: (matchCount?: number) => FUSportsStandings | null;
|
|
13
|
+
getHomeOffenceStandings: () => FUSportsStandings | null;
|
|
14
|
+
getAwayOffenceStandings: () => FUSportsStandings | null;
|
|
15
|
+
getDefenceStandings: () => FUSportsStandings | null;
|
|
16
|
+
getFormDefenceStandings: (matchCount?: number) => FUSportsStandings | null;
|
|
17
|
+
getHomeDefenceStandings: () => FUSportsStandings | null;
|
|
18
|
+
getAwayDefenceStandings: () => FUSportsStandings | null;
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=useMatchStandingsCalculations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useMatchStandingsCalculations.d.ts","sourceRoot":"","sources":["../../../../src/lib/providers/match/hooks/useMatchStandingsCalculations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAyB,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAwYxG;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,SAAS,CAAC,EAAE,iBAAiB,EAAE,cAAc,CAAC,EAAE,aAAa,EAAE;gCAMjF,MAAM,KAAO,iBAAiB,GAAG,IAAI;oCAOrC,MAAM,KAAO,iBAAiB,GAAG,IAAI;oCAOrC,MAAM,KAAO,iBAAiB,GAAG,IAAI;+BAW9C,iBAAiB,GAAG,IAAI;2CAOf,MAAM,KAAO,iBAAiB,GAAG,IAAI;mCAO9C,iBAAiB,GAAG,IAAI;mCAOxB,iBAAiB,GAAG,IAAI;+BAWxB,iBAAiB,GAAG,IAAI;2CAOf,MAAM,KAAO,iBAAiB,GAAG,IAAI;mCAO9C,iBAAiB,GAAG,IAAI;mCAOxB,iBAAiB,GAAG,IAAI;EAwB1C"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { FUSportsMatch } from "../../../types/canonical";
|
|
2
|
+
/**
|
|
3
|
+
* Hook for match status-related helper functions
|
|
4
|
+
*/
|
|
5
|
+
export declare function useMatchStatus(match: FUSportsMatch | undefined): {
|
|
6
|
+
isLive: () => boolean;
|
|
7
|
+
isFinished: () => boolean;
|
|
8
|
+
isUpcoming: () => boolean;
|
|
9
|
+
getMatchMinute: () => number | undefined;
|
|
10
|
+
getMatchPeriod: () => string | undefined;
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=useMatchStatus.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useMatchStatus.d.ts","sourceRoot":"","sources":["../../../../src/lib/providers/match/hooks/useMatchStatus.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS;;;;;;EAoC9D"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { FUSportsMatchOdds, FUSportsOddMarket, FUSportsBettingOperatorOdds } from "../../../types/canonical";
|
|
2
|
+
/**
|
|
3
|
+
* Hook for odds-related helper functions
|
|
4
|
+
*/
|
|
5
|
+
export declare function useOddsHelpers(odds?: FUSportsMatchOdds): {
|
|
6
|
+
getOddsByMarket: (marketType: string) => FUSportsOddMarket[];
|
|
7
|
+
getOddsByOperator: (operatorId: string) => FUSportsBettingOperatorOdds | undefined;
|
|
8
|
+
getBestOdds: (marketType: string, selection: string) => number | undefined;
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=useOddsHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useOddsHelpers.d.ts","sourceRoot":"","sources":["../../../../src/lib/providers/match/hooks/useOddsHelpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAElH;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,CAAC,EAAE,iBAAiB;kCAElC,MAAM,KAAG,iBAAiB,EAAE;oCAkB5B,MAAM,KAAG,2BAA2B,GAAG,SAAS;8BAQhD,MAAM,aAAa,MAAM,KAAG,MAAM,GAAG,SAAS;EA6BlE"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { FUSportsMatch } from "../../../types/canonical";
|
|
2
|
+
/**
|
|
3
|
+
* Hook for score-related helper functions
|
|
4
|
+
*/
|
|
5
|
+
export declare function useScoreHelpers(match: FUSportsMatch | undefined): {
|
|
6
|
+
getScore: () => {
|
|
7
|
+
home: number;
|
|
8
|
+
away: number;
|
|
9
|
+
} | undefined;
|
|
10
|
+
getHalfTimeScore: () => {
|
|
11
|
+
home: number;
|
|
12
|
+
away: number;
|
|
13
|
+
} | undefined;
|
|
14
|
+
getWinner: () => "home" | "away" | "draw" | undefined;
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=useScoreHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useScoreHelpers.d.ts","sourceRoot":"","sources":["../../../../src/lib/providers/match/hooks/useScoreHelpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS;;;;;;;;;qBAmB1B,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS;EAiBzE"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { FUSportsStandings } from "../../../types/canonical";
|
|
2
|
+
/**
|
|
3
|
+
* Hook for basic standings helper functions in match context
|
|
4
|
+
* Simplified version for working with standings data when available
|
|
5
|
+
*/
|
|
6
|
+
export declare function useStandingsHelpers(standings?: FUSportsStandings): {
|
|
7
|
+
getTeamStanding: (teamId: string) => import("../../..").FUSportsStandingEntry | undefined;
|
|
8
|
+
getTeamRank: (teamId: string) => number | undefined;
|
|
9
|
+
getTeamSeasonStats: (teamId: string) => {
|
|
10
|
+
position: number;
|
|
11
|
+
points: number;
|
|
12
|
+
played: number;
|
|
13
|
+
won: number;
|
|
14
|
+
drawn: number;
|
|
15
|
+
lost: number;
|
|
16
|
+
goalsFor: number;
|
|
17
|
+
goalsAgainst: number;
|
|
18
|
+
goalDifference: number;
|
|
19
|
+
} | undefined;
|
|
20
|
+
getTeamStandingForm: (teamId: string) => import("../../..").FUSportsCompetitorForm | undefined;
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=useStandingsHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useStandingsHelpers.d.ts","sourceRoot":"","sources":["../../../../src/lib/providers/match/hooks/useStandingsHelpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAElE;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,CAAC,EAAE,iBAAiB;8BAKhD,MAAM;0BAKN,MAAM;iCAYN,MAAM;;;;;;;;;;;kCAuBN,MAAM;EAgBtB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { FUSportsMatch, FUSportsMatchStatistics, FUSportsCompetitorStatistics, FUSportsStatisticEntry } from "../../../types/canonical";
|
|
2
|
+
/**
|
|
3
|
+
* Hook for statistics-related helper functions
|
|
4
|
+
*/
|
|
5
|
+
export declare function useStatisticsHelpers(match: FUSportsMatch | undefined, statistics?: FUSportsMatchStatistics): {
|
|
6
|
+
getTeamStatistics: (teamId: string) => FUSportsCompetitorStatistics | undefined;
|
|
7
|
+
getStatistic: (teamId: string, key: string) => FUSportsStatisticEntry | undefined;
|
|
8
|
+
getPossession: () => {
|
|
9
|
+
home: number;
|
|
10
|
+
away: number;
|
|
11
|
+
} | undefined;
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=useStatisticsHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useStatisticsHelpers.d.ts","sourceRoot":"","sources":["../../../../src/lib/providers/match/hooks/useStatisticsHelpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACR,aAAa,EACb,uBAAuB,EACvB,4BAA4B,EAC5B,sBAAsB,EACzB,MAAM,0BAA0B,CAAC;AAElC;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,EAAE,UAAU,CAAC,EAAE,uBAAuB;gCAE1F,MAAM,KAAG,4BAA4B,GAAG,SAAS;2BAUjD,MAAM,OAAO,MAAM,KAAG,sBAAsB,GAAG,SAAS;yBAO/B;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS;EAsBnF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { FUSportsMatch, FUSportsCompetitor } from "../../../types/canonical";
|
|
2
|
+
/**
|
|
3
|
+
* Hook for team-related helper functions
|
|
4
|
+
*/
|
|
5
|
+
export declare function useTeamHelpers(match: FUSportsMatch | undefined): {
|
|
6
|
+
getHomeTeam: () => FUSportsCompetitor | undefined;
|
|
7
|
+
getAwayTeam: () => FUSportsCompetitor | undefined;
|
|
8
|
+
getTeamScore: (teamId: string) => number | undefined;
|
|
9
|
+
isHomeTeam: (teamId: string) => boolean;
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=useTeamHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTeamHelpers.d.ts","sourceRoot":"","sources":["../../../../src/lib/providers/match/hooks/useTeamHelpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAElF;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS;uBACvB,kBAAkB,GAAG,SAAS;uBAI9B,kBAAkB,GAAG,SAAS;2BAKrD,MAAM,KAAG,MAAM,GAAG,SAAS;yBAa3B,MAAM,KAAG,OAAO;EAehC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { FUSportsMatch } from "../../../types/canonical";
|
|
2
|
+
import type { HomeAwayFilter } from "../../match.types";
|
|
3
|
+
import type { TeamFormStats } from "../../team/hooks/useFormStats";
|
|
4
|
+
/**
|
|
5
|
+
* Hook that provides team stats calculation helpers
|
|
6
|
+
*/
|
|
7
|
+
export declare function useTeamStatsHelpers(match?: FUSportsMatch, contextMatches?: FUSportsMatch[]): {
|
|
8
|
+
getTeamForm: (teamId: string, homeAway?: HomeAwayFilter, matchCount?: number) => TeamFormStats | null;
|
|
9
|
+
getHomeTeamForm: (homeAway?: HomeAwayFilter, matchCount?: number) => TeamFormStats | null;
|
|
10
|
+
getAwayTeamForm: (homeAway?: HomeAwayFilter, matchCount?: number) => TeamFormStats | null;
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=useTeamStatsHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTeamStatsHelpers.d.ts","sourceRoot":"","sources":["../../../../src/lib/providers/match/hooks/useTeamStatsHelpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAgDnE;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,cAAc,CAAC,EAAE,aAAa,EAAE;0BAYvE,MAAM,aACJ,cAAc,eACZ,MAAM,KACnB,aAAa,GAAG,IAAI;iCAsHY,cAAc,eAAsB,MAAM;iCAU1C,cAAc,eAAsB,MAAM;EAWpF"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { MatchContextValue } from "./match.types";
|
|
2
|
+
export declare const MatchContext: import("react").Context<MatchContextValue | null>;
|
|
3
|
+
/**
|
|
4
|
+
* Hook to access match context
|
|
5
|
+
* Must be used within a MatchProvider
|
|
6
|
+
*/
|
|
7
|
+
export declare function useMatch(): MatchContextValue;
|
|
8
|
+
//# sourceMappingURL=match.context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"match.context.d.ts","sourceRoot":"","sources":["../../src/lib/providers/match.context.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAMvD,eAAO,MAAM,YAAY,mDAAgD,CAAC;AAM1E;;;GAGG;AACH,wBAAgB,QAAQ,IAAI,iBAAiB,CAM5C"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { MatchProviderProps } from "./match.types";
|
|
2
|
+
export declare function MatchProvider({ matchId, match: initialMatch, lineups: initialLineups, statistics: initialStatistics, odds: initialOdds, commentary: initialCommentary, events: initialEvents, headToHeadMatches, standings: initialStandings, contextMatches, config, autoRefresh, refreshInterval, children, }: MatchProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
3
|
+
//# sourceMappingURL=match.provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"match.provider.d.ts","sourceRoot":"","sources":["../../src/lib/providers/match.provider.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAqB,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAwB3E,wBAAgB,aAAa,CAAC,EAC1B,OAAO,EACP,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,cAAc,EACvB,UAAU,EAAE,iBAAiB,EAC7B,IAAI,EAAE,WAAW,EACjB,UAAU,EAAE,iBAAiB,EAC7B,MAAM,EAAE,aAAa,EACrB,iBAAiB,EACjB,SAAS,EAAE,gBAAgB,EAC3B,cAAc,EACd,MAAM,EACN,WAAkB,EAClB,eAAuB,EACvB,QAAQ,GACX,EAAE,kBAAkB,2CA2KpB"}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import type { FUSportsMatch, FUSportsMatchLineups, FUSportsMatchStatistics, FUSportsMatchOdds, FUSportsCommentaryItem, FUSportsMatchEvent, FUSportsCompetitor, FUSportsCompetitorLineup, FUSportsLineupMember, FUSportsCompetitorStatistics, FUSportsStatisticEntry, FUSportsOddMarket, FUSportsBettingOperatorOdds, FUSportsStandings, FUSportsStandingEntry, FUSportsCompetitorForm } from "../types/canonical";
|
|
3
|
+
import type { TeamFormStats } from "./team/hooks/useFormStats";
|
|
4
|
+
/**
|
|
5
|
+
* Home/Away filter type for filtering matches by team location
|
|
6
|
+
*/
|
|
7
|
+
export type HomeAwayFilter = "home" | "away" | "all";
|
|
8
|
+
/**
|
|
9
|
+
* Match branding and display configuration
|
|
10
|
+
*/
|
|
11
|
+
export interface MatchConfig {
|
|
12
|
+
/** Display preferences */
|
|
13
|
+
showOdds?: boolean;
|
|
14
|
+
showLineups?: boolean;
|
|
15
|
+
showStatistics?: boolean;
|
|
16
|
+
showCommentary?: boolean;
|
|
17
|
+
defaultTab?: "overview" | "lineups" | "statistics" | "h2h";
|
|
18
|
+
/** Odds configuration */
|
|
19
|
+
oddClient?: string;
|
|
20
|
+
preferredBookmakers?: string[];
|
|
21
|
+
/** Custom metadata */
|
|
22
|
+
[key: string]: unknown;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Match context value - all data and helper methods
|
|
26
|
+
*/
|
|
27
|
+
export interface MatchContextValue {
|
|
28
|
+
matchId: string;
|
|
29
|
+
match?: FUSportsMatch;
|
|
30
|
+
lineups?: FUSportsMatchLineups;
|
|
31
|
+
statistics?: FUSportsMatchStatistics;
|
|
32
|
+
odds?: FUSportsMatchOdds;
|
|
33
|
+
commentary?: FUSportsCommentaryItem[];
|
|
34
|
+
events?: FUSportsMatchEvent[];
|
|
35
|
+
headToHeadMatches?: FUSportsMatch[];
|
|
36
|
+
standings?: FUSportsStandings;
|
|
37
|
+
contextMatches?: FUSportsMatch[];
|
|
38
|
+
isRefreshing: boolean;
|
|
39
|
+
lastRefreshed?: Date;
|
|
40
|
+
config?: MatchConfig;
|
|
41
|
+
refresh: () => Promise<void>;
|
|
42
|
+
isLive: () => boolean;
|
|
43
|
+
isFinished: () => boolean;
|
|
44
|
+
isUpcoming: () => boolean;
|
|
45
|
+
getMatchMinute: () => number | undefined;
|
|
46
|
+
getMatchPeriod: () => string | undefined;
|
|
47
|
+
getScore: () => {
|
|
48
|
+
home: number;
|
|
49
|
+
away: number;
|
|
50
|
+
} | undefined;
|
|
51
|
+
getHalfTimeScore: () => {
|
|
52
|
+
home: number;
|
|
53
|
+
away: number;
|
|
54
|
+
} | undefined;
|
|
55
|
+
getWinner: () => "home" | "away" | "draw" | undefined;
|
|
56
|
+
getHomeTeam: () => FUSportsCompetitor | undefined;
|
|
57
|
+
getAwayTeam: () => FUSportsCompetitor | undefined;
|
|
58
|
+
getTeamScore: (teamId: string) => number | undefined;
|
|
59
|
+
isHomeTeam: (teamId: string) => boolean;
|
|
60
|
+
getGoals: () => FUSportsMatchEvent[];
|
|
61
|
+
getCards: () => FUSportsMatchEvent[];
|
|
62
|
+
getSubstitutions: () => FUSportsMatchEvent[];
|
|
63
|
+
getEventsByTeam: (teamId: string) => FUSportsMatchEvent[];
|
|
64
|
+
getEventsByPeriod: (period: string) => FUSportsMatchEvent[];
|
|
65
|
+
getHomeLineup: () => FUSportsCompetitorLineup | undefined;
|
|
66
|
+
getAwayLineup: () => FUSportsCompetitorLineup | undefined;
|
|
67
|
+
getTeamLineup: (teamId: string) => FUSportsCompetitorLineup | undefined;
|
|
68
|
+
getStartingEleven: (teamId: string) => FUSportsLineupMember[];
|
|
69
|
+
getSubstitutes: (teamId: string) => FUSportsLineupMember[];
|
|
70
|
+
getFormation: (teamId: string) => string | undefined;
|
|
71
|
+
getTeamStatistics: (teamId: string) => FUSportsCompetitorStatistics | undefined;
|
|
72
|
+
getStatistic: (teamId: string, key: string) => FUSportsStatisticEntry | undefined;
|
|
73
|
+
getPossession: () => {
|
|
74
|
+
home: number;
|
|
75
|
+
away: number;
|
|
76
|
+
} | undefined;
|
|
77
|
+
getOddsByMarket: (marketType: string) => FUSportsOddMarket[];
|
|
78
|
+
getOddsByOperator: (operatorId: string) => FUSportsBettingOperatorOdds | undefined;
|
|
79
|
+
getBestOdds: (marketType: string, selection: string) => number | undefined;
|
|
80
|
+
getHeadToHeadStats: () => {
|
|
81
|
+
homeWins: number;
|
|
82
|
+
awayWins: number;
|
|
83
|
+
draws: number;
|
|
84
|
+
};
|
|
85
|
+
getLastMeetings: (limit?: number) => FUSportsMatch[];
|
|
86
|
+
getTeamForm: (teamId: string, homeAway?: HomeAwayFilter, matchCount?: number) => TeamFormStats | null;
|
|
87
|
+
getHomeTeamForm: (homeAway?: HomeAwayFilter, matchCount?: number) => TeamFormStats | null;
|
|
88
|
+
getAwayTeamForm: (homeAway?: HomeAwayFilter, matchCount?: number) => TeamFormStats | null;
|
|
89
|
+
getTeamStanding: (teamId: string) => FUSportsStandingEntry | undefined;
|
|
90
|
+
getTeamRank: (teamId: string) => number | undefined;
|
|
91
|
+
getTeamSeasonStats: (teamId: string) => {
|
|
92
|
+
position: number;
|
|
93
|
+
points: number;
|
|
94
|
+
played: number;
|
|
95
|
+
won: number;
|
|
96
|
+
drawn: number;
|
|
97
|
+
lost: number;
|
|
98
|
+
goalsFor: number;
|
|
99
|
+
goalsAgainst: number;
|
|
100
|
+
goalDifference: number;
|
|
101
|
+
} | undefined;
|
|
102
|
+
getTeamStandingForm: (teamId: string) => FUSportsCompetitorForm | undefined;
|
|
103
|
+
getFormTable: (matchCount?: number) => FUSportsStandings | null;
|
|
104
|
+
getHomeFormTable: (matchCount?: number) => FUSportsStandings | null;
|
|
105
|
+
getAwayFormTable: (matchCount?: number) => FUSportsStandings | null;
|
|
106
|
+
getOffenceStandings: () => FUSportsStandings | null;
|
|
107
|
+
getFormOffenceStandings: (matchCount?: number) => FUSportsStandings | null;
|
|
108
|
+
getHomeOffenceStandings: () => FUSportsStandings | null;
|
|
109
|
+
getAwayOffenceStandings: () => FUSportsStandings | null;
|
|
110
|
+
getDefenceStandings: () => FUSportsStandings | null;
|
|
111
|
+
getFormDefenceStandings: (matchCount?: number) => FUSportsStandings | null;
|
|
112
|
+
getHomeDefenceStandings: () => FUSportsStandings | null;
|
|
113
|
+
getAwayDefenceStandings: () => FUSportsStandings | null;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Props for the MatchProvider component
|
|
117
|
+
*/
|
|
118
|
+
export interface MatchProviderProps {
|
|
119
|
+
/** Match ID to fetch data for */
|
|
120
|
+
matchId: string;
|
|
121
|
+
/** Initial match data (from SSR) */
|
|
122
|
+
match?: FUSportsMatch;
|
|
123
|
+
/** Initial lineups data (from SSR) */
|
|
124
|
+
lineups?: FUSportsMatchLineups;
|
|
125
|
+
/** Initial statistics data (from SSR) */
|
|
126
|
+
statistics?: FUSportsMatchStatistics;
|
|
127
|
+
/** Initial odds data (from SSR) */
|
|
128
|
+
odds?: FUSportsMatchOdds;
|
|
129
|
+
/** Initial commentary data (from SSR) */
|
|
130
|
+
commentary?: FUSportsCommentaryItem[];
|
|
131
|
+
/** Initial events data (from SSR) */
|
|
132
|
+
events?: FUSportsMatchEvent[];
|
|
133
|
+
/** Head-to-head matches */
|
|
134
|
+
headToHeadMatches?: FUSportsMatch[];
|
|
135
|
+
/** Initial standings data (from SSR) - for league competition format */
|
|
136
|
+
standings?: FUSportsStandings;
|
|
137
|
+
/**
|
|
138
|
+
* Context matches for calculating team stats, form, streaks, etc.
|
|
139
|
+
* Can include matches from one or multiple competitions/seasons.
|
|
140
|
+
* Consumer controls which matches to include.
|
|
141
|
+
*/
|
|
142
|
+
contextMatches?: FUSportsMatch[];
|
|
143
|
+
/** Custom configuration */
|
|
144
|
+
config?: MatchConfig;
|
|
145
|
+
/** Enable auto-refresh for live matches (default: true) */
|
|
146
|
+
autoRefresh?: boolean;
|
|
147
|
+
/** Refresh interval in milliseconds (default: 30000) */
|
|
148
|
+
refreshInterval?: number;
|
|
149
|
+
children: ReactNode;
|
|
150
|
+
}
|
|
151
|
+
//# sourceMappingURL=match.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"match.types.d.ts","sourceRoot":"","sources":["../../src/lib/providers/match.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { FUSportsMatch } from "../../../types/canonical";
|
|
2
|
+
/**
|
|
3
|
+
* Team form statistics for a season
|
|
4
|
+
*/
|
|
5
|
+
export interface TeamFormStats {
|
|
6
|
+
pointsPerGame: number;
|
|
7
|
+
goalsForPerGame: number;
|
|
8
|
+
goalsAgainstPerGame: number;
|
|
9
|
+
pointsPerGameForm: number;
|
|
10
|
+
goalsForPerGameForm: number;
|
|
11
|
+
goalsAgainstPerGameForm: number;
|
|
12
|
+
pointsPerGameDiffPercent: number;
|
|
13
|
+
goalsForPerGameDiffPercent: number;
|
|
14
|
+
goalsAgainstPerGameDiffPercent: number;
|
|
15
|
+
home: {
|
|
16
|
+
pointsPerGame: number;
|
|
17
|
+
goalsForPerGame: number;
|
|
18
|
+
goalsAgainstPerGame: number;
|
|
19
|
+
pointsPerGameForm: number;
|
|
20
|
+
goalsForPerGameForm: number;
|
|
21
|
+
goalsAgainstPerGameForm: number;
|
|
22
|
+
pointsPerGameDiffPercent: number;
|
|
23
|
+
goalsForPerGameDiffPercent: number;
|
|
24
|
+
goalsAgainstPerGameDiffPercent: number;
|
|
25
|
+
};
|
|
26
|
+
away: {
|
|
27
|
+
pointsPerGame: number;
|
|
28
|
+
goalsForPerGame: number;
|
|
29
|
+
goalsAgainstPerGame: number;
|
|
30
|
+
pointsPerGameForm: number;
|
|
31
|
+
goalsForPerGameForm: number;
|
|
32
|
+
goalsAgainstPerGameForm: number;
|
|
33
|
+
pointsPerGameDiffPercent: number;
|
|
34
|
+
goalsForPerGameDiffPercent: number;
|
|
35
|
+
goalsAgainstPerGameDiffPercent: number;
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Hook for calculating team form statistics
|
|
40
|
+
*/
|
|
41
|
+
export declare function useFormStats(teamId: string | undefined, matches: FUSportsMatch[], formMatchCount?: number): TeamFormStats | null;
|
|
42
|
+
/**
|
|
43
|
+
* Hook that returns a function to calculate form stats on demand
|
|
44
|
+
* This is used in the TeamProvider to provide a getFormStats method
|
|
45
|
+
*/
|
|
46
|
+
export declare function useFormStatsHelper(teamId: string, matches: FUSportsMatch[]): {
|
|
47
|
+
getFormStats: (formMatchCount?: number) => TeamFormStats | null;
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=useFormStats.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useFormStats.d.ts","sourceRoot":"","sources":["../../../../src/lib/providers/team/hooks/useFormStats.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,aAAa;IAE1B,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,MAAM,CAAC;IAG5B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,uBAAuB,EAAE,MAAM,CAAC;IAGhC,wBAAwB,EAAE,MAAM,CAAC;IACjC,0BAA0B,EAAE,MAAM,CAAC;IACnC,8BAA8B,EAAE,MAAM,CAAC;IAGvC,IAAI,EAAE;QACF,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC;QACxB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,uBAAuB,EAAE,MAAM,CAAC;QAChC,wBAAwB,EAAE,MAAM,CAAC;QACjC,0BAA0B,EAAE,MAAM,CAAC;QACnC,8BAA8B,EAAE,MAAM,CAAC;KAC1C,CAAC;IAGF,IAAI,EAAE;QACF,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC;QACxB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,uBAAuB,EAAE,MAAM,CAAC;QAChC,wBAAwB,EAAE,MAAM,CAAC;QACjC,0BAA0B,EAAE,MAAM,CAAC;QACnC,8BAA8B,EAAE,MAAM,CAAC;KAC1C,CAAC;CACL;AAgDD;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,cAAc,GAAE,MAAU,wBAkF5G;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE;oCAElD,MAAM,KAAO,aAAa,GAAG,IAAI;EA8FzD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { FUSportsMatch } from "../../../types/canonical";
|
|
2
|
+
/**
|
|
3
|
+
* Hook for team match-related helper functions
|
|
4
|
+
*/
|
|
5
|
+
export declare function useMatchHelpers(teamId: string, matches: FUSportsMatch[]): {
|
|
6
|
+
getLastMatch: () => FUSportsMatch;
|
|
7
|
+
getNextMatch: () => FUSportsMatch;
|
|
8
|
+
getLiveMatch: () => FUSportsMatch | undefined;
|
|
9
|
+
getUpcomingMatches: () => FUSportsMatch[];
|
|
10
|
+
getFinishedMatches: () => FUSportsMatch[];
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=useMatchHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useMatchHelpers.d.ts","sourceRoot":"","sources":["../../../../src/lib/providers/team/hooks/useMatchHelpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE;;;;;;EA4EvE"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { FUSportsSquad } from "../../../types/canonical";
|
|
2
|
+
/**
|
|
3
|
+
* Hook for squad-related helper functions
|
|
4
|
+
*/
|
|
5
|
+
export declare function useSquadHelpers(squad: FUSportsSquad | null): {
|
|
6
|
+
getPlayer: (id: string) => import("../../..").FUSportsSquadMember | undefined;
|
|
7
|
+
getPlayerByShirtNumber: (shirtNumber: number) => import("../../..").FUSportsSquadMember | undefined;
|
|
8
|
+
getPlayersByPosition: (position: string) => import("../../..").FUSportsSquadMember[];
|
|
9
|
+
getActiveSquad: () => import("../../..").FUSportsSquadMember[];
|
|
10
|
+
getInactiveSquad: () => import("../../..").FUSportsSquadMember[];
|
|
11
|
+
getSquadByContractType: (contractType: "PERMANENT" | "LOAN" | "UNKNOWN") => import("../../..").FUSportsSquadMember[];
|
|
12
|
+
getGoalkeepers: () => import("../../..").FUSportsSquadMember[];
|
|
13
|
+
getDefenders: () => import("../../..").FUSportsSquadMember[];
|
|
14
|
+
getMidfielders: () => import("../../..").FUSportsSquadMember[];
|
|
15
|
+
getForwards: () => import("../../..").FUSportsSquadMember[];
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=useSquadHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSquadHelpers.d.ts","sourceRoot":"","sources":["../../../../src/lib/providers/team/hooks/useSquadHelpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;oBAGpB,MAAM;0CAGvB,MAAM;qCAKT,MAAM;;;2CASF,WAAW,GAAG,MAAM,GAAG,SAAS;;;;;EAqDtD"}
|