fansunited-data-layer 0.15.2 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/api/fansunited/index.d.ts +2 -0
  2. package/api/fansunited/index.d.ts.map +1 -1
  3. package/api/fansunited/sports/competition/index.d.ts +28 -0
  4. package/api/fansunited/sports/competition/index.d.ts.map +1 -0
  5. package/api/fansunited/sports/competition/index.js +21 -0
  6. package/api/fansunited/sports/competition/index.js.map +1 -0
  7. package/api/fansunited/sports/competition/transformer.d.ts +8 -0
  8. package/api/fansunited/sports/competition/transformer.d.ts.map +1 -0
  9. package/api/fansunited/sports/competition/transformer.js +52 -0
  10. package/api/fansunited/sports/competition/transformer.js.map +1 -0
  11. package/api/fansunited/sports/competition/types.d.ts +57 -0
  12. package/api/fansunited/sports/competition/types.d.ts.map +1 -0
  13. package/api/fansunited/sports/constants.d.ts +5 -0
  14. package/api/fansunited/sports/constants.d.ts.map +1 -0
  15. package/api/fansunited/sports/constants.js +5 -0
  16. package/api/fansunited/sports/constants.js.map +1 -0
  17. package/api/fansunited/sports/http.d.ts +8 -0
  18. package/api/fansunited/sports/http.d.ts.map +1 -0
  19. package/api/fansunited/sports/http.js +7 -0
  20. package/api/fansunited/sports/http.js.map +1 -0
  21. package/api/fansunited/sports/index.d.ts +9 -0
  22. package/api/fansunited/sports/index.d.ts.map +1 -0
  23. package/fansunited-data-layer.js +2 -0
  24. package/fansunited-data-layer.js.map +1 -1
  25. package/index.d.ts +3 -3
  26. package/index.d.ts.map +1 -1
  27. package/package.json +1 -1
  28. package/types/canonical/index.d.ts +1 -0
  29. package/types/canonical/index.d.ts.map +1 -1
  30. package/types/canonical/sports-competition.types.d.ts +100 -0
  31. package/types/canonical/sports-competition.types.d.ts.map +1 -0
@@ -7,6 +7,8 @@
7
7
  export { getFansUnitedFootballCompetitions, getFansUnitedFootballCompetition, getFansUnitedFootballTeam, getFansUnitedFootballTeams, getFansUnitedFootballPlayer, getFansUnitedFootballPlayers, getFansUnitedFootballMatch, getFansUnitedFootballMatches, getFansUnitedFootballTeamNextMatch, getFansUnitedFootballTeamPreviousMatch, getFansUnitedFootballPlayerNextMatch, getFansUnitedFootballPlayerPreviousMatch, getFansUnitedFootballSearch, } from "./football";
8
8
  export type { GetFootballCompetitionsOptions, GetFootballCompetitionOptions, GetFootballTeamOptions, GetFootballTeamsOptions, GetFootballPlayerOptions, GetFootballPlayersOptions, GetFootballMatchOptions, GetFootballMatchesOptions, GetFootballSearchOptions, SearchEntityType, FansUnitedFootballSearchResult, } from "./football";
9
9
  export { getFansUnitedSearchEntities, getFansUnitedEntityById, getFansUnitedEntitiesByIds, getFansUnitedCompetitions, getFansUnitedTeamsByCountry, getFansUnitedTeamsByCompetition, getFansUnitedCountries, getFansUnitedVenues, } from "./search";
10
+ export { getFansUnitedSportsCompetition } from "./sports";
11
+ export type { GetSportsCompetitionOptions } from "./sports";
10
12
  export type { SearchMode, EntityContentType, EntitySearchOptions, GetEntityByIdOptions, GetEntitiesByIdsOptions, GetCompetitionsOptions, GetTeamsByCountryOptions, GetTeamsByCompetitionOptions, GetCountriesOptions, GetVenuesOptions, RawSearchEntity, SearchEntityResult, SearchEntitySummary, EntitySearchResponse, PaginationMeta, PaginatedResult, } from "./search";
11
13
  export type { NextCacheOptions } from "./http";
12
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/api/fansunited/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACH,iCAAiC,EACjC,gCAAgC,EAChC,yBAAyB,EACzB,0BAA0B,EAC1B,2BAA2B,EAC3B,4BAA4B,EAC5B,0BAA0B,EAC1B,4BAA4B,EAC5B,kCAAkC,EAClC,sCAAsC,EACtC,oCAAoC,EACpC,wCAAwC,EACxC,2BAA2B,GAC9B,MAAM,YAAY,CAAC;AAEpB,YAAY,EACR,8BAA8B,EAC9B,6BAA6B,EAC7B,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,gBAAgB,EAChB,8BAA8B,GACjC,MAAM,YAAY,CAAC;AAGpB,OAAO,EACH,2BAA2B,EAC3B,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAC3B,+BAA+B,EAC/B,sBAAsB,EACtB,mBAAmB,GACtB,MAAM,UAAU,CAAC;AAElB,YAAY,EACR,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,EAC5B,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,eAAe,GAClB,MAAM,UAAU,CAAC;AAGlB,YAAY,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/api/fansunited/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACH,iCAAiC,EACjC,gCAAgC,EAChC,yBAAyB,EACzB,0BAA0B,EAC1B,2BAA2B,EAC3B,4BAA4B,EAC5B,0BAA0B,EAC1B,4BAA4B,EAC5B,kCAAkC,EAClC,sCAAsC,EACtC,oCAAoC,EACpC,wCAAwC,EACxC,2BAA2B,GAC9B,MAAM,YAAY,CAAC;AAEpB,YAAY,EACR,8BAA8B,EAC9B,6BAA6B,EAC7B,sBAAsB,EACtB,uBAAuB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,gBAAgB,EAChB,8BAA8B,GACjC,MAAM,YAAY,CAAC;AAGpB,OAAO,EACH,2BAA2B,EAC3B,uBAAuB,EACvB,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAC3B,+BAA+B,EAC/B,sBAAsB,EACtB,mBAAmB,GACtB,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,8BAA8B,EAAE,MAAM,UAAU,CAAC;AAC1D,YAAY,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAE5D,YAAY,EACR,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,EAC5B,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,eAAe,GAClB,MAAM,UAAU,CAAC;AAGlB,YAAY,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Competition endpoint for the Fans United Sports API.
3
+ */
4
+ import type { FUSportsCompetitionDetails } from "../../../../types/canonical/sports-competition.types";
5
+ import { type DataLayerConfig } from "../../../../config";
6
+ import type { GetSportsCompetitionOptions } from "./types";
7
+ export type { GetSportsCompetitionOptions } from "./types";
8
+ /**
9
+ * Get a competition by ID from the Fans United Sports API.
10
+ *
11
+ * @param competitionId - Competition identifier (e.g. "fb:c:1")
12
+ * @param options - Query options (season override, Next.js cache hints)
13
+ * @param config - Optional data layer config (uses the singleton if omitted)
14
+ *
15
+ * @example
16
+ * ```typescript
17
+ * const competition = await getFansUnitedSportsCompetition("fb:c:1");
18
+ * for (const stage of competition.season.stages) {
19
+ * if (stage.type === "standing") {
20
+ * for (const group of stage.groups ?? []) {
21
+ * console.log(group.standings.map(s => `${s.rank} ${s.competitorId}`));
22
+ * }
23
+ * }
24
+ * }
25
+ * ```
26
+ */
27
+ export declare function getFansUnitedSportsCompetition(competitionId: string, options?: GetSportsCompetitionOptions, config?: DataLayerConfig): Promise<FUSportsCompetitionDetails>;
28
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lib/api/fansunited/sports/competition/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sDAAsD,CAAC;AACvG,OAAO,EAAa,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrE,OAAO,KAAK,EAAE,2BAA2B,EAAgC,MAAM,SAAS,CAAC;AAEzF,YAAY,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAC;AAE3D;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,8BAA8B,CAChD,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,2BAA2B,EACrC,MAAM,CAAC,EAAE,eAAe,GACzB,OAAO,CAAC,0BAA0B,CAAC,CAgBrC"}
@@ -0,0 +1,21 @@
1
+ import { getConfig } from "../../../../config/index.js";
2
+ import { sportsHttp } from "../http.js";
3
+ import { transformSportsCompetition } from "./transformer.js";
4
+ async function getFansUnitedSportsCompetition(competitionId, options, config) {
5
+ const finalConfig = config || getConfig();
6
+ const params = {};
7
+ if (options?.seasonId) {
8
+ params.season_id = options.seasonId;
9
+ }
10
+ const raw = await sportsHttp.get({
11
+ path: `/v1/competitions/${competitionId}`,
12
+ params,
13
+ next: options?.next,
14
+ config: finalConfig
15
+ });
16
+ return transformSportsCompetition(raw);
17
+ }
18
+ export {
19
+ getFansUnitedSportsCompetition
20
+ };
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/lib/api/fansunited/sports/competition/index.ts"],"sourcesContent":["/**\n * Competition endpoint for the Fans United Sports API.\n */\n\nimport type { FUSportsCompetitionDetails } from \"../../../../types/canonical/sports-competition.types\";\nimport { getConfig, type DataLayerConfig } from \"../../../../config\";\nimport { sportsHttp } from \"../http\";\nimport { transformSportsCompetition } from \"./transformer\";\nimport type { GetSportsCompetitionOptions, RawSportsCompetitionResponse } from \"./types\";\n\nexport type { GetSportsCompetitionOptions } from \"./types\";\n\n/**\n * Get a competition by ID from the Fans United Sports API.\n *\n * @param competitionId - Competition identifier (e.g. \"fb:c:1\")\n * @param options - Query options (season override, Next.js cache hints)\n * @param config - Optional data layer config (uses the singleton if omitted)\n *\n * @example\n * ```typescript\n * const competition = await getFansUnitedSportsCompetition(\"fb:c:1\");\n * for (const stage of competition.season.stages) {\n * if (stage.type === \"standing\") {\n * for (const group of stage.groups ?? []) {\n * console.log(group.standings.map(s => `${s.rank} ${s.competitorId}`));\n * }\n * }\n * }\n * ```\n */\nexport async function getFansUnitedSportsCompetition(\n competitionId: string,\n options?: GetSportsCompetitionOptions,\n config?: DataLayerConfig\n): Promise<FUSportsCompetitionDetails> {\n const finalConfig = config || getConfig();\n\n const params: Record<string, string | undefined> = {};\n if (options?.seasonId) {\n params.season_id = options.seasonId;\n }\n\n const raw = await sportsHttp.get<RawSportsCompetitionResponse>({\n path: `/v1/competitions/${competitionId}`,\n params,\n next: options?.next,\n config: finalConfig,\n });\n\n return transformSportsCompetition(raw);\n}\n"],"names":[],"mappings":";;;AA+BA,eAAsB,+BAClB,eACA,SACA,QACmC;AACnC,QAAM,cAAc,UAAU,UAAA;AAE9B,QAAM,SAA6C,CAAA;AACnD,MAAI,SAAS,UAAU;AACnB,WAAO,YAAY,QAAQ;AAAA,EAC/B;AAEA,QAAM,MAAM,MAAM,WAAW,IAAkC;AAAA,IAC3D,MAAM,oBAAoB,aAAa;AAAA,IACvC;AAAA,IACA,MAAM,SAAS;AAAA,IACf,QAAQ;AAAA,EAAA,CACX;AAED,SAAO,2BAA2B,GAAG;AACzC;"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Transforms the raw Sports API competition response into the canonical
3
+ * {@link FUSportsCompetitionDetails} shape.
4
+ */
5
+ import type { FUSportsCompetitionDetails } from "../../../../types/canonical/sports-competition.types";
6
+ import type { RawSportsCompetitionResponse } from "./types";
7
+ export declare function transformSportsCompetition(raw: RawSportsCompetitionResponse): FUSportsCompetitionDetails;
8
+ //# sourceMappingURL=transformer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["../../../../../src/lib/api/fansunited/sports/competition/transformer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACR,0BAA0B,EAK7B,MAAM,sDAAsD,CAAC;AAC9D,OAAO,KAAK,EACR,4BAA4B,EAK/B,MAAM,SAAS,CAAC;AA8CjB,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,4BAA4B,GAAG,0BAA0B,CAOxG"}
@@ -0,0 +1,52 @@
1
+ function transformStandingEntry(raw) {
2
+ return {
3
+ rank: raw.rank,
4
+ lastRank: raw.last_rank,
5
+ competitorId: raw.competitor_id,
6
+ stats: raw.stats.map((s) => ({ key: s.key, value: s.value })),
7
+ rules: raw.rules
8
+ };
9
+ }
10
+ function transformStandingGroup(raw) {
11
+ return {
12
+ id: raw.id,
13
+ name: raw.name,
14
+ standings: raw.standings.map(transformStandingEntry)
15
+ };
16
+ }
17
+ function transformStage(raw) {
18
+ return {
19
+ id: raw.id,
20
+ stageNameId: raw.stage_name_id,
21
+ type: raw.type,
22
+ status: raw.status,
23
+ coverage: raw.coverage,
24
+ order: raw.order,
25
+ startDate: raw.start_date,
26
+ endDate: raw.end_date,
27
+ groups: raw.groups ? raw.groups.map(transformStandingGroup) : null
28
+ };
29
+ }
30
+ function transformSeason(raw) {
31
+ return {
32
+ id: raw.id,
33
+ name: raw.name,
34
+ year: raw.year,
35
+ status: raw.status,
36
+ startDate: raw.start_date,
37
+ endDate: raw.end_date,
38
+ stages: raw.stages.map(transformStage)
39
+ };
40
+ }
41
+ function transformSportsCompetition(raw) {
42
+ return {
43
+ id: raw.id,
44
+ sport: raw.sport,
45
+ meta: { entityIds: raw.meta?.entity_ids ?? [] },
46
+ season: transformSeason(raw.season)
47
+ };
48
+ }
49
+ export {
50
+ transformSportsCompetition
51
+ };
52
+ //# sourceMappingURL=transformer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformer.js","sources":["../../../../../src/lib/api/fansunited/sports/competition/transformer.ts"],"sourcesContent":["/**\n * Transforms the raw Sports API competition response into the canonical\n * {@link FUSportsCompetitionDetails} shape.\n */\n\nimport type {\n FUSportsCompetitionDetails,\n FUSportsCompetitionSeason,\n FUSportsCompetitionStage,\n FUSportsCompetitionStandingEntry,\n FUSportsCompetitionStandingGroup,\n} from \"../../../../types/canonical/sports-competition.types\";\nimport type {\n RawSportsCompetitionResponse,\n RawSportsCompetitionSeason,\n RawSportsCompetitionStage,\n RawSportsCompetitionStandingEntry,\n RawSportsCompetitionStandingGroup,\n} from \"./types\";\n\nfunction transformStandingEntry(raw: RawSportsCompetitionStandingEntry): FUSportsCompetitionStandingEntry {\n return {\n rank: raw.rank,\n lastRank: raw.last_rank,\n competitorId: raw.competitor_id,\n stats: raw.stats.map((s) => ({ key: s.key, value: s.value })),\n rules: raw.rules,\n };\n}\n\nfunction transformStandingGroup(raw: RawSportsCompetitionStandingGroup): FUSportsCompetitionStandingGroup {\n return {\n id: raw.id,\n name: raw.name,\n standings: raw.standings.map(transformStandingEntry),\n };\n}\n\nfunction transformStage(raw: RawSportsCompetitionStage): FUSportsCompetitionStage {\n return {\n id: raw.id,\n stageNameId: raw.stage_name_id,\n type: raw.type,\n status: raw.status,\n coverage: raw.coverage,\n order: raw.order,\n startDate: raw.start_date,\n endDate: raw.end_date,\n groups: raw.groups ? raw.groups.map(transformStandingGroup) : null,\n };\n}\n\nfunction transformSeason(raw: RawSportsCompetitionSeason): FUSportsCompetitionSeason {\n return {\n id: raw.id,\n name: raw.name,\n year: raw.year,\n status: raw.status,\n startDate: raw.start_date,\n endDate: raw.end_date,\n stages: raw.stages.map(transformStage),\n };\n}\n\nexport function transformSportsCompetition(raw: RawSportsCompetitionResponse): FUSportsCompetitionDetails {\n return {\n id: raw.id,\n sport: raw.sport,\n meta: { entityIds: raw.meta?.entity_ids ?? [] },\n season: transformSeason(raw.season),\n };\n}\n"],"names":[],"mappings":"AAoBA,SAAS,uBAAuB,KAA0E;AACtG,SAAO;AAAA,IACH,MAAM,IAAI;AAAA,IACV,UAAU,IAAI;AAAA,IACd,cAAc,IAAI;AAAA,IAClB,OAAO,IAAI,MAAM,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,OAAO,EAAE,QAAQ;AAAA,IAC5D,OAAO,IAAI;AAAA,EAAA;AAEnB;AAEA,SAAS,uBAAuB,KAA0E;AACtG,SAAO;AAAA,IACH,IAAI,IAAI;AAAA,IACR,MAAM,IAAI;AAAA,IACV,WAAW,IAAI,UAAU,IAAI,sBAAsB;AAAA,EAAA;AAE3D;AAEA,SAAS,eAAe,KAA0D;AAC9E,SAAO;AAAA,IACH,IAAI,IAAI;AAAA,IACR,aAAa,IAAI;AAAA,IACjB,MAAM,IAAI;AAAA,IACV,QAAQ,IAAI;AAAA,IACZ,UAAU,IAAI;AAAA,IACd,OAAO,IAAI;AAAA,IACX,WAAW,IAAI;AAAA,IACf,SAAS,IAAI;AAAA,IACb,QAAQ,IAAI,SAAS,IAAI,OAAO,IAAI,sBAAsB,IAAI;AAAA,EAAA;AAEtE;AAEA,SAAS,gBAAgB,KAA4D;AACjF,SAAO;AAAA,IACH,IAAI,IAAI;AAAA,IACR,MAAM,IAAI;AAAA,IACV,MAAM,IAAI;AAAA,IACV,QAAQ,IAAI;AAAA,IACZ,WAAW,IAAI;AAAA,IACf,SAAS,IAAI;AAAA,IACb,QAAQ,IAAI,OAAO,IAAI,cAAc;AAAA,EAAA;AAE7C;AAEO,SAAS,2BAA2B,KAA+D;AACtG,SAAO;AAAA,IACH,IAAI,IAAI;AAAA,IACR,OAAO,IAAI;AAAA,IACX,MAAM,EAAE,WAAW,IAAI,MAAM,cAAc,CAAA,EAAC;AAAA,IAC5C,QAAQ,gBAAgB,IAAI,MAAM;AAAA,EAAA;AAE1C;"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Raw API response and option types for the Fans United Sports API
3
+ * competition-by-id endpoint.
4
+ */
5
+ import type { NextCacheOptions } from "../../http";
6
+ export interface RawSportsCompetitionStandingStat {
7
+ key: string;
8
+ value: string;
9
+ }
10
+ export interface RawSportsCompetitionStandingEntry {
11
+ rank: number;
12
+ last_rank?: number;
13
+ competitor_id: string;
14
+ stats: RawSportsCompetitionStandingStat[];
15
+ rules?: string[];
16
+ }
17
+ export interface RawSportsCompetitionStandingGroup {
18
+ id: number | null;
19
+ name: string | null;
20
+ standings: RawSportsCompetitionStandingEntry[];
21
+ }
22
+ export interface RawSportsCompetitionStage {
23
+ id: string;
24
+ stage_name_id: string;
25
+ type: "standing" | "bracket";
26
+ status: string;
27
+ coverage: string;
28
+ order: number;
29
+ start_date?: string;
30
+ end_date?: string;
31
+ groups: RawSportsCompetitionStandingGroup[] | null;
32
+ }
33
+ export interface RawSportsCompetitionSeason {
34
+ id: string;
35
+ name: string;
36
+ year?: string;
37
+ status: string;
38
+ start_date?: string;
39
+ end_date?: string;
40
+ stages: RawSportsCompetitionStage[];
41
+ }
42
+ export interface RawSportsCompetitionMeta {
43
+ entity_ids: string[];
44
+ }
45
+ export interface RawSportsCompetitionResponse {
46
+ id: string;
47
+ sport: string;
48
+ meta: RawSportsCompetitionMeta;
49
+ season: RawSportsCompetitionSeason;
50
+ }
51
+ export interface GetSportsCompetitionOptions {
52
+ /** Season identifier (e.g. "fb:c:1:2025/26"). Defaults to the active season. */
53
+ seasonId?: string;
54
+ /** Next.js cache options for ISR/on-demand revalidation. */
55
+ next?: NextCacheOptions;
56
+ }
57
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/lib/api/fansunited/sports/competition/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAMnD,MAAM,WAAW,gCAAgC;IAC7C,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iCAAiC;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,gCAAgC,EAAE,CAAC;IAC1C,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,iCAAiC;IAC9C,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE,iCAAiC,EAAE,CAAC;CAClD;AAED,MAAM,WAAW,yBAAyB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,iCAAiC,EAAE,GAAG,IAAI,CAAC;CACtD;AAED,MAAM,WAAW,0BAA0B;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,yBAAyB,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,wBAAwB;IACrC,UAAU,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,4BAA4B;IACzC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,wBAAwB,CAAC;IAC/B,MAAM,EAAE,0BAA0B,CAAC;CACtC;AAMD,MAAM,WAAW,2BAA2B;IACxC,gFAAgF;IAChF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4DAA4D;IAC5D,IAAI,CAAC,EAAE,gBAAgB,CAAC;CAC3B"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Constants for the Fans United Sports API
3
+ */
4
+ export declare const FANSUNITED_SPORTS_DOMAIN = "https://sports.fansunitedapi.com";
5
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/lib/api/fansunited/sports/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,wBAAwB,qCAAqC,CAAC"}
@@ -0,0 +1,5 @@
1
+ const FANSUNITED_SPORTS_DOMAIN = "https://sports.fansunitedapi.com";
2
+ export {
3
+ FANSUNITED_SPORTS_DOMAIN
4
+ };
5
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sources":["../../../../src/lib/api/fansunited/sports/constants.ts"],"sourcesContent":["/**\n * Constants for the Fans United Sports API\n */\n\nexport const FANSUNITED_SPORTS_DOMAIN = \"https://sports.fansunitedapi.com\";\n"],"names":[],"mappings":"AAIO,MAAM,2BAA2B;"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Sports HTTP client for the Fans United Sports API
3
+ */
4
+ /**
5
+ * HTTP client configured for the Fans United Sports API
6
+ */
7
+ export declare const sportsHttp: import("../http").FansUnitedHttpClient;
8
+ //# sourceMappingURL=http.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../../src/lib/api/fansunited/sports/http.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH;;GAEG;AACH,eAAO,MAAM,UAAU,wCAA6C,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { createHttpClient } from "../http.js";
2
+ import { FANSUNITED_SPORTS_DOMAIN } from "./constants.js";
3
+ const sportsHttp = createHttpClient(FANSUNITED_SPORTS_DOMAIN);
4
+ export {
5
+ sportsHttp
6
+ };
7
+ //# sourceMappingURL=http.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.js","sources":["../../../../src/lib/api/fansunited/sports/http.ts"],"sourcesContent":["/**\n * Sports HTTP client for the Fans United Sports API\n */\n\nimport { createHttpClient } from \"../http\";\nimport { FANSUNITED_SPORTS_DOMAIN } from \"./constants\";\n\n/**\n * HTTP client configured for the Fans United Sports API\n */\nexport const sportsHttp = createHttpClient(FANSUNITED_SPORTS_DOMAIN);\n"],"names":[],"mappings":";;AAUO,MAAM,aAAa,iBAAiB,wBAAwB;"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Fans United Sports API
3
+ *
4
+ * Endpoints served from https://sports.fansunitedapi.com.
5
+ * All functions return canonical FUSports types.
6
+ */
7
+ export { getFansUnitedSportsCompetition } from "./competition";
8
+ export type { GetSportsCompetitionOptions } from "./competition/types";
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/api/fansunited/sports/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,8BAA8B,EAAE,MAAM,eAAe,CAAC;AAC/D,YAAY,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC"}
@@ -17,6 +17,7 @@ import { getFansUnitedFootballMatch, getFansUnitedFootballMatches, getFansUnited
17
17
  import { getFansUnitedFootballPlayer, getFansUnitedFootballPlayers } from "./api/fansunited/football/players/index.js";
18
18
  import { getFansUnitedFootballSearch } from "./api/fansunited/football/search/index.js";
19
19
  import { getFansUnitedFootballTeam, getFansUnitedFootballTeams } from "./api/fansunited/football/teams/index.js";
20
+ import { getFansUnitedSportsCompetition } from "./api/fansunited/sports/competition/index.js";
20
21
  import { getFootballCompetition, getFootballSeasonDetails } from "./api/sportal365-sports/football/competitions/index.js";
21
22
  import { getFootballLivescore, getFootballMatch, getFootballMatchCommentary, getFootballMatchEvents, getFootballMatchLineups, getFootballMatchOdds, getFootballMatchStatistics, getFootballMatches } from "./api/sportal365-sports/football/matches/index.js";
22
23
  import { getFootballPlayerCareerStatistics, getFootballPlayerRecentStatistics, getFootballPlayerSeasonStatistics, getFootballPlayerSeasonStatisticsByPlayerIds } from "./api/sportal365-sports/football/statistics/index.js";
@@ -74,6 +75,7 @@ export {
74
75
  getFansUnitedFootballTeamPreviousMatch,
75
76
  getFansUnitedFootballTeams,
76
77
  getFansUnitedSearchEntities,
78
+ getFansUnitedSportsCompetition,
77
79
  getFansUnitedTeamsByCompetition,
78
80
  getFansUnitedTeamsByCountry,
79
81
  getFansUnitedVenues,
@@ -1 +1 @@
1
- {"version":3,"file":"fansunited-data-layer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"fansunited-data-layer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/index.d.ts CHANGED
@@ -26,13 +26,13 @@
26
26
  export { setConfig, getConfig, isConfigured, type DataLayerConfig, type Sportal365SportsConfig, type PayloadConfig, } from "./config";
27
27
  export { getFootballMatch, getFootballMatchEvents, getFootballMatchLineups, getFootballMatchOdds, getFootballMatchStatistics, getFootballMatchCommentary, getFootballMatches, getFootballLivescore, getBasketballLivescore, getTennisLivescore, getFootballTeam, getFootballTeamSquad, getFootballCompetition, getFootballSeasonDetails, getFootballStandings, getFootballPlayerSeasonStatistics, getFootballPlayerSeasonStatisticsByPlayerIds, getFootballPlayerCareerStatistics, getFootballPlayerRecentStatistics, getTeamSeasonStatistics, getSportal365Standings, searchFootball, } from "./api/sportal365-sports";
28
28
  export { search } from "./api/sportal365-sports";
29
- export { getFansUnitedFootballCompetitions, getFansUnitedFootballCompetition, getFansUnitedFootballTeam, getFansUnitedFootballTeams, getFansUnitedFootballPlayer, getFansUnitedFootballPlayers, getFansUnitedFootballMatch, getFansUnitedFootballMatches, getFansUnitedFootballTeamNextMatch, getFansUnitedFootballTeamPreviousMatch, getFansUnitedFootballPlayerNextMatch, getFansUnitedFootballPlayerPreviousMatch, getFansUnitedFootballSearch, getFansUnitedSearchEntities, getFansUnitedEntityById, getFansUnitedEntitiesByIds, getFansUnitedCompetitions, getFansUnitedTeamsByCountry, getFansUnitedTeamsByCompetition, getFansUnitedCountries, getFansUnitedVenues, } from "./api/fansunited";
29
+ export { getFansUnitedFootballCompetitions, getFansUnitedFootballCompetition, getFansUnitedFootballTeam, getFansUnitedFootballTeams, getFansUnitedFootballPlayer, getFansUnitedFootballPlayers, getFansUnitedFootballMatch, getFansUnitedFootballMatches, getFansUnitedFootballTeamNextMatch, getFansUnitedFootballTeamPreviousMatch, getFansUnitedFootballPlayerNextMatch, getFansUnitedFootballPlayerPreviousMatch, getFansUnitedFootballSearch, getFansUnitedSearchEntities, getFansUnitedEntityById, getFansUnitedEntitiesByIds, getFansUnitedCompetitions, getFansUnitedTeamsByCountry, getFansUnitedTeamsByCompetition, getFansUnitedCountries, getFansUnitedVenues, getFansUnitedSportsCompetition, } from "./api/fansunited";
30
30
  export { getLeaderboardMatches, getLeaderboardTeamMatches, getLeaderboardTemplate, getBatchMatchOdds, } from "./api/fansunited-sdk";
31
31
  export type { GetBatchMatchOddsOptions } from "./api/fansunited-sdk";
32
- export type { GetFootballCompetitionsOptions, GetFootballCompetitionOptions as GetFansUnitedFootballCompetitionOptions, GetFootballTeamOptions as GetFansUnitedFootballTeamOptions, GetFootballTeamsOptions as GetFansUnitedFootballTeamsOptions, GetFootballPlayerOptions as GetFansUnitedFootballPlayerOptions, GetFootballPlayersOptions as GetFansUnitedFootballPlayersOptions, GetFootballMatchOptions as GetFansUnitedFootballMatchOptions, GetFootballMatchesOptions as GetFansUnitedFootballMatchesOptions, GetFootballSearchOptions as GetFansUnitedFootballSearchOptions, SearchEntityType as FansUnitedSearchEntityType, FansUnitedFootballSearchResult, SearchMode, EntityContentType, EntitySearchOptions, GetEntityByIdOptions, GetEntitiesByIdsOptions, GetCompetitionsOptions, GetTeamsByCountryOptions, GetTeamsByCompetitionOptions, GetCountriesOptions, GetVenuesOptions, RawSearchEntity, SearchEntityResult, SearchEntitySummary, EntitySearchResponse, PaginationMeta, PaginatedResult, } from "./api/fansunited";
32
+ export type { GetFootballCompetitionsOptions, GetFootballCompetitionOptions as GetFansUnitedFootballCompetitionOptions, GetFootballTeamOptions as GetFansUnitedFootballTeamOptions, GetFootballTeamsOptions as GetFansUnitedFootballTeamsOptions, GetFootballPlayerOptions as GetFansUnitedFootballPlayerOptions, GetFootballPlayersOptions as GetFansUnitedFootballPlayersOptions, GetFootballMatchOptions as GetFansUnitedFootballMatchOptions, GetFootballMatchesOptions as GetFansUnitedFootballMatchesOptions, GetFootballSearchOptions as GetFansUnitedFootballSearchOptions, SearchEntityType as FansUnitedSearchEntityType, FansUnitedFootballSearchResult, SearchMode, EntityContentType, EntitySearchOptions, GetEntityByIdOptions, GetEntitiesByIdsOptions, GetCompetitionsOptions, GetTeamsByCountryOptions, GetTeamsByCompetitionOptions, GetCountriesOptions, GetVenuesOptions, RawSearchEntity, SearchEntityResult, SearchEntitySummary, EntitySearchResponse, PaginationMeta, PaginatedResult, GetSportsCompetitionOptions, } from "./api/fansunited";
33
33
  export { getProviderRefId, addProviderRef, toProviderRefArray } from "./api/sportal365-sports/shared";
34
34
  export type { GetFootballMatchOptions, GetFootballMatchEventsOptions, GetFootballMatchLineupsOptions, GetFootballMatchOddsOptions, GetFootballMatchStatisticsOptions, GetFootballMatchCommentaryOptions, GetFootballMatchesOptions, GetFootballLivescoreOptions, GetBasketballLivescoreOptions, BasketballMatchStatusType, GetTennisLivescoreOptions, TennisMatchStatusType, TennisMatchType, TennisGender, GetFootballTeamOptions, GetFootballTeamSquadOptions, GetFootballCompetitionOptions, GetFootballSeasonDetailsOptions, GetFootballStandingsOptions, GetFootballPlayerSeasonStatisticsOptions, GetFootballPlayerSeasonStatisticsByPlayerIdsOptions, GetFootballPlayerCareerStatisticsOptions, GetFootballPlayerRecentStatisticsOptions, GetTeamSeasonStatisticsOptions, GetSportal365StandingsOptions, StandingsSport, StandingsCoverageType, GetFootballSearchOptions, SearchEntityType, GetSportsSearchOptions, SportType, SportsSearchEntityType, FootballStandingsExpandOption, OddType, ScopeType, OddFormat, MarketType, OptionalMatchData, MatchStatusType, SortDirection, SelectionFilter, NextCacheOptions, } from "./api/sportal365-sports";
35
- export type { FUSportsCountry, FUSportsCity, FUSportsCompetitor, FUSportsCompetitorBase, FUSportsTeamCompetitor, FUSportsPlayerCompetitor, FUSportsPairCompetitor, FUSportsShirtColor, FUSportsSeason, FUSportsRound, FUSportsStage, FUSportsSeasonDetails, FUSportsCompetition, FUSportsVenue, FUSportsOfficial, FUSportsMember, FUSportsMatchMember, FUSportsCoach, FUSportsRelated, FUSportsSocials, FUBranding, FUSportsCompetitionSummary, FUSportsTeamSummary, FUSportsPlayerSummary, FUSportsCountrySummary, FUSportsVenueSummary, FUSportsCoachSummary, FUSportsMatchScore, FUSportsMatchStatus, FUSportsMatchTiming, FUSportsMatchWinner, FUSportsMatch, FUSportsMatchSimple, FUSportsFootballEventType, FUSportsOtherEventType, FUSportsMatchEvent, FUSportsLineupMember, FUSportsCompetitorLineup, FUSportsMatchLineups, FUSportsStatisticEntry, FUSportsCompetitorStatistics, FUSportsMatchStatistics, FUSportsPlayerStatistic, FUSportsPlayerSeasonStatistics, FUSportsCareerTournamentSeason, FUSportsCareerTeam, FUSportsPlayerCareerStatisticsEntry, FUSportsPlayerCareerStatistics, FUSportsPlayerRecentStatistics, FUSportsTeamSeasonStatistics, FUSportsBettingOperatorBranding, FUSportsBettingOperator, FUSportsOddSelection, FUSportsMarketPeriod, FUSportsMarketType, FUSportsOddMarket, FUSportsBettingOperatorOdds, FUSportsMatchOdds, FUSportsCommentaryDetail, FUSportsCommentaryMeta, FUSportsCommentaryItem, FUSportsStandingEntry, FUSportsCompetitorForm, FUSportsStandingLegendItem, FUSportsStandingsMetadata, FUSportsStandings, FUSportsStandingsTable, FUSportsSquadMember, FUSportsSquad, FUSportsSearchResultBase, FUSportsTournamentSearchResult, FUSportsPlayerSearchResult, FUSportsTeamSearchResult, FUSportsPresidentSearchResult, FUSportsVenueSearchResult, FUSportsCoachSearchResult, FUSportsSearchResult, FUSportsSearchResults, FUSportsTranslation, FUSportsDisplayAsset, FUSportsSportsSearchResultBase, FUSportsSportsSearchCountry, FUSportsTeamSportsSearchResult, FUSportsCitySportsSearchResult, FUSportsHorseSportsSearchResult, FUSportsPlayerSportsSearchResult, FUSportsCoachSportsSearchResult, FUSportsRefereeSportsSearchResult, FUSportsVenueSportsSearchResult, FUSportsTournamentSportsSearchResult, FUSportsMatchSportsSearchResult, FUSportsCountrySportsSearchResult, FUSportsSportsSearchResult, FUSportsSportsSearchResults, } from "./types/canonical";
35
+ export type { FUSportsCountry, FUSportsCity, FUSportsCompetitor, FUSportsCompetitorBase, FUSportsTeamCompetitor, FUSportsPlayerCompetitor, FUSportsPairCompetitor, FUSportsShirtColor, FUSportsSeason, FUSportsRound, FUSportsStage, FUSportsSeasonDetails, FUSportsCompetition, FUSportsVenue, FUSportsOfficial, FUSportsMember, FUSportsMatchMember, FUSportsCoach, FUSportsRelated, FUSportsSocials, FUBranding, FUSportsCompetitionSummary, FUSportsTeamSummary, FUSportsPlayerSummary, FUSportsCountrySummary, FUSportsVenueSummary, FUSportsCoachSummary, FUSportsMatchScore, FUSportsMatchStatus, FUSportsMatchTiming, FUSportsMatchWinner, FUSportsMatch, FUSportsMatchSimple, FUSportsFootballEventType, FUSportsOtherEventType, FUSportsMatchEvent, FUSportsLineupMember, FUSportsCompetitorLineup, FUSportsMatchLineups, FUSportsStatisticEntry, FUSportsCompetitorStatistics, FUSportsMatchStatistics, FUSportsPlayerStatistic, FUSportsPlayerSeasonStatistics, FUSportsCareerTournamentSeason, FUSportsCareerTeam, FUSportsPlayerCareerStatisticsEntry, FUSportsPlayerCareerStatistics, FUSportsPlayerRecentStatistics, FUSportsTeamSeasonStatistics, FUSportsBettingOperatorBranding, FUSportsBettingOperator, FUSportsOddSelection, FUSportsMarketPeriod, FUSportsMarketType, FUSportsOddMarket, FUSportsBettingOperatorOdds, FUSportsMatchOdds, FUSportsCommentaryDetail, FUSportsCommentaryMeta, FUSportsCommentaryItem, FUSportsStandingEntry, FUSportsCompetitorForm, FUSportsStandingLegendItem, FUSportsStandingsMetadata, FUSportsStandings, FUSportsStandingsTable, FUSportsCompetitionStageType, FUSportsCompetitionStandingStat, FUSportsCompetitionStandingEntry, FUSportsCompetitionStandingGroup, FUSportsCompetitionStage, FUSportsCompetitionSeason, FUSportsCompetitionMeta, FUSportsCompetitionDetails, FUSportsSquadMember, FUSportsSquad, FUSportsSearchResultBase, FUSportsTournamentSearchResult, FUSportsPlayerSearchResult, FUSportsTeamSearchResult, FUSportsPresidentSearchResult, FUSportsVenueSearchResult, FUSportsCoachSearchResult, FUSportsSearchResult, FUSportsSearchResults, FUSportsTranslation, FUSportsDisplayAsset, FUSportsSportsSearchResultBase, FUSportsSportsSearchCountry, FUSportsTeamSportsSearchResult, FUSportsCitySportsSearchResult, FUSportsHorseSportsSearchResult, FUSportsPlayerSportsSearchResult, FUSportsCoachSportsSearchResult, FUSportsRefereeSportsSearchResult, FUSportsVenueSportsSearchResult, FUSportsTournamentSportsSearchResult, FUSportsMatchSportsSearchResult, FUSportsCountrySportsSearchResult, FUSportsSportsSearchResult, FUSportsSportsSearchResults, } from "./types/canonical";
36
36
  export { getActiveSeason, getTeamNextMatch, getTeamPreviousMatch, getTeamUpcomingMatches, getTeamFinishedMatches, getTeamResultsTable, getTeamTopScorers, getTeamTopAssisters, getTeamTopAppearances, getTeamTopMinutesPlayed, getTeamTopCleanSheets, getTeamMostDecorated, aggregatePlayerStatisticsFromMatches, getTopScorersFromMatches, getTopAssistersFromMatches, getMostCardedPlayersFromMatches, getTopGoalContributorsFromMatches, getAllPlayerStatisticsFromMatches, useTopScorersFromMatches, useTopAssistersFromMatches, useMostCardedPlayersFromMatches, useTopGoalContributorsFromMatches, useAllPlayerStatisticsFromMatches, usePlayerStatisticsMap, usePlayerStatistics, } from "./helpers";
37
37
  export type { TeamResultTableResult, TeamResultTableRow, TeamResultTable } from "./helpers";
38
38
  export { calcPercentage, calcAverage, formatStatValue, formatWithAverage, formatAsAverage, formatPossessionPercentage, analyzeMatch, isTeamHome, isTeamAway, isTeamInMatch, isMatchFinished, getTeamScore, getOpponentScore, calculateH2HStats, getRecentH2HMeetings, getTeamHomeAwayStats, getTeamOverUnderStats, getMatchResult, getTeamGoalStats, calculateStreak, getTeamStreaks, getTeamStreaksComparison, streakFilters, getTeamsCommonOpponents, } from "./utilities/stats";
package/index.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/lib/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/lib/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "description": "A TypeScript library for fetching and transforming sports data from multiple API providers. Returns clean, canonical types that are provider-agnostic.",
5
5
  "homepage": "https://fansunited.com/",
6
6
  "private": false,
7
- "version": "0.15.2",
7
+ "version": "0.16.0",
8
8
  "type": "module",
9
9
  "sideEffects": false,
10
10
  "module": "./fansunited-data-layer.js",
@@ -11,6 +11,7 @@ export type { FUSportsMatchPeriod, FUSportsStatisticEntry, FUSportsCompetitorSta
11
11
  export type { FUSportsBettingOperatorBranding, FUSportsBettingOperator, FUSportsOddSelection, FUSportsMarketPeriod, FUSportsMarketType, FUSportsOddMarket, FUSportsBettingOperatorOdds, FUSportsMatchOdds, FUSportsBatchMatchOdds, } from "./odds.types";
12
12
  export type { FUSportsCommentaryDetail, FUSportsCommentaryMeta, FUSportsCommentaryItem } from "./commentary.types";
13
13
  export type { FUSportsStandingEntry, FUSportsCompetitorForm, FUSportsStandingLegendItem, FUSportsStandingsMetadata, FUSportsStandings, FUSportsStandingsTable, } from "./standing.types";
14
+ export type { FUSportsCompetitionStageType, FUSportsCompetitionStandingStat, FUSportsCompetitionStandingEntry, FUSportsCompetitionStandingGroup, FUSportsCompetitionStage, FUSportsCompetitionSeason, FUSportsCompetitionMeta, FUSportsCompetitionDetails, } from "./sports-competition.types";
14
15
  export type { FUSportsSquadMember, FUSportsSquad } from "./squad.types";
15
16
  export type { FUSportsSearchResultBase, FUSportsTournamentSearchResult, FUSportsPlayerSearchResult, FUSportsTeamSearchResult, FUSportsPresidentSearchResult, FUSportsVenueSearchResult, FUSportsCoachSearchResult, FUSportsSearchResult, FUSportsSearchResults, } from "./search.types";
16
17
  export type { FUSportsTranslation, FUSportsDisplayAsset, FUSportsSportsSearchResultBase, FUSportsSportsSearchCountry, FUSportsTeamSportsSearchResult, FUSportsCitySportsSearchResult, FUSportsHorseSportsSearchResult, FUSportsPlayerSportsSearchResult, FUSportsCoachSportsSearchResult, FUSportsRefereeSportsSearchResult, FUSportsVenueSportsSearchResult, FUSportsTournamentSportsSearchResult, FUSportsMatchSportsSearchResult, FUSportsCountrySportsSearchResult, FUSportsSportsSearchResult, FUSportsSportsSearchResults, } from "./sports-search.types";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/types/canonical/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EACR,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,aAAa,EACb,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,wBAAwB,EACxB,aAAa,EACb,eAAe,EACf,eAAe,EACf,UAAU,EAEV,0BAA0B,EAC1B,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,GACvB,MAAM,cAAc,CAAC;AAGtB,YAAY,EACR,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,mBAAmB,GACtB,MAAM,eAAe,CAAC;AAGvB,YAAY,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAG3G,YAAY,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAG3G,YAAY,EACR,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,EAC5B,uBAAuB,EACvB,uBAAuB,EACvB,8BAA8B,EAC9B,8BAA8B,EAC9B,kBAAkB,EAClB,mCAAmC,EACnC,8BAA8B,EAC9B,8BAA8B,EAC9B,4BAA4B,GAC/B,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EACR,+BAA+B,EAC/B,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,2BAA2B,EAC3B,iBAAiB,EACjB,sBAAsB,GACzB,MAAM,cAAc,CAAC;AAGtB,YAAY,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAGnH,YAAY,EACR,qBAAqB,EACrB,sBAAsB,EACtB,0BAA0B,EAC1B,yBAAyB,EACzB,iBAAiB,EACjB,sBAAsB,GACzB,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGxE,YAAY,EACR,wBAAwB,EACxB,8BAA8B,EAC9B,0BAA0B,EAC1B,wBAAwB,EACxB,6BAA6B,EAC7B,yBAAyB,EACzB,yBAAyB,EACzB,oBAAoB,EACpB,qBAAqB,GACxB,MAAM,gBAAgB,CAAC;AAGxB,YAAY,EACR,mBAAmB,EACnB,oBAAoB,EACpB,8BAA8B,EAC9B,2BAA2B,EAC3B,8BAA8B,EAC9B,8BAA8B,EAC9B,+BAA+B,EAC/B,gCAAgC,EAChC,+BAA+B,EAC/B,iCAAiC,EACjC,+BAA+B,EAC/B,oCAAoC,EACpC,+BAA+B,EAC/B,iCAAiC,EACjC,0BAA0B,EAC1B,2BAA2B,GAC9B,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/types/canonical/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EACR,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,aAAa,EACb,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,wBAAwB,EACxB,aAAa,EACb,eAAe,EACf,eAAe,EACf,UAAU,EAEV,0BAA0B,EAC1B,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,GACvB,MAAM,cAAc,CAAC;AAGtB,YAAY,EACR,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,mBAAmB,GACtB,MAAM,eAAe,CAAC;AAGvB,YAAY,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAG3G,YAAY,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAG3G,YAAY,EACR,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,EAC5B,uBAAuB,EACvB,uBAAuB,EACvB,8BAA8B,EAC9B,8BAA8B,EAC9B,kBAAkB,EAClB,mCAAmC,EACnC,8BAA8B,EAC9B,8BAA8B,EAC9B,4BAA4B,GAC/B,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EACR,+BAA+B,EAC/B,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,2BAA2B,EAC3B,iBAAiB,EACjB,sBAAsB,GACzB,MAAM,cAAc,CAAC;AAGtB,YAAY,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAGnH,YAAY,EACR,qBAAqB,EACrB,sBAAsB,EACtB,0BAA0B,EAC1B,yBAAyB,EACzB,iBAAiB,EACjB,sBAAsB,GACzB,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EACR,4BAA4B,EAC5B,+BAA+B,EAC/B,gCAAgC,EAChC,gCAAgC,EAChC,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,EACvB,0BAA0B,GAC7B,MAAM,4BAA4B,CAAC;AAGpC,YAAY,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGxE,YAAY,EACR,wBAAwB,EACxB,8BAA8B,EAC9B,0BAA0B,EAC1B,wBAAwB,EACxB,6BAA6B,EAC7B,yBAAyB,EACzB,yBAAyB,EACzB,oBAAoB,EACpB,qBAAqB,GACxB,MAAM,gBAAgB,CAAC;AAGxB,YAAY,EACR,mBAAmB,EACnB,oBAAoB,EACpB,8BAA8B,EAC9B,2BAA2B,EAC3B,8BAA8B,EAC9B,8BAA8B,EAC9B,+BAA+B,EAC/B,gCAAgC,EAChC,+BAA+B,EAC/B,iCAAiC,EACjC,+BAA+B,EAC/B,oCAAoC,EACpC,+BAA+B,EAC/B,iCAAiC,EACjC,0BAA0B,EAC1B,2BAA2B,GAC9B,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,100 @@
1
+ /**
2
+ * Canonical types for the Fans United Sports API competition-by-id response.
3
+ *
4
+ * Currently only standings data is populated — future iterations will extend
5
+ * this model with brackets, matches, player statistics and team statistics
6
+ * as the underlying API surfaces them.
7
+ */
8
+ /**
9
+ * Stage type returned by the Sports API.
10
+ * - "standing" — group-based standings table
11
+ * - "bracket" — knockout bracket (groups will be null until bracket data ships)
12
+ */
13
+ export type FUSportsCompetitionStageType = "standing" | "bracket";
14
+ /**
15
+ * A single standing stat entry (string-encoded by the source API).
16
+ * Common keys for football: played, won, drawn, lost, goals_for, goals_against,
17
+ * goals_difference, points.
18
+ */
19
+ export interface FUSportsCompetitionStandingStat {
20
+ key: string;
21
+ value: string;
22
+ }
23
+ /**
24
+ * A team's row within a standings table.
25
+ *
26
+ * The Sports API returns competitor identity by ID only; consumers can resolve
27
+ * names/logos via the Search API using the IDs collected in
28
+ * {@link FUSportsCompetitionMeta.entityIds}.
29
+ */
30
+ export interface FUSportsCompetitionStandingEntry {
31
+ rank: number;
32
+ lastRank?: number;
33
+ competitorId: string;
34
+ stats: FUSportsCompetitionStandingStat[];
35
+ /** Qualification/relegation rule keys (e.g. "championsLeague", "relegation"). */
36
+ rules?: string[];
37
+ }
38
+ /**
39
+ * A standings group within a stage.
40
+ *
41
+ * For single-group standings (e.g. EPL, Bulgarian First League) both `id` and
42
+ * `name` are null. Multi-group stages (e.g. World Cup group stage) populate
43
+ * both fields.
44
+ */
45
+ export interface FUSportsCompetitionStandingGroup {
46
+ id: number | null;
47
+ name: string | null;
48
+ standings: FUSportsCompetitionStandingEntry[];
49
+ }
50
+ /**
51
+ * A stage within a season (regular season, championship round, knockout, …).
52
+ *
53
+ * `groups` is null when the stage type is "bracket" — bracket data will be
54
+ * added to this type in a future revision of the Sports API integration.
55
+ */
56
+ export interface FUSportsCompetitionStage {
57
+ id: string;
58
+ stageNameId: string;
59
+ type: FUSportsCompetitionStageType;
60
+ status: string;
61
+ coverage: string;
62
+ order: number;
63
+ startDate?: string;
64
+ endDate?: string;
65
+ groups: FUSportsCompetitionStandingGroup[] | null;
66
+ }
67
+ /**
68
+ * The active (or requested) season for a competition, including its stages.
69
+ */
70
+ export interface FUSportsCompetitionSeason {
71
+ id: string;
72
+ name: string;
73
+ year?: string;
74
+ status: string;
75
+ startDate?: string;
76
+ endDate?: string;
77
+ stages: FUSportsCompetitionStage[];
78
+ }
79
+ /**
80
+ * Response metadata listing every entity ID referenced in the payload.
81
+ * Useful for batch-resolving team/player names against the Search API.
82
+ */
83
+ export interface FUSportsCompetitionMeta {
84
+ entityIds: string[];
85
+ }
86
+ /**
87
+ * Full competition payload returned by the Sports API
88
+ * `GET /v1/competitions/{competition_id}` endpoint.
89
+ *
90
+ * Today this carries identity + standings. As the API extends, matches,
91
+ * brackets, player statistics and team statistics will hang off this type
92
+ * (most likely under `season` / `season.stages`).
93
+ */
94
+ export interface FUSportsCompetitionDetails {
95
+ id: string;
96
+ sport: string;
97
+ meta: FUSportsCompetitionMeta;
98
+ season: FUSportsCompetitionSeason;
99
+ }
100
+ //# sourceMappingURL=sports-competition.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sports-competition.types.d.ts","sourceRoot":"","sources":["../../../src/lib/types/canonical/sports-competition.types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;GAIG;AACH,MAAM,MAAM,4BAA4B,GAAG,UAAU,GAAG,SAAS,CAAC;AAElE;;;;GAIG;AACH,MAAM,WAAW,+BAA+B;IAC5C,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,gCAAgC;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,+BAA+B,EAAE,CAAC;IACzC,iFAAiF;IACjF,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,gCAAgC;IAC7C,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE,gCAAgC,EAAE,CAAC;CACjD;AAED;;;;;GAKG;AACH,MAAM,WAAW,wBAAwB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,4BAA4B,CAAC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,gCAAgC,EAAE,GAAG,IAAI,CAAC;CACrD;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,wBAAwB,EAAE,CAAC;CACtC;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACpC,SAAS,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,0BAA0B;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,uBAAuB,CAAC;IAC9B,MAAM,EAAE,yBAAyB,CAAC;CACrC"}