@ebay/skin 17.2.0-next.0 → 17.2.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 (34) hide show
  1. package/.github/workflows/jekyll-gh-pages.yml +1 -0
  2. package/CHANGELOG.md +20 -0
  3. package/_cdn/skin/v17.2.0/skin-default.min.css +69 -0
  4. package/_cdn/skin/v17.2.0/skin-full.min.css +151 -0
  5. package/_cdn/skin/v17.2.0/skin-headless.min.css +6 -0
  6. package/dist/combobox/combobox.css +5 -2
  7. package/dist/date-textbox/date-textbox.css +3 -2
  8. package/dist/filter-menu-button/filter-menu-button.css +3 -2
  9. package/dist/infotip/infotip.css +3 -2
  10. package/dist/listbox/listbox.css +4 -1
  11. package/dist/listbox-button/listbox-button.css +5 -2
  12. package/dist/menu/menu.css +4 -1
  13. package/dist/menu-button/menu-button.css +7 -2
  14. package/dist/tooltip/tooltip.css +3 -2
  15. package/dist/tourtip/tourtip.css +3 -2
  16. package/package.json +30 -31
  17. package/src/less/date-textbox/date-textbox.less +1 -1
  18. package/src/less/filter-menu-button/filter-menu-button.less +1 -1
  19. package/src/less/mixins/private/bubble-mixins.less +7 -3
  20. package/src/less/mixins/private/dropdown-mixins.less +1 -1
  21. package/src/less/mixins/private/selection-list-mixins.less +2 -0
  22. package/src/less/pagination/stories/overflow.stories.js +12 -12
  23. package/.changeset/chilled-dots-whisper.md +0 -5
  24. package/.changeset/five-bats-appear.md +0 -5
  25. package/.changeset/gentle-moles-collect.md +0 -5
  26. package/.changeset/healthy-kings-hang.md +0 -5
  27. package/.changeset/pre.json +0 -17
  28. package/.changeset/pretty-rabbits-smash.md +0 -5
  29. package/.changeset/slow-maps-guess.md +0 -5
  30. package/.changeset/stale-lamps-retire.md +0 -5
  31. package/.changeset/unlucky-files-tickle.md +0 -5
  32. package/_cdn/skin/v17.2.0-next.0/skin-default.min.css +0 -69
  33. package/_cdn/skin/v17.2.0-next.0/skin-full.min.css +0 -151
  34. package/_cdn/skin/v17.2.0-next.0/skin-headless.min.css +0 -6
@@ -1,5 +1,6 @@
1
1
  :root {
2
- --bubble-filter: drop-shadow(0 2px 7px rgba(0, 0, 0, 0.15)) drop-shadow(0 5px 17px rgba(0, 0, 0, 0.2));
2
+ --bubble-shadow: 0 2px 7px rgba(0, 0, 0, 0.15),
3
+ 0 5px 17px rgba(0, 0, 0, 0.2);
3
4
  }
4
5
  div.listbox {
5
6
  margin: var(--spacing-200) 0;
@@ -30,6 +31,8 @@ div.listbox__options--reverse[role="listbox"] {
30
31
  }
31
32
  div.listbox__option[role="option"] {
32
33
  background-color: transparent;
34
+ border-style: solid;
35
+ border-width: 1px;
33
36
  box-sizing: border-box;
34
37
  display: inline-grid;
35
38
  font-family: inherit;
@@ -1,5 +1,6 @@
1
1
  :root {
2
- --bubble-filter: drop-shadow(0 2px 7px rgba(0, 0, 0, 0.15)) drop-shadow(0 5px 17px rgba(0, 0, 0, 0.2));
2
+ --bubble-shadow: 0 2px 7px rgba(0, 0, 0, 0.15),
3
+ 0 5px 17px rgba(0, 0, 0, 0.2);
3
4
  }
4
5
  .listbox-button {
5
6
  line-height: normal;
@@ -21,9 +22,9 @@ span.listbox-button--fluid .btn {
21
22
  div.listbox-button__listbox {
22
23
  background-color: var(--listbox-button-listbox-background-color, var(--color-background-elevated));
23
24
  border-radius: var(--listbox-button-listbox-border-radius, var(--border-radius-50));
25
+ box-shadow: var(--bubble-shadow);
24
26
  box-sizing: border-box;
25
27
  display: none;
26
- filter: var(--bubble-filter);
27
28
  left: 0;
28
29
  max-height: 400px;
29
30
  min-width: 100%;
@@ -128,6 +129,8 @@ div.listbox-button__option[role="option"][aria-selected="true"] svg.icon {
128
129
  }
129
130
  div.listbox-button__option[role="option"] {
130
131
  background-color: transparent;
132
+ border-style: solid;
133
+ border-width: 1px;
131
134
  box-sizing: border-box;
132
135
  display: inline-grid;
133
136
  font-family: inherit;
@@ -1,5 +1,6 @@
1
1
  :root {
2
- --bubble-filter: drop-shadow(0 2px 7px rgba(0, 0, 0, 0.15)) drop-shadow(0 5px 17px rgba(0, 0, 0, 0.2));
2
+ --bubble-shadow: 0 2px 7px rgba(0, 0, 0, 0.15),
3
+ 0 5px 17px rgba(0, 0, 0, 0.2);
3
4
  }
4
5
  .menu__items,
5
6
  .fake-menu__items {
@@ -46,6 +47,8 @@ button.fake-menu__item,
46
47
  a.fake-menu__item,
47
48
  div.menu__item[role^="menuitem"] {
48
49
  background-color: transparent;
50
+ border-style: solid;
51
+ border-width: 1px;
49
52
  box-sizing: border-box;
50
53
  display: inline-grid;
51
54
  font-family: inherit;
@@ -1,5 +1,6 @@
1
1
  :root {
2
- --bubble-filter: drop-shadow(0 2px 7px rgba(0, 0, 0, 0.15)) drop-shadow(0 5px 17px rgba(0, 0, 0, 0.2));
2
+ --bubble-shadow: 0 2px 7px rgba(0, 0, 0, 0.15),
3
+ 0 5px 17px rgba(0, 0, 0, 0.2);
3
4
  }
4
5
  .menu-button,
5
6
  .fake-menu-button {
@@ -10,9 +11,9 @@
10
11
  .fake-menu-button__menu {
11
12
  background-color: var(--menu-button-menu-background-color, var(--color-background-elevated));
12
13
  border-radius: var(--menu-button-menu-border-radius, var(--border-radius-50));
14
+ box-shadow: var(--bubble-shadow);
13
15
  box-sizing: border-box;
14
16
  display: none;
15
- filter: var(--bubble-filter);
16
17
  left: 0;
17
18
  max-height: 400px;
18
19
  min-width: 100%;
@@ -42,6 +43,8 @@ span.fake-menu-button__button {
42
43
  }
43
44
  div.menu-button__item[role^="menuitem"] {
44
45
  background-color: transparent;
46
+ border-style: solid;
47
+ border-width: 1px;
45
48
  box-sizing: border-box;
46
49
  display: inline-grid;
47
50
  font-family: inherit;
@@ -115,6 +118,8 @@ div.menu-button__item[role^="menuitem"][aria-checked="true"] svg.icon--tick-16 {
115
118
  .fake-menu-button__menu a.fake-menu-button__item,
116
119
  .fake-menu-button__menu button.fake-menu-button__item {
117
120
  background-color: transparent;
121
+ border-style: solid;
122
+ border-width: 1px;
118
123
  box-sizing: border-box;
119
124
  display: inline-grid;
120
125
  font-family: inherit;
@@ -1,5 +1,6 @@
1
1
  :root {
2
- --bubble-filter: drop-shadow(0 2px 7px rgba(0, 0, 0, 0.15)) drop-shadow(0 5px 17px rgba(0, 0, 0, 0.2));
2
+ --bubble-shadow: 0 2px 7px rgba(0, 0, 0, 0.15),
3
+ 0 5px 17px rgba(0, 0, 0, 0.2);
3
4
  }
4
5
  .tooltip {
5
6
  position: relative;
@@ -9,8 +10,8 @@ span.tooltip {
9
10
  }
10
11
  .tooltip__overlay {
11
12
  border-radius: var(--bubble-border-radius, var(--border-radius-50));
13
+ box-shadow: var(--bubble-shadow);
12
14
  display: none;
13
- filter: var(--bubble-filter);
14
15
  font-size: 14px;
15
16
  left: 0;
16
17
  max-width: 344px;
@@ -1,5 +1,6 @@
1
1
  :root {
2
- --bubble-filter: drop-shadow(0 2px 7px rgba(0, 0, 0, 0.15)) drop-shadow(0 5px 17px rgba(0, 0, 0, 0.2));
2
+ --bubble-shadow: 0 2px 7px rgba(0, 0, 0, 0.15),
3
+ 0 5px 17px rgba(0, 0, 0, 0.2);
3
4
  }
4
5
  .tourtip {
5
6
  position: relative;
@@ -9,8 +10,8 @@ span.tourtip {
9
10
  }
10
11
  .tourtip__overlay {
11
12
  border-radius: var(--bubble-border-radius, var(--border-radius-100));
13
+ box-shadow: var(--bubble-shadow);
12
14
  display: none;
13
- filter: var(--bubble-filter);
14
15
  font-size: 14px;
15
16
  left: 0;
16
17
  max-width: 344px;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@ebay/skin",
3
3
  "description": "Skin - CSS modules that represent the brand eBay",
4
- "version": "17.2.0-next.0",
4
+ "version": "17.2.0",
5
5
  "license": "MIT",
6
6
  "main": "./index.js",
7
7
  "maintainers": [
@@ -58,28 +58,27 @@
58
58
  "storybook": "npm run copy:assetsToStorybook && storybook dev -c .storybook",
59
59
  "change": "changeset add",
60
60
  "prerelease:start": "changeset pre enter next",
61
- "prerelease:end": "changeset pre exit",
62
- "release:manual": "npm run version && git commit -am '`npm pkg get version | tr -d \"`'"
61
+ "prerelease:end": "changeset pre exit"
63
62
  },
64
63
  "devDependencies": {
65
- "@babel/cli": "^7.23.4",
66
- "@babel/core": "^7.23.3",
67
- "@babel/preset-env": "^7.23.3",
64
+ "@babel/cli": "^7.23.9",
65
+ "@babel/core": "^7.23.9",
66
+ "@babel/preset-env": "^7.23.9",
68
67
  "@changesets/changelog-github": "^0.5.0",
69
68
  "@changesets/cli": "^2.27.1",
70
- "@commitlint/cli": "^18.4.3",
71
- "@commitlint/config-conventional": "^18.4.3",
72
- "@ebay/browserslist-config": "^2.6.0",
73
- "@floating-ui/dom": "^1.5.3",
74
- "@percy/cli": "^1.27.4",
75
- "@percy/storybook": "^5.0.0",
76
- "@storybook/html": "^7.1.1",
77
- "@storybook/html-webpack5": "^7.5.3",
78
- "babel-loader": "^9.1.2",
69
+ "@commitlint/cli": "^18.6.1",
70
+ "@commitlint/config-conventional": "^18.6.2",
71
+ "@ebay/browserslist-config": "^2.7.0",
72
+ "@floating-ui/dom": "^1.6.3",
73
+ "@percy/cli": "^1.28.0",
74
+ "@percy/storybook": "^5.0.1",
75
+ "@storybook/html": "^7.6.17",
76
+ "@storybook/html-webpack5": "^7.6.17",
77
+ "babel-loader": "^9.1.3",
79
78
  "browser-sync": "^3.0.2",
80
79
  "btoa": "^1",
81
80
  "cross-env": "^7",
82
- "eslint": "^8.54.0",
81
+ "eslint": "^8.57.0",
83
82
  "eslint-config-ebay": "^1",
84
83
  "eslint-config-prettier": "^9",
85
84
  "eslint-plugin-prettier": "^5",
@@ -88,13 +87,13 @@
88
87
  "gulp-clean-css": "^4",
89
88
  "gulp-less": "^5",
90
89
  "gulp-rename": "^2",
91
- "husky": "^9.0.7",
90
+ "husky": "^9.0.11",
92
91
  "jekyll": "^3.0.0-beta1",
93
92
  "jsdom": "^24.0.0",
94
- "less-loader": "^12.1.0",
93
+ "less-loader": "^12.2.0",
95
94
  "less-plugin-autoprefix": "^2",
96
95
  "less-plugin-clean-css": "^1.5.1",
97
- "lint-staged": "^15.1.0",
96
+ "lint-staged": "^15.2.2",
98
97
  "makeup-alert-dialog": "~0.2.0",
99
98
  "makeup-combobox": "~0.3.0",
100
99
  "makeup-confirm-dialog": "~0.2.0",
@@ -107,11 +106,11 @@
107
106
  "makeup-input-dialog": "0.1.0",
108
107
  "makeup-key-emitter": "~0.3.1",
109
108
  "makeup-lightbox-dialog": "0.1.0",
110
- "makeup-listbox": "~0.3.1",
111
- "makeup-listbox-button": "~0.4.0",
109
+ "makeup-listbox": "~0.3.2",
110
+ "makeup-listbox-button": "~0.4.2",
112
111
  "makeup-menu": "~0.3.0",
113
- "makeup-menu-button": "~0.3.0",
114
- "makeup-modal": "~0.4.0",
112
+ "makeup-menu-button": "~0.3.3",
113
+ "makeup-modal": "~0.4.1",
115
114
  "makeup-panel-dialog": "0.1.0",
116
115
  "makeup-prevent-scroll-keys": "~0.2.1",
117
116
  "makeup-roving-tabindex": "~0.6.0",
@@ -122,19 +121,19 @@
122
121
  "ncp": "^2",
123
122
  "npm-run-all": "^4",
124
123
  "postcss-less": "^6.0.0",
125
- "postcss-loader": "^8.0.0",
126
- "prettier": "^3.1.0",
124
+ "postcss-loader": "^8.1.0",
125
+ "prettier": "^3.2.5",
127
126
  "rimraf": "^5",
128
- "storybook": "^7.5.3",
129
- "stylelint": "^16.1.0",
127
+ "storybook": "^7.6.17",
128
+ "stylelint": "^16.2.1",
130
129
  "stylelint-config-standard": "^36",
131
130
  "stylelint-no-unsupported-browser-features": "^8",
132
131
  "stylelint-order": "^6",
133
132
  "stylelint-prettier": "^5",
134
- "svgo": "^3.0.4",
135
- "webpack": "^5.83.0",
136
- "webpack-cli": "^5.1.1",
137
- "winston": "^3.8.2",
133
+ "svgo": "^3.2.0",
134
+ "webpack": "^5.90.3",
135
+ "webpack-cli": "^5.1.4",
136
+ "winston": "^3.11.0",
138
137
  "xmlserializer": "^0.6.1",
139
138
  "yargs": "^17.7.2"
140
139
  },
@@ -14,7 +14,7 @@
14
14
  .date-textbox__popover {
15
15
  .background-color-token(calendar-background-color, color-background-elevated);
16
16
  border-radius: var(--spacing-200);
17
- filter: var(--bubble-filter);
17
+ box-shadow: var(--bubble-shadow);
18
18
  margin-left: calc(var(--spacing-100) * -1);
19
19
  padding: var(--spacing-200);
20
20
  position: absolute;
@@ -88,8 +88,8 @@ button.filter-menu-button__button[aria-pressed="true"][aria-disabled="true"]:hov
88
88
  .background-color-token(filter-menu-item-background-color, color-background-elevated);
89
89
  border: none;
90
90
  border-radius: 16px;
91
+ box-shadow: var(--bubble-shadow);
91
92
  display: none;
92
- filter: var(--bubble-filter);
93
93
  max-width: 288px; // TODO remove max-width restriction to filter-menu styles
94
94
  min-width: 144px;
95
95
  overflow: hidden;
@@ -1,15 +1,19 @@
1
1
  // this mixin is used by infotip, tooltip, tourtip, date-textbox
2
2
 
3
3
  :root {
4
- --bubble-filter: drop-shadow(0 2px 7px rgba(0, 0, 0, 0.15))
5
- drop-shadow(0 5px 17px rgba(0, 0, 0, 0.2));
4
+ // Do NOT use filter: drop-shadow() as Safari cannot do
5
+ // drop-shadows outside an element with overflow.
6
+ // Since box-shadow more widely supports various use cases,
7
+ // it's a more robust solution.
8
+ --bubble-shadow: 0 2px 7px rgba(0, 0, 0, 0.15),
9
+ 0 5px 17px rgba(0, 0, 0, 0.2);
6
10
  }
7
11
 
8
12
  .bubble(@border-radius-value: border-radius-50) {
9
13
  .border-radius-token(bubble-border-radius, @border-radius-value);
10
14
 
15
+ box-shadow: var(--bubble-shadow);
11
16
  display: none;
12
- filter: var(--bubble-filter);
13
17
  font-size: 14px;
14
18
  left: 0;
15
19
  max-width: 344px;
@@ -3,9 +3,9 @@
3
3
  .dropdown-base(@component) {
4
4
  .background-color-token(~"@{component}-background-color", color-background-elevated);
5
5
  .border-radius-token(~"@{component}-border-radius", border-radius-50);
6
+ box-shadow: var(--bubble-shadow);
6
7
  box-sizing: border-box;
7
8
  display: none;
8
- filter: var(--bubble-filter);
9
9
  left: 0;
10
10
  max-height: 400px;
11
11
  min-width: 100%;
@@ -1,5 +1,7 @@
1
1
  .selection-list-item-base() {
2
2
  background-color: transparent;
3
+ border-style: solid;
4
+ border-width: 1px;
3
5
  box-sizing: border-box;
4
6
  display: inline-grid;
5
7
  font-family: inherit;
@@ -16,8 +16,8 @@ export const start = () => `
16
16
  </li>
17
17
  <li>
18
18
  <span class="pagination__item">
19
- <svg class="icon icon--overflow" width="8" height="8" role="separator">
20
- <use href="#icon-overflow"></use>
19
+ <svg class="icon icon--overflow-horizontal-24" width="8" height="8" role="separator">
20
+ <use href="#icon-overflow-horizontal-24"></use>
21
21
  </svg>
22
22
  </span>
23
23
  </li>
@@ -61,8 +61,8 @@ export const middle = () => `
61
61
  </li>
62
62
  <li>
63
63
  <span class="pagination__item">
64
- <svg class="icon icon--overflow" width="8" height="8" role="separator">
65
- <use href="#icon-overflow"></use>
64
+ <svg class="icon icon--overflow-horizontal-24" width="8" height="8" role="separator">
65
+ <use href="#icon-overflow-horizontal-24"></use>
66
66
  </svg>
67
67
  </span>
68
68
  </li>
@@ -77,8 +77,8 @@ export const middle = () => `
77
77
  </li>
78
78
  <li>
79
79
  <span class="pagination__item">
80
- <svg class="icon icon--overflow" width="8" height="8" role="separator">
81
- <use href="#icon-overflow"></use>
80
+ <svg class="icon icon--overflow-horizontal-24" width="8" height="8" role="separator">
81
+ <use href="#icon-overflow-horizontal-24"></use>
82
82
  </svg>
83
83
  </span>
84
84
  </li>
@@ -122,8 +122,8 @@ export const end = () => `
122
122
  </li>
123
123
  <li>
124
124
  <span class="pagination__item">
125
- <svg class="icon icon--overflow" width="8" height="8" role="separator">
126
- <use href="#icon-overflow"></use>
125
+ <svg class="icon icon--overflow-horizontal-24" width="8" height="8" role="separator">
126
+ <use href="#icon-overflow-horizontal-24"></use>
127
127
  </svg>
128
128
  </span>
129
129
  </li>
@@ -169,8 +169,8 @@ export const endMenuCollapsed = () => `
169
169
  <span class="pagination__item">
170
170
  <span class="fake-menu-button">
171
171
  <button class="icon-btn icon-btn--transparent fake-menu-button__button" type="button" aria-label="Menu">
172
- <svg class="icon icon--overflow" width="8" height="8" aria-hidden="true">
173
- <use href="#icon-overflow"></use>
172
+ <svg class="icon icon--overflow-horizontal-24" width="8" height="8" role="separator">
173
+ <use href="#icon-overflow-horizontal-24"></use>
174
174
  </svg>
175
175
  </button>
176
176
  <ul class="fake-menu-button__menu">
@@ -240,8 +240,8 @@ export const endMenuExpanded = () => `
240
240
  <span class="pagination__item">
241
241
  <span class="fake-menu-button">
242
242
  <button class="icon-btn icon-btn--transparent fake-menu-button__button" type="button" aria-expanded="true" aria-label="Menu">
243
- <svg class="icon icon--overflow" width="8" height="8" aria-hidden="true">
244
- <use href="#icon-overflow"></use>
243
+ <svg class="icon icon--overflow-horizontal-24" width="8" height="8" role="separator">
244
+ <use href="#icon-overflow-horizontal-24"></use>
245
245
  </svg>
246
246
  </button>
247
247
  <ul class="fake-menu-button__menu">
@@ -1,5 +0,0 @@
1
- ---
2
- "@ebay/skin": minor
3
- ---
4
-
5
- icon updates
@@ -1,5 +0,0 @@
1
- ---
2
- "@ebay/skin": minor
3
- ---
4
-
5
- ebay-signal has incorrect type size and internal padding
@@ -1,5 +0,0 @@
1
- ---
2
- "@ebay/skin": minor
3
- ---
4
-
5
- Venmo icon: Missing borders
@@ -1,5 +0,0 @@
1
- ---
2
- "@ebay/skin": minor
3
- ---
4
-
5
- flyout: update styling
@@ -1,17 +0,0 @@
1
- {
2
- "mode": "pre",
3
- "tag": "next",
4
- "initialVersions": {
5
- "@ebay/skin": "17.1.1"
6
- },
7
- "changesets": [
8
- "chilled-dots-whisper",
9
- "five-bats-appear",
10
- "gentle-moles-collect",
11
- "healthy-kings-hang",
12
- "pretty-rabbits-smash",
13
- "slow-maps-guess",
14
- "stale-lamps-retire",
15
- "unlucky-files-tickle"
16
- ]
17
- }
@@ -1,5 +0,0 @@
1
- ---
2
- "@ebay/skin": minor
3
- ---
4
-
5
- component status alignment
@@ -1,5 +0,0 @@
1
- ---
2
- "@ebay/skin": minor
3
- ---
4
-
5
- Docs: remove focusable attribute from examples and stories
@@ -1,5 +0,0 @@
1
- ---
2
- "@ebay/skin": minor
3
- ---
4
-
5
- ebay-button: reduce width of stroke for priority=tertiary
@@ -1,5 +0,0 @@
1
- ---
2
- "@ebay/skin": minor
3
- ---
4
-
5
- feat: automatically publish skin