@seed-design/css 2.5.0 → 2.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 (124) hide show
  1. package/all.css +700 -89
  2. package/all.layered.css +700 -89
  3. package/all.layered.min.css +1 -1
  4. package/all.min.css +1 -1
  5. package/base.css +15 -0
  6. package/base.layered.css +15 -0
  7. package/base.layered.min.css +1 -1
  8. package/base.min.css +1 -1
  9. package/breakpoints/index.mjs +5 -0
  10. package/package.json +6 -1
  11. package/recipes/accordion.css +1 -1
  12. package/recipes/accordion.layered.css +1 -1
  13. package/recipes/action-button.css +3 -13
  14. package/recipes/action-button.layered.css +4 -17
  15. package/recipes/attachment-input-item.css +15 -3
  16. package/recipes/attachment-input-item.layered.css +24 -8
  17. package/recipes/attachment-input-trigger.css +6 -1
  18. package/recipes/attachment-input-trigger.layered.css +10 -3
  19. package/recipes/bottom-sheet.css +7 -0
  20. package/recipes/bottom-sheet.layered.css +11 -2
  21. package/recipes/callout.css +43 -4
  22. package/recipes/callout.layered.css +57 -6
  23. package/recipes/checkmark.css +6 -1
  24. package/recipes/checkmark.layered.css +10 -3
  25. package/recipes/chip-tabs.css +6 -1
  26. package/recipes/chip-tabs.layered.css +10 -3
  27. package/recipes/chip.css +6 -3
  28. package/recipes/chip.layered.css +10 -5
  29. package/recipes/content-dialog.css +4 -1
  30. package/recipes/content-dialog.layered.css +5 -1
  31. package/recipes/contextual-floating-button.css +6 -1
  32. package/recipes/contextual-floating-button.layered.css +8 -1
  33. package/recipes/floating-action-button.css +6 -1
  34. package/recipes/floating-action-button.layered.css +8 -1
  35. package/recipes/help-bubble.css +8 -2
  36. package/recipes/help-bubble.layered.css +12 -4
  37. package/recipes/image-frame-reaction-button.css +6 -0
  38. package/recipes/image-frame-reaction-button.layered.css +8 -0
  39. package/recipes/input-button.css +6 -1
  40. package/recipes/input-button.layered.css +10 -3
  41. package/recipes/list-item.css +6 -0
  42. package/recipes/list-item.layered.css +6 -0
  43. package/recipes/menu-sheet.css +7 -1
  44. package/recipes/menu-sheet.layered.css +9 -1
  45. package/recipes/menu.css +1 -1
  46. package/recipes/menu.layered.css +1 -1
  47. package/recipes/page-banner.css +58 -4
  48. package/recipes/page-banner.layered.css +79 -8
  49. package/recipes/pagination-button.css +68 -0
  50. package/recipes/pagination-button.d.ts +19 -0
  51. package/recipes/pagination-button.layered.css +80 -0
  52. package/recipes/pagination-button.layered.mjs +22 -0
  53. package/recipes/pagination-button.mjs +22 -0
  54. package/recipes/pagination-page-item.css +99 -0
  55. package/recipes/pagination-page-item.d.ts +19 -0
  56. package/recipes/pagination-page-item.layered.css +118 -0
  57. package/recipes/pagination-page-item.layered.mjs +22 -0
  58. package/recipes/pagination-page-item.mjs +22 -0
  59. package/recipes/pull-to-refresh.css +1 -1
  60. package/recipes/pull-to-refresh.layered.css +1 -1
  61. package/recipes/quantity-picker.css +8 -2
  62. package/recipes/quantity-picker.layered.css +10 -2
  63. package/recipes/radiomark.css +6 -1
  64. package/recipes/radiomark.layered.css +10 -3
  65. package/recipes/reaction-button.css +4 -1
  66. package/recipes/reaction-button.layered.css +5 -1
  67. package/recipes/select-box.css +3 -3
  68. package/recipes/select-box.layered.css +3 -3
  69. package/recipes/select.css +1 -1
  70. package/recipes/select.layered.css +1 -1
  71. package/recipes/side-panel.css +6 -1
  72. package/recipes/side-panel.layered.css +12 -5
  73. package/recipes/snackbar.css +7 -1
  74. package/recipes/snackbar.layered.css +9 -1
  75. package/recipes/switchmark.css +4 -1
  76. package/recipes/switchmark.layered.css +5 -1
  77. package/recipes/tabs.css +4 -1
  78. package/recipes/tabs.layered.css +5 -1
  79. package/recipes/toggle-button.css +4 -1
  80. package/recipes/toggle-button.layered.css +5 -1
  81. package/recipes/wheel-picker-public.css +121 -0
  82. package/recipes/wheel-picker-public.d.ts +24 -0
  83. package/recipes/wheel-picker-public.layered.css +140 -0
  84. package/recipes/wheel-picker-public.layered.mjs +63 -0
  85. package/recipes/wheel-picker-public.mjs +63 -0
  86. package/recipes/wheel-picker.css +1 -1
  87. package/recipes/wheel-picker.layered.css +1 -1
  88. package/scale-feedback/index.d.ts +3 -0
  89. package/scale-feedback/index.mjs +33 -0
  90. package/vars/color/stroke.d.ts +3 -3
  91. package/vars/component/accordion-item.d.ts +1 -1
  92. package/vars/component/accordion-item.mjs +1 -1
  93. package/vars/component/action-button.d.ts +1 -23
  94. package/vars/component/action-button.mjs +1 -23
  95. package/vars/component/bottom-sheet.d.ts +1 -1
  96. package/vars/component/bottom-sheet.mjs +1 -1
  97. package/vars/component/callout-close-button.d.ts +81 -0
  98. package/vars/component/callout-close-button.mjs +63 -0
  99. package/vars/component/callout.d.ts +1 -2
  100. package/vars/component/callout.mjs +1 -2
  101. package/vars/component/checkbox.d.ts +3 -0
  102. package/vars/component/help-bubble.d.ts +4 -1
  103. package/vars/component/help-bubble.mjs +3 -1
  104. package/vars/component/index.d.ts +6 -1
  105. package/vars/component/index.mjs +6 -1
  106. package/vars/component/list-item.d.ts +2 -6
  107. package/vars/component/list-item.mjs +2 -5
  108. package/vars/component/page-banner-close-button.d.ts +133 -0
  109. package/vars/component/page-banner-close-button.mjs +99 -0
  110. package/vars/component/page-banner.d.ts +0 -1
  111. package/vars/component/page-banner.mjs +0 -1
  112. package/vars/component/pagination-button.d.ts +33 -0
  113. package/vars/component/pagination-button.mjs +33 -0
  114. package/vars/component/pagination-page-item.d.ts +54 -0
  115. package/vars/component/pagination-page-item.mjs +54 -0
  116. package/vars/component/radio.d.ts +3 -0
  117. package/vars/component/select-box.d.ts +2 -2
  118. package/vars/component/select-box.mjs +2 -2
  119. package/vars/component/snackbar.d.ts +1 -1
  120. package/vars/component/snackbar.mjs +1 -1
  121. package/vars/component/switch.d.ts +3 -0
  122. package/vars/component/switchmark.d.ts +2 -0
  123. package/vars/component/wheel-picker.d.ts +72 -0
  124. package/vars/component/wheel-picker.mjs +72 -0
@@ -1,5 +1,5 @@
1
1
  .seed-pull-to-refresh__root {
2
- --ptr-size: 44px;
2
+ --ptr-size: calc(var(--seed-dimension-x6) + var(--seed-dimension-x8) * 2);
3
3
  --ptr-transition-duration: var(--seed-duration-d6);
4
4
  height: 100%;
5
5
  }
@@ -1,6 +1,6 @@
1
1
  @layer seed-components {
2
2
  .seed-pull-to-refresh__root {
3
- --ptr-size: 44px;
3
+ --ptr-size: calc(var(--seed-dimension-x6) + var(--seed-dimension-x8) * 2);
4
4
  --ptr-transition-duration: var(--seed-duration-d6);
5
5
  height: 100%;
6
6
  }
@@ -19,7 +19,7 @@
19
19
  border: none;
20
20
  padding: 0;
21
21
  background-color: var(--seed-color-bg-transparent);
22
- transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
22
+ transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
23
23
  outline: var(--seed-dimension-x0_5) solid transparent;
24
24
  outline-offset: var(--seed-dimension-x0_5);
25
25
  }
@@ -27,6 +27,9 @@
27
27
  outline: var(--seed-dimension-x0_5) solid var(--seed-color-stroke-focus-ring);
28
28
  outline-offset: var(--seed-dimension-x0_5);
29
29
  }
30
+ .seed-quantity-picker__decrementButton:not(:is(:disabled, [disabled], [data-disabled])):is(:active, [data-active]) {
31
+ scale: var(--seed-feedback-scale);
32
+ }
30
33
  @media (hover: hover) and (pointer: fine) {
31
34
  .seed-quantity-picker__decrementButton:not(:is(:disabled, [disabled], [data-disabled])):is(:hover, [data-hover]) {
32
35
  background-color: var(--seed-color-bg-transparent-pressed);
@@ -91,7 +94,7 @@
91
94
  border: none;
92
95
  padding: 0;
93
96
  background-color: var(--seed-color-bg-transparent);
94
- transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
97
+ transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
95
98
  outline: var(--seed-dimension-x0_5) solid transparent;
96
99
  outline-offset: var(--seed-dimension-x0_5);
97
100
  }
@@ -99,6 +102,9 @@
99
102
  outline: var(--seed-dimension-x0_5) solid var(--seed-color-stroke-focus-ring);
100
103
  outline-offset: var(--seed-dimension-x0_5);
101
104
  }
105
+ .seed-quantity-picker__incrementButton:not(:is(:disabled, [disabled], [data-disabled])):is(:active, [data-active]) {
106
+ scale: var(--seed-feedback-scale);
107
+ }
102
108
  @media (hover: hover) and (pointer: fine) {
103
109
  .seed-quantity-picker__incrementButton:not(:is(:disabled, [disabled], [data-disabled])):is(:hover, [data-hover]) {
104
110
  background-color: var(--seed-color-bg-transparent-pressed);
@@ -16,7 +16,7 @@
16
16
  box-sizing: border-box;
17
17
  cursor: pointer;
18
18
  background-color: var(--seed-color-bg-transparent);
19
- transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
19
+ transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
20
20
  outline: var(--seed-dimension-x0_5) solid transparent;
21
21
  outline-offset: var(--seed-dimension-x0_5);
22
22
  border: none;
@@ -32,6 +32,10 @@
32
32
  outline-offset: var(--seed-dimension-x0_5);
33
33
  }
34
34
 
35
+ .seed-quantity-picker__decrementButton:not(:is(:disabled, [disabled], [data-disabled])):is(:active, [data-active]) {
36
+ scale: var(--seed-feedback-scale);
37
+ }
38
+
35
39
  @media (hover: hover) and (pointer: fine) {
36
40
  .seed-quantity-picker__decrementButton:not(:is(:disabled, [disabled], [data-disabled])):is(:hover, [data-hover]) {
37
41
  background-color: var(--seed-color-bg-transparent-pressed);
@@ -99,7 +103,7 @@
99
103
  box-sizing: border-box;
100
104
  cursor: pointer;
101
105
  background-color: var(--seed-color-bg-transparent);
102
- transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
106
+ transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
103
107
  outline: var(--seed-dimension-x0_5) solid transparent;
104
108
  outline-offset: var(--seed-dimension-x0_5);
105
109
  border: none;
@@ -115,6 +119,10 @@
115
119
  outline-offset: var(--seed-dimension-x0_5);
116
120
  }
117
121
 
122
+ .seed-quantity-picker__incrementButton:not(:is(:disabled, [disabled], [data-disabled])):is(:active, [data-active]) {
123
+ scale: var(--seed-feedback-scale);
124
+ }
125
+
118
126
  @media (hover: hover) and (pointer: fine) {
119
127
  .seed-quantity-picker__incrementButton:not(:is(:disabled, [disabled], [data-disabled])):is(:hover, [data-hover]) {
120
128
  background-color: var(--seed-color-bg-transparent-pressed);
@@ -10,7 +10,12 @@
10
10
  border-color: var(--seed-color-stroke-neutral-weak);
11
11
  border-radius: var(--seed-radius-full);
12
12
  margin-top: var(--radiomark-margin-top, 0);
13
- transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
13
+ }
14
+ .seed-radiomark__root:not(:is(:disabled, [disabled], [data-disabled])):is(:active, [data-active]) {
15
+ scale: var(--seed-radiomark-feedback-scale, var(--seed-feedback-scale));
16
+ }
17
+ .seed-radiomark__root {
18
+ transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
14
19
  outline: var(--seed-focus-ring, var(--seed-dimension-x0_5) solid transparent);
15
20
  outline-offset: var(--seed-dimension-x0_5);
16
21
  }
@@ -6,9 +6,6 @@
6
6
  border-color: var(--seed-color-stroke-neutral-weak);
7
7
  border-radius: var(--seed-radius-full);
8
8
  margin-top: var(--radiomark-margin-top, 0);
9
- transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
10
- outline: var(--seed-focus-ring, var(--seed-dimension-x0_5) solid transparent);
11
- outline-offset: var(--seed-dimension-x0_5);
12
9
  flex: none;
13
10
  justify-content: center;
14
11
  align-items: center;
@@ -16,6 +13,16 @@
16
13
  position: relative;
17
14
  }
18
15
 
16
+ .seed-radiomark__root:not(:is(:disabled, [disabled], [data-disabled])):is(:active, [data-active]) {
17
+ scale: var(--seed-radiomark-feedback-scale, var(--seed-feedback-scale));
18
+ }
19
+
20
+ .seed-radiomark__root {
21
+ transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
22
+ outline: var(--seed-focus-ring, var(--seed-dimension-x0_5) solid transparent);
23
+ outline-offset: var(--seed-dimension-x0_5);
24
+ }
25
+
19
26
  @media (hover: hover) and (pointer: fine) {
20
27
  .seed-radiomark__root:not(:is(:disabled, [disabled], [data-disabled])):is(:hover, [data-hover]) {
21
28
  background-color: var(--seed-color-bg-transparent-pressed);
@@ -21,8 +21,11 @@
21
21
  outline: var(--seed-dimension-x0_5) solid var(--seed-color-stroke-focus-ring);
22
22
  outline-offset: var(--seed-dimension-x0_5);
23
23
  }
24
+ .seed-reaction-button:not(:is(:disabled, [disabled], [data-disabled])):is(:active, [data-active]) {
25
+ scale: var(--seed-feedback-scale);
26
+ }
24
27
  .seed-reaction-button {
25
- transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), box-shadow var(--seed-duration-color-transition) var(--seed-timing-function-easing), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
28
+ transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), box-shadow var(--seed-duration-color-transition) var(--seed-timing-function-easing), scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
26
29
  background: var(--seed-color-bg-transparent);
27
30
  font-weight: var(--seed-font-weight-medium);
28
31
  color: var(--seed-color-fg-neutral);
@@ -24,8 +24,12 @@
24
24
  outline-offset: var(--seed-dimension-x0_5);
25
25
  }
26
26
 
27
+ .seed-reaction-button:not(:is(:disabled, [disabled], [data-disabled])):is(:active, [data-active]) {
28
+ scale: var(--seed-feedback-scale);
29
+ }
30
+
27
31
  .seed-reaction-button {
28
- transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), box-shadow var(--seed-duration-color-transition) var(--seed-timing-function-easing), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
32
+ transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), box-shadow var(--seed-duration-color-transition) var(--seed-timing-function-easing), scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
29
33
  background: var(--seed-color-bg-transparent);
30
34
  font-weight: var(--seed-font-weight-medium);
31
35
  color: var(--seed-color-fg-neutral);
@@ -5,7 +5,7 @@
5
5
  flex-direction: column;
6
6
  border-radius: var(--seed-radius-r3);
7
7
  background-color: var(--seed-color-bg-transparent);
8
- box-shadow: inset 0 0 0 1px var(--seed-color-stroke-neutral-muted);
8
+ box-shadow: inset 0 0 0 1px var(--seed-color-stroke-neutral-weak);
9
9
  transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
10
10
  overflow: hidden;
11
11
  }
@@ -36,10 +36,10 @@
36
36
  }
37
37
  .seed-select-box__root:is(:disabled, [disabled], [data-disabled]) {
38
38
  cursor: not-allowed;
39
- box-shadow: inset 0 0 0 1px var(--seed-color-stroke-neutral-muted);
39
+ box-shadow: inset 0 0 0 1px var(--seed-color-stroke-neutral-weak);
40
40
  }
41
41
  .seed-select-box__root:is(:disabled, [disabled], [data-disabled]):is(:checked, [data-checked]) {
42
- box-shadow: inset 0 0 0 2px var(--seed-color-stroke-neutral-muted);
42
+ box-shadow: inset 0 0 0 2px var(--seed-color-stroke-neutral-weak);
43
43
  }
44
44
  .seed-select-box__root {
45
45
  outline: var(--seed-dimension-x0_5) solid transparent;
@@ -3,7 +3,7 @@
3
3
  cursor: pointer;
4
4
  border-radius: var(--seed-radius-r3);
5
5
  background-color: var(--seed-color-bg-transparent);
6
- box-shadow: inset 0 0 0 1px var(--seed-color-stroke-neutral-muted);
6
+ box-shadow: inset 0 0 0 1px var(--seed-color-stroke-neutral-weak);
7
7
  transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
8
8
  flex-direction: column;
9
9
  display: flex;
@@ -40,11 +40,11 @@
40
40
 
41
41
  .seed-select-box__root:is(:disabled, [disabled], [data-disabled]) {
42
42
  cursor: not-allowed;
43
- box-shadow: inset 0 0 0 1px var(--seed-color-stroke-neutral-muted);
43
+ box-shadow: inset 0 0 0 1px var(--seed-color-stroke-neutral-weak);
44
44
  }
45
45
 
46
46
  .seed-select-box__root:is(:disabled, [disabled], [data-disabled]):is(:checked, [data-checked]) {
47
- box-shadow: inset 0 0 0 2px var(--seed-color-stroke-neutral-muted);
47
+ box-shadow: inset 0 0 0 2px var(--seed-color-stroke-neutral-weak);
48
48
  }
49
49
 
50
50
  .seed-select-box__root {
@@ -38,7 +38,7 @@
38
38
  }
39
39
  .seed-select__scrollArea {
40
40
  overflow-y: auto;
41
- max-height: min(480px, var(--seed-select-available-height, 480px));
41
+ max-height: min(var(--seed-select-max-height, 480px), var(--seed-select-available-height, var(--seed-select-max-height, 480px)));
42
42
  box-sizing: border-box;
43
43
  padding-block: var(--seed-dimension-x2);
44
44
  display: flex;
@@ -44,7 +44,7 @@
44
44
  }
45
45
 
46
46
  .seed-select__scrollArea {
47
- max-height: min(480px, var(--seed-select-available-height, 480px));
47
+ max-height: min(var(--seed-select-max-height, 480px), var(--seed-select-available-height, var(--seed-select-max-height, 480px)));
48
48
  box-sizing: border-box;
49
49
  padding-block: var(--seed-dimension-x2);
50
50
  gap: var(--seed-dimension-x2);
@@ -230,7 +230,12 @@
230
230
  padding: calc((52px - 22px) / 2);
231
231
  margin: calc((22px - 52px) / 2);
232
232
  cursor: pointer;
233
- transition: background var(--seed-duration-color-transition) var(--seed-timing-function-easing), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
233
+ }
234
+ .seed-side-panel__closeButton:is(:active, [data-active]) {
235
+ scale: var(--seed-feedback-scale);
236
+ }
237
+ .seed-side-panel__closeButton {
238
+ transition: background var(--seed-duration-color-transition) var(--seed-timing-function-easing), scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
234
239
  --seed-icon-size: 22px;
235
240
  --seed-icon-color: var(--seed-color-fg-neutral-subtle);
236
241
  outline: var(--seed-dimension-x0_5) solid transparent;
@@ -249,11 +249,6 @@
249
249
  top: calc(28px + var(--seed-safe-area-top));
250
250
  border-radius: var(--seed-radius-r3);
251
251
  cursor: pointer;
252
- transition: background var(--seed-duration-color-transition) var(--seed-timing-function-easing), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
253
- --seed-icon-size: 22px;
254
- --seed-icon-color: var(--seed-color-fg-neutral-subtle);
255
- outline: var(--seed-dimension-x0_5) solid transparent;
256
- outline-offset: var(--seed-dimension-x0_5);
257
252
  border: none;
258
253
  justify-content: center;
259
254
  align-items: center;
@@ -264,6 +259,18 @@
264
259
  right: 24px;
265
260
  }
266
261
 
262
+ .seed-side-panel__closeButton:is(:active, [data-active]) {
263
+ scale: var(--seed-feedback-scale);
264
+ }
265
+
266
+ .seed-side-panel__closeButton {
267
+ transition: background var(--seed-duration-color-transition) var(--seed-timing-function-easing), scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
268
+ --seed-icon-size: 22px;
269
+ --seed-icon-color: var(--seed-color-fg-neutral-subtle);
270
+ outline: var(--seed-dimension-x0_5) solid transparent;
271
+ outline-offset: var(--seed-dimension-x0_5);
272
+ }
273
+
267
274
  .seed-side-panel__closeButton:is(:focus-visible, [data-focus-visible]) {
268
275
  outline: var(--seed-dimension-x0_5) solid var(--seed-color-stroke-focus-ring);
269
276
  outline-offset: var(--seed-dimension-x0_5);
@@ -3,7 +3,7 @@
3
3
  display: flex;
4
4
  align-items: center;
5
5
  width: 100%;
6
- max-width: 560px;
6
+ max-width: 464px;
7
7
  background: var(--seed-color-bg-neutral-inverted);
8
8
  border-radius: var(--seed-radius-r2);
9
9
  padding-inline: var(--seed-dimension-x2_5);
@@ -76,6 +76,12 @@
76
76
  line-height: var(--seed-line-height-t4);
77
77
  font-weight: var(--seed-font-weight-bold);
78
78
  }
79
+ .seed-snackbar__actionButton:is(:active, [data-active]) {
80
+ scale: var(--seed-feedback-scale);
81
+ }
82
+ .seed-snackbar__actionButton {
83
+ transition: scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale);
84
+ }
79
85
  .seed-snackbar__actionButton:after {
80
86
  content: '';
81
87
  position: absolute;
@@ -4,7 +4,7 @@
4
4
  background: var(--seed-color-bg-neutral-inverted);
5
5
  border-radius: var(--seed-radius-r2);
6
6
  width: 100%;
7
- max-width: 560px;
7
+ max-width: 464px;
8
8
  padding-inline: var(--seed-dimension-x2_5);
9
9
  padding-block: var(--seed-dimension-x2_5);
10
10
  min-height: 44px;
@@ -85,6 +85,14 @@
85
85
  position: relative;
86
86
  }
87
87
 
88
+ .seed-snackbar__actionButton:is(:active, [data-active]) {
89
+ scale: var(--seed-feedback-scale);
90
+ }
91
+
92
+ .seed-snackbar__actionButton {
93
+ transition: scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale);
94
+ }
95
+
88
96
  .seed-snackbar__actionButton:after {
89
97
  content: "";
90
98
  top: 50%;
@@ -5,7 +5,10 @@
5
5
  border-radius: var(--seed-radius-full);
6
6
  background: var(--seed-color-palette-gray-600);
7
7
  margin: var(--switchmark-margin-top, 0) 0;
8
- transition: background-color var(--seed-duration-d1) var(--seed-timing-function-easing) 20ms, opacity var(--seed-duration-d1) var(--seed-timing-function-easing), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
8
+ transition: background-color var(--seed-duration-d1) var(--seed-timing-function-easing) 20ms, opacity var(--seed-duration-d1) var(--seed-timing-function-easing), scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
9
+ }
10
+ .seed-switchmark__root:not(:is(:disabled, [disabled], [data-disabled])):is(:active, [data-active]) {
11
+ scale: var(--seed-switchmark-feedback-scale, var(--seed-feedback-scale));
9
12
  }
10
13
  .seed-switchmark__root:is(:disabled, [disabled], [data-disabled]) {
11
14
  opacity: 0.38;
@@ -4,11 +4,15 @@
4
4
  border-radius: var(--seed-radius-full);
5
5
  background: var(--seed-color-palette-gray-600);
6
6
  margin: var(--switchmark-margin-top, 0) 0;
7
- transition: background-color var(--seed-duration-d1) var(--seed-timing-function-easing) 20ms, opacity var(--seed-duration-d1) var(--seed-timing-function-easing), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
7
+ transition: background-color var(--seed-duration-d1) var(--seed-timing-function-easing) 20ms, opacity var(--seed-duration-d1) var(--seed-timing-function-easing), scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
8
8
  display: block;
9
9
  position: relative;
10
10
  }
11
11
 
12
+ .seed-switchmark__root:not(:is(:disabled, [disabled], [data-disabled])):is(:active, [data-active]) {
13
+ scale: var(--seed-switchmark-feedback-scale, var(--seed-feedback-scale));
14
+ }
15
+
12
16
  .seed-switchmark__root:is(:disabled, [disabled], [data-disabled]) {
13
17
  opacity: .38;
14
18
  }
package/recipes/tabs.css CHANGED
@@ -83,8 +83,11 @@
83
83
  height: 2px;
84
84
  background-color: var(--seed-color-fg-neutral);
85
85
  }
86
+ .seed-tabs__trigger:not(:is(:disabled, [disabled], [data-disabled])):is(:active, [data-active]) {
87
+ scale: var(--seed-feedback-scale);
88
+ }
86
89
  .seed-tabs__trigger {
87
- transition: outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
90
+ transition: scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
88
91
  outline: var(--seed-dimension-x0_5) solid transparent;
89
92
  outline-offset: calc(var(--seed-dimension-x0_5) * -1);
90
93
  }
@@ -95,8 +95,12 @@
95
95
  bottom: 0;
96
96
  }
97
97
 
98
+ .seed-tabs__trigger:not(:is(:disabled, [disabled], [data-disabled])):is(:active, [data-active]) {
99
+ scale: var(--seed-feedback-scale);
100
+ }
101
+
98
102
  .seed-tabs__trigger {
99
- transition: outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
103
+ transition: scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
100
104
  outline: var(--seed-dimension-x0_5) solid transparent;
101
105
  outline-offset: calc(var(--seed-dimension-x0_5) * -1);
102
106
  }
@@ -24,8 +24,11 @@
24
24
  .seed-toggle-button:is(:disabled, [disabled], [data-disabled]) {
25
25
  cursor: not-allowed;
26
26
  }
27
+ .seed-toggle-button:not(:is(:disabled, [disabled], [data-disabled])):is(:active, [data-active]) {
28
+ scale: var(--seed-feedback-scale);
29
+ }
27
30
  .seed-toggle-button {
28
- transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
31
+ transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
29
32
  font-weight: var(--seed-font-weight-bold);
30
33
  }
31
34
  .seed-toggle-button--variant_brandSolid {
@@ -28,8 +28,12 @@
28
28
  cursor: not-allowed;
29
29
  }
30
30
 
31
+ .seed-toggle-button:not(:is(:disabled, [disabled], [data-disabled])):is(:active, [data-active]) {
32
+ scale: var(--seed-feedback-scale);
33
+ }
34
+
31
35
  .seed-toggle-button {
32
- transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
36
+ transition: background-color var(--seed-duration-color-transition) var(--seed-timing-function-easing), scale var(--seed-duration-pressed-scale) var(--seed-timing-function-pressed-scale), outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
33
37
  font-weight: var(--seed-font-weight-bold);
34
38
  }
35
39
 
@@ -0,0 +1,121 @@
1
+ .seed-wheel-picker-public__root {
2
+ position: relative;
3
+ width: 100%;
4
+ overflow: hidden;
5
+ background-color: var(--seed-color-bg-layer-floating);
6
+ --seed-wheel-picker-public-item-color: var(--seed-color-fg-disabled);
7
+ --seed-wheel-picker-public-selected-item-color: var(--seed-color-fg-neutral);
8
+ --seed-wheel-picker-public-scroll-fog-size: min(calc(0.4 * 100%), var(--seed-wheel-picker-public-scroll-fog-max-height));
9
+ }
10
+ .seed-wheel-picker-public__scrollFog {
11
+ position: relative;
12
+ z-index: 1;
13
+ height: 100%;
14
+ overflow: hidden;
15
+ }
16
+ .seed-wheel-picker-public__columns {
17
+ display: flex;
18
+ width: 100%;
19
+ height: 100%;
20
+ justify-content: center;
21
+ }
22
+ .seed-wheel-picker-public__column {
23
+ box-sizing: border-box;
24
+ flex: 0 0 auto;
25
+ width: max-content;
26
+ height: 100%;
27
+ overflow-x: hidden;
28
+ overflow-y: auto;
29
+ overscroll-behavior-x: none;
30
+ overscroll-behavior-y: contain;
31
+ scroll-snap-type: y mandatory;
32
+ scrollbar-width: none;
33
+ -ms-overflow-style: none;
34
+ outline: none;
35
+ touch-action: pan-y;
36
+ cursor: grab;
37
+ padding-block: var(--seed-wheel-picker-public-center-offset);
38
+ }
39
+ .seed-wheel-picker-public__column:is(:disabled, [disabled], [data-disabled]) {
40
+ overflow-y: hidden;
41
+ cursor: default;
42
+ --seed-wheel-picker-public-item-color: var(--seed-color-fg-disabled);
43
+ --seed-wheel-picker-public-selected-item-color: var(--seed-color-fg-disabled);
44
+ }
45
+ .seed-wheel-picker-public__column[data-wheel-picker-dragging] {
46
+ cursor: grabbing;
47
+ scroll-snap-type: none;
48
+ }
49
+ .seed-wheel-picker-public__column[data-wheel-picker-scrolling] {
50
+ scroll-snap-type: none;
51
+ }
52
+ .seed-wheel-picker-public__column::-webkit-scrollbar {
53
+ display: none;
54
+ }
55
+ .seed-wheel-picker-public__column :is([aria-selected=true], [data-selected]) {
56
+ outline: var(--seed-dimension-x0_5) solid transparent;
57
+ outline-offset: calc(var(--seed-dimension-x0_5) * -1);
58
+ border-radius: var(--seed-radius-r2);
59
+ transition: outline-color var(--seed-duration-d3) var(--seed-timing-function-easing);
60
+ }
61
+ .seed-wheel-picker-public__column.seed-wheel-picker-public__column:is(:focus-visible, [data-focus-visible]):not([data-wheel-picker-pointer-focus]) :is([aria-selected=true], [data-selected]) {
62
+ outline: var(--seed-dimension-x0_5) solid var(--seed-color-stroke-focus-ring);
63
+ outline-offset: calc(var(--seed-dimension-x0_5) * -1);
64
+ }
65
+ .seed-wheel-picker-public__item {
66
+ display: flex;
67
+ height: var(--seed-wheel-picker-public-item-size);
68
+ min-height: var(--seed-wheel-picker-public-item-size);
69
+ align-items: center;
70
+ justify-content: center;
71
+ color: var(--seed-wheel-picker-public-item-color);
72
+ scroll-snap-align: center;
73
+ user-select: none;
74
+ }
75
+ .seed-wheel-picker-public__item[data-wheel-picker-indicator-overlap] {
76
+ color: transparent;
77
+ background-image: linear-gradient(to bottom, var(--seed-wheel-picker-public-item-color) 0%, var(--seed-wheel-picker-public-item-color) var(--seed-wheel-picker-indicator-overlap-start), var(--seed-wheel-picker-public-selected-item-color) var(--seed-wheel-picker-indicator-overlap-start), var(--seed-wheel-picker-public-selected-item-color) var(--seed-wheel-picker-indicator-overlap-end), var(--seed-wheel-picker-public-item-color) var(--seed-wheel-picker-indicator-overlap-end), var(--seed-wheel-picker-public-item-color) 100%);
78
+ background-clip: text;
79
+ -webkit-background-clip: text;
80
+ -webkit-text-fill-color: transparent;
81
+ }
82
+ .seed-wheel-picker-public__itemLabel {
83
+ box-sizing: border-box;
84
+ display: flex;
85
+ flex-shrink: 0;
86
+ height: 100%;
87
+ align-items: center;
88
+ justify-content: center;
89
+ padding-inline: var(--seed-dimension-x4);
90
+ font-weight: var(--seed-font-weight-medium);
91
+ white-space: nowrap;
92
+ }
93
+ .seed-wheel-picker-public__selectionIndicator {
94
+ position: absolute;
95
+ z-index: 0;
96
+ inset-inline: var(--seed-dimension-x4);
97
+ top: 50%;
98
+ height: var(--seed-wheel-picker-public-item-size);
99
+ transform: translateY(-50%);
100
+ border-radius: var(--seed-radius-r2);
101
+ background-color: var(--seed-color-bg-neutral-weak);
102
+ pointer-events: none;
103
+ }
104
+ .seed-wheel-picker-public__root--size_small {
105
+ height: var(--seed-wheel-picker-public-viewport-size, 180px);
106
+ --seed-wheel-picker-public-item-size: 36px;
107
+ --seed-wheel-picker-public-scroll-fog-max-height: 108px;
108
+ }
109
+ .seed-wheel-picker-public__itemLabel--size_small {
110
+ font-size: var(--seed-font-size-t7-static);
111
+ line-height: var(--seed-line-height-t7-static);
112
+ }
113
+ .seed-wheel-picker-public__root--size_medium {
114
+ height: var(--seed-wheel-picker-public-viewport-size, 220px);
115
+ --seed-wheel-picker-public-item-size: 44px;
116
+ --seed-wheel-picker-public-scroll-fog-max-height: 132px;
117
+ }
118
+ .seed-wheel-picker-public__itemLabel--size_medium {
119
+ font-size: var(--seed-font-size-t10-static);
120
+ line-height: var(--seed-line-height-t10-static);
121
+ }
@@ -0,0 +1,24 @@
1
+ declare interface WheelPickerPublicVariant {
2
+ /**
3
+ * @default "medium"
4
+ */
5
+ size: "small" | "medium";
6
+ }
7
+
8
+ declare type WheelPickerPublicVariantMap = {
9
+ [key in keyof WheelPickerPublicVariant]: Array<WheelPickerPublicVariant[key]>;
10
+ };
11
+
12
+ export declare type WheelPickerPublicVariantProps = Partial<WheelPickerPublicVariant>;
13
+
14
+ export declare type WheelPickerPublicSlotName = "root" | "scrollFog" | "columns" | "column" | "item" | "itemLabel" | "selectionIndicator";
15
+
16
+ export declare const wheelPickerPublicVariantMap: WheelPickerPublicVariantMap;
17
+
18
+ export declare const wheelPickerPublic: ((
19
+ props?: WheelPickerPublicVariantProps,
20
+ ) => Record<WheelPickerPublicSlotName, string>) & {
21
+ splitVariantProps: <T extends WheelPickerPublicVariantProps>(
22
+ props: T,
23
+ ) => [WheelPickerPublicVariantProps, Omit<T, keyof WheelPickerPublicVariantProps>];
24
+ }