@times-components/ts-components 1.88.0 → 1.88.2-alpha.4

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 (52) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/components/opta/football/fixtures-ticker/OptaFootballFixturesTicker.js +2 -2
  3. package/dist/components/opta/football/fixtures-ticker/styles.js +73 -8
  4. package/dist/components/opta/football/fixtures-tournament/OptaFootballFixturesTournament.d.ts +9 -0
  5. package/dist/components/opta/football/fixtures-tournament/OptaFootballFixturesTournament.js +57 -0
  6. package/dist/components/opta/football/fixtures-tournament/OptaFootballFixturesTournament.stories.d.ts +1 -0
  7. package/dist/components/opta/football/fixtures-tournament/OptaFootballFixturesTournament.stories.js +21 -0
  8. package/dist/components/opta/football/fixtures-tournament/__tests__/OptaFootballFixtures.test.d.ts +2 -0
  9. package/dist/components/opta/football/fixtures-tournament/__tests__/OptaFootballFixtures.test.js +39 -0
  10. package/dist/components/opta/football/fixtures-tournament/styles.d.ts +4 -0
  11. package/dist/components/opta/football/fixtures-tournament/styles.js +266 -0
  12. package/dist/components/opta/football/player-stats/OptaFootballPlayerStats.d.ts +8 -0
  13. package/dist/components/opta/football/player-stats/OptaFootballPlayerStats.js +47 -0
  14. package/dist/components/opta/football/player-stats/OptaFootballPlayerStats.stories.d.ts +1 -0
  15. package/dist/components/opta/football/player-stats/OptaFootballPlayerStats.stories.js +26 -0
  16. package/dist/components/opta/football/player-stats/__tests__/OptaFootballMatchStats.test.d.ts +2 -0
  17. package/dist/components/opta/football/player-stats/__tests__/OptaFootballMatchStats.test.js +41 -0
  18. package/dist/components/opta/football/player-stats/styles.d.ts +1 -0
  19. package/dist/components/opta/football/player-stats/styles.js +153 -0
  20. package/dist/components/opta/football/shared-styles.js +23 -7
  21. package/dist/components/opta/football/standings/OptaFootballStandings.d.ts +1 -0
  22. package/dist/components/opta/football/standings/OptaFootballStandings.js +4 -4
  23. package/dist/components/opta/football/standings/OptaFootballStandings.stories.js +6 -1
  24. package/dist/components/opta/football/standings/__tests__/OptaFootballStandings.test.js +10 -1
  25. package/dist/components/opta/football/standings/styles.d.ts +3 -1
  26. package/dist/components/opta/football/standings/styles.js +5 -1
  27. package/dist/components/opta/utils/replaceNationalTeamDetails.js +2 -2
  28. package/package.json +16 -16
  29. package/rnw.js +1 -1
  30. package/src/components/opta/football/fixtures/__tests__/__snapshots__/OptaFootballFixtures.test.tsx.snap +2 -2
  31. package/src/components/opta/football/fixtures-ticker/OptaFootballFixturesTicker.tsx +1 -1
  32. package/src/components/opta/football/fixtures-ticker/__tests__/__snapshots__/OptaFootballFixturesTicker.test.tsx.snap +8 -8
  33. package/src/components/opta/football/fixtures-ticker/styles.ts +72 -7
  34. package/src/components/opta/football/fixtures-tournament/OptaFootballFixturesTournament.stories.tsx +32 -0
  35. package/src/components/opta/football/fixtures-tournament/OptaFootballFixturesTournament.tsx +93 -0
  36. package/src/components/opta/football/fixtures-tournament/__tests__/OptaFootballFixtures.test.tsx +51 -0
  37. package/src/components/opta/football/fixtures-tournament/__tests__/__snapshots__/OptaFootballFixtures.test.tsx.snap +34 -0
  38. package/src/components/opta/football/fixtures-tournament/styles.ts +273 -0
  39. package/src/components/opta/football/match-stats/__tests__/__snapshots__/OptaFootballMatchStats.test.tsx.snap +2 -2
  40. package/src/components/opta/football/player-stats/OptaFootballPlayerStats.stories.tsx +44 -0
  41. package/src/components/opta/football/player-stats/OptaFootballPlayerStats.tsx +81 -0
  42. package/src/components/opta/football/player-stats/__tests__/OptaFootballMatchStats.test.tsx +53 -0
  43. package/src/components/opta/football/player-stats/__tests__/__snapshots__/OptaFootballMatchStats.test.tsx.snap +34 -0
  44. package/src/components/opta/football/player-stats/styles.ts +154 -0
  45. package/src/components/opta/football/shared-styles.ts +22 -6
  46. package/src/components/opta/football/standings/OptaFootballStandings.stories.tsx +12 -0
  47. package/src/components/opta/football/standings/OptaFootballStandings.tsx +33 -28
  48. package/src/components/opta/football/standings/__tests__/OptaFootballStandings.test.tsx +15 -0
  49. package/src/components/opta/football/standings/__tests__/__snapshots__/OptaFootballStandings.test.tsx.snap +35 -2
  50. package/src/components/opta/football/standings/styles.ts +7 -1
  51. package/src/components/opta/football/summary/__tests__/__snapshots__/OptaFootballSummary.test.tsx.snap +2 -2
  52. package/src/components/opta/utils/replaceNationalTeamDetails.ts +1 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [1.88.1](https://github.com/newsuk/times-components/compare/@times-components/ts-components@1.88.0...@times-components/ts-components@1.88.1) (2024-06-03)
7
+
8
+ **Note:** Version bump only for package @times-components/ts-components
9
+
10
+
11
+
12
+
13
+
6
14
  # [1.88.0](https://github.com/newsuk/times-components/compare/@times-components/ts-components@1.87.0...@times-components/ts-components@1.88.0) (2024-05-31)
7
15
 
8
16
 
@@ -45,7 +45,7 @@ export const OptaFootballFixturesTicker = React.memo(({ season, competition, dat
45
45
  isNationalComp && useUpdateNationalTeamDetails(ref, 'Opta-TeamName');
46
46
  return (React.createElement(React.Fragment, null,
47
47
  React.createElement(WidgetContainer, { ref: ref }),
48
- !isReady && (React.createElement(PlaceholderContainer, { height: 100 },
48
+ !isReady && (React.createElement(PlaceholderContainer, { height: 80 },
49
49
  React.createElement(Placeholder, null)))));
50
50
  });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3B0YUZvb3RiYWxsRml4dHVyZXNUaWNrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9vcHRhL2Zvb3RiYWxsL2ZpeHR1cmVzLXRpY2tlci9PcHRhRm9vdGJhbGxGaXh0dXJlc1RpY2tlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBRW5ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV0RCxPQUFPLEVBQ0wsWUFBWSxFQUNaLGNBQWMsRUFDZCxVQUFVLEVBQ1YsV0FBVyxFQUNYLGFBQWEsRUFDZCxNQUFNLG9CQUFvQixDQUFDO0FBRTVCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFeEYsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBUWxDLEtBQUssQ0FBQyxJQUFJLENBQ2IsQ0FBQyxFQUNDLE1BQU0sRUFDTixXQUFXLEVBQ1gsU0FBUyxFQUNULE9BQU8sRUFDUCxVQUFVLEVBQ1YsV0FBVyxFQUNYLEtBQUssRUFDTixFQUFFLEVBQUU7SUFDSCxNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsU0FBUyxFQUFrQixDQUFDO0lBRTlDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLEdBQUcsUUFBUSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBQ3ZELE1BQU0sY0FBYyxHQUFHLHFCQUFxQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRTFELFNBQVMsQ0FDUCxHQUFHLEVBQUU7UUFDSCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUM7UUFFekIsWUFBWSxFQUFFLENBQUM7UUFDZixjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdEIsVUFBVSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNyQixJQUFJLEdBQUcsQ0FBQyxPQUFPLEVBQUU7Z0JBQ2YsR0FBRyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsV0FBVyxDQUFDLGFBQWEsRUFBRTtvQkFDakQsS0FBSztvQkFDTCxNQUFNLEVBQUUsVUFBVTtvQkFDbEIsTUFBTTtvQkFDTixXQUFXO29CQUNYLFNBQVM7b0JBQ1QsT0FBTztvQkFDUCxVQUFVO29CQUNWLFdBQVc7b0JBQ1gsS0FBSztvQkFDTCxJQUFJLEVBQUUsSUFBSTtvQkFDVixnQkFBZ0IsRUFBRSxJQUFJO29CQUN0QixRQUFRLEVBQUUsT0FBTztvQkFDakIsV0FBVyxFQUFFLE9BQU87b0JBQ3BCLFlBQVksRUFBRSxLQUFLO29CQUNuQixRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixhQUFhLEVBQUUsSUFBSTtvQkFDbkIsV0FBVyxFQUFFLENBQUMsY0FBYztvQkFDNUIsU0FBUyxFQUFFLElBQUk7b0JBQ2YsU0FBUyxFQUFFLElBQUk7b0JBQ2YsV0FBVyxFQUFFLFlBQVk7aUJBQzFCLENBQUMsQ0FBQyxTQUFTLENBQUM7Z0JBRWIsYUFBYSxFQUFFLENBQUM7Z0JBQ2hCLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNsQjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxFQUNELENBQUMsR0FBRyxDQUFDLENBQ04sQ0FBQztJQUVGLGNBQWMsSUFBSSw0QkFBNEIsQ0FBQyxHQUFHLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFFckUsT0FBTyxDQUNMO1FBQ0Usb0JBQUMsZUFBZSxJQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUk7UUFFNUIsQ0FBQyxPQUFPLElBQUksQ0FDWCxvQkFBQyxvQkFBb0IsSUFBQyxNQUFNLEVBQUUsR0FBRztZQUMvQixvQkFBQyxXQUFXLE9BQUcsQ0FDTSxDQUN4QixDQUNBLENBQ0osQ0FBQztBQUNKLENBQUMsQ0FDRixDQUFDIn0=
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3B0YUZvb3RiYWxsRml4dHVyZXNUaWNrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9vcHRhL2Zvb3RiYWxsL2ZpeHR1cmVzLXRpY2tlci9PcHRhRm9vdGJhbGxGaXh0dXJlc1RpY2tlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBRW5ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV0RCxPQUFPLEVBQ0wsWUFBWSxFQUNaLGNBQWMsRUFDZCxVQUFVLEVBQ1YsV0FBVyxFQUNYLGFBQWEsRUFDZCxNQUFNLG9CQUFvQixDQUFDO0FBRTVCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFeEYsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBUWxDLEtBQUssQ0FBQyxJQUFJLENBQ2IsQ0FBQyxFQUNDLE1BQU0sRUFDTixXQUFXLEVBQ1gsU0FBUyxFQUNULE9BQU8sRUFDUCxVQUFVLEVBQ1YsV0FBVyxFQUNYLEtBQUssRUFDTixFQUFFLEVBQUU7SUFDSCxNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsU0FBUyxFQUFrQixDQUFDO0lBRTlDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLEdBQUcsUUFBUSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBQ3ZELE1BQU0sY0FBYyxHQUFHLHFCQUFxQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRTFELFNBQVMsQ0FDUCxHQUFHLEVBQUU7UUFDSCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUM7UUFFekIsWUFBWSxFQUFFLENBQUM7UUFDZixjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdEIsVUFBVSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNyQixJQUFJLEdBQUcsQ0FBQyxPQUFPLEVBQUU7Z0JBQ2YsR0FBRyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsV0FBVyxDQUFDLGFBQWEsRUFBRTtvQkFDakQsS0FBSztvQkFDTCxNQUFNLEVBQUUsVUFBVTtvQkFDbEIsTUFBTTtvQkFDTixXQUFXO29CQUNYLFNBQVM7b0JBQ1QsT0FBTztvQkFDUCxVQUFVO29CQUNWLFdBQVc7b0JBQ1gsS0FBSztvQkFDTCxJQUFJLEVBQUUsSUFBSTtvQkFDVixnQkFBZ0IsRUFBRSxJQUFJO29CQUN0QixRQUFRLEVBQUUsT0FBTztvQkFDakIsV0FBVyxFQUFFLE9BQU87b0JBQ3BCLFlBQVksRUFBRSxLQUFLO29CQUNuQixRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixhQUFhLEVBQUUsSUFBSTtvQkFDbkIsV0FBVyxFQUFFLENBQUMsY0FBYztvQkFDNUIsU0FBUyxFQUFFLElBQUk7b0JBQ2YsU0FBUyxFQUFFLElBQUk7b0JBQ2YsV0FBVyxFQUFFLFlBQVk7aUJBQzFCLENBQUMsQ0FBQyxTQUFTLENBQUM7Z0JBRWIsYUFBYSxFQUFFLENBQUM7Z0JBQ2hCLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNsQjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxFQUNELENBQUMsR0FBRyxDQUFDLENBQ04sQ0FBQztJQUVGLGNBQWMsSUFBSSw0QkFBNEIsQ0FBQyxHQUFHLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFFckUsT0FBTyxDQUNMO1FBQ0Usb0JBQUMsZUFBZSxJQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUk7UUFFNUIsQ0FBQyxPQUFPLElBQUksQ0FDWCxvQkFBQyxvQkFBb0IsSUFBQyxNQUFNLEVBQUUsRUFBRTtZQUM5QixvQkFBQyxXQUFXLE9BQUcsQ0FDTSxDQUN4QixDQUNBLENBQ0osQ0FBQztBQUNKLENBQUMsQ0FDRixDQUFDIn0=
@@ -41,7 +41,37 @@ export const WidgetContainer = styled(WidgetContainerBase) `
41
41
  font-family: Roboto !important;
42
42
  }
43
43
 
44
+ .Opta-Scroll,
45
+ .Opta-Window {
46
+ height: 80px;
47
+ }
48
+
44
49
  @media (max-width: ${breakpoints.small}px) {
50
+ .Opta-Scroll {
51
+ &::before,
52
+ &::after {
53
+ content: '';
54
+ pointer-events: none;
55
+ position: absolute;
56
+ z-index: 15;
57
+ transition: all 0.3s linear 0s;
58
+ background-image: linear-gradient(
59
+ -90deg,
60
+ rgba(255, 255, 255, 0) 0%,
61
+ rgb(255, 255, 255) 100%
62
+ );
63
+ width: 64px;
64
+ height: 100%;
65
+ bottom: 0px;
66
+ left: 0;
67
+ }
68
+ &::after {
69
+ left: unset;
70
+ right: 0px;
71
+ transform: rotate(180deg);
72
+ }
73
+ }
74
+
45
75
  .Opta-Window {
46
76
  left: 0 !important;
47
77
  right: 0 !important;
@@ -50,10 +80,18 @@ export const WidgetContainer = styled(WidgetContainerBase) `
50
80
 
51
81
  .Opta-Scroller {
52
82
  background-color: white !important;
53
-
54
- border: 1px solid #999999 !important;
83
+ border: 1px solid #999 !important;
55
84
  border-radius: 2px;
85
+ box-sizing: border-box;
56
86
  padding: 39px 0 !important;
87
+ width: 28px !important;
88
+
89
+ &:hover {
90
+ background-color: #f5f5f5 !important;
91
+ }
92
+ &:active {
93
+ background-color: #eee !important;
94
+ }
57
95
 
58
96
  &::after {
59
97
  background: rgba(0, 0, 0, 0)
@@ -78,11 +116,18 @@ export const WidgetContainer = styled(WidgetContainerBase) `
78
116
  @media (max-width: ${breakpoints.small}px) {
79
117
  display: none !important;
80
118
  }
119
+ @media (max-width: ${breakpoints.medium}px) {
120
+ width: 18px !important;
121
+ }
122
+ @media (max-width: ${breakpoints.wide}px) {
123
+ width: 24px !important;
124
+ }
81
125
  }
82
126
 
83
127
  .Opta-fixture {
84
- background-color: #f5f5f5;
128
+ background-color: white;
85
129
  border-radius: 4px;
130
+ box-sizing: border-box;
86
131
  height: 80px;
87
132
  width: 160px !important;
88
133
  margin-inline: 4px;
@@ -106,16 +151,36 @@ export const WidgetContainer = styled(WidgetContainerBase) `
106
151
  .Opta-timings {
107
152
  height: 24px !important;
108
153
  order: -1;
109
- color: #aaaaaa !important;
154
+ color: #696969 !important;
155
+ }
156
+
157
+ .Opta-timings .Opta-Time * {
158
+ font-weight: 700;
159
+ color: #01000d !important;
110
160
  }
111
161
 
112
162
  .Opta-TeamName,
113
163
  .Opta-Team-Score {
114
164
  color: #01000d !important;
115
- font-weight: 700 !important;
165
+ font-family: 'Roboto-Medium' !important;
166
+ }
167
+
168
+ &.Opta-prematch {
169
+ background-color: #f5f5f5;
170
+ .Opta-Team-Score::after {
171
+ content: '-';
172
+ }
173
+ .Opta-timings .Opta-Time * {
174
+ font-weight: 400;
175
+ color: #696969 !important;
176
+ }
177
+ }
178
+
179
+ &.Opta-result {
180
+ border: 1px solid #ccc;
116
181
  }
117
- &.Opta-prematch .Opta-Team-Score::after {
118
- content: '-';
182
+ &.Opta-live {
183
+ border: 1px solid #01000d;
119
184
  }
120
185
 
121
186
  .Opta-Image-Team-Small {
@@ -338,4 +403,4 @@ export const WidgetContainer = styled(WidgetContainerBase) `
338
403
  }
339
404
  }
340
405
  `;
341
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvb3B0YS9mb290YmFsbC9maXh0dXJlcy10aWNrZXIvc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sTUFBTSxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTlFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXZELE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFBOzs7Ozs7Ozs7Ozs7Ozs7NkJBZXJDLEtBQUssQ0FBQyxRQUFROzs7Ozs7Ozs7bUNBU1IsV0FBVyxDQUFDLE1BQU07Ozs7Ozs7Ozs7Q0FVcEQsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQTs7Ozs7dUJBS25DLFdBQVcsQ0FBQyxLQUFLOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O3lCQWtDZixXQUFXLENBQUMsS0FBSzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2dDQXlEVixPQUFPLENBQUMsVUFBVSxDQUFDLG1CQUFtQjs7Ozs7dUJBSy9DLE9BQU8sQ0FBQyxVQUFVLENBQUMsV0FBVzs2QkFDeEIsS0FBSyxDQUFDLFVBQVU7Ozs7Ozs7Ozs7Ozs7bUNBYVYsV0FBVyxDQUFDLE1BQU07Ozs7Ozs7Ozs7O2lDQVdwQixXQUFXLENBQUMsTUFBTTs7Ozs7Ozt1QkFPNUIsT0FBTyxDQUFDLFVBQVUsQ0FBQyxXQUFXOzZCQUN4QixLQUFLLENBQUMsUUFBUTs7Ozs7Ozs7eUJBUWxCLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSzsrQkFDZixLQUFLLENBQUMsVUFBVTs7Ozs7Ozs7cUNBUVYsV0FBVyxDQUFDLE1BQU07Ozs7Ozs7Ozs7Ozs7Ozs7OztxQ0FrQmxCLFdBQVcsQ0FBQyxNQUFNOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O3FDQXlCbEIsV0FBVyxDQUFDLE1BQU07Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7cUNBK0JsQixXQUFXLENBQUMsTUFBTTs7Ozs7O21DQU1wQixXQUFXLENBQUMsTUFBTTs7Ozs7Ozs7Ozs7O3VCQVk5QixPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU87NkJBQ3BCLEtBQUssQ0FBQyxVQUFVOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztpQ0FnQ1osT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPO3VDQUNwQixLQUFLLENBQUMsVUFBVTs7Ozs7Ozs7Ozs7bUNBV3BCLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSzs7Ozs7Ozs7Ozs7OztDQWF2RCxDQUFDIn0=
406
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvb3B0YS9mb290YmFsbC9maXh0dXJlcy10aWNrZXIvc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sTUFBTSxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTlFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXZELE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFBOzs7Ozs7Ozs7Ozs7Ozs7NkJBZXJDLEtBQUssQ0FBQyxRQUFROzs7Ozs7Ozs7bUNBU1IsV0FBVyxDQUFDLE1BQU07Ozs7Ozs7Ozs7Q0FVcEQsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQTs7Ozs7Ozs7Ozt1QkFVbkMsV0FBVyxDQUFDLEtBQUs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7eUJBbUVmLFdBQVcsQ0FBQyxLQUFLOzs7eUJBR2pCLFdBQVcsQ0FBQyxNQUFNOzs7eUJBR2xCLFdBQVcsQ0FBQyxJQUFJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Z0NBOEVULE9BQU8sQ0FBQyxVQUFVLENBQUMsbUJBQW1COzs7Ozt1QkFLL0MsT0FBTyxDQUFDLFVBQVUsQ0FBQyxXQUFXOzZCQUN4QixLQUFLLENBQUMsVUFBVTs7Ozs7Ozs7Ozs7OzttQ0FhVixXQUFXLENBQUMsTUFBTTs7Ozs7Ozs7Ozs7aUNBV3BCLFdBQVcsQ0FBQyxNQUFNOzs7Ozs7O3VCQU81QixPQUFPLENBQUMsVUFBVSxDQUFDLFdBQVc7NkJBQ3hCLEtBQUssQ0FBQyxRQUFROzs7Ozs7Ozt5QkFRbEIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLOytCQUNmLEtBQUssQ0FBQyxVQUFVOzs7Ozs7OztxQ0FRVixXQUFXLENBQUMsTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7O3FDQWtCbEIsV0FBVyxDQUFDLE1BQU07Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7cUNBeUJsQixXQUFXLENBQUMsTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztxQ0ErQmxCLFdBQVcsQ0FBQyxNQUFNOzs7Ozs7bUNBTXBCLFdBQVcsQ0FBQyxNQUFNOzs7Ozs7Ozs7Ozs7dUJBWTlCLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTzs2QkFDcEIsS0FBSyxDQUFDLFVBQVU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2lDQWdDWixPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU87dUNBQ3BCLEtBQUssQ0FBQyxVQUFVOzs7Ozs7Ozs7OzttQ0FXcEIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLOzs7Ozs7Ozs7Ozs7O0NBYXZELENBQUMifQ==
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ export declare const OptaFootballFixturesTournament: React.FC<{
3
+ season: string;
4
+ competition: string;
5
+ date_from?: string;
6
+ date_to?: string;
7
+ round?: string;
8
+ full_width?: boolean;
9
+ }>;
@@ -0,0 +1,57 @@
1
+ import React, { useState, useEffect } from 'react';
2
+ import { Placeholder } from '@times-components/image';
3
+ import { initSettings, initStyleSheet, initScript, initElement, initComponent } from '../../utils/config';
4
+ import { Container, PlaceholderContainer } from '../shared-styles';
5
+ import { WidgetContainer } from './styles';
6
+ import { isNationalCompetition } from '../../utils/replaceNationalTeamDetails';
7
+ import { useUpdateNationalTeamDetails } from '../../utils/useUpdateNationalTeamDetails';
8
+ export const OptaFootballFixturesTournament = React.memo(({ season, competition, date_from, date_to, round, full_width }) => {
9
+ const ref = React.createRef();
10
+ const [isReady, setIsReady] = useState(false);
11
+ const isNationalComp = isNationalCompetition(competition);
12
+ useEffect(() => {
13
+ const sport = 'football';
14
+ initSettings();
15
+ initStyleSheet(sport);
16
+ initScript().then(() => {
17
+ if (ref.current) {
18
+ ref.current.innerHTML = initElement('opta-widget', {
19
+ sport,
20
+ widget: 'fixtures',
21
+ season,
22
+ competition,
23
+ date_from,
24
+ date_to,
25
+ round,
26
+ live: true,
27
+ grouping: 'matchday',
28
+ show_grouping: true,
29
+ sub_grouping: 'date|matchday|group',
30
+ show_subgrouping: true,
31
+ show_crests: !isNationalComp,
32
+ date_format: 'dddd MMMM D YYYY',
33
+ breakpoints: 520
34
+ }, initElement('opta-widget', {
35
+ sport,
36
+ widget: 'match_summary',
37
+ season: '',
38
+ competition: '',
39
+ match: '',
40
+ live: true,
41
+ show_crests: true,
42
+ show_goals: true,
43
+ show_cards: 'red',
44
+ breakpoints: '520'
45
+ })).outerHTML;
46
+ initComponent();
47
+ setIsReady(true);
48
+ }
49
+ });
50
+ }, []);
51
+ isNationalComp && useUpdateNationalTeamDetails(ref, 'Opta-Team');
52
+ return (React.createElement(Container, { border: isReady, fullWidth: full_width },
53
+ React.createElement(WidgetContainer, { ref: ref, isNationalComp: isNationalComp }),
54
+ !isReady && (React.createElement(PlaceholderContainer, null,
55
+ React.createElement(Placeholder, null)))));
56
+ });
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3B0YUZvb3RiYWxsRml4dHVyZXNUb3VybmFtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvb3B0YS9mb290YmFsbC9maXh0dXJlcy10b3VybmFtZW50L09wdGFGb290YmFsbEZpeHR1cmVzVG91cm5hbWVudC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBRW5ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV0RCxPQUFPLEVBQ0wsWUFBWSxFQUNaLGNBQWMsRUFDZCxVQUFVLEVBQ1YsV0FBVyxFQUNYLGFBQWEsRUFDZCxNQUFNLG9CQUFvQixDQUFDO0FBRTVCLE9BQU8sRUFBRSxTQUFTLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRXhGLE1BQU0sQ0FBQyxNQUFNLDhCQUE4QixHQU90QyxLQUFLLENBQUMsSUFBSSxDQUNiLENBQUMsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUU7SUFDakUsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLFNBQVMsRUFBa0IsQ0FBQztJQUU5QyxNQUFNLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxHQUFHLFFBQVEsQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUN2RCxNQUFNLGNBQWMsR0FBRyxxQkFBcUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUUxRCxTQUFTLENBQUMsR0FBRyxFQUFFO1FBQ2IsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDO1FBRXpCLFlBQVksRUFBRSxDQUFDO1FBQ2YsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXRCLFVBQVUsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDckIsSUFBSSxHQUFHLENBQUMsT0FBTyxFQUFFO2dCQUNmLEdBQUcsQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLFdBQVcsQ0FDakMsYUFBYSxFQUNiO29CQUNFLEtBQUs7b0JBQ0wsTUFBTSxFQUFFLFVBQVU7b0JBQ2xCLE1BQU07b0JBQ04sV0FBVztvQkFDWCxTQUFTO29CQUNULE9BQU87b0JBQ1AsS0FBSztvQkFDTCxJQUFJLEVBQUUsSUFBSTtvQkFDVixRQUFRLEVBQUUsVUFBVTtvQkFDcEIsYUFBYSxFQUFFLElBQUk7b0JBQ25CLFlBQVksRUFBRSxxQkFBcUI7b0JBQ25DLGdCQUFnQixFQUFFLElBQUk7b0JBQ3RCLFdBQVcsRUFBRSxDQUFDLGNBQWM7b0JBQzVCLFdBQVcsRUFBRSxrQkFBa0I7b0JBQy9CLFdBQVcsRUFBRSxHQUFHO2lCQUNqQixFQUNELFdBQVcsQ0FBQyxhQUFhLEVBQUU7b0JBQ3pCLEtBQUs7b0JBQ0wsTUFBTSxFQUFFLGVBQWU7b0JBQ3ZCLE1BQU0sRUFBRSxFQUFFO29CQUNWLFdBQVcsRUFBRSxFQUFFO29CQUNmLEtBQUssRUFBRSxFQUFFO29CQUNULElBQUksRUFBRSxJQUFJO29CQUNWLFdBQVcsRUFBRSxJQUFJO29CQUNqQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsVUFBVSxFQUFFLEtBQUs7b0JBQ2pCLFdBQVcsRUFBRSxLQUFLO2lCQUNuQixDQUFDLENBQ0gsQ0FBQyxTQUFTLENBQUM7Z0JBRVosYUFBYSxFQUFFLENBQUM7Z0JBQ2hCLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNsQjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRVAsY0FBYyxJQUFJLDRCQUE0QixDQUFDLEdBQUcsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUVqRSxPQUFPLENBQ0wsb0JBQUMsU0FBUyxJQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVU7UUFDL0Msb0JBQUMsZUFBZSxJQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsY0FBYyxFQUFFLGNBQWMsR0FBSTtRQUU1RCxDQUFDLE9BQU8sSUFBSSxDQUNYLG9CQUFDLG9CQUFvQjtZQUNuQixvQkFBQyxXQUFXLE9BQUcsQ0FDTSxDQUN4QixDQUNTLENBQ2IsQ0FBQztBQUNKLENBQUMsQ0FDRixDQUFDIn0=
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+ import { showcaseConverter } from '@times-components/storybook';
3
+ import { ArticleHarness } from '../../../../fixtures/article-harness/ArticleHarness';
4
+ import { OptaFootballFixturesTournament } from './OptaFootballFixturesTournament';
5
+ const showcase = {
6
+ children: [
7
+ {
8
+ decorator: (storyFn) => (React.createElement(ArticleHarness, null, storyFn())),
9
+ type: 'decorator'
10
+ },
11
+ {
12
+ component: () => (React.createElement(OptaFootballFixturesTournament, { season: "2020", competition: "3", round: "1", full_width: true })),
13
+ name: 'Fixture Tournament',
14
+ type: 'story'
15
+ }
16
+ ],
17
+ name: 'Typescript Component/In Article/Football/Fixtures'
18
+ };
19
+ // @ts-ignore
20
+ showcaseConverter(module, showcase);
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3B0YUZvb3RiYWxsRml4dHVyZXNUb3VybmFtZW50LnN0b3JpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9vcHRhL2Zvb3RiYWxsL2ZpeHR1cmVzLXRvdXJuYW1lbnQvT3B0YUZvb3RiYWxsRml4dHVyZXNUb3VybmFtZW50LnN0b3JpZXMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scURBQXFELENBQUM7QUFDckYsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFbEYsTUFBTSxRQUFRLEdBQUc7SUFDZixRQUFRLEVBQUU7UUFDUjtZQUNFLFNBQVMsRUFBRSxDQUFDLE9BQThCLEVBQUUsRUFBRSxDQUFDLENBQzdDLG9CQUFDLGNBQWMsUUFBRSxPQUFPLEVBQUUsQ0FBa0IsQ0FDN0M7WUFDRCxJQUFJLEVBQUUsV0FBVztTQUNsQjtRQUNEO1lBQ0UsU0FBUyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQ2Ysb0JBQUMsOEJBQThCLElBQzdCLE1BQU0sRUFBQyxNQUFNLEVBQ2IsV0FBVyxFQUFDLEdBQUcsRUFDZixLQUFLLEVBQUMsR0FBRyxFQUNULFVBQVUsU0FDVixDQUNIO1lBQ0QsSUFBSSxFQUFFLG9CQUFvQjtZQUMxQixJQUFJLEVBQUUsT0FBTztTQUNkO0tBQ0Y7SUFDRCxJQUFJLEVBQUUsbURBQW1EO0NBQzFELENBQUM7QUFFRixhQUFhO0FBQ2IsaUJBQWlCLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDIn0=
@@ -0,0 +1,2 @@
1
+ import 'regenerator-runtime';
2
+ import '@testing-library/jest-dom';
@@ -0,0 +1,39 @@
1
+ import React from 'react';
2
+ import { render, waitForElementToBeRemoved } from '@testing-library/react';
3
+ import 'regenerator-runtime';
4
+ import '@testing-library/jest-dom';
5
+ jest.mock('@times-components/image', () => ({
6
+ Placeholder: () => React.createElement(React.Fragment, null, "Placeholder")
7
+ }));
8
+ const mockInitSettings = jest.fn();
9
+ const mockInitStyleSheet = jest.fn();
10
+ const mockInitComponent = jest.fn();
11
+ const mockInitElement = () => {
12
+ const element = document.createElement('div');
13
+ element.appendChild(document.createTextNode('Widget'));
14
+ return element;
15
+ };
16
+ jest.mock('../../../utils/config', () => ({
17
+ initSettings: mockInitSettings,
18
+ initStyleSheet: mockInitStyleSheet,
19
+ initScript: () => new Promise(resolve => resolve({})),
20
+ initElement: mockInitElement,
21
+ initComponent: mockInitComponent
22
+ }));
23
+ import { OptaFootballFixturesTournament } from '../OptaFootballFixturesTournament';
24
+ const requiredProps = {
25
+ season: '2023',
26
+ competition: '3'
27
+ };
28
+ describe('OptaFootballFixturesTournament', () => {
29
+ it('should render correctly', async () => {
30
+ const { asFragment, getByText } = render(React.createElement(OptaFootballFixturesTournament, Object.assign({}, requiredProps)));
31
+ expect(asFragment()).toMatchSnapshot();
32
+ await waitForElementToBeRemoved(getByText('Placeholder'));
33
+ expect(mockInitSettings).toHaveBeenCalledTimes(1);
34
+ expect(mockInitStyleSheet).toHaveBeenCalledTimes(1);
35
+ expect(mockInitComponent).toHaveBeenCalledTimes(1);
36
+ expect(asFragment()).toMatchSnapshot();
37
+ });
38
+ });
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3B0YUZvb3RiYWxsRml4dHVyZXMudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL29wdGEvZm9vdGJhbGwvZml4dHVyZXMtdG91cm5hbWVudC9fX3Rlc3RzX18vT3B0YUZvb3RiYWxsRml4dHVyZXMudGVzdC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxNQUFNLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUUzRSxPQUFPLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sMkJBQTJCLENBQUM7QUFFbkMsSUFBSSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQzFDLFdBQVcsRUFBRSxHQUFHLEVBQUUsQ0FBQyx3REFBZ0I7Q0FDcEMsQ0FBQyxDQUFDLENBQUM7QUFFSixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztBQUNuQyxNQUFNLGtCQUFrQixHQUFHLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztBQUNyQyxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztBQUVwQyxNQUFNLGVBQWUsR0FBRyxHQUFHLEVBQUU7SUFDM0IsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QyxPQUFPLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUN2RCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDLENBQUM7QUFFRixJQUFJLENBQUMsSUFBSSxDQUFDLHVCQUF1QixFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDeEMsWUFBWSxFQUFFLGdCQUFnQjtJQUM5QixjQUFjLEVBQUUsa0JBQWtCO0lBQ2xDLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNyRCxXQUFXLEVBQUUsZUFBZTtJQUM1QixhQUFhLEVBQUUsaUJBQWlCO0NBQ2pDLENBQUMsQ0FBQyxDQUFDO0FBRUosT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFbkYsTUFBTSxhQUFhLEdBQUc7SUFDcEIsTUFBTSxFQUFFLE1BQU07SUFDZCxXQUFXLEVBQUUsR0FBRztDQUNqQixDQUFDO0FBRUYsUUFBUSxDQUFDLGdDQUFnQyxFQUFFLEdBQUcsRUFBRTtJQUM5QyxFQUFFLENBQUMseUJBQXlCLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDdkMsTUFBTSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsR0FBRyxNQUFNLENBQ3RDLG9CQUFDLDhCQUE4QixvQkFBSyxhQUFhLEVBQUksQ0FDdEQsQ0FBQztRQUNGLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRXZDLE1BQU0seUJBQXlCLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7UUFFMUQsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbEQsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEQsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFbkQsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyJ9
@@ -0,0 +1,4 @@
1
+ export declare const WidgetContainerOverride: import("styled-components").StyledComponent<"div", any, {}, never>;
2
+ export declare const WidgetContainer: import("styled-components").StyledComponent<"div", any, {
3
+ isNationalComp?: boolean | undefined;
4
+ }, never>;
@@ -0,0 +1,266 @@
1
+ import styled from 'styled-components';
2
+ import { breakpoints, colours, fonts } from '@times-components/ts-styleguide';
3
+ import { WidgetContainerBase } from '../shared-styles';
4
+ export const WidgetContainerOverride = styled(WidgetContainerBase) `
5
+ .Opta {
6
+ h2 {
7
+ margin: 20px 0 0 0 !important;
8
+ }
9
+
10
+ .Opta-js-main {
11
+ table {
12
+ tbody {
13
+ td.Opta-title {
14
+ background-color: transparent !important;
15
+ border-bottom: 1px solid #e4e4e4;
16
+
17
+ h3 {
18
+ margin: 20px 0 0 0 !important;
19
+ font-family: ${fonts.headline} !important;
20
+ font-size: 16px !important;
21
+ line-height: 30px !important;
22
+ text-align: center;
23
+
24
+ span {
25
+ font-size: inherit;
26
+ }
27
+
28
+ @media (min-width: ${breakpoints.medium}px) {
29
+ font-size: 18px !important;
30
+ line-height: 40px !important;
31
+ }
32
+ }
33
+ }
34
+ }
35
+ }
36
+ }
37
+ }
38
+ `;
39
+ export const WidgetContainer = styled(WidgetContainerBase) `
40
+ .Opta {
41
+ .Opta-js-main {
42
+ padding: 0;
43
+ background-color: transparent;
44
+
45
+ table {
46
+ display: block;
47
+ @media (min-width: ${breakpoints.medium}px) {
48
+ column-count: 2;
49
+ }
50
+
51
+ tbody {
52
+ display: block;
53
+ break-inside: avoid;
54
+
55
+ &:has(h3) {
56
+ column-span: all;
57
+ display: block;
58
+ margin-top: 24px;
59
+ }
60
+
61
+ td.Opta-Nest.Opta-JS-Nest-Content.Opta-Expanded {
62
+ display: inline;
63
+ }
64
+
65
+ td.Opta-title {
66
+ display: block;
67
+ background-color: ${colours.functional.backgroundSecondary};
68
+
69
+ h3 {
70
+ height: auto;
71
+ margin: 0 0 0 10px;
72
+ color: ${colours.functional.brandColour};
73
+ font-family: ${fonts.supporting};
74
+ font-size: 14px;
75
+ line-height: 14px;
76
+ font-weight: normal;
77
+ background-color: transparent;
78
+ border-bottom: 0;
79
+
80
+ span {
81
+ float: none;
82
+ padding: 0;
83
+ font-size: 13px;
84
+ }
85
+
86
+ @media (min-width: ${breakpoints.medium}px) {
87
+ margin: 0 0 0 20px;
88
+ }
89
+ }
90
+ }
91
+
92
+ tr {
93
+ display: block;
94
+ }
95
+
96
+ tr.Opta-Scoreline {
97
+ height: 40px;
98
+ background-color: transparent !important;
99
+ border-bottom: 1px solid #e4e4e4;
100
+ display: flex;
101
+ justify-content: space-between;
102
+ align-items: center;
103
+
104
+ @media (min-width: ${breakpoints.medium}px) {
105
+ height: 50px;
106
+ }
107
+
108
+ td {
109
+ max-width: none !important;
110
+ color: ${colours.functional.brandColour} !important;
111
+ font-family: ${fonts.headline};
112
+ font-size: 14px;
113
+ line-height: 14px;
114
+ height: unset;
115
+ background-color: transparent;
116
+
117
+ &.Opta-Time {
118
+ padding-left: 10px;
119
+ color: ${colours.section.sport} !important;
120
+ font-family: ${fonts.supporting};
121
+
122
+ abbr {
123
+ font-size: inherit;
124
+ line-height: inherit;
125
+ text-decoration: none;
126
+ }
127
+
128
+ @media (min-width: ${breakpoints.medium}px) {
129
+ font-size: 13px;
130
+ line-height: 14px;
131
+ }
132
+ }
133
+
134
+ &.Opta-Team {
135
+ background-position: center left;
136
+ width: 34%;
137
+ padding-left: ${({ isNationalComp }) => isNationalComp ? '38px;' : '10px;'}
138
+ &.Opta-Home {
139
+ background-position: center right;
140
+ padding-right: ${({ isNationalComp }) => isNationalComp ? '38px;' : '10px;'};
141
+ padding-left: 0;
142
+ text-align: right;
143
+ }
144
+
145
+ ${({ isNationalComp }) => !isNationalComp &&
146
+ `
147
+ @media (max-width: ${breakpoints.medium}px) {
148
+ padding-left: 15px;
149
+
150
+ &.Opta-Home {
151
+ padding-right: 15px;
152
+ padding-left: 0;
153
+ }
154
+ }
155
+ `};
156
+ }
157
+
158
+ &.Opta-Score {
159
+ font-size: 16px;
160
+ line-height: 16px;
161
+ text-align: center !important;
162
+ min-width: 25px;
163
+
164
+ span {
165
+ font-size: inherit;
166
+ line-height: inherit;
167
+ }
168
+
169
+ @media (min-width: ${breakpoints.medium}px) {
170
+ font-size: 24px;
171
+ line-height: 24px;
172
+ }
173
+ }
174
+
175
+ &.Opta-Crest {
176
+ img {
177
+ width: 20px;
178
+ }
179
+ }
180
+
181
+ &.Opta-Divider {
182
+ text-align: center;
183
+
184
+ abbr {
185
+ font-size: inherit;
186
+ line-height: inherit;
187
+ text-decoration: none;
188
+ }
189
+ }
190
+
191
+ &.Opta-Outer:not(.Opta-Time) {
192
+ padding-right: 10px;
193
+ }
194
+
195
+ @media (min-width: ${breakpoints.medium}px) {
196
+ font-size: 16px;
197
+ line-height: 16px;
198
+ }
199
+ }
200
+ }
201
+
202
+ tr.Opta-agg {
203
+ background-color: transparent !important;
204
+
205
+ td {
206
+ padding: 10px;
207
+ color: ${colours.functional.primary};
208
+ font-family: ${fonts.supporting};
209
+ font-size: 13px;
210
+ line-height: 16px;
211
+ background-color: transparent;
212
+
213
+ span {
214
+ font-size: inherit;
215
+ line-height: inherit;
216
+ }
217
+
218
+ span.Opta-agg-text {
219
+ text-transform: uppercase;
220
+ }
221
+ }
222
+ }
223
+
224
+ tr {
225
+ td.Opta-Nest {
226
+ padding: 0;
227
+
228
+ .Opta_W {
229
+ > .Opta-Cf {
230
+ background-color: transparent;
231
+ border-bottom: 1px solid #e4e4e4;
232
+
233
+ .Opta-Events {
234
+ padding: 10px 0 2px 0;
235
+
236
+ li {
237
+ padding: 0 0 8px 0;
238
+
239
+ .Opta-Event-Text {
240
+ color: ${colours.functional.primary};
241
+ font-family: ${fonts.supporting};
242
+ font-size: 13px;
243
+ line-height: 16px;
244
+
245
+ .Opta-Event-Player,
246
+ .Opta-Event-Time {
247
+ font-size: inherit;
248
+ line-height: inherit;
249
+ }
250
+
251
+ .Opta-Event-Time {
252
+ color: ${colours.section.sport};
253
+ }
254
+ }
255
+ }
256
+ }
257
+ }
258
+ }
259
+ }
260
+ }
261
+ }
262
+ }
263
+ }
264
+ }
265
+ `;
266
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvb3B0YS9mb290YmFsbC9maXh0dXJlcy10b3VybmFtZW50L3N0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLE1BQU0sTUFBTSxtQkFBbUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUU5RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUV2RCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7OzZCQWVyQyxLQUFLLENBQUMsUUFBUTs7Ozs7Ozs7O21DQVNSLFdBQVcsQ0FBQyxNQUFNOzs7Ozs7Ozs7O0NBVXBELENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBRXhEOzs7Ozs7Ozs2QkFRMkIsV0FBVyxDQUFDLE1BQU07Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2dDQW9CZixPQUFPLENBQUMsVUFBVSxDQUFDLG1CQUFtQjs7Ozs7dUJBSy9DLE9BQU8sQ0FBQyxVQUFVLENBQUMsV0FBVzs2QkFDeEIsS0FBSyxDQUFDLFVBQVU7Ozs7Ozs7Ozs7Ozs7bUNBYVYsV0FBVyxDQUFDLE1BQU07Ozs7Ozs7Ozs7Ozs7Ozs7OztpQ0FrQnBCLFdBQVcsQ0FBQyxNQUFNOzs7Ozs7dUJBTTVCLE9BQU8sQ0FBQyxVQUFVLENBQUMsV0FBVzs2QkFDeEIsS0FBSyxDQUFDLFFBQVE7Ozs7Ozs7O3lCQVFsQixPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUs7K0JBQ2YsS0FBSyxDQUFDLFVBQVU7Ozs7Ozs7O3FDQVFWLFdBQVcsQ0FBQyxNQUFNOzs7Ozs7Ozs7Z0NBU3ZCLENBQUMsRUFBRSxjQUFjLEVBQUUsRUFBRSxFQUFFLENBQ25DLGNBQWMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPOzs7bUNBR25CLENBQUMsRUFBRSxjQUFjLEVBQUUsRUFBRSxFQUFFLENBQ3RDLGNBQWMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPOzs7OztrQkFLcEMsQ0FBQyxFQUFFLGNBQWMsRUFBRSxFQUFFLEVBQUUsQ0FDdkIsQ0FBQyxjQUFjO0lBQ2Y7dUNBQ3FCLFdBQVcsQ0FBQyxNQUFNOzs7Ozs7OztpQkFReEM7Ozs7Ozs7Ozs7Ozs7O3FDQWNvQixXQUFXLENBQUMsTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7bUNBMEJwQixXQUFXLENBQUMsTUFBTTs7Ozs7Ozs7Ozs7O3VCQVk5QixPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU87NkJBQ3BCLEtBQUssQ0FBQyxVQUFVOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztpQ0FnQ1osT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPO3VDQUNwQixLQUFLLENBQUMsVUFBVTs7Ozs7Ozs7Ozs7bUNBV3BCLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSzs7Ozs7Ozs7Ozs7OztDQWF2RCxDQUFDIn0=
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ export declare const OptaFootballPlayerStats: React.FC<{
3
+ season: string;
4
+ competition: string;
5
+ match: string;
6
+ visible_categories: string;
7
+ full_width?: boolean;
8
+ }>;
@@ -0,0 +1,47 @@
1
+ import React, { useState, useEffect } from 'react';
2
+ import { Placeholder } from '@times-components/image';
3
+ import { initSettings, initStyleSheet, initScript, initElement, initComponent } from '../../utils/config';
4
+ import { Container, PlaceholderContainer } from '../shared-styles';
5
+ import { WidgetContainer } from './styles';
6
+ import { isNationalCompetition } from '../../utils/replaceNationalTeamDetails';
7
+ import { useUpdateNationalTeamDetails } from '../../utils/useUpdateNationalTeamDetails';
8
+ export const OptaFootballPlayerStats = React.memo(({ season, competition, match, full_width, visible_categories }) => {
9
+ const ref = React.createRef();
10
+ const [isReady, setIsReady] = useState(false);
11
+ const isNationalComp = isNationalCompetition(competition);
12
+ useEffect(() => {
13
+ const sport = 'football';
14
+ initSettings();
15
+ initStyleSheet(sport);
16
+ initScript().then(() => {
17
+ if (ref.current) {
18
+ ref.current.innerHTML = initElement('opta-widget', {
19
+ sport,
20
+ widget: 'player_ranking',
21
+ season,
22
+ competition,
23
+ match,
24
+ template: 'normal',
25
+ graph_style: 'relative',
26
+ visible_categories,
27
+ live: true,
28
+ show_match_header: true,
29
+ show_halftime_score: true,
30
+ show_competition_name: true,
31
+ show_date: true,
32
+ show_crests: true,
33
+ date_format: 'DD/MM/YYYY',
34
+ breakpoints: '520'
35
+ }).outerHTML;
36
+ initComponent();
37
+ setIsReady(true);
38
+ }
39
+ });
40
+ }, [ref]);
41
+ isNationalComp && useUpdateNationalTeamDetails(ref, 'Opta-Image-Team');
42
+ return (React.createElement(Container, { border: isReady, fullWidth: full_width },
43
+ React.createElement(WidgetContainer, { ref: ref }),
44
+ !isReady && (React.createElement(PlaceholderContainer, null,
45
+ React.createElement(Placeholder, null)))));
46
+ });
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3B0YUZvb3RiYWxsUGxheWVyU3RhdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9vcHRhL2Zvb3RiYWxsL3BsYXllci1zdGF0cy9PcHRhRm9vdGJhbGxQbGF5ZXJTdGF0cy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBRW5ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV0RCxPQUFPLEVBQ0wsWUFBWSxFQUNaLGNBQWMsRUFDZCxVQUFVLEVBQ1YsV0FBVyxFQUNYLGFBQWEsRUFDZCxNQUFNLG9CQUFvQixDQUFDO0FBRTVCLE9BQU8sRUFBRSxTQUFTLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRXhGLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQU0vQixLQUFLLENBQUMsSUFBSSxDQUNiLENBQUMsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsa0JBQWtCLEVBQUUsRUFBRSxFQUFFO0lBQ2pFLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxTQUFTLEVBQWtCLENBQUM7SUFFOUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsR0FBRyxRQUFRLENBQVUsS0FBSyxDQUFDLENBQUM7SUFDdkQsTUFBTSxjQUFjLEdBQUcscUJBQXFCLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFMUQsU0FBUyxDQUNQLEdBQUcsRUFBRTtRQUNILE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQztRQUV6QixZQUFZLEVBQUUsQ0FBQztRQUNmLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV0QixVQUFVLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ3JCLElBQUksR0FBRyxDQUFDLE9BQU8sRUFBRTtnQkFDZixHQUFHLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyxXQUFXLENBQUMsYUFBYSxFQUFFO29CQUNqRCxLQUFLO29CQUNMLE1BQU0sRUFBRSxnQkFBZ0I7b0JBQ3hCLE1BQU07b0JBQ04sV0FBVztvQkFDWCxLQUFLO29CQUNMLFFBQVEsRUFBRSxRQUFRO29CQUNsQixXQUFXLEVBQUUsVUFBVTtvQkFDdkIsa0JBQWtCO29CQUNsQixJQUFJLEVBQUUsSUFBSTtvQkFDVixpQkFBaUIsRUFBRSxJQUFJO29CQUN2QixtQkFBbUIsRUFBRSxJQUFJO29CQUN6QixxQkFBcUIsRUFBRSxJQUFJO29CQUMzQixTQUFTLEVBQUUsSUFBSTtvQkFDZixXQUFXLEVBQUUsSUFBSTtvQkFDakIsV0FBVyxFQUFFLFlBQVk7b0JBQ3pCLFdBQVcsRUFBRSxLQUFLO2lCQUNuQixDQUFDLENBQUMsU0FBUyxDQUFDO2dCQUViLGFBQWEsRUFBRSxDQUFDO2dCQUNoQixVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDbEI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsRUFDRCxDQUFDLEdBQUcsQ0FBQyxDQUNOLENBQUM7SUFFRixjQUFjLElBQUksNEJBQTRCLENBQUMsR0FBRyxFQUFFLGlCQUFpQixDQUFDLENBQUM7SUFFdkUsT0FBTyxDQUNMLG9CQUFDLFNBQVMsSUFBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVO1FBQy9DLG9CQUFDLGVBQWUsSUFBQyxHQUFHLEVBQUUsR0FBRyxHQUFJO1FBRTVCLENBQUMsT0FBTyxJQUFJLENBQ1gsb0JBQUMsb0JBQW9CO1lBQ25CLG9CQUFDLFdBQVcsT0FBRyxDQUNNLENBQ3hCLENBQ1MsQ0FDYixDQUFDO0FBQ0osQ0FBQyxDQUNGLENBQUMifQ==