@ebay/skin 19.8.1 → 19.10.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.
@@ -0,0 +1,147 @@
1
+ @keyframes fill-horizontal-background {
2
+ 0% {
3
+ background-size: 0 100%;
4
+ }
5
+ 99% {
6
+ background-color: var(--color-background-primary);
7
+ }
8
+ to {
9
+ background-color: var(--color-background-strong);
10
+ background-size: 100% 100%;
11
+ }
12
+ }
13
+ @keyframes chevron-bounce-open {
14
+ 0% {
15
+ transform: translateY(0);
16
+ }
17
+ 50% {
18
+ transform: translateY(-7px);
19
+ }
20
+ to {
21
+ transform: translateY(0);
22
+ }
23
+ }
24
+ @keyframes chevron-bounce-close {
25
+ 0% {
26
+ transform: translateY(0);
27
+ }
28
+ 50% {
29
+ transform: translateY(7px);
30
+ }
31
+ to {
32
+ transform: translateY(0);
33
+ }
34
+ }
35
+ a.filter-chip,
36
+ button.filter-chip {
37
+ align-items: center;
38
+ background-color: var(--color-background-primary);
39
+ background-position: 50%;
40
+ background-repeat: no-repeat;
41
+ background-size: 0 100%;
42
+ border: 1px solid var(--color-stroke-default);
43
+ border-radius: var(--border-radius-100);
44
+ box-shadow: none;
45
+ box-sizing: border-box;
46
+ color: var(--color-foreground-primary);
47
+ display: inline-flex;
48
+ font-size: var(--font-size-default);
49
+ gap: var(--spacing-75);
50
+ height: var(--spacing-400);
51
+ justify-content: space-between;
52
+ max-width: 296px;
53
+ min-width: 32px;
54
+ padding: 0 var(--spacing-150);
55
+ text-decoration: none;
56
+ transition: all var(--motion-duration-short-3)
57
+ var(--motion-easing-quick-enter);
58
+ vertical-align: bottom;
59
+ }
60
+ a.filter-chip:active,
61
+ button.filter-chip:active {
62
+ transform: scale(0.97);
63
+ }
64
+
65
+ a.filter-chip--expressive,
66
+ button.filter-chip--expressive {
67
+ border-radius: var(--border-radius-150);
68
+ height: 40px;
69
+ }
70
+
71
+ .filter-chip__media {
72
+ align-items: center;
73
+ border-radius: 8px;
74
+ border-radius: var(--spacing-400);
75
+ display: flex;
76
+ justify-content: center;
77
+ margin-inline-start: -8px;
78
+ overflow: hidden;
79
+ position: relative;
80
+ }
81
+ .filter-chip__media:after {
82
+ background: rgba(0, 0, 0, 0.05);
83
+ bottom: 0;
84
+ content: "";
85
+ display: block;
86
+ left: 0;
87
+ pointer-events: none;
88
+ position: absolute;
89
+ right: 0;
90
+ top: 0;
91
+ }
92
+ .filter-chip__media > img {
93
+ display: inline-block;
94
+ height: var(--spacing-400);
95
+ max-height: 100%;
96
+ max-width: 100%;
97
+ object-fit: contain;
98
+ object-fit: cover;
99
+ width: var(--spacing-400);
100
+ }
101
+
102
+ a.filter-chip--selected,
103
+ button.filter-chip[aria-pressed="true"] {
104
+ animation: fill-horizontal-background 0s var(--motion-easing-quick-enter)
105
+ forwards;
106
+ background-image: linear-gradient(
107
+ to right,
108
+ var(--color-background-strong) 0,
109
+ var(--color-background-strong) 100%
110
+ );
111
+ color: var(--color-foreground-on-strong);
112
+ }
113
+
114
+ button.filter-chip--animated[aria-pressed="true"] {
115
+ animation-duration: var(--motion-duration-medium-2);
116
+ transition: color var(--motion-duration-instant)
117
+ var(--motion-easing-standard);
118
+ }
119
+
120
+ button.filter-chip[aria-expanded="false"]:active .filter-chip__trailing {
121
+ animation: chevron-bounce-close var(--motion-duration-medium-1)
122
+ var(--motion-easing-standard);
123
+ rotate: 180deg;
124
+ }
125
+
126
+ button.filter-chip[aria-expanded="false"] .filter-chip__trailing {
127
+ rotate: 0deg;
128
+ transition: none;
129
+ }
130
+
131
+ button.filter-chip[aria-expanded="true"]:active .filter-chip__trailing {
132
+ animation: chevron-bounce-open var(--motion-duration-medium-1)
133
+ var(--motion-easing-standard) var(--motion-duration-short-1);
134
+ rotate: 0deg;
135
+ }
136
+
137
+ button.filter-chip[aria-expanded="true"] .filter-chip__trailing {
138
+ rotate: 180deg;
139
+ transition: none;
140
+ }
141
+
142
+ .filter-chip__text {
143
+ overflow: hidden;
144
+ padding: var(--spacing-75) 0;
145
+ text-overflow: ellipsis;
146
+ white-space: nowrap;
147
+ }
@@ -306,7 +306,7 @@ button.icon-btn.lightbox-dialog__prev {
306
306
  .lightbox-dialog__window {
307
307
  border-radius: var(--lightbox-border-radius, var(--border-radius-100));
308
308
  margin: auto;
309
- max-width: calc(88% - var(--spacing-400));
309
+ max-width: 88%;
310
310
  }
311
311
  .lightbox-dialog--narrow .lightbox-dialog__window {
312
312
  max-width: var(--dialog-lightbox-narrow-max-width);
@@ -341,7 +341,7 @@ button.icon-btn.lightbox-dialog__prev {
341
341
  max-width: var(--dialog-lightbox-max-width);
342
342
  }
343
343
  .lightbox-dialog--wide .lightbox-dialog__window {
344
- max-width: var(--dialog-lightbox-wide-max-width);
344
+ max-width: 88%;
345
345
  }
346
346
  .lightbox-dialog--wide .lightbox-dialog__image {
347
347
  height: 256px;
@@ -352,3 +352,8 @@ button.icon-btn.lightbox-dialog__prev {
352
352
  margin-top: 256px;
353
353
  }
354
354
  }
355
+ @media (min-width: 1024px) {
356
+ .lightbox-dialog--wide .lightbox-dialog__window {
357
+ max-width: var(--dialog-lightbox-wide-max-width);
358
+ }
359
+ }
@@ -0,0 +1,41 @@
1
+ @mixin chevron-keyframes() {
2
+ @keyframes chevron-bounce-open {
3
+ 0% {
4
+ transform: translateY(0);
5
+ }
6
+ 50% {
7
+ transform: translateY(-7px);
8
+ }
9
+ 100% {
10
+ transform: translateY(0);
11
+ }
12
+ }
13
+
14
+ @keyframes chevron-bounce-close {
15
+ 0% {
16
+ transform: translateY(0);
17
+ }
18
+ 50% {
19
+ transform: translateY(7px);
20
+ }
21
+ 100% {
22
+ transform: translateY(0);
23
+ }
24
+ }
25
+ }
26
+
27
+ // This is used for when the animations are loading so that there are no animations happening on page load.
28
+ @mixin loading() {
29
+ animation: none;
30
+ transition: none;
31
+ }
32
+
33
+ @mixin chevron-open() {
34
+ animation: chevron-bounce-open var(--motion-duration-medium-1)
35
+ var(--motion-easing-standard) var(--motion-duration-short-1);
36
+ }
37
+
38
+ @mixin chevron-close() {
39
+ animation: chevron-bounce-close var(--motion-duration-medium-1)
40
+ var(--motion-easing-standard);
41
+ }
@@ -0,0 +1,76 @@
1
+ @keyframes fill-horizontal-background {
2
+ 0% {
3
+ background-size: 0 100%;
4
+ }
5
+ 99% {
6
+ background-color: var(--color-background-primary);
7
+ }
8
+ to {
9
+ background-color: var(--color-background-strong);
10
+ background-size: 100% 100%;
11
+ }
12
+ }
13
+ .selection-chip {
14
+ align-items: center;
15
+ background-color: var(--color-background-primary);
16
+ background-position: 50%;
17
+ background-repeat: no-repeat;
18
+ background-size: 0 100%;
19
+ border: 1px solid var(--color-stroke-default);
20
+ border-radius: var(--border-radius-50);
21
+ box-shadow: none;
22
+ box-sizing: border-box;
23
+ color: var(--color-foreground-primary);
24
+ display: inline-flex;
25
+ font-size: var(--font-size-default);
26
+ gap: var(--spacing-75);
27
+ height: var(--spacing-400);
28
+ justify-content: space-between;
29
+ max-width: 296px;
30
+ min-width: 32px;
31
+ padding: 0 var(--spacing-150);
32
+ text-decoration: none;
33
+ transition: all var(--motion-duration-short-3)
34
+ var(--motion-easing-quick-enter);
35
+ vertical-align: bottom;
36
+ }
37
+ .selection-chip:active {
38
+ transform: scale(0.97);
39
+ }
40
+
41
+ .selection-chip--animated .selection-chip__trailing {
42
+ transition: rotate var(--motion-duration-medium-3)
43
+ var(--motion-easing-standard);
44
+ }
45
+
46
+ .selection-chip__trailing {
47
+ rotate: -225deg;
48
+ }
49
+
50
+ .selection-chip[aria-pressed="true"] {
51
+ animation: fill-horizontal-background 0s var(--motion-easing-quick-enter)
52
+ forwards;
53
+ background-image: linear-gradient(
54
+ to right,
55
+ var(--color-background-strong) 0,
56
+ var(--color-background-strong) 100%
57
+ );
58
+ color: var(--color-foreground-on-strong);
59
+ }
60
+
61
+ .selection-chip--animated[aria-pressed="true"] {
62
+ animation-duration: var(--motion-duration-medium-2);
63
+ transition: color var(--motion-duration-instant)
64
+ var(--motion-easing-standard);
65
+ }
66
+
67
+ .selection-chip[aria-pressed="true"] .selection-chip__trailing {
68
+ rotate: 0deg;
69
+ }
70
+
71
+ .selection-chip__text {
72
+ overflow: hidden;
73
+ padding: var(--spacing-75) 0;
74
+ text-overflow: ellipsis;
75
+ white-space: nowrap;
76
+ }
@@ -7,6 +7,7 @@
7
7
  rx="1.5"
8
8
  fill="#fff"
9
9
  stroke="#191919"
10
+ stroke-width="1"
10
11
  />
11
12
  <path
12
13
  fill-rule="evenodd"
@@ -7,6 +7,7 @@
7
7
  rx="1.5"
8
8
  fill="#fff"
9
9
  stroke="#191919"
10
+ stroke-width="1"
10
11
  />
11
12
  <path
12
13
  fill-rule="evenodd"
@@ -7,6 +7,7 @@
7
7
  rx="1.5"
8
8
  fill="#fff"
9
9
  stroke="#191919"
10
+ stroke-width="1"
10
11
  />
11
12
  <path
12
13
  fill-rule="evenodd"
@@ -7,6 +7,7 @@
7
7
  rx="1.5"
8
8
  fill="#fff"
9
9
  stroke="#191919"
10
+ stroke-width="1"
10
11
  />
11
12
  <path
12
13
  fill-rule="evenodd"
@@ -3081,6 +3081,7 @@
3081
3081
  rx="1.5"
3082
3082
  fill="#fff"
3083
3083
  stroke="#191919"
3084
+ stroke-width="1"
3084
3085
  />
3085
3086
  <path
3086
3087
  fill-rule="evenodd"
@@ -3116,6 +3117,7 @@
3116
3117
  rx="1.5"
3117
3118
  fill="#fff"
3118
3119
  stroke="#191919"
3120
+ stroke-width="1"
3119
3121
  />
3120
3122
  <path
3121
3123
  fill-rule="evenodd"
@@ -3151,6 +3153,7 @@
3151
3153
  rx="1.5"
3152
3154
  fill="#fff"
3153
3155
  stroke="#191919"
3156
+ stroke-width="1"
3154
3157
  />
3155
3158
  <path
3156
3159
  fill-rule="evenodd"
@@ -3186,6 +3189,7 @@
3186
3189
  rx="1.5"
3187
3190
  fill="#fff"
3188
3191
  stroke="#191919"
3192
+ stroke-width="1"
3189
3193
  />
3190
3194
  <path
3191
3195
  fill-rule="evenodd"
@@ -0,0 +1 @@
1
+ { "dependencies": ["require: ./filter-chip.js"] }
@@ -0,0 +1 @@
1
+ @import "./dist/filter-chip/filter-chip.css";
package/filter-chip.js ADDED
@@ -0,0 +1 @@
1
+ require('./dist/filter-chip/filter-chip.css');
@@ -0,0 +1 @@
1
+ import './dist/filter-chip/filter-chip.css';
@@ -7,6 +7,7 @@
7
7
  "require: ./breadcrumbs.js",
8
8
  "require: ./button.js",
9
9
  "require: ./calendar.js",
10
+ "require: ./card.js",
10
11
  "require: ./carousel.js",
11
12
  "require: ./ccd.js",
12
13
  "require: ./chart-legend.js",
@@ -27,6 +28,7 @@
27
28
  "require: ./file-preview-card.js",
28
29
  "require: ./file-preview-card-group.js",
29
30
  "require: ./filter-button.js",
31
+ "require: ./filter-chip.js",
30
32
  "require: ./filter-input.js",
31
33
  "require: ./filter-menu.js",
32
34
  "require: ./filter-menu-button.js",
@@ -65,6 +67,7 @@
65
67
  "require: ./section-title.js",
66
68
  "require: ./segmented-buttons.js",
67
69
  "require: ./select.js",
70
+ "require: ./selection-chip.js",
68
71
  "require: ./signal.js",
69
72
  "require: ./skeleton.js",
70
73
  "require: ./snackbar-dialog.js",
package/index.css CHANGED
@@ -5,6 +5,7 @@
5
5
  @import "./breadcrumbs.css";
6
6
  @import "./button.css";
7
7
  @import "./calendar.css";
8
+ @import "./card.css";
8
9
  @import "./carousel.css";
9
10
  @import "./ccd.css";
10
11
  @import "./chart-legend.css";
@@ -25,6 +26,7 @@
25
26
  @import "./file-preview-card.css";
26
27
  @import "./file-preview-card-group.css";
27
28
  @import "./filter-button.css";
29
+ @import "./filter-chip.css";
28
30
  @import "./filter-input.css";
29
31
  @import "./filter-menu.css";
30
32
  @import "./filter-menu-button.css";
@@ -63,6 +65,7 @@
63
65
  @import "./section-title.css";
64
66
  @import "./segmented-buttons.css";
65
67
  @import "./select.css";
68
+ @import "./selection-chip.css";
66
69
  @import "./signal.css";
67
70
  @import "./skeleton.css";
68
71
  @import "./snackbar-dialog.css";
package/index.js CHANGED
@@ -5,6 +5,7 @@ require('./badge.js');
5
5
  require('./breadcrumbs.js');
6
6
  require('./button.js');
7
7
  require('./calendar.js');
8
+ require('./card.js');
8
9
  require('./carousel.js');
9
10
  require('./ccd.js');
10
11
  require('./chart-legend.js');
@@ -25,6 +26,7 @@ require('./file-input.js');
25
26
  require('./file-preview-card.js');
26
27
  require('./file-preview-card-group.js');
27
28
  require('./filter-button.js');
29
+ require('./filter-chip.js');
28
30
  require('./filter-input.js');
29
31
  require('./filter-menu.js');
30
32
  require('./filter-menu-button.js');
@@ -63,6 +65,7 @@ require('./section-notice.js');
63
65
  require('./section-title.js');
64
66
  require('./segmented-buttons.js');
65
67
  require('./select.js');
68
+ require('./selection-chip.js');
66
69
  require('./signal.js');
67
70
  require('./skeleton.js');
68
71
  require('./snackbar-dialog.js');
package/index.mjs CHANGED
@@ -5,6 +5,7 @@ import './dist/badge/badge.css';
5
5
  import './dist/breadcrumbs/breadcrumbs.css';
6
6
  import './dist/button/button.css';
7
7
  import './dist/calendar/calendar.css';
8
+ import './dist/card/card.css';
8
9
  import './dist/carousel/carousel.css';
9
10
  import './dist/ccd/ccd.css';
10
11
  import './dist/chart-legend/chart-legend.css';
@@ -25,6 +26,7 @@ import './dist/file-input/file-input.css';
25
26
  import './dist/file-preview-card/file-preview-card.css';
26
27
  import './dist/file-preview-card-group/file-preview-card-group.css';
27
28
  import './dist/filter-button/filter-button.css';
29
+ import './dist/filter-chip/filter-chip.css';
28
30
  import './dist/filter-input/filter-input.css';
29
31
  import './dist/filter-menu/filter-menu.css';
30
32
  import './dist/filter-menu-button/filter-menu-button.css';
@@ -63,6 +65,7 @@ import './dist/section-notice/section-notice.css';
63
65
  import './dist/section-title/section-title.css';
64
66
  import './dist/segmented-buttons/segmented-buttons.css';
65
67
  import './dist/select/select.css';
68
+ import './dist/selection-chip/selection-chip.css';
66
69
  import './dist/signal/signal.css';
67
70
  import './dist/skeleton/skeleton.css';
68
71
  import './dist/snackbar-dialog/snackbar-dialog.css';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ebay/skin",
3
- "version": "19.8.1",
3
+ "version": "19.10.0",
4
4
  "description": "Skin - CSS modules that represent the brand eBay",
5
5
  "keywords": [
6
6
  "eBay",
@@ -0,0 +1 @@
1
+ { "dependencies": ["require: ./selection-chip.js"] }
@@ -0,0 +1 @@
1
+ @import "./dist/selection-chip/selection-chip.css";
@@ -0,0 +1 @@
1
+ require('./dist/selection-chip/selection-chip.css');
@@ -0,0 +1 @@
1
+ import './dist/selection-chip/selection-chip.css';