@royaloperahouse/harmonic 0.2.3-c → 0.2.3-e

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.
@@ -1,6 +1,5 @@
1
1
  import React from 'react';
2
2
  import { IGenericTypographyProps, IHarmonicHeaderProps } from '../../types/typography';
3
- import './styles.css';
4
3
  export declare const DisplayHeader: ({ children, size, em, color, serif, className }: IGenericTypographyProps) => React.JSX.Element;
5
4
  export declare const HarmonicHeader: ({ children, size, em, color, serif, hierarchy: Tag, className, }: IHarmonicHeaderProps) => React.JSX.Element;
6
5
  export declare const HarmonicSubtitle: ({ children, size, color, className }: IGenericTypographyProps) => React.JSX.Element;
@@ -1,2 +1,4 @@
1
+ export declare const disableTabbingInside: (element: HTMLElement | null, shouldDisable: boolean) => void;
2
+ export declare const isCloneSlide: (index: number, clonesCount: number, childrenLength: number, infinite: boolean) => boolean;
1
3
  export declare const getVisibleIndexes: (currentIndex: number, slideWidths: number[], containerWidth: number, slidesLength: number) => number[];
2
4
  export declare const getMovedSlides: (delta: number, slideWidths: number[]) => number;
@@ -7,6 +7,7 @@ declare type Props = {
7
7
  setCurrentSlide: React.Dispatch<React.SetStateAction<number>>;
8
8
  carouselRef: React.RefObject<SwipeRef>;
9
9
  hasMultipleSlides: boolean;
10
+ carouselTitle: string | undefined;
10
11
  };
11
12
  declare const SwipeCarousel: FunctionComponent<Props>;
12
13
  export default SwipeCarousel;
@@ -1,192 +1,234 @@
1
+ @font-face {
2
+ font-family: 'GreyLLTT';
3
+ src: url('https://static.roh.org.uk/fonts/harmonic/GreyLLTT-Regular.woff2') format('woff2');
4
+ font-weight: 400;
5
+ font-style: normal;
6
+ font-display: swap;
7
+ }
8
+
9
+ @font-face {
10
+ font-family: 'GreyLLTT';
11
+ src: url('https://static.roh.org.uk/fonts/harmonic/GreyLLTT-Medium.woff2') format('woff2');
12
+ font-weight: 500;
13
+ font-style: normal;
14
+ font-display: swap;
15
+ }
16
+
17
+ @font-face {
18
+ font-family: 'GreyLLTT';
19
+ src: url('https://static.roh.org.uk/fonts/harmonic/GreyLLTT-Bold.woff2') format('woff2');
20
+ font-weight: 700;
21
+ font-style: normal;
22
+ font-display: swap;
23
+ }
24
+
25
+ @font-face {
26
+ font-family: 'VictorSerif';
27
+ src: url('https://static.roh.org.uk/fonts/harmonic/VictorSerif-Medium.woff2')
28
+ format('woff2');
29
+ font-weight: 500;
30
+ font-style: normal;
31
+ font-display: swap;
32
+ }
33
+
34
+ @font-face {
35
+ font-family: 'VictorSerif';
36
+ src: url('https://static.roh.org.uk/fonts/harmonic/VictorSerif-MediumItalic.woff2')
37
+ format('woff2');
38
+ font-weight: 500;
39
+ font-style: italic;
40
+ font-display: swap;
41
+ }
42
+
1
43
  /* ~~~~~ General Styling Classes ~~~~~ */
2
- .styles_color-primary__UYod1 {
44
+ .typography_color-primary__LOfDi {
3
45
  color: var(--color-primary);
4
46
  }
5
47
 
6
- .styles_color-black__a05Fo {
48
+ .typography_color-black__6MHRL {
7
49
  color: var(--color-base-black);
8
50
  }
9
51
 
10
- .styles_color-white__HiYDT {
52
+ .typography_color-white__PfW5s {
11
53
  color: var(--color-base-white);
12
54
  }
13
55
 
14
- .styles_color-red__zwTZW {
56
+ .typography_color-red__iPlbG {
15
57
  color: var(--color-primary-red);
16
58
  }
17
59
 
18
- .styles_color-grey__Gc0wv {
60
+ .typography_color-grey__GA1c2 {
19
61
  color: var(--color-base-dark-grey);
20
62
  }
21
63
 
22
- .styles_color-inherit__Y12df {
64
+ .typography_color-inherit__RDd0Y {
23
65
  color: inherit;
24
66
  }
25
67
 
26
- .styles_em__v4FoO {
68
+ .typography_em__E6tX- {
27
69
  font-style: italic;
28
70
  }
29
71
  /* ~~~ */
30
72
 
31
73
  /* Display Headers */
32
- .styles_display__VgnTB {
74
+ .typography_display__-F3p4 {
33
75
  margin: 0;
34
76
  font-family: var(--font-family-sans);
35
77
  line-height: 100%;
36
78
 
37
- &.styles_large__vqVxY {
79
+ &.typography_large__uq0zC {
38
80
  font-size: 96px;
39
81
  font-weight: 700;
40
82
  letter-spacing: -5px;
41
83
  }
42
84
 
43
- &.styles_small__e7YDe {
85
+ &.typography_small__wfQ0K {
44
86
  font-size: 68px;
45
87
  font-weight: 500;
46
88
  letter-spacing: -3px;
47
89
  }
48
90
 
49
91
  /* Serif and Italic styles */
50
- &.styles_serif__b-ZjM,
51
- &.styles_em__v4FoO {
92
+ &.typography_serif__VSO38,
93
+ &.typography_em__E6tX- {
52
94
  font-family: var(--font-family-serif);
53
95
  font-weight: 500;
54
96
  }
55
97
 
56
98
  /* Serif and Italic adjustments */
57
- &.styles_large__vqVxY.styles_serif__b-ZjM,
58
- &.styles_large__vqVxY.styles_em__v4FoO {
99
+ &.typography_large__uq0zC.typography_serif__VSO38,
100
+ &.typography_large__uq0zC.typography_em__E6tX- {
59
101
  letter-spacing: -3px;
60
102
  }
61
103
 
62
- &.styles_small__e7YDe.styles_serif__b-ZjM,
63
- &.styles_small__e7YDe.styles_em__v4FoO {
104
+ &.typography_small__wfQ0K.typography_serif__VSO38,
105
+ &.typography_small__wfQ0K.typography_em__E6tX- {
64
106
  letter-spacing: -2px;
65
107
  }
66
108
 
67
109
  @media (max-width: 699px) {
68
- &.styles_large__vqVxY {
110
+ &.typography_large__uq0zC {
69
111
  font-size: 38px;
70
112
  letter-spacing: -1.5px;
71
113
  }
72
114
 
73
- &.styles_small__e7YDe {
115
+ &.typography_small__wfQ0K {
74
116
  font-size: 32px;
75
117
  letter-spacing: -1.5px;
76
118
  }
77
119
 
78
- &.styles_large__vqVxY.styles_serif__b-ZjM,
79
- &.styles_large__vqVxY.styles_em__v4FoO,
80
- &.styles_small__e7YDe.styles_serif__b-ZjM,
81
- &.styles_small__e7YDe.styles_em__v4FoO {
120
+ &.typography_large__uq0zC.typography_serif__VSO38,
121
+ &.typography_large__uq0zC.typography_em__E6tX-,
122
+ &.typography_small__wfQ0K.typography_serif__VSO38,
123
+ &.typography_small__wfQ0K.typography_em__E6tX- {
82
124
  letter-spacing: -0.5px;
83
125
  }
84
126
  }
85
127
  }
86
128
 
87
129
  /* Headers */
88
- .styles_header__UDH-H {
130
+ .typography_header__BexiD {
89
131
  margin: 0;
90
132
  font-family: var(--font-family-sans);
91
133
  font-weight: 500;
92
134
 
93
- &.styles_large__vqVxY {
135
+ &.typography_large__uq0zC {
94
136
  font-size: 44px;
95
137
  line-height: 48px;
96
138
  letter-spacing: -1.5px;
97
139
  }
98
140
 
99
- &.styles_medium__WQPZj {
141
+ &.typography_medium__K0uZD {
100
142
  font-size: 34px;
101
143
  line-height: 40px;
102
144
  letter-spacing: -1px;
103
145
  }
104
146
 
105
- &.styles_small__e7YDe {
147
+ &.typography_small__wfQ0K {
106
148
  font-size: 26px;
107
149
  line-height: 32px;
108
150
  letter-spacing: -0.5px;
109
151
  }
110
152
 
111
153
  /* Serif and Italic styles */
112
- &.styles_serif__b-ZjM,
113
- &.styles_em__v4FoO {
154
+ &.typography_serif__VSO38,
155
+ &.typography_em__E6tX- {
114
156
  font-family: var(--font-family-serif);
115
157
  }
116
158
 
117
159
  /* Serif and Italic letter-spacing overrides */
118
- &.styles_large__vqVxY.styles_serif__b-ZjM,
119
- &.styles_large__vqVxY.styles_em__v4FoO {
160
+ &.typography_large__uq0zC.typography_serif__VSO38,
161
+ &.typography_large__uq0zC.typography_em__E6tX- {
120
162
  letter-spacing: -0.5px;
121
163
  }
122
164
 
123
- &.styles_medium__WQPZj.styles_serif__b-ZjM,
124
- &.styles_medium__WQPZj.styles_em__v4FoO {
165
+ &.typography_medium__K0uZD.typography_serif__VSO38,
166
+ &.typography_medium__K0uZD.typography_em__E6tX- {
125
167
  letter-spacing: -0.5px;
126
168
  }
127
169
 
128
- &.styles_small__e7YDe.styles_serif__b-ZjM,
129
- &.styles_small__e7YDe.styles_em__v4FoO {
170
+ &.typography_small__wfQ0K.typography_serif__VSO38,
171
+ &.typography_small__wfQ0K.typography_em__E6tX- {
130
172
  letter-spacing: -0.5px;
131
173
  }
132
174
 
133
175
  @media (max-width: 699px) {
134
- &.styles_large__vqVxY {
176
+ &.typography_large__uq0zC {
135
177
  font-size: 28px;
136
178
  line-height: 34px;
137
179
  letter-spacing: -1.5px;
138
180
  }
139
181
 
140
- &.styles_medium__WQPZj {
182
+ &.typography_medium__K0uZD {
141
183
  font-size: 24px;
142
184
  line-height: 28px;
143
185
  letter-spacing: -1px;
144
186
  }
145
187
 
146
- &.styles_small__e7YDe {
188
+ &.typography_small__wfQ0K {
147
189
  font-size: 20px;
148
190
  line-height: 26px;
149
191
  letter-spacing: -0.75px;
150
192
  }
151
193
 
152
194
  /* Mobile overrides for serif/italic letter-spacing */
153
- &.styles_large__vqVxY.styles_serif__b-ZjM,
154
- &.styles_large__vqVxY.styles_em__v4FoO,
155
- &.styles_medium__WQPZj.styles_serif__b-ZjM,
156
- &.styles_medium__WQPZj.styles_em__v4FoO,
157
- &.styles_small__e7YDe.styles_serif__b-ZjM,
158
- &.styles_small__e7YDe.styles_em__v4FoO {
195
+ &.typography_large__uq0zC.typography_serif__VSO38,
196
+ &.typography_large__uq0zC.typography_em__E6tX-,
197
+ &.typography_medium__K0uZD.typography_serif__VSO38,
198
+ &.typography_medium__K0uZD.typography_em__E6tX-,
199
+ &.typography_small__wfQ0K.typography_serif__VSO38,
200
+ &.typography_small__wfQ0K.typography_em__E6tX- {
159
201
  letter-spacing: -0.5px;
160
202
  }
161
203
  }
162
204
  }
163
205
 
164
206
  /* Subtitle */
165
- .styles_subtitle__os3DH {
207
+ .typography_subtitle__aoFTV {
166
208
  margin: 0;
167
209
  font-family: var(--font-family-sans);
168
210
  font-weight: 500;
169
211
 
170
- &.styles_large__vqVxY {
212
+ &.typography_large__uq0zC {
171
213
  font-size: 19px;
172
214
  line-height: 26px;
173
215
  letter-spacing: -0.5px;
174
216
  }
175
217
 
176
- &.styles_small__e7YDe {
218
+ &.typography_small__wfQ0K {
177
219
  font-size: 17px;
178
220
  line-height: 24px;
179
221
  letter-spacing: -0.5px;
180
222
  }
181
223
 
182
224
  @media (max-width: 699px) {
183
- &.styles_large__vqVxY {
225
+ &.typography_large__uq0zC {
184
226
  font-size: 17px;
185
227
  line-height: 24px;
186
228
  letter-spacing: -0.5px;
187
229
  }
188
230
 
189
- &.styles_small__e7YDe {
231
+ &.typography_small__wfQ0K {
190
232
  font-size: 14px;
191
233
  line-height: 20px;
192
234
  letter-spacing: -0.2px;
@@ -195,43 +237,43 @@
195
237
  }
196
238
 
197
239
  /* Body Copy */
198
- .styles_bodycopy__uEx9r {
240
+ .typography_bodycopy__vYtQ8 {
199
241
  margin: 0;
200
242
  font-family: var(--font-family-sans);
201
243
  font-weight: 400;
202
244
 
203
- &.styles_large__vqVxY {
245
+ &.typography_large__uq0zC {
204
246
  font-size: 19px;
205
247
  line-height: 26px;
206
248
  letter-spacing: -0.5px;
207
249
  }
208
250
 
209
- &.styles_medium__WQPZj {
251
+ &.typography_medium__K0uZD {
210
252
  font-size: 17px;
211
253
  line-height: 24px;
212
254
  letter-spacing: -0.5px;
213
255
  }
214
256
 
215
- &.styles_small__e7YDe {
257
+ &.typography_small__wfQ0K {
216
258
  font-size: 14px;
217
259
  line-height: 20px;
218
260
  letter-spacing: -0.5px;
219
261
  }
220
262
 
221
263
  @media (max-width: 699px) {
222
- &.styles_large__vqVxY {
264
+ &.typography_large__uq0zC {
223
265
  font-size: 17px;
224
266
  line-height: 24px;
225
267
  letter-spacing: -0.5px;
226
268
  }
227
269
 
228
- &.styles_medium__WQPZj {
270
+ &.typography_medium__K0uZD {
229
271
  font-size: 14px;
230
272
  line-height: 20px;
231
273
  letter-spacing: -0.2px;
232
274
  }
233
275
 
234
- &.styles_small__e7YDe {
276
+ &.typography_small__wfQ0K {
235
277
  font-size: 11px;
236
278
  line-height: 16px;
237
279
  letter-spacing: -0.2px;
@@ -240,31 +282,31 @@
240
282
  }
241
283
 
242
284
  /* Overline */
243
- .styles_overline__5xGDa {
285
+ .typography_overline__EnUK3 {
244
286
  margin: 0;
245
287
  font-family: var(--font-family-sans);
246
288
  font-weight: 500;
247
289
  text-transform: uppercase;
248
290
 
249
- &.styles_large__vqVxY {
291
+ &.typography_large__uq0zC {
250
292
  font-size: 14px;
251
293
  line-height: 18px;
252
294
  letter-spacing: 0.3px;
253
295
  }
254
296
 
255
- &.styles_small__e7YDe {
297
+ &.typography_small__wfQ0K {
256
298
  font-size: 12px;
257
299
  line-height: 14px;
258
300
  letter-spacing: 0.2px;
259
301
  }
260
302
 
261
303
  @media (max-width: 699px) {
262
- &.styles_large__vqVxY {
304
+ &.typography_large__uq0zC {
263
305
  line-height: 17px;
264
306
  letter-spacing: 0.3px; /* Added to ensure it stays */
265
307
  }
266
308
 
267
- &.styles_small__e7YDe {
309
+ &.typography_small__wfQ0K {
268
310
  line-height: 14px;
269
311
  letter-spacing: 0.3px;
270
312
  }
@@ -272,7 +314,7 @@
272
314
  }
273
315
 
274
316
  /* Button Text */
275
- .styles_buttontext__UPumF {
317
+ .typography_buttontext__vcxNi {
276
318
  margin: 0;
277
319
  font-family: var(--font-family-sans);
278
320
  font-size: 17px;
@@ -287,7 +329,7 @@
287
329
  }
288
330
 
289
331
  /* Caption Text */
290
- .styles_captiontext__-TA6x {
332
+ .typography_captiontext__91UFb {
291
333
  margin: 0;
292
334
  font-family: var(--font-family-sans);
293
335
  font-weight: 400;
@@ -303,7 +345,7 @@
303
345
  }
304
346
 
305
347
  /* Navigation Text */
306
- .styles_navigationtext__qnnIo {
348
+ .typography_navigationtext__YfGf7 {
307
349
  margin: 0;
308
350
  font-family: var(--font-family-sans);
309
351
  font-size: 19px;
@@ -317,48 +359,6 @@
317
359
  }
318
360
  }
319
361
 
320
- @font-face {
321
- font-family: 'GreyLLTT';
322
- src: url('https://static.roh.org.uk/fonts/harmonic/GreyLLTT-Regular.woff2') format('woff2');
323
- font-weight: 400;
324
- font-style: normal;
325
- font-display: swap;
326
- }
327
-
328
- @font-face {
329
- font-family: 'GreyLLTT';
330
- src: url('https://static.roh.org.uk/fonts/harmonic/GreyLLTT-Medium.woff2') format('woff2');
331
- font-weight: 500;
332
- font-style: normal;
333
- font-display: swap;
334
- }
335
-
336
- @font-face {
337
- font-family: 'GreyLLTT';
338
- src: url('https://static.roh.org.uk/fonts/harmonic/GreyLLTT-Bold.woff2') format('woff2');
339
- font-weight: 700;
340
- font-style: normal;
341
- font-display: swap;
342
- }
343
-
344
- @font-face {
345
- font-family: 'VictorSerif';
346
- src: url('https://static.roh.org.uk/fonts/harmonic/VictorSerif-Medium.woff2')
347
- format('woff2');
348
- font-weight: 500;
349
- font-style: normal;
350
- font-display: swap;
351
- }
352
-
353
- @font-face {
354
- font-family: 'VictorSerif';
355
- src: url('https://static.roh.org.uk/fonts/harmonic/VictorSerif-MediumItalic.woff2')
356
- format('woff2');
357
- font-weight: 500;
358
- font-style: italic;
359
- font-display: swap;
360
- }
361
-
362
362
  .core-theme-module_coreTheme__pWxYB {
363
363
  /* RBO Red */
364
364
  /* Primary Palette */
@@ -7449,6 +7449,17 @@ var generateDomElementId = function generateDomElementId() {
7449
7449
  return randomPart + "-" + datePart;
7450
7450
  };
7451
7451
 
7452
+ var DISABLED_TABBING_TAGS = 'a, button';
7453
+ var disableTabbingInside = function disableTabbingInside(element, shouldDisable) {
7454
+ if (!element) return;
7455
+ var focusables = element.querySelectorAll(DISABLED_TABBING_TAGS);
7456
+ focusables.forEach(function (el) {
7457
+ if (shouldDisable) el.setAttribute('tabindex', '-1');
7458
+ });
7459
+ };
7460
+ var isCloneSlide = function isCloneSlide(index, clonesCount, childrenLength, infinite) {
7461
+ return infinite && (index < clonesCount || index >= childrenLength + clonesCount);
7462
+ };
7452
7463
  var getVisibleIndexes = function getVisibleIndexes(currentIndex, slideWidths, containerWidth, slidesLength) {
7453
7464
  var widthSoFar = 0;
7454
7465
  var visible = [];
@@ -7712,11 +7723,13 @@ var Swipe = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
7712
7723
  var visibleIndexes = getVisibleIndexes(currentIndex, slideWidths, containerWidth, slides.length);
7713
7724
  return /*#__PURE__*/React__default.createElement(SwipeContainer, Object.assign({
7714
7725
  ref: containerRef,
7726
+ className: "swipe",
7715
7727
  onTouchStart: handleTouchStart,
7716
7728
  onTouchMove: handleTouchMove,
7717
7729
  onTouchEnd: handleTouchEnd,
7718
7730
  onMouseDown: handleMouseDown,
7719
- className: "swipe"
7731
+ "aria-roledescription": "carousel",
7732
+ role: "list"
7720
7733
  }, props), /*#__PURE__*/React__default.createElement(SwipeTrack, {
7721
7734
  className: "swipe-track-wrapper",
7722
7735
  translateX: dragTranslateX !== null ? dragTranslateX : getTranslateX(),
@@ -7724,17 +7737,21 @@ var Swipe = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
7724
7737
  onTransitionEnd: handleTransitionEnd
7725
7738
  }, slides.map(function (child, index) {
7726
7739
  var isVisible = visibleIndexes.includes(index);
7727
- return /*#__PURE__*/React__default.cloneElement(child, {
7740
+ var isClone = isCloneSlide(index, clonesCount, children.length, infinite);
7741
+ return /*#__PURE__*/React__default.createElement("div", {
7728
7742
  key: "swipe-slide-" + uniqueIdRef.current + "-" + index,
7729
- ariaHidden: !isVisible,
7730
7743
  className: SWIPE_SLIDE_CLASS_NAME,
7744
+ "aria-hidden": !isVisible,
7745
+ "aria-roledescription": "slide",
7746
+ role: "listitem",
7731
7747
  ref: function ref(el) {
7732
7748
  childRefs.current[index] = el;
7749
+ disableTabbingInside(el, isClone);
7733
7750
  },
7734
7751
  onFocus: function onFocus() {
7735
7752
  return onSlideFocus(isVisible, index);
7736
7753
  }
7737
- });
7754
+ }, child);
7738
7755
  })));
7739
7756
  });
7740
7757
  Swipe.displayName = 'Swipe';
@@ -7849,15 +7866,8 @@ var Carousel = function Carousel(_ref) {
7849
7866
  "data-testid": "carousel-swipe",
7850
7867
  ref: swipeRef,
7851
7868
  infinite: infinite,
7852
- slidesOffsetBefore: slidesOffsetBefore,
7853
- role: "list",
7854
- "aria-roledescription": "carousel"
7855
- }, React__default.Children.toArray(children).map(function (child, index) {
7856
- return /*#__PURE__*/React__default.createElement("div", {
7857
- key: "carousel-slide-" + index,
7858
- "aria-roledescription": "slide"
7859
- }, child);
7860
- })))));
7869
+ slidesOffsetBefore: slidesOffsetBefore
7870
+ }, children))));
7861
7871
  };
7862
7872
 
7863
7873
  var _templateObject$P, _templateObject2$C, _templateObject3$p, _templateObject4$k, _templateObject5$f, _templateObject6$d, _templateObject7$8, _templateObject8$6, _templateObject9$3, _templateObject10$3, _templateObject11$1, _templateObject12$1, _templateObject13$1, _templateObject14$1, _templateObject15$1, _templateObject16, _templateObject17;
@@ -9194,7 +9204,7 @@ var TitleWrapper$3 = /*#__PURE__*/styled__default.div(_templateObject10$5 || (_t
9194
9204
  var isButtonPresent = _ref6.isButtonPresent;
9195
9205
  return isButtonPresent ? '20px' : '0';
9196
9206
  });
9197
- var ContentWrapper$2 = /*#__PURE__*/styled__default.div(_templateObject11$3 || (_templateObject11$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n min-height: 70px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n\n @media ", " {\n height: auto;\n flex-direction: column;\n justify-content: start;\n }\n"])), devices.mobile);
9207
+ var ContentWrapper$2 = /*#__PURE__*/styled__default.div(_templateObject11$3 || (_templateObject11$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n min-height: 70px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n\n @media ", " {\n min-height: auto;\n flex-direction: column;\n justify-content: start;\n }\n"])), devices.mobile);
9198
9208
 
9199
9209
  var PageHeadingPromoBadge;
9200
9210
  (function (PageHeadingPromoBadge) {
@@ -10323,9 +10333,6 @@ var PromoWithTitle = function PromoWithTitle(_ref) {
10323
10333
  var truncate = function truncate(str, n) {
10324
10334
  return str.length >= n ? str.substr(0, n) : str;
10325
10335
  };
10326
- var correctTitleSize = function correctTitleSize(size) {
10327
- return size === 'small' ? 'medium' : 'large';
10328
- };
10329
10336
  var imageToLeft = imagePosition === 'left';
10330
10337
  var primaryButton = links == null ? void 0 : links[0];
10331
10338
  var _ref2 = primaryButton || {},
@@ -10357,12 +10364,12 @@ var PromoWithTitle = function PromoWithTitle(_ref) {
10357
10364
  "data-testid": "content-wrapper",
10358
10365
  imageToLeft: imageToLeft
10359
10366
  }, /*#__PURE__*/React__default.createElement(HarmonicHeaderWithWrapper, {
10360
- size: correctTitleSize(titleSize),
10367
+ size: titleSize,
10361
10368
  hierarchy: titleHierarchy
10362
10369
  }, title), subtitle ? /*#__PURE__*/React__default.createElement(HarmonicSubtitleWithWrapper, {
10363
10370
  size: "medium"
10364
10371
  }, subtitle) : null, /*#__PURE__*/React__default.createElement(BodyCopyHarmonicWithWrapper, {
10365
- size: "large",
10372
+ size: "medium",
10366
10373
  dangerouslySetInnerHTML: {
10367
10374
  __html: text
10368
10375
  }
@@ -10370,11 +10377,7 @@ var PromoWithTitle = function PromoWithTitle(_ref) {
10370
10377
  "data-testid": "buttons-wrapper",
10371
10378
  primaryButtonTextLength: primaryButtonText.length,
10372
10379
  tertiaryButtonTextLength: tertiaryButtonText.length
10373
- }, primaryButton ? (/*#__PURE__*/React__default.createElement(PrimaryButton, Object.assign({
10374
- target: "_blank"
10375
- }, restPrimaryButton), primaryButtonTextTruncate)) : null, tertiaryButton ? (/*#__PURE__*/React__default.createElement(TertiaryButton, Object.assign({
10376
- target: "_blank"
10377
- }, restTertiaryButton), tertiaryButtonTextTruncate)) : null)) : null));
10380
+ }, primaryButton ? /*#__PURE__*/React__default.createElement(PrimaryButton, Object.assign({}, restPrimaryButton), primaryButtonTextTruncate) : null, tertiaryButton ? (/*#__PURE__*/React__default.createElement(TertiaryButton, Object.assign({}, restTertiaryButton), tertiaryButtonTextTruncate)) : null)) : null));
10378
10381
  };
10379
10382
 
10380
10383
  var _templateObject$1a;
@@ -12238,21 +12241,18 @@ var SwipeCarousel = function SwipeCarousel(_ref2) {
12238
12241
  currentSlide = _ref2.currentSlide,
12239
12242
  carouselRef = _ref2.carouselRef,
12240
12243
  hasMultipleSlides = _ref2.hasMultipleSlides,
12241
- setCurrentSlide = _ref2.setCurrentSlide;
12244
+ setCurrentSlide = _ref2.setCurrentSlide,
12245
+ carouselTitle = _ref2.carouselTitle;
12242
12246
  var hasOnlyImageSlides = slidesMedia.every(function (slide) {
12243
12247
  return !isVideoSlide(slide);
12244
12248
  });
12245
12249
  return /*#__PURE__*/React__default.createElement(Swipe, {
12246
12250
  ref: carouselRef,
12247
12251
  infinite: hasMultipleSlides && hasOnlyImageSlides,
12248
- onIndexChange: setCurrentSlide,
12249
- "aria-roledescription": "carousel"
12252
+ onIndexChange: setCurrentSlide
12250
12253
  }, slidesMedia.map(function (mediaContent, index) {
12251
12254
  return /*#__PURE__*/React__default.createElement("div", {
12252
- className: "swiper-slide",
12253
- key: mediaContent.key,
12254
- "aria-hidden": index !== currentSlide,
12255
- "aria-roledescription": "slide"
12255
+ key: mediaContent.key + "-" + carouselTitle
12256
12256
  }, /*#__PURE__*/React__default.createElement(ImageAspectRatioWrapper, {
12257
12257
  aspectRatio: exports.AspectRatio['4:3']
12258
12258
  }, isVideoSlide(mediaContent) ? (/*#__PURE__*/React__default.createElement(VideoSlide, {
@@ -12336,6 +12336,7 @@ var HighlightsCarousel = function HighlightsCarousel(_ref) {
12336
12336
  availablePrev: hasOnlyImageSlides || currentSlide !== 0,
12337
12337
  availableNext: hasOnlyImageSlides || currentSlide !== slidesMedia.length - 1
12338
12338
  }))), /*#__PURE__*/React__default.createElement(SwipeCarousel, {
12339
+ carouselTitle: carouselTitle,
12339
12340
  slidesMedia: slidesMedia,
12340
12341
  hasMultipleSlides: hasMultipleSlides,
12341
12342
  carouselRef: carouselRef,