fansunited-data-layer 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +145 -60
- package/dist/api/sportal365-sports/football/index.d.ts +11 -0
- package/dist/api/sportal365-sports/football/index.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/index.d.ts +109 -0
- package/dist/api/sportal365-sports/football/matches/index.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/transformers/commentary.d.ts +12 -0
- package/dist/api/sportal365-sports/football/matches/transformers/commentary.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/transformers/index.d.ts +10 -0
- package/dist/api/sportal365-sports/football/matches/transformers/index.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/transformers/lineup.d.ts +11 -0
- package/dist/api/sportal365-sports/football/matches/transformers/lineup.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/transformers/match-event.d.ts +12 -0
- package/dist/api/sportal365-sports/football/matches/transformers/match-event.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/transformers/match.d.ts +11 -0
- package/dist/api/sportal365-sports/football/matches/transformers/match.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/transformers/odds.d.ts +11 -0
- package/dist/api/sportal365-sports/football/matches/transformers/odds.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/transformers/statistics.d.ts +11 -0
- package/dist/api/sportal365-sports/football/matches/transformers/statistics.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/types/commentary.types.d.ts +24 -0
- package/dist/api/sportal365-sports/football/matches/types/commentary.types.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/types/event.types.d.ts +19 -0
- package/dist/api/sportal365-sports/football/matches/types/event.types.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/types/index.d.ts +16 -0
- package/dist/api/sportal365-sports/football/matches/types/index.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/types/lineup.types.d.ts +78 -0
- package/dist/api/sportal365-sports/football/matches/types/lineup.types.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/types/match.types.d.ts +47 -0
- package/dist/api/sportal365-sports/football/matches/types/match.types.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/types/minute.types.d.ts +8 -0
- package/dist/api/sportal365-sports/football/matches/types/minute.types.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/types/odds.types.d.ts +80 -0
- package/dist/api/sportal365-sports/football/matches/types/odds.types.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/types/option.types.d.ts +55 -0
- package/dist/api/sportal365-sports/football/matches/types/option.types.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/types/referee.types.d.ts +13 -0
- package/dist/api/sportal365-sports/football/matches/types/referee.types.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/types/statistics.types.d.ts +45 -0
- package/dist/api/sportal365-sports/football/matches/types/statistics.types.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/types/status.types.d.ts +13 -0
- package/dist/api/sportal365-sports/football/matches/types/status.types.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/types/team.types.d.ts +17 -0
- package/dist/api/sportal365-sports/football/matches/types/team.types.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/matches/types/winner.types.d.ts +15 -0
- package/dist/api/sportal365-sports/football/matches/types/winner.types.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/teams/index.d.ts +25 -0
- package/dist/api/sportal365-sports/football/teams/index.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/teams/team.types.d.ts +55 -0
- package/dist/api/sportal365-sports/football/teams/team.types.d.ts.map +1 -0
- package/dist/api/sportal365-sports/football/teams/utils.d.ts +11 -0
- package/dist/api/sportal365-sports/football/teams/utils.d.ts.map +1 -0
- package/dist/api/sportal365-sports/http.d.ts +24 -0
- package/dist/api/sportal365-sports/http.d.ts.map +1 -0
- package/dist/api/sportal365-sports/index.d.ts +9 -0
- package/dist/api/sportal365-sports/index.d.ts.map +1 -0
- package/dist/api/sportal365-sports/shared/index.d.ts +5 -0
- package/dist/api/sportal365-sports/shared/index.d.ts.map +1 -0
- package/dist/api/sportal365-sports/shared/types.d.ts +189 -0
- package/dist/api/sportal365-sports/shared/types.d.ts.map +1 -0
- package/dist/config/index.d.ts +31 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/types.d.ts +34 -0
- package/dist/config/types.d.ts.map +1 -0
- package/dist/fansunited-data-layer.js +1 -1
- package/dist/fansunited-data-layer.umd.cjs +1 -1
- package/dist/index.d.ts +32 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/types/canonical/base.types.d.ts +134 -0
- package/dist/types/canonical/base.types.d.ts.map +1 -0
- package/dist/types/canonical/commentary.types.d.ts +42 -0
- package/dist/types/canonical/commentary.types.d.ts.map +1 -0
- package/dist/types/canonical/event.types.d.ts +31 -0
- package/dist/types/canonical/event.types.d.ts.map +1 -0
- package/dist/types/canonical/index.d.ts +14 -0
- package/dist/types/canonical/index.d.ts.map +1 -0
- package/dist/types/canonical/lineup.types.d.ts +33 -0
- package/dist/types/canonical/lineup.types.d.ts.map +1 -0
- package/dist/types/canonical/match.types.d.ts +139 -0
- package/dist/types/canonical/match.types.d.ts.map +1 -0
- package/dist/types/canonical/odds.types.d.ts +73 -0
- package/dist/types/canonical/odds.types.d.ts.map +1 -0
- package/dist/types/canonical/standing.types.d.ts +57 -0
- package/dist/types/canonical/standing.types.d.ts.map +1 -0
- package/dist/types/canonical/statistics.types.d.ts +27 -0
- package/dist/types/canonical/statistics.types.d.ts.map +1 -0
- package/dist/types/index.d.ts +9 -0
- package/dist/types/index.d.ts.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lineup.types.d.ts","sourceRoot":"","sources":["../../../src/lib/types/canonical/lineup.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,kBAAkB,EAAE,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC,WAAW,EAAE,oBAAoB,EAAE,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,wBAAwB,CAAC;IACxC,aAAa,EAAE,wBAAwB,CAAC;CAC3C"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Match FUSports types - Core match entities
|
|
3
|
+
*/
|
|
4
|
+
import type { FUSportsCompetitor, FUSportsCompetition, FUSportsVenue, FUSportsOfficial } from "./base.types";
|
|
5
|
+
import type { FUSportsMatchEvent } from "./event.types";
|
|
6
|
+
/**
|
|
7
|
+
* Match score breakdown - String-based to support various sports formats
|
|
8
|
+
*/
|
|
9
|
+
export interface FUSportsMatchScore {
|
|
10
|
+
competitorOne: string | null;
|
|
11
|
+
competitorTwo: string | null;
|
|
12
|
+
breakdown?: {
|
|
13
|
+
total?: {
|
|
14
|
+
competitorOne: string;
|
|
15
|
+
competitorTwo: string;
|
|
16
|
+
};
|
|
17
|
+
halfTime?: {
|
|
18
|
+
competitorOne: string;
|
|
19
|
+
competitorTwo: string;
|
|
20
|
+
};
|
|
21
|
+
regularTime?: {
|
|
22
|
+
competitorOne: string;
|
|
23
|
+
competitorTwo: string;
|
|
24
|
+
};
|
|
25
|
+
extraTime?: {
|
|
26
|
+
competitorOne: string;
|
|
27
|
+
competitorTwo: string;
|
|
28
|
+
};
|
|
29
|
+
penaltyShootout?: {
|
|
30
|
+
competitorOne: string;
|
|
31
|
+
competitorTwo: string;
|
|
32
|
+
};
|
|
33
|
+
aggregate?: {
|
|
34
|
+
competitorOne: string;
|
|
35
|
+
competitorTwo: string;
|
|
36
|
+
};
|
|
37
|
+
periods?: Array<{
|
|
38
|
+
competitorOne: string;
|
|
39
|
+
competitorTwo: string;
|
|
40
|
+
}>;
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Match status
|
|
45
|
+
*/
|
|
46
|
+
export interface FUSportsMatchStatus {
|
|
47
|
+
code: "not_started" | "live" | "finished" | "postponed" | "cancelled" | "abandoned" | "interrupted";
|
|
48
|
+
name: string;
|
|
49
|
+
shortName?: string;
|
|
50
|
+
type: "NOT_STARTED" | "LIVE" | "FINISHED" | "POSTPONED" | "CANCELLED" | "ABANDONED" | "INTERRUPTED";
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Match timing information
|
|
54
|
+
*/
|
|
55
|
+
export interface FUSportsMatchTiming {
|
|
56
|
+
kickoffTime: Date;
|
|
57
|
+
currentMinute?: number;
|
|
58
|
+
currentPeriod?: string;
|
|
59
|
+
phaseStartedAt?: Date;
|
|
60
|
+
finishedAt?: Date;
|
|
61
|
+
firstHalfStartedAt?: Date;
|
|
62
|
+
secondHalfStartedAt?: Date;
|
|
63
|
+
extraTimeFirstHalfStartedAt?: Date;
|
|
64
|
+
extraTimeSecondHalfStartedAt?: Date;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Match winner information
|
|
68
|
+
*/
|
|
69
|
+
export interface FUSportsMatchWinner {
|
|
70
|
+
competitorId: string;
|
|
71
|
+
reason?: "REGULAR_TIME" | "EXTRA_TIME" | "PENALTIES" | "FORFEIT" | "WALKOVER";
|
|
72
|
+
aggregate?: boolean;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Main Match model
|
|
76
|
+
* Sport-agnostic, works for football, tennis, basketball, cricket, etc.
|
|
77
|
+
*/
|
|
78
|
+
export interface FUSportsMatch {
|
|
79
|
+
id: string;
|
|
80
|
+
slug?: string;
|
|
81
|
+
status: FUSportsMatchStatus;
|
|
82
|
+
timing: FUSportsMatchTiming;
|
|
83
|
+
competitorOne: FUSportsCompetitor;
|
|
84
|
+
competitorTwo: FUSportsCompetitor;
|
|
85
|
+
competition?: FUSportsCompetition;
|
|
86
|
+
round?: {
|
|
87
|
+
id: string;
|
|
88
|
+
key: string;
|
|
89
|
+
name: string;
|
|
90
|
+
type: string;
|
|
91
|
+
};
|
|
92
|
+
group?: {
|
|
93
|
+
id: string;
|
|
94
|
+
name: string;
|
|
95
|
+
};
|
|
96
|
+
venue?: FUSportsVenue;
|
|
97
|
+
officials?: FUSportsOfficial[];
|
|
98
|
+
spectators?: number;
|
|
99
|
+
score?: FUSportsMatchScore;
|
|
100
|
+
mainEvents?: FUSportsMatchEvent[];
|
|
101
|
+
penaltyShootoutEvents?: FUSportsMatchEvent[];
|
|
102
|
+
winner?: FUSportsMatchWinner;
|
|
103
|
+
coverage?: "LIVE" | "UNKNOWN" | "HIGHLIGHTS";
|
|
104
|
+
lineupStatus?: "CONFIRMED" | "NOT_AVAILABLE" | "EXPECTED";
|
|
105
|
+
metadata?: Record<string, unknown>;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Simplified match for lists, fixtures, results
|
|
109
|
+
*/
|
|
110
|
+
export interface FUSportsMatchSimple {
|
|
111
|
+
id: string;
|
|
112
|
+
slug?: string;
|
|
113
|
+
competitorOne: {
|
|
114
|
+
id: string;
|
|
115
|
+
name: string;
|
|
116
|
+
shortName?: string;
|
|
117
|
+
logo?: string;
|
|
118
|
+
score?: string;
|
|
119
|
+
};
|
|
120
|
+
competitorTwo: {
|
|
121
|
+
id: string;
|
|
122
|
+
name: string;
|
|
123
|
+
shortName?: string;
|
|
124
|
+
logo?: string;
|
|
125
|
+
score?: string;
|
|
126
|
+
};
|
|
127
|
+
status: {
|
|
128
|
+
code: string;
|
|
129
|
+
name: string;
|
|
130
|
+
};
|
|
131
|
+
kickoffTime: Date;
|
|
132
|
+
venue?: string;
|
|
133
|
+
competition?: {
|
|
134
|
+
id: string;
|
|
135
|
+
name: string;
|
|
136
|
+
logo?: string;
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=match.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"match.types.d.ts","sourceRoot":"","sources":["../../../src/lib/types/canonical/match.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Odds FUSports types
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Betting operator branding information
|
|
6
|
+
*/
|
|
7
|
+
export interface FUSportsBettingOperatorBranding {
|
|
8
|
+
backgroundColor?: string;
|
|
9
|
+
textColor?: string;
|
|
10
|
+
logo?: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Betting operator information
|
|
14
|
+
*/
|
|
15
|
+
export interface FUSportsBettingOperator {
|
|
16
|
+
id: string;
|
|
17
|
+
name: string;
|
|
18
|
+
url?: string;
|
|
19
|
+
branding?: FUSportsBettingOperatorBranding;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Single betting selection/outcome
|
|
23
|
+
*/
|
|
24
|
+
export interface FUSportsOddSelection {
|
|
25
|
+
id: string;
|
|
26
|
+
name: string;
|
|
27
|
+
code: string;
|
|
28
|
+
value?: string;
|
|
29
|
+
odds: string;
|
|
30
|
+
oddsOld?: string;
|
|
31
|
+
movement?: "UP" | "DOWN" | "NONE";
|
|
32
|
+
url?: string;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Market period (e.g., full time, first half)
|
|
36
|
+
*/
|
|
37
|
+
export interface FUSportsMarketPeriod {
|
|
38
|
+
id: string;
|
|
39
|
+
type: string;
|
|
40
|
+
name: string;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Market type (e.g., 1x2, over/under)
|
|
44
|
+
*/
|
|
45
|
+
export interface FUSportsMarketType {
|
|
46
|
+
id: string;
|
|
47
|
+
code: string;
|
|
48
|
+
name: string;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Betting market with selections
|
|
52
|
+
*/
|
|
53
|
+
export interface FUSportsOddMarket {
|
|
54
|
+
type: FUSportsMarketType;
|
|
55
|
+
period: FUSportsMarketPeriod;
|
|
56
|
+
selections: FUSportsOddSelection[];
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Odds from a specific betting operator
|
|
60
|
+
*/
|
|
61
|
+
export interface FUSportsBettingOperatorOdds {
|
|
62
|
+
operator: FUSportsBettingOperator;
|
|
63
|
+
type: "PRE_EVENT" | "LIVE";
|
|
64
|
+
markets: FUSportsOddMarket[];
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* All odds for a match
|
|
68
|
+
*/
|
|
69
|
+
export interface FUSportsMatchOdds {
|
|
70
|
+
matchId: string;
|
|
71
|
+
operators: FUSportsBettingOperatorOdds[];
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=odds.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"odds.types.d.ts","sourceRoot":"","sources":["../../../src/lib/types/canonical/odds.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,+BAA+B;IAC5C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,+BAA+B,CAAC;CAC9C;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,UAAU,EAAE,oBAAoB,EAAE,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IACxC,QAAQ,EAAE,uBAAuB,CAAC;IAClC,IAAI,EAAE,WAAW,GAAG,MAAM,CAAC;IAC3B,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,2BAA2B,EAAE,CAAC;CAC5C"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Standing and form FUSports types
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Form/Recent results
|
|
6
|
+
*/
|
|
7
|
+
export interface FUSportsCompetitorForm {
|
|
8
|
+
competitorId: string;
|
|
9
|
+
results: Array<{
|
|
10
|
+
matchId: string;
|
|
11
|
+
result: "W" | "D" | "L";
|
|
12
|
+
score?: string;
|
|
13
|
+
opponent: {
|
|
14
|
+
id: string;
|
|
15
|
+
name: string;
|
|
16
|
+
logo?: string;
|
|
17
|
+
};
|
|
18
|
+
date: Date;
|
|
19
|
+
competition?: {
|
|
20
|
+
id: string;
|
|
21
|
+
name: string;
|
|
22
|
+
};
|
|
23
|
+
}>;
|
|
24
|
+
formString?: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Standing/Ranking entry
|
|
28
|
+
*/
|
|
29
|
+
export interface FUSportsStandingEntry {
|
|
30
|
+
rank: number;
|
|
31
|
+
competitor: {
|
|
32
|
+
id: string;
|
|
33
|
+
name: string;
|
|
34
|
+
shortName?: string;
|
|
35
|
+
logo?: string;
|
|
36
|
+
};
|
|
37
|
+
stats: {
|
|
38
|
+
played?: number;
|
|
39
|
+
won?: number;
|
|
40
|
+
drawn?: number;
|
|
41
|
+
lost?: number;
|
|
42
|
+
goalsFor?: number;
|
|
43
|
+
goalsAgainst?: number;
|
|
44
|
+
goalDifference?: number;
|
|
45
|
+
points?: number;
|
|
46
|
+
[key: string]: number | undefined;
|
|
47
|
+
};
|
|
48
|
+
form?: string;
|
|
49
|
+
metadata?: {
|
|
50
|
+
promoted?: boolean;
|
|
51
|
+
relegated?: boolean;
|
|
52
|
+
playoffQualified?: boolean;
|
|
53
|
+
championsLeagueQualified?: boolean;
|
|
54
|
+
[key: string]: unknown;
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=standing.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"standing.types.d.ts","sourceRoot":"","sources":["../../../src/lib/types/canonical/standing.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,KAAK,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;QACxB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE;YACN,EAAE,EAAE,MAAM,CAAC;YACX,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,IAAI,EAAE,IAAI,CAAC;QACX,WAAW,CAAC,EAAE;YACV,EAAE,EAAE,MAAM,CAAC;YACX,IAAI,EAAE,MAAM,CAAC;SAChB,CAAC;KACL,CAAC,CAAC;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE;QACR,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,IAAI,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,KAAK,EAAE;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;KACrC,CAAC;IACF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,wBAAwB,CAAC,EAAE,OAAO,CAAC;QACnC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KAC1B,CAAC;CACL"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Statistics FUSports types
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Single statistic entry - generic key-value pair with display metadata
|
|
6
|
+
*/
|
|
7
|
+
export interface FUSportsStatisticEntry {
|
|
8
|
+
key: string;
|
|
9
|
+
value: string;
|
|
10
|
+
label: string;
|
|
11
|
+
unit?: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Competitor statistics in a match - sport-agnostic array of stats
|
|
15
|
+
*/
|
|
16
|
+
export interface FUSportsCompetitorStatistics {
|
|
17
|
+
competitorId: string;
|
|
18
|
+
statistics: FUSportsStatisticEntry[];
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Match statistics for both competitors
|
|
22
|
+
*/
|
|
23
|
+
export interface FUSportsMatchStatistics {
|
|
24
|
+
competitorOne: FUSportsCompetitorStatistics;
|
|
25
|
+
competitorTwo: FUSportsCompetitorStatistics;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=statistics.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"statistics.types.d.ts","sourceRoot":"","sources":["../../../src/lib/types/canonical/statistics.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,sBAAsB,EAAE,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACpC,aAAa,EAAE,4BAA4B,CAAC;IAC5C,aAAa,EAAE,4BAA4B,CAAC;CAC/C"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type definitions for fansunited-data-layer
|
|
3
|
+
*/
|
|
4
|
+
export type { RawAsset, RawAssets, RawCountry, RawCity, RawVenueProfile, RawVenue, RawMatchVenue, RawTournament, RawSeason, RawGroup, RawStage, RawRound, RawCompetitionCountry, RawCompetition, RawPartialPlayer, RawTeamScore, RawScore, RawFormMatchStatus, RawFormMatchResult, RawFormMatchParticipant, RawFormMatch, ApiError, } from "../api/sportal365-sports/shared/types";
|
|
5
|
+
export type { RawTeamSocial, RawCoach, RawShirtColor, RawTeamProfile, GetFootballTeamOptions, } from "../api/sportal365-sports/football/teams/team.types";
|
|
6
|
+
export type { RawMatchStatusType, RawMatchStatus, RawMatchTeam, RawMatchEventTypeCode, RawMatchEvent, RawMatchReferee, RawMatchWinnerReason, RawMatchOrAggregateWinner, RawMatchWinner, RawMatchMinute, RawMatchOdd, RawMatchCoverage, RawLineupStatus, RawMatch, OddType, ScopeType, OddFormat, MarketType, OptionalMatchData, GetFootballMatchOptions, } from "../api/sportal365-sports/football/matches/types";
|
|
7
|
+
export type { FUSportsCountry, FUSportsCompetitor, FUSportsCompetition, FUSportsVenue, FUSportsOfficial, FUSportsPlayer, FUSportsMatchPlayer, FUSportsCoach, FUSportsMatchScore, FUSportsMatchStatus, FUSportsMatchTiming, FUSportsMatchWinner, FUSportsMatch, FUSportsMatchSimple, FUSportsFootballEventType, FUSportsOtherEventType, FUSportsMatchEvent, FUSportsLineupPlayer, FUSportsCompetitorLineup, FUSportsMatchLineups, FUSportsStatisticEntry, FUSportsCompetitorStatistics, FUSportsMatchStatistics, FUSportsBettingOperatorBranding, FUSportsBettingOperator, FUSportsOddSelection, FUSportsMarketPeriod, FUSportsMarketType, FUSportsOddMarket, FUSportsBettingOperatorOdds, FUSportsMatchOdds, FUSportsCommentaryDetail, FUSportsCommentaryMeta, FUSportsCommentaryItem, FUSportsStandingEntry, FUSportsCompetitorForm, } from "./canonical";
|
|
8
|
+
export type { DataLayerConfig, Sportal365SportsConfig } from "../config/types";
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lib/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EAER,QAAQ,EACR,SAAS,EAET,UAAU,EACV,OAAO,EACP,eAAe,EACf,QAAQ,EACR,aAAa,EAEb,aAAa,EACb,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,qBAAqB,EACrB,cAAc,EAEd,gBAAgB,EAEhB,YAAY,EACZ,QAAQ,EAER,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,YAAY,EAEZ,QAAQ,GACX,MAAM,uCAAuC,CAAC;AAG/C,YAAY,EACR,aAAa,EACb,QAAQ,EACR,aAAa,EACb,cAAc,EACd,sBAAsB,GACzB,MAAM,oDAAoD,CAAC;AAG5D,YAAY,EACR,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,yBAAyB,EACzB,cAAc,EACd,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,QAAQ,EACR,OAAO,EACP,SAAS,EACT,SAAS,EACT,UAAU,EACV,iBAAiB,EACjB,uBAAuB,GAC1B,MAAM,iDAAiD,CAAC;AAGzD,YAAY,EAER,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,aAAa,EAEb,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EAEnB,yBAAyB,EACzB,sBAAsB,EACtB,kBAAkB,EAElB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EAEpB,sBAAsB,EACtB,4BAA4B,EAC5B,uBAAuB,EAEvB,+BAA+B,EAC/B,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,2BAA2B,EAC3B,iBAAiB,EAEjB,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EAEtB,qBAAqB,EACrB,sBAAsB,GACzB,MAAM,aAAa,CAAC;AAGrB,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC"}
|