@ebay/skin 16.5.1 → 16.6.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 (74) hide show
  1. package/.storybook/preview-head.html +67 -11
  2. package/.stylelintrc +3 -0
  3. package/_cdn/skin/v16.6.0/skin-default.min.css +6 -0
  4. package/_cdn/skin/v16.6.0/skin-full.min.css +6 -0
  5. package/_cdn/skin/v16.6.0/skin-headless.min.css +6 -0
  6. package/_cdn/skin/v16.6.0/skin-legacy.min.css +6 -0
  7. package/dist/alert-dialog/alert-dialog.css +0 -1
  8. package/dist/button/button.css +4 -0
  9. package/dist/carousel/carousel.css +25 -6
  10. package/dist/confirm-dialog/confirm-dialog.css +0 -1
  11. package/dist/drawer-dialog/drawer-dialog.css +0 -1
  12. package/dist/field/field.css +1 -1
  13. package/dist/fullscreen-dialog/fullscreen-dialog.css +0 -1
  14. package/dist/global/global.css +1 -0
  15. package/dist/icon/icon.css +32 -0
  16. package/dist/lightbox-dialog/lightbox-dialog.css +21 -0
  17. package/dist/listbox-button/listbox-button.css +4 -0
  18. package/dist/page-notice/page-notice.css +6 -1
  19. package/dist/panel-dialog/panel-dialog.css +0 -1
  20. package/dist/snackbar-dialog/snackbar-dialog.css +0 -1
  21. package/dist/svg/icon/icon-arrows-3d-filled-64-colored.svg +9 -0
  22. package/dist/svg/icon/icon-discount-16.svg +7 -0
  23. package/dist/svg/icon/icon-discount-24.svg +7 -0
  24. package/dist/svg/icon/icon-package-16.svg +7 -0
  25. package/dist/svg/icon/icon-package-24.svg +4 -2
  26. package/dist/svg/icon/icon-pause-filled-64-colored.svg +3 -1
  27. package/dist/svg/icon/icon-phone-16.svg +5 -0
  28. package/dist/svg/icon/icon-phone-24.svg +3 -1
  29. package/dist/svg/icon/icon-promotion-16.svg +7 -0
  30. package/dist/svg/icon/icon-promotion-24.svg +7 -0
  31. package/dist/svg/icon/icon-search-similar-16.svg +1 -4
  32. package/dist/svg/icon/icon-search-similar-20.svg +2 -5
  33. package/dist/svg/icon/icon-search-similar-24.svg +7 -0
  34. package/dist/svg/icon/icon-wrench-16.svg +2 -2
  35. package/dist/svg/icon/icon-wrench-24.svg +2 -2
  36. package/dist/svg/icons.svg +67 -11
  37. package/dist/textbox/textbox.css +1 -1
  38. package/dist/toast-dialog/toast-dialog.css +6 -3
  39. package/package.json +3 -3
  40. package/src/less/button/button.less +5 -0
  41. package/src/less/button/stories/destructive-button/borderless.stories.js +4 -0
  42. package/src/less/carousel/carousel.less +41 -6
  43. package/src/less/carousel/stories/carousel.stories.js +167 -40
  44. package/src/less/field/field.less +1 -1
  45. package/src/less/global/global.less +1 -0
  46. package/src/less/icon/generated/icon.less +32 -0
  47. package/src/less/lightbox-dialog/lightbox-dialog.less +28 -0
  48. package/src/less/lightbox-dialog/stories/lightbox-dialog.stories.js +110 -0
  49. package/src/less/listbox-button/listbox-button.less +9 -0
  50. package/src/less/mixins/private/dialog-mixins.less +0 -1
  51. package/src/less/page-notice/page-notice.less +11 -1
  52. package/src/less/textbox/textbox.less +1 -1
  53. package/src/less/toast-dialog/toast-dialog.less +6 -2
  54. package/src/svg/icon/icon-arrows-3d-filled-64-colored.svg +9 -0
  55. package/src/svg/icon/icon-discount-16.svg +7 -0
  56. package/src/svg/icon/icon-discount-24.svg +7 -0
  57. package/src/svg/icon/icon-package-16.svg +7 -0
  58. package/src/svg/icon/icon-package-24.svg +4 -2
  59. package/src/svg/icon/icon-pause-filled-64-colored.svg +3 -1
  60. package/src/svg/icon/icon-phone-16.svg +5 -0
  61. package/src/svg/icon/icon-phone-24.svg +3 -1
  62. package/src/svg/icon/icon-promotion-16.svg +7 -0
  63. package/src/svg/icon/icon-promotion-24.svg +7 -0
  64. package/src/svg/icon/icon-search-similar-16.svg +1 -4
  65. package/src/svg/icon/icon-search-similar-20.svg +2 -5
  66. package/src/svg/icon/icon-search-similar-24.svg +7 -0
  67. package/src/svg/icon/icon-wrench-16.svg +2 -2
  68. package/src/svg/icon/icon-wrench-24.svg +2 -2
  69. package/src/svg/icons.svg +67 -11
  70. package/svg.svg +67 -11
  71. package/_cdn/skin/v16.5.1/skin-default.min.css +0 -6
  72. package/_cdn/skin/v16.5.1/skin-full.min.css +0 -6
  73. package/_cdn/skin/v16.5.1/skin-headless.min.css +0 -6
  74. package/_cdn/skin/v16.5.1/skin-legacy.min.css +0 -6
@@ -44,6 +44,11 @@ a.fake-btn--borderless[aria-disabled="true"] {
44
44
  border-color: transparent;
45
45
  }
46
46
 
47
+ button.btn--borderless.btn--destructive,
48
+ a.fake-btn--borderless.btn--destructive {
49
+ .color-token(btn-secondary-destructive-foreground-color, color-foreground-attention);
50
+ }
51
+
47
52
  button.btn--slim,
48
53
  a.fake-btn--slim {
49
54
  height: @button-height-regular;
@@ -0,0 +1,4 @@
1
+ export default { title: "Skin/Button/Destructive/Borderless" };
2
+
3
+ export const base = () =>
4
+ '<button class="btn btn--borderless btn--destructive">Destructive Borderless Button</button>';
@@ -17,21 +17,31 @@
17
17
  .background-color-token(carousel-paddle-background-color, color-background-primary);
18
18
 
19
19
  &--prev {
20
- left: 0;
20
+ left: -@spacing-200;
21
21
  }
22
22
 
23
23
  &--next {
24
- right: 0;
24
+ right: -@spacing-200;
25
25
  }
26
26
 
27
+ // deprecated
27
28
  .icon--chevron-right-24 {
28
29
  margin-left: 2px;
29
30
  }
30
31
 
32
+ // deprecated
31
33
  .icon--chevron-left-24 {
32
34
  margin-left: -2px;
33
35
  }
34
36
 
37
+ .icon--chevron-right-12 {
38
+ margin-left: 1px;
39
+ }
40
+
41
+ .icon--chevron-left-12 {
42
+ margin-left: -1px;
43
+ }
44
+
35
45
  align-items: center;
36
46
  border: 1px solid;
37
47
  .border-color-token(carousel-paddle-border-color, color-stroke-subtle);
@@ -101,7 +111,6 @@
101
111
  position: relative;
102
112
 
103
113
  &__container {
104
- overflow: hidden;
105
114
  position: relative;
106
115
  white-space: nowrap;
107
116
  width: 100%;
@@ -194,24 +203,37 @@ span.carousel__container {
194
203
  [dir="rtl"] {
195
204
  .carousel__control--prev {
196
205
  left: unset;
197
- right: 0;
206
+ right: -@spacing-200;
198
207
  }
199
208
 
209
+ // deprecated
200
210
  .carousel__control .icon--chevron-left-24 {
201
211
  margin-left: 2px;
202
212
  }
203
213
 
214
+ .carousel__control .icon--chevron-left-12 {
215
+ margin-left: 1px;
216
+ }
217
+
204
218
  .carousel__control--next {
205
- left: 0;
219
+ left: -@spacing-200;
206
220
  right: unset;
207
221
  }
208
222
 
223
+ // deprecated
209
224
  .carousel__control .icon--chevron-right-24 {
210
225
  margin-left: -2px;
211
226
  }
212
227
 
228
+ .carousel__control .icon--chevron-right-12 {
229
+ margin-left: -1px;
230
+ }
231
+
232
+ // deprecated (first two selectors only)
213
233
  .carousel__control .icon--chevron-left-24,
214
- .carousel__control .icon--chevron-right-24 {
234
+ .carousel__control .icon--chevron-right-24,
235
+ .carousel__control .icon--chevron-left-12,
236
+ .carousel__control .icon--chevron-right-12 {
215
237
  transform: rotate(180deg);
216
238
  }
217
239
  }
@@ -224,6 +246,7 @@ span.carousel__container {
224
246
  (scroll-snap-coordinate: 0 0) or /*!Y */ (scroll-snap-align: start)
225
247
  ) {
226
248
  // always show paddles when scroll snapping and hover is not supported.
249
+ // todo: rename to .carousel--autoplay
227
250
  .carousel:not(.carousel__autoplay) .carousel__control {
228
251
  .show-control();
229
252
  }
@@ -245,6 +268,7 @@ span.carousel__container {
245
268
  (scroll-snap-coordinate: 0 0) or /*!Y */ (scroll-snap-align: start)
246
269
  ) {
247
270
  /* autoprefixer: off */
271
+ // todo: rename to .carousel--autoplay
248
272
  .carousel:not(.carousel__autoplay) {
249
273
  overflow: visible;
250
274
 
@@ -307,6 +331,7 @@ span.carousel__container {
307
331
  }
308
332
  }
309
333
 
334
+ // todo: rename to .carousel--autoplay
310
335
  .carousel.carousel--hidden-scrollbar:not(.carousel__autoplay) {
311
336
  overflow: hidden;
312
337
  }
@@ -322,3 +347,13 @@ span.carousel__container {
322
347
  .carousel--hidden-scrollbar .carousel__container .carousel__list {
323
348
  padding-bottom: 80px;
324
349
  }
350
+
351
+ // hidden-scrollbar must have inner paddle position due to overflow: hidden
352
+ .carousel--hidden-scrollbar .carousel__control--prev {
353
+ left: 0;
354
+ }
355
+
356
+ // hidden-scrollbar must have inner paddle position due to overflow: hidden
357
+ .carousel--hidden-scrollbar .carousel__control--next {
358
+ right: 0;
359
+ }
@@ -4,8 +4,8 @@ export const continuous = () => `
4
4
  <div class="carousel">
5
5
  <div class="carousel__container">
6
6
  <button class="carousel__control carousel__control--prev" aria-label="Previous Slide - Top Products">
7
- <svg aria-hidden="true" class="icon icon--chevron-left-24" focusable="false">
8
- <use href="#icon-chevron-left-24"></use>
7
+ <svg aria-hidden="true" class="icon icon--chevron-left-12" focusable="false">
8
+ <use href="#icon-chevron-left-12"></use>
9
9
  </svg>
10
10
  </button>
11
11
  <div class="carousel__viewport carousel__viewport--mask">
@@ -21,8 +21,8 @@ export const continuous = () => `
21
21
  </ul>
22
22
  </div>
23
23
  <button class="carousel__control carousel__control--next" aria-label="Next Slide - Top Products">
24
- <svg aria-hidden="true" class="icon icon--chevron-right-24" focusable="false">
25
- <use href="#icon-chevron-right-24"></use>
24
+ <svg aria-hidden="true" class="icon icon--chevron-right-12" focusable="false">
25
+ <use href="#icon-chevron-right-12"></use>
26
26
  </svg>
27
27
  </button>
28
28
  </div>
@@ -33,25 +33,25 @@ export const imageTreatment = () => `
33
33
  <div class="carousel">
34
34
  <div class="carousel__container">
35
35
  <button class="carousel__control carousel__control--prev" aria-label="Previous Slide - Top Products">
36
- <svg aria-hidden="true" class="icon icon--chevron-left-24" focusable="false">
37
- <use href="#icon-chevron-left-24"></use>
36
+ <svg aria-hidden="true" class="icon icon--chevron-left-12" focusable="false">
37
+ <use href="#icon-chevron-left-12"></use>
38
38
  </svg>
39
39
  </button>
40
40
  <div class="carousel__viewport carousel__viewport--mask">
41
41
  <ul class="carousel__list carousel__list--image-treatment carousel__list--image-treatment-demo">
42
- <li><img src="http://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/aztec-pyramid.jpeg" /></li>
43
- <li><img src="http://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/falls.jpeg" /></li>
44
- <li><img src="http://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/mountain.jpeg" /></li>
45
- <li><img src="http://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/shoes.jpeg"/></li>
46
- <li><img src="http://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/tall-cat.jpeg" /></li>
47
- <li><img src="http://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/wide-cat.jpeg"/></li>
42
+ <li><img src="https://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/aztec-pyramid.jpeg" /></li>
43
+ <li><img src="https://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/falls.jpeg" /></li>
44
+ <li><img src="https://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/mountain.jpeg" /></li>
45
+ <li><img src="https://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/shoes.jpeg"/></li>
46
+ <li><img src="https://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/tall-cat.jpeg" /></li>
47
+ <li><img src="https://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/wide-cat.jpeg"/></li>
48
48
  <li>Card 7</li>
49
49
  <li>Card 8</li>
50
50
  </ul>
51
51
  </div>
52
52
  <button class="carousel__control carousel__control--next" aria-label="Next Slide - Top Products">
53
- <svg aria-hidden="true" class="icon icon--chevron-right-24" focusable="false">
54
- <use href="#icon-chevron-right-24"></use>
53
+ <svg aria-hidden="true" class="icon icon--chevron-right-12" focusable="false">
54
+ <use href="#icon-chevron-right-12"></use>
55
55
  </svg>
56
56
  </button>
57
57
  </div>
@@ -62,25 +62,25 @@ export const imageTreatmentLarge = () => `
62
62
  <div class="carousel">
63
63
  <div class="carousel__container">
64
64
  <button class="carousel__control carousel__control--prev" aria-label="Previous Slide - Top Products">
65
- <svg aria-hidden="true" class="icon icon--chevron-left-24" focusable="false">
66
- <use href="#icon-chevron-left-24"></use>
65
+ <svg aria-hidden="true" class="icon icon--chevron-left-12" focusable="false">
66
+ <use href="#icon-chevron-left-12"></use>
67
67
  </svg>
68
68
  </button>
69
69
  <div class="carousel__viewport carousel__viewport--mask">
70
70
  <ul class="carousel__list carousel__list--image-treatment-large carousel__list--image-treatment-demo">
71
- <li><img src="http://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/aztec-pyramid.jpeg" /></li>
72
- <li><img src="http://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/falls.jpeg" /></li>
73
- <li><img src="http://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/mountain.jpeg" /></li>
74
- <li><img src="http://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/shoes.jpeg"/></li>
75
- <li><img src="http://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/tall-cat.jpeg" /></li>
76
- <li><img src="http://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/wide-cat.jpeg"/></li>
71
+ <li><img src="https://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/aztec-pyramid.jpeg" /></li>
72
+ <li><img src="https://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/falls.jpeg" /></li>
73
+ <li><img src="https://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/mountain.jpeg" /></li>
74
+ <li><img src="https://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/shoes.jpeg"/></li>
75
+ <li><img src="https://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/tall-cat.jpeg" /></li>
76
+ <li><img src="https://ir.ebaystatic.com/cr/v/c1/skin/image-treatment/wide-cat.jpeg"/></li>
77
77
  <li>Card 7</li>
78
78
  <li>Card 8</li>
79
79
  </ul>
80
80
  </div>
81
81
  <button class="carousel__control carousel__control--next" aria-label="Next Slide - Top Products">
82
- <svg aria-hidden="true" class="icon icon--chevron-right-24" focusable="false">
83
- <use href="#icon-chevron-right-24"></use>
82
+ <svg aria-hidden="true" class="icon icon--chevron-right-12" focusable="false">
83
+ <use href="#icon-chevron-right-12"></use>
84
84
  </svg>
85
85
  </button>
86
86
  </div>
@@ -94,8 +94,8 @@ export const slides = () => `
94
94
  <span>Top Products - Slide 1 of 2</span>
95
95
  </h4>
96
96
  <button class="carousel__control carousel__control--prev" aria-label="Previous Slide - Top Products">
97
- <svg aria-hidden="true" class="icon icon--chevron-left-24" focusable="false" >
98
- <use href="#icon-chevron-left-24"></use>
97
+ <svg aria-hidden="true" class="icon icon--chevron-left-12" focusable="false" >
98
+ <use href="#icon-chevron-left-12"></use>
99
99
  </svg>
100
100
  </button>
101
101
  <div class="carousel__viewport">
@@ -111,8 +111,8 @@ export const slides = () => `
111
111
  </ul>
112
112
  </div>
113
113
  <button class="carousel__control carousel__control--next" aria-label="Next Slide - Top Products">
114
- <svg aria-hidden="true" class="icon icon--chevron-right-24" focusable="false">
115
- <use href="#icon-chevron-right-24"></use>
114
+ <svg aria-hidden="true" class="icon icon--chevron-right-12" focusable="false">
115
+ <use href="#icon-chevron-right-12"></use>
116
116
  </svg>
117
117
  </button>
118
118
  </div>
@@ -126,8 +126,8 @@ export const slideshow = () => `
126
126
  <span>Top Products - Slide 1 of 4</span>
127
127
  </h4>
128
128
  <button class="carousel__control carousel__control--prev" aria-label="Previous Slide - Top Products">
129
- <svg aria-hidden="true" class="icon icon--chevron-left-24" focusable="false" >
130
- <use href="#icon-chevron-left-24"></use>
129
+ <svg aria-hidden="true" class="icon icon--chevron-left-12" focusable="false" >
130
+ <use href="#icon-chevron-left-12"></use>
131
131
  </svg>
132
132
  </button>
133
133
  <div class="carousel__viewport">
@@ -139,8 +139,8 @@ export const slideshow = () => `
139
139
  </ul>
140
140
  </div>
141
141
  <button class="carousel__control carousel__control--next" aria-label="Next Slide - Top Products">
142
- <svg aria-hidden="true" class="icon icon--chevron-right-24" focusable="false">
143
- <use href="#icon-chevron-right-24"></use>
142
+ <svg aria-hidden="true" class="icon icon--chevron-right-12" focusable="false">
143
+ <use href="#icon-chevron-right-12"></use>
144
144
  </svg>
145
145
  </button>
146
146
  </div>
@@ -160,8 +160,8 @@ export const RTL = () => `
160
160
  <span>Top Products - Slide 1 of 4</span>
161
161
  </h4>
162
162
  <button class="carousel__control carousel__control--prev" aria-label="Previous Slide - Top Products">
163
- <svg aria-hidden="true" class="icon icon--chevron-left-24" focusable="false">
164
- <use href="#icon-chevron-left-24"></use>
163
+ <svg aria-hidden="true" class="icon icon--chevron-left-12" focusable="false">
164
+ <use href="#icon-chevron-left-12"></use>
165
165
  </svg>
166
166
  </button>
167
167
  <div class="carousel__viewport">
@@ -173,8 +173,8 @@ export const RTL = () => `
173
173
  </ul>
174
174
  </div>
175
175
  <button class="carousel__control carousel__control--next" aria-label="Next Slide - Top Products">
176
- <svg aria-hidden="true" class="icon icon--chevron-right-24" focusable="false" >
177
- <use href="#icon-chevron-right-24"></use>
176
+ <svg aria-hidden="true" class="icon icon--chevron-right-12" focusable="false" >
177
+ <use href="#icon-chevron-right-12"></use>
178
178
  </svg>
179
179
  </button>
180
180
  </div>
@@ -191,8 +191,8 @@ export const hiddenScrollbar = () => `
191
191
  <div class="carousel carousel--hidden-scrollbar">
192
192
  <div class="carousel__container">
193
193
  <button class="carousel__control carousel__control--prev" aria-label="Previous Slide - Top Products">
194
- <svg aria-hidden="true" class="icon icon--chevron-left-24" focusable="false">
195
- <use href="#icon-chevron-left-24"></use>
194
+ <svg aria-hidden="true" class="icon icon--chevron-left-12" focusable="false">
195
+ <use href="#icon-chevron-left-12"></use>
196
196
  </svg>
197
197
  </button>
198
198
  <div class="carousel__viewport carousel__viewport--mask">
@@ -208,8 +208,135 @@ export const hiddenScrollbar = () => `
208
208
  </ul>
209
209
  </div>
210
210
  <button class="carousel__control carousel__control--next" aria-label="Next Slide - Top Products">
211
- <svg aria-hidden="true" class="icon icon--chevron-right-24" focusable="false">
212
- <use href="#icon-chevron-right-24"></use>
211
+ <svg aria-hidden="true" class="icon icon--chevron-right-12" focusable="false">
212
+ <use href="#icon-chevron-right-12"></use>
213
+ </svg>
214
+ </button>
215
+ </div>
216
+ </div>
217
+ `;
218
+
219
+ /* paddle opacity set to 1 for purpose of visual regression testing only */
220
+ export const continuousWithPaddlesVisible = () => `
221
+ <div class="carousel">
222
+ <div class="carousel__container">
223
+ <button class="carousel__control carousel__control--prev" aria-label="Previous Slide - Top Products" style="opacity: 1">
224
+ <svg aria-hidden="true" class="icon icon--chevron-left-12" focusable="false">
225
+ <use href="#icon-chevron-left-12"></use>
226
+ </svg>
227
+ </button>
228
+ <div class="carousel__viewport carousel__viewport--mask">
229
+ <ul class="carousel__list carousel__list--default-demo">
230
+ <li>Card 1</li>
231
+ <li>Card 2</li>
232
+ <li>Card 3</li>
233
+ <li>Card 4</li>
234
+ <li>Card 5</li>
235
+ <li>Card 6</li>
236
+ <li>Card 7</li>
237
+ <li>Card 8</li>
238
+ </ul>
239
+ </div>
240
+ <button class="carousel__control carousel__control--next" aria-label="Next Slide - Top Products" style="opacity: 1">
241
+ <svg aria-hidden="true" class="icon icon--chevron-right-12" focusable="false">
242
+ <use href="#icon-chevron-right-12"></use>
243
+ </svg>
244
+ </button>
245
+ </div>
246
+ </div>
247
+ `;
248
+
249
+ /* paddle opacity set to 1 for purpose of visual regression testing only */
250
+ export const slidesWithPaddlesVisible = () => `
251
+ <div class="carousel carousel--slides">
252
+ <div class="carousel__container">
253
+ <h4 class="clipped" aria-live="polite">
254
+ <span>Top Products - Slide 1 of 2</span>
255
+ </h4>
256
+ <button class="carousel__control carousel__control--prev" aria-label="Previous Slide - Top Products" style="opacity: 1">
257
+ <svg aria-hidden="true" class="icon icon--chevron-left-12" focusable="false" >
258
+ <use href="#icon-chevron-left-12"></use>
259
+ </svg>
260
+ </button>
261
+ <div class="carousel__viewport">
262
+ <ul class="carousel__list carousel__list--discrete-demo">
263
+ <li>Card 1</li>
264
+ <li>Card 2</li>
265
+ <li>Card 3</li>
266
+ <li>Card 4</li>
267
+ <li>Card 5</li>
268
+ <li>Card 6</li>
269
+ <li>Card 7</li>
270
+ <li>Card 8</li>
271
+ </ul>
272
+ </div>
273
+ <button class="carousel__control carousel__control--next" aria-label="Next Slide - Top Products" style="opacity: 1">
274
+ <svg aria-hidden="true" class="icon icon--chevron-right-12" focusable="false">
275
+ <use href="#icon-chevron-right-12"></use>
276
+ </svg>
277
+ </button>
278
+ </div>
279
+ </div>
280
+ `;
281
+
282
+ /* paddle opacity set to 1 for purpose of visual regression testing only */
283
+ export const slideshowWithPaddlesVisible = () => `
284
+ <div class="carousel carousel--slides">
285
+ <div class="carousel__container">
286
+ <h4 class="clipped" aria-live="polite">
287
+ <span>Top Products - Slide 1 of 4</span>
288
+ </h4>
289
+ <button class="carousel__control carousel__control--prev" aria-label="Previous Slide - Top Products" style="opacity: 1">
290
+ <svg aria-hidden="true" class="icon icon--chevron-left-12" focusable="false" >
291
+ <use href="#icon-chevron-left-12"></use>
292
+ </svg>
293
+ </button>
294
+ <div class="carousel__viewport">
295
+ <ul class="carousel__list carousel__list--slideshow-demo">
296
+ <li>Card 1</li>
297
+ <li>Card 2</li>
298
+ <li>Card 3</li>
299
+ <li>Card 4</li>
300
+ </ul>
301
+ </div>
302
+ <button class="carousel__control carousel__control--next" aria-label="Next Slide - Top Products" style="opacity: 1">
303
+ <svg aria-hidden="true" class="icon icon--chevron-right-12" focusable="false">
304
+ <use href="#icon-chevron-right-12"></use>
305
+ </svg>
306
+ </button>
307
+ </div>
308
+ <button class="carousel__playback" aria-label="Play - Top Products">
309
+ <svg class="icon icon--play-24" focusable="false" aria-hidden="true">
310
+ <use href="#icon-play-24"></use>
311
+ </svg>
312
+ </button>
313
+ </div>
314
+ `;
315
+
316
+ /* paddle opacity set to 1 for purpose of visual regression testing only */
317
+ export const hiddenScrollbarWithPaddlesVisible = () => `
318
+ <div class="carousel carousel--hidden-scrollbar">
319
+ <div class="carousel__container">
320
+ <button class="carousel__control carousel__control--prev" aria-label="Previous Slide - Top Products" style="opacity: 1">
321
+ <svg aria-hidden="true" class="icon icon--chevron-left-12" focusable="false">
322
+ <use href="#icon-chevron-left-12"></use>
323
+ </svg>
324
+ </button>
325
+ <div class="carousel__viewport carousel__viewport--mask">
326
+ <ul class="carousel__list carousel__list--default-demo">
327
+ <li>Card 1</li>
328
+ <li>Card 2</li>
329
+ <li>Card 3</li>
330
+ <li>Card 4</li>
331
+ <li>Card 5</li>
332
+ <li>Card 6</li>
333
+ <li>Card 7</li>
334
+ <li>Card 8</li>
335
+ </ul>
336
+ </div>
337
+ <button class="carousel__control carousel__control--next" aria-label="Next Slide - Top Products" style="opacity: 1">
338
+ <svg aria-hidden="true" class="icon icon--chevron-right-12" focusable="false">
339
+ <use href="#icon-chevron-right-12"></use>
213
340
  </svg>
214
341
  </button>
215
342
  </div>
@@ -36,7 +36,7 @@ div.field--table {
36
36
 
37
37
  .field__description--group {
38
38
  display: flex;
39
- justify-content: end;
39
+ justify-content: flex-end;
40
40
  }
41
41
 
42
42
  .field__description--group > :last-child {
@@ -6,6 +6,7 @@ body {
6
6
  .color-token(color-foreground-primary);
7
7
  font-family: @font-family-default;
8
8
  font-size: @font-size-regular;
9
+ /* stylelint-disable-next-line plugin/no-unsupported-browser-features */
9
10
  -webkit-text-size-adjust: 100%;
10
11
  }
11
12
 
@@ -111,6 +111,10 @@ svg.icon--arrows-3d-24 {
111
111
  height: 24px;
112
112
  width: 24px;
113
113
  }
114
+ svg.icon--arrows-3d-filled-64-colored {
115
+ height: 64px;
116
+ width: 64px;
117
+ }
114
118
  svg.icon--article-16 {
115
119
  height: 16px;
116
120
  width: 16px;
@@ -743,6 +747,14 @@ svg.icon--discord-24 {
743
747
  height: 24px;
744
748
  width: 24px;
745
749
  }
750
+ svg.icon--discount-16 {
751
+ height: 16px;
752
+ width: 16px;
753
+ }
754
+ svg.icon--discount-24 {
755
+ height: 24px;
756
+ width: 24px;
757
+ }
746
758
  svg.icon--discover-12-colored {
747
759
  height: 12px;
748
760
  width: 20px;
@@ -1715,6 +1727,10 @@ svg.icon--overflow-vertical-24 {
1715
1727
  height: 24px;
1716
1728
  width: 24px;
1717
1729
  }
1730
+ svg.icon--package-16 {
1731
+ height: 16px;
1732
+ width: 16px;
1733
+ }
1718
1734
  svg.icon--package-24 {
1719
1735
  height: 24px;
1720
1736
  width: 24px;
@@ -1823,6 +1839,10 @@ svg.icon--peso-24 {
1823
1839
  height: 24px;
1824
1840
  width: 24px;
1825
1841
  }
1842
+ svg.icon--phone-16 {
1843
+ height: 16px;
1844
+ width: 16px;
1845
+ }
1826
1846
  svg.icon--phone-24 {
1827
1847
  height: 24px;
1828
1848
  width: 24px;
@@ -1919,6 +1939,14 @@ svg.icon--progress-upcoming-24 {
1919
1939
  height: 24px;
1920
1940
  width: 24px;
1921
1941
  }
1942
+ svg.icon--promotion-16 {
1943
+ height: 16px;
1944
+ width: 16px;
1945
+ }
1946
+ svg.icon--promotion-24 {
1947
+ height: 24px;
1948
+ width: 24px;
1949
+ }
1922
1950
  svg.icon--qr-code-16 {
1923
1951
  height: 16px;
1924
1952
  width: 16px;
@@ -2119,6 +2147,10 @@ svg.icon--search-similar-20 {
2119
2147
  height: 20px;
2120
2148
  width: 20px;
2121
2149
  }
2150
+ svg.icon--search-similar-24 {
2151
+ height: 24px;
2152
+ width: 24px;
2153
+ }
2122
2154
  svg.icon--security-key-24 {
2123
2155
  height: 24px;
2124
2156
  width: 24px;
@@ -2,6 +2,11 @@
2
2
  @import "../mixins/private/dialog-mixins.less";
3
3
  @import "../mixins/private/token-mixins.less";
4
4
 
5
+ :root {
6
+ --dialog-lightbox-wide-max-width: 896px;
7
+ --dialog-lightbox-narrow-max-width: 480px;
8
+ }
9
+
5
10
  .lightbox-dialog[role="dialog"] {
6
11
  .lightbox-dialog-base();
7
12
  }
@@ -54,6 +59,7 @@
54
59
 
55
60
  // inherits from .icon-btn
56
61
  // Might need to see if icon-btn can support a small version
62
+ button.icon-btn.lightbox-dialog__prev,
57
63
  button.icon-btn.lightbox-dialog__close {
58
64
  align-self: center;
59
65
  border: 0;
@@ -64,11 +70,20 @@ button.icon-btn.lightbox-dialog__close {
64
70
  z-index: 1;
65
71
  }
66
72
 
73
+ button.icon-btn.lightbox-dialog__prev {
74
+ margin-right: 16px;
75
+ }
76
+
77
+ .lightbox-dialog--expressive button.icon-btn.lightbox-dialog__prev,
67
78
  .lightbox-dialog--expressive button.icon-btn.lightbox-dialog__close {
68
79
  align-self: self-start;
69
80
  margin: 0;
70
81
  }
71
82
 
83
+ .lightbox-dialog--expressive button.icon-btn.lightbox-dialog__prev + * {
84
+ margin-left: -32px;
85
+ }
86
+
72
87
  .lightbox-dialog__title {
73
88
  &:not(:first-child) {
74
89
  margin-left: @spacing-200;
@@ -126,12 +141,25 @@ button.icon-btn.lightbox-dialog__close {
126
141
  }
127
142
  }
128
143
 
144
+ [dir="rtl"] {
145
+ button.icon-btn.lightbox-dialog__prev {
146
+ margin-left: 16px;
147
+ margin-right: 0;
148
+ }
149
+ button.icon-btn.lightbox-dialog__prev .icon--chevron-left-16 {
150
+ transform: rotate(180deg);
151
+ }
152
+ }
129
153
  // In order to prevent the margins to meet the ege of the page at medium screen sizes
130
154
  @media (min-width: @_screen-size-SM) {
131
155
  .lightbox-dialog__window {
132
156
  max-width: calc(88% - @spacing-400);
133
157
  }
134
158
 
159
+ .lightbox-dialog--narrow .lightbox-dialog__window {
160
+ max-width: var(--dialog-lightbox-narrow-max-width);
161
+ }
162
+
135
163
  .lightbox-dialog__window .lightbox-dialog__footer {
136
164
  .dialog-footer-content-large();
137
165
  }