material 3.2.1 → 3.2.2

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 (162) hide show
  1. package/README.md +5 -5
  2. package/dist/components/carousel/features/scroll.js +35 -22
  3. package/dist/components/slider/features/axis.d.ts +6 -1
  4. package/dist/components/slider/features/axis.js +6 -1
  5. package/dist/core/compose/component.js +2 -0
  6. package/dist/core/dom/direction.d.ts +16 -0
  7. package/dist/core/dom/direction.js +38 -0
  8. package/dist/elements/css/badge.css +1 -1
  9. package/dist/elements/css/badge.js +1 -1
  10. package/dist/elements/css/bottom-app-bar.css +1 -1
  11. package/dist/elements/css/bottom-app-bar.js +1 -1
  12. package/dist/elements/css/card.css +1 -1
  13. package/dist/elements/css/card.js +1 -1
  14. package/dist/elements/css/datepicker.css +1 -1
  15. package/dist/elements/css/datepicker.js +1 -1
  16. package/dist/elements/css/dialog.css +1 -1
  17. package/dist/elements/css/dialog.js +1 -1
  18. package/dist/elements/css/drawer.css +1 -1
  19. package/dist/elements/css/drawer.js +1 -1
  20. package/dist/elements/css/side-sheet.css +1 -1
  21. package/dist/elements/css/side-sheet.js +1 -1
  22. package/dist/elements/css/split-button.css +1 -1
  23. package/dist/elements/css/split-button.js +1 -1
  24. package/dist/elements/css/tabs.css +1 -1
  25. package/dist/elements/css/tabs.js +1 -1
  26. package/dist/elements/css/toolbar.css +1 -1
  27. package/dist/elements/css/toolbar.js +1 -1
  28. package/dist/elements/css/top-app-bar.css +1 -1
  29. package/dist/elements/css/top-app-bar.js +1 -1
  30. package/dist/elements/define.js +2 -0
  31. package/dist/elements/preupgrade/badge.css +1 -1
  32. package/dist/elements/preupgrade/bottom-app-bar.css +1 -1
  33. package/dist/elements/preupgrade/bottom-sheet.css +1 -1
  34. package/dist/elements/preupgrade/button-group.css +1 -1
  35. package/dist/elements/preupgrade/button.css +1 -1
  36. package/dist/elements/preupgrade/card.css +1 -1
  37. package/dist/elements/preupgrade/carousel.css +1 -1
  38. package/dist/elements/preupgrade/checkbox.css +1 -1
  39. package/dist/elements/preupgrade/chips.css +1 -1
  40. package/dist/elements/preupgrade/datepicker.css +1 -1
  41. package/dist/elements/preupgrade/dialog.css +1 -1
  42. package/dist/elements/preupgrade/divider.css +1 -1
  43. package/dist/elements/preupgrade/drawer.css +1 -1
  44. package/dist/elements/preupgrade/extended-fab.css +1 -1
  45. package/dist/elements/preupgrade/fab-menu.css +1 -1
  46. package/dist/elements/preupgrade/fab.css +1 -1
  47. package/dist/elements/preupgrade/icon-button.css +1 -1
  48. package/dist/elements/preupgrade/list.css +1 -1
  49. package/dist/elements/preupgrade/loading-indicator.css +1 -1
  50. package/dist/elements/preupgrade/menu.css +1 -1
  51. package/dist/elements/preupgrade/navigation-bar.css +1 -1
  52. package/dist/elements/preupgrade/navigation-rail.css +1 -1
  53. package/dist/elements/preupgrade/progress.css +1 -1
  54. package/dist/elements/preupgrade/radios.css +1 -1
  55. package/dist/elements/preupgrade/search.css +1 -1
  56. package/dist/elements/preupgrade/select.css +1 -1
  57. package/dist/elements/preupgrade/side-sheet.css +1 -1
  58. package/dist/elements/preupgrade/slider.css +1 -1
  59. package/dist/elements/preupgrade/snackbar.css +1 -1
  60. package/dist/elements/preupgrade/split-button.css +1 -1
  61. package/dist/elements/preupgrade/switch.css +1 -1
  62. package/dist/elements/preupgrade/tabs.css +1 -1
  63. package/dist/elements/preupgrade/text-field.css +1 -1
  64. package/dist/elements/preupgrade/timepicker.css +1 -1
  65. package/dist/elements/preupgrade/toolbar.css +1 -1
  66. package/dist/elements/preupgrade/tooltip.css +1 -1
  67. package/dist/elements/preupgrade/top-app-bar.css +1 -1
  68. package/dist/elements/preupgrade.css +1 -1
  69. package/dist/package.json +1 -1
  70. package/dist/styles/badge.css +2 -2
  71. package/dist/styles/base.css +1 -1
  72. package/dist/styles/bottom-app-bar.css +2 -2
  73. package/dist/styles/bottom-sheet.css +1 -1
  74. package/dist/styles/button-group.css +1 -1
  75. package/dist/styles/button.css +1 -1
  76. package/dist/styles/card.css +2 -2
  77. package/dist/styles/carousel.css +1 -1
  78. package/dist/styles/checkbox.css +1 -1
  79. package/dist/styles/chips.css +1 -1
  80. package/dist/styles/contrast.css +1 -1
  81. package/dist/styles/datepicker.css +2 -2
  82. package/dist/styles/dialog.css +2 -2
  83. package/dist/styles/divider.css +1 -1
  84. package/dist/styles/drawer.css +2 -2
  85. package/dist/styles/extended-fab.css +1 -1
  86. package/dist/styles/fab-menu.css +1 -1
  87. package/dist/styles/fab.css +1 -1
  88. package/dist/styles/icon-button.css +1 -1
  89. package/dist/styles/list.css +1 -1
  90. package/dist/styles/loading-indicator.css +1 -1
  91. package/dist/styles/menu.css +1 -1
  92. package/dist/styles/navigation-bar.css +1 -1
  93. package/dist/styles/navigation-rail.css +1 -1
  94. package/dist/styles/progress.css +1 -1
  95. package/dist/styles/radios.css +1 -1
  96. package/dist/styles/search.css +1 -1
  97. package/dist/styles/select.css +1 -1
  98. package/dist/styles/side-sheet.css +2 -2
  99. package/dist/styles/slider.css +1 -1
  100. package/dist/styles/snackbar.css +1 -1
  101. package/dist/styles/split-button.css +2 -2
  102. package/dist/styles/switch.css +1 -1
  103. package/dist/styles/tabs.css +2 -2
  104. package/dist/styles/text-field.css +1 -1
  105. package/dist/styles/timepicker.css +1 -1
  106. package/dist/styles/toolbar.css +2 -2
  107. package/dist/styles/tooltip.css +1 -1
  108. package/dist/styles/top-app-bar.css +2 -2
  109. package/dist/styles/typography.css +1 -1
  110. package/dist/styles/utilities.css +1 -1
  111. package/dist/styles.css +2 -2
  112. package/dist/themes/autumn-contrast.css +1 -1
  113. package/dist/themes/autumn.css +1 -1
  114. package/dist/themes/baseline-contrast.css +1 -1
  115. package/dist/themes/baseline.css +1 -1
  116. package/dist/themes/brownbeige-contrast.css +1 -1
  117. package/dist/themes/brownbeige.css +1 -1
  118. package/dist/themes/content-contrast.css +1 -1
  119. package/dist/themes/content.css +1 -1
  120. package/dist/themes/desert-contrast.css +1 -1
  121. package/dist/themes/desert.css +1 -1
  122. package/dist/themes/expressive-contrast.css +1 -1
  123. package/dist/themes/expressive.css +1 -1
  124. package/dist/themes/fidelity-contrast.css +1 -1
  125. package/dist/themes/fidelity.css +1 -1
  126. package/dist/themes/forest-contrast.css +1 -1
  127. package/dist/themes/forest.css +1 -1
  128. package/dist/themes/fruit-salad-contrast.css +1 -1
  129. package/dist/themes/fruit-salad.css +1 -1
  130. package/dist/themes/highcontrast-contrast.css +1 -1
  131. package/dist/themes/highcontrast.css +1 -1
  132. package/dist/themes/monochrome-contrast.css +1 -1
  133. package/dist/themes/monochrome.css +1 -1
  134. package/dist/themes/neutral-contrast.css +1 -1
  135. package/dist/themes/neutral.css +1 -1
  136. package/dist/themes/ocean-contrast.css +1 -1
  137. package/dist/themes/ocean.css +1 -1
  138. package/dist/themes/rainbow-contrast.css +1 -1
  139. package/dist/themes/rainbow.css +1 -1
  140. package/dist/themes/sageivory-contrast.css +1 -1
  141. package/dist/themes/sageivory.css +1 -1
  142. package/dist/themes/spring-contrast.css +1 -1
  143. package/dist/themes/spring.css +1 -1
  144. package/dist/themes/summer-contrast.css +1 -1
  145. package/dist/themes/summer.css +1 -1
  146. package/dist/themes/sunset-contrast.css +1 -1
  147. package/dist/themes/sunset.css +1 -1
  148. package/dist/themes/tealcaramel-contrast.css +1 -1
  149. package/dist/themes/tealcaramel.css +1 -1
  150. package/dist/themes/vibrant-contrast.css +1 -1
  151. package/dist/themes/vibrant.css +1 -1
  152. package/package.json +1 -1
  153. package/src/styles/abstract/_mixins.scss +50 -3
  154. package/src/styles/components/_badge.scss +22 -22
  155. package/src/styles/components/_bottom-app-bar.scss +10 -10
  156. package/src/styles/components/_card.scss +22 -2
  157. package/src/styles/components/_datepicker.scss +15 -3
  158. package/src/styles/components/_dialog.scss +2 -4
  159. package/src/styles/components/_drawer.scss +5 -9
  160. package/src/styles/components/_side-sheet.scss +13 -6
  161. package/src/styles/components/_toolbar.scss +13 -10
  162. package/src/styles/components/_top-app-bar.scss +28 -18
@@ -20,6 +20,11 @@ $component: '#{base.$prefix}-toolbar';
20
20
  --#{$component}-content: #{t.color('on-surface-variant')};
21
21
  // The window-edge margin of a placed floating toolbar
22
22
  --#{$component}-margin: 16px;
23
+ // The direction multiplier: 1 left-to-right at the root, -1 under the
24
+ // direction arm. Declared here, not only used as a var() fallback, because a
25
+ // custom property inherits: a nested LTR instance must not read its RTL
26
+ // parent's -1.
27
+ --#{$component}-dir: 1;
23
28
 
24
29
  display: flex;
25
30
  align-items: center;
@@ -156,6 +161,10 @@ $component: '#{base.$prefix}-toolbar';
156
161
 
157
162
  // Off screen, past the edge it is placed at
158
163
  &--hidden {
164
+ @include m.rtl($self: true) {
165
+ --#{$component}-dir: -1;
166
+ }
167
+
159
168
  &.#{$component}--bottom {
160
169
  transform: translateY(calc(100% + var(--#{$component}-margin)));
161
170
  }
@@ -168,20 +177,14 @@ $component: '#{base.$prefix}-toolbar';
168
177
  transform: translateY(calc(-100% - var(--#{$component}-margin)));
169
178
  }
170
179
 
180
+ // The edge it leaves is physical: start and end trade sides in right-to-left,
181
+ // where the root's multiplier is -1.
171
182
  &.#{$component}--start {
172
- transform: translateX(calc(-100% - var(--#{$component}-margin)));
183
+ transform: translateX(calc(-1 * var(--#{$component}-dir) * (100% + var(--#{$component}-margin))));
173
184
  }
174
185
 
175
186
  &.#{$component}--end {
176
- transform: translateX(calc(100% + var(--#{$component}-margin)));
177
- }
178
-
179
- &.#{$component}--start:dir(rtl) {
180
- transform: translateX(calc(100% + var(--#{$component}-margin)));
181
- }
182
-
183
- &.#{$component}--end:dir(rtl) {
184
- transform: translateX(calc(-100% - var(--#{$component}-margin)));
187
+ transform: translateX(calc(var(--#{$component}-dir) * (100% + var(--#{$component}-margin))));
185
188
  }
186
189
 
187
190
  // In the flow there is no edge to leave by
@@ -159,34 +159,35 @@ $component: '#{base.$prefix}-top-app-bar';
159
159
  }
160
160
 
161
161
  // RTL Support
162
- [dir="rtl"] & {
162
+ @include m.rtl {
163
163
  .#{$component}__leading {
164
164
  margin-right: 0;
165
165
  margin-left: 24px;
166
166
  }
167
-
167
+
168
168
  .#{$component}__trailing {
169
169
  margin-left: 0;
170
170
  margin-right: auto;
171
171
  }
172
172
 
173
- &--medium,
174
- &--large {
175
- .#{$component}__headline {
176
- margin-left: 0;
177
- margin-right: 16px;
178
- }
179
- }
180
-
181
- &--center {
182
- .#{$component}__headline {
183
- left: auto;
184
- right: 50%;
185
- transform: translateX(50%);
186
- }
187
- }
188
173
  }
189
-
174
+
175
+ @include m.rtl-selector('.#{$component}--medium .#{$component}__headline') {
176
+ margin-left: 0;
177
+ margin-right: 16px;
178
+ }
179
+
180
+ @include m.rtl-selector('.#{$component}--large .#{$component}__headline') {
181
+ margin-left: 0;
182
+ margin-right: 16px;
183
+ }
184
+
185
+ @include m.rtl-selector('.#{$component}--center .#{$component}__headline') {
186
+ left: auto;
187
+ right: 50%;
188
+ transform: translateX(50%);
189
+ }
190
+
190
191
  // Mobile screen adjustments
191
192
  @media (max-width: map.get(v.$breakpoints, 'sm')) {
192
193
  // Reduce side padding slightly on small screens
@@ -195,6 +196,15 @@ $component: '#{base.$prefix}-top-app-bar';
195
196
  .#{$component}__leading {
196
197
  margin-right: 16px;
197
198
  }
199
+
200
+ // The narrow bar reduces the leading's end gap, not its start edges: the
201
+ // direction rule has to be restated here, or this later rule wins over it.
202
+ @include m.rtl {
203
+ .#{$component}__leading {
204
+ margin-right: 0;
205
+ margin-left: 16px;
206
+ }
207
+ }
198
208
 
199
209
  .#{$component}__trailing {
200
210
  gap: 4px;