@material/web 1.0.0-pre.15 → 1.0.0-pre.16
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.
- package/README.md +22 -17
- package/button/internal/_filled-button.scss +0 -1
- package/button/internal/_outlined-button.scss +6 -0
- package/button/internal/_shared.scss +7 -1
- package/button/internal/button.d.ts +15 -14
- package/button/internal/button.js +41 -39
- package/button/internal/button.js.map +1 -1
- package/button/internal/outlined-styles.css.js +1 -1
- package/button/internal/outlined-styles.css.js.map +1 -1
- package/button/internal/shared-elevation-styles.css.js +1 -1
- package/button/internal/shared-elevation-styles.css.js.map +1 -1
- package/button/internal/shared-styles.css.js +1 -1
- package/button/internal/shared-styles.css.js.map +1 -1
- package/checkbox/internal/_checkbox.scss +1 -0
- package/checkbox/internal/checkbox-styles.css.js +1 -1
- package/checkbox/internal/checkbox-styles.css.js.map +1 -1
- package/checkbox/internal/checkbox.d.ts +2 -2
- package/checkbox/internal/checkbox.js +18 -14
- package/checkbox/internal/checkbox.js.map +1 -1
- package/chips/assist-chip.js +1 -2
- package/chips/assist-chip.js.map +1 -1
- package/chips/filter-chip.js +1 -3
- package/chips/filter-chip.js.map +1 -1
- package/chips/input-chip.js +1 -5
- package/chips/input-chip.js.map +1 -1
- package/chips/internal/_assist-chip.scss +6 -0
- package/chips/internal/_elevated.scss +1 -1
- package/chips/internal/_filter-chip.scss +6 -0
- package/chips/internal/_input-chip.scss +32 -0
- package/chips/internal/_selectable.scss +17 -13
- package/chips/internal/_shared.scss +17 -10
- package/chips/internal/_suggestion-chip.scss +6 -0
- package/chips/internal/_trailing-icon.scss +24 -24
- package/chips/internal/assist-styles.css.js +1 -1
- package/chips/internal/assist-styles.css.js.map +1 -1
- package/chips/internal/elevated-styles.css.js +1 -1
- package/chips/internal/elevated-styles.css.js.map +1 -1
- package/chips/internal/filter-styles.css.js +1 -1
- package/chips/internal/filter-styles.css.js.map +1 -1
- package/chips/internal/input-styles.css.js +1 -1
- package/chips/internal/input-styles.css.js.map +1 -1
- package/chips/internal/selectable-styles.css.js +1 -1
- package/chips/internal/selectable-styles.css.js.map +1 -1
- package/chips/internal/shared-styles.css.js +1 -1
- package/chips/internal/shared-styles.css.js.map +1 -1
- package/chips/internal/suggestion-styles.css.js +1 -1
- package/chips/internal/suggestion-styles.css.js.map +1 -1
- package/chips/internal/trailing-icon-styles.css.js +1 -1
- package/chips/internal/trailing-icon-styles.css.js.map +1 -1
- package/chips/suggestion-chip.js +1 -2
- package/chips/suggestion-chip.js.map +1 -1
- package/elevation/internal/_elevation.scss +14 -7
- package/elevation/internal/elevation-styles.css.js +1 -1
- package/elevation/internal/elevation-styles.css.js.map +1 -1
- package/fab/branded-fab.d.ts +0 -1
- package/fab/internal/_fab.scss +11 -10
- package/fab/internal/_shared.scss +4 -1
- package/fab/internal/fab-styles.css.js +1 -1
- package/fab/internal/fab-styles.css.js.map +1 -1
- package/fab/internal/fab.d.ts +0 -1
- package/fab/internal/shared-styles.css.js +1 -1
- package/fab/internal/shared-styles.css.js.map +1 -1
- package/fab/internal/shared.d.ts +0 -9
- package/fab/internal/shared.js +2 -18
- package/fab/internal/shared.js.map +1 -1
- package/field/internal/filled-styles.css.js +1 -1
- package/field/internal/filled-styles.css.js.map +1 -1
- package/field/internal/outlined-styles.css.js +1 -1
- package/field/internal/outlined-styles.css.js.map +1 -1
- package/icon/internal/_icon.scss +10 -5
- package/icon/internal/icon-styles.css.js +1 -1
- package/icon/internal/icon-styles.css.js.map +1 -1
- package/iconbutton/internal/_icon-button.scss +4 -0
- package/iconbutton/internal/_shared.scss +9 -0
- package/iconbutton/internal/icon-button.d.ts +16 -3
- package/iconbutton/internal/icon-button.js +31 -7
- package/iconbutton/internal/icon-button.js.map +1 -1
- package/iconbutton/internal/shared-styles.css.js +1 -1
- package/iconbutton/internal/shared-styles.css.js.map +1 -1
- package/iconbutton/internal/standard-styles.css.js +1 -1
- package/iconbutton/internal/standard-styles.css.js.map +1 -1
- package/internal/controller/form-submitter.d.ts +12 -0
- package/internal/controller/form-submitter.js +3 -1
- package/internal/controller/form-submitter.js.map +1 -1
- package/labs/badge/internal/_badge.scss +11 -8
- package/labs/navigationbar/internal/_navigation-bar.scss +11 -9
- package/labs/navigationbar/internal/navigation-bar-styles.css.js +1 -1
- package/labs/navigationbar/internal/navigation-bar-styles.css.js.map +1 -1
- package/labs/navigationdrawer/internal/_navigation-drawer-modal.scss +11 -8
- package/labs/navigationdrawer/internal/_navigation-drawer.scss +11 -8
- package/labs/navigationdrawer/internal/navigation-drawer-modal-styles.css.js +1 -1
- package/labs/navigationdrawer/internal/navigation-drawer-modal-styles.css.js.map +1 -1
- package/labs/navigationdrawer/internal/navigation-drawer-styles.css.js +1 -1
- package/labs/navigationdrawer/internal/navigation-drawer-styles.css.js.map +1 -1
- package/labs/navigationtab/internal/_navigation-tab.scss +10 -10
- package/labs/segmentedbutton/internal/_outlined-segmented-button.scss +1 -3
- package/labs/segmentedbutton/internal/outlined-styles.css.js +1 -1
- package/labs/segmentedbutton/internal/outlined-styles.css.js.map +1 -1
- package/list/internal/_list.scss +6 -2
- package/list/internal/list-styles.css.js +1 -1
- package/list/internal/list-styles.css.js.map +1 -1
- package/list/internal/listitem/_list-item.scss +83 -93
- package/list/internal/listitem/forced-colors-styles.css.js +1 -1
- package/list/internal/listitem/forced-colors-styles.css.js.map +1 -1
- package/list/internal/listitem/forced-colors-styles.scss +6 -6
- package/list/internal/listitem/list-item-styles.css.js +1 -1
- package/list/internal/listitem/list-item-styles.css.js.map +1 -1
- package/menu/internal/_menu.scss +6 -3
- package/menu/internal/menu-styles.css.js +1 -1
- package/menu/internal/menu-styles.css.js.map +1 -1
- package/menu/internal/menu.js +6 -6
- package/menu/internal/menu.js.map +1 -1
- package/menu/internal/menuitem/_menu-item.scss +7 -4
- package/menu/internal/menuitem/menu-item-styles.css.js +1 -1
- package/menu/internal/menuitem/menu-item-styles.css.js.map +1 -1
- package/package.json +1 -1
- package/progress/harness.js +2 -4
- package/progress/harness.js.map +1 -1
- package/progress/internal/_circular-progress.scss +4 -4
- package/progress/internal/_linear-progress.scss +93 -132
- package/progress/internal/circular-progress-styles.css.js +1 -1
- package/progress/internal/circular-progress-styles.css.js.map +1 -1
- package/progress/internal/circular-progress.js +1 -1
- package/progress/internal/circular-progress.js.map +1 -1
- package/progress/internal/linear-progress-styles.css.js +1 -1
- package/progress/internal/linear-progress-styles.css.js.map +1 -1
- package/progress/internal/linear-progress.d.ts +0 -11
- package/progress/internal/linear-progress.js +4 -48
- package/progress/internal/linear-progress.js.map +1 -1
- package/radio/internal/radio.d.ts +1 -1
- package/radio/internal/radio.js.map +1 -1
- package/ripple/internal/_ripple.scss +1 -1
- package/ripple/internal/ripple-styles.css.js +1 -1
- package/ripple/internal/ripple-styles.css.js.map +1 -1
- package/select/internal/_filled-select.scss +0 -1
- package/select/internal/_outlined-select.scss +0 -1
- package/select/internal/_shared.scss +0 -1
- package/select/internal/filled-select-styles.css.js +1 -1
- package/select/internal/filled-select-styles.css.js.map +1 -1
- package/select/internal/outlined-select-styles.css.js +1 -1
- package/select/internal/outlined-select-styles.css.js.map +1 -1
- package/slider/internal/_slider.scss +33 -28
- package/slider/internal/forced-colors-styles.css.js +1 -1
- package/slider/internal/forced-colors-styles.css.js.map +1 -1
- package/slider/internal/slider-styles.css.js +1 -1
- package/slider/internal/slider-styles.css.js.map +1 -1
- package/slider/internal/slider.d.ts +22 -8
- package/slider/internal/slider.js +113 -22
- package/slider/internal/slider.js.map +1 -1
- package/switch/internal/_switch.scss +9 -1
- package/switch/internal/switch-styles.css.js +1 -1
- package/switch/internal/switch-styles.css.js.map +1 -1
- package/switch/internal/switch.d.ts +1 -1
- package/switch/internal/switch.js +2 -2
- package/switch/internal/switch.js.map +1 -1
- package/tabs/internal/_tab.scss +76 -20
- package/tabs/internal/tab-styles.css.js +1 -1
- package/tabs/internal/tab-styles.css.js.map +1 -1
- package/tabs/internal/tab.js +0 -1
- package/tabs/internal/tab.js.map +1 -1
- package/textfield/internal/filled-styles.css.js +1 -1
- package/textfield/internal/filled-styles.css.js.map +1 -1
- package/textfield/internal/outlined-styles.css.js +1 -1
- package/textfield/internal/outlined-styles.css.js.map +1 -1
- package/textfield/internal/text-field.d.ts +11 -10
- package/textfield/internal/text-field.js +60 -32
- package/textfield/internal/text-field.js.map +1 -1
- package/tokens/_md-comp-filled-field.scss +2 -2
- package/tokens/_md-comp-filled-select.scss +3 -0
- package/tokens/_md-comp-filled-text-field.scss +3 -1
- package/tokens/_md-comp-list-item.scss +117 -103
- package/tokens/_md-comp-menu-item.scss +3 -3
- package/tokens/_md-comp-outlined-field.scss +2 -1
- package/tokens/_md-comp-outlined-select.scss +8 -0
- package/tokens/_md-comp-outlined-text-field.scss +3 -1
- package/chips/internal/assist-forced-colors-styles.css.d.ts +0 -1
- package/chips/internal/assist-forced-colors-styles.css.js +0 -9
- package/chips/internal/assist-forced-colors-styles.css.js.map +0 -1
- package/chips/internal/assist-forced-colors-styles.scss +0 -27
- package/chips/internal/filter-forced-colors-styles.css.d.ts +0 -1
- package/chips/internal/filter-forced-colors-styles.css.js +0 -9
- package/chips/internal/filter-forced-colors-styles.css.js.map +0 -1
- package/chips/internal/filter-forced-colors-styles.scss +0 -34
- package/chips/internal/input-forced-colors-styles.css.d.ts +0 -1
- package/chips/internal/input-forced-colors-styles.css.js +0 -9
- package/chips/internal/input-forced-colors-styles.css.js.map +0 -1
- package/chips/internal/input-forced-colors-styles.scss +0 -39
- package/chips/internal/suggestion-forced-colors-styles.css.d.ts +0 -1
- package/chips/internal/suggestion-forced-colors-styles.css.js +0 -9
- package/chips/internal/suggestion-forced-colors-styles.css.js.map +0 -1
- package/chips/internal/suggestion-forced-colors-styles.scss +0 -27
- package/internal/sass/_theme.scss +0 -249
|
@@ -34,25 +34,17 @@ $_indeterminate-duration: 2s;
|
|
|
34
34
|
// the track height. Since the dots are circular, width scales with height.
|
|
35
35
|
// Background width is separated because it's also used to help animate the
|
|
36
36
|
// /dots.
|
|
37
|
-
$
|
|
38
|
-
$
|
|
37
|
+
$_dot-size: calc(var(--_track-height) / 2);
|
|
38
|
+
$_dot-background-width: calc($_dot-size * 5);
|
|
39
39
|
// this is a series of sized/colored dots.
|
|
40
|
-
$
|
|
40
|
+
$_dot-background: 0 / $_dot-background-width 100%
|
|
41
41
|
radial-gradient(
|
|
42
|
-
circle at calc($
|
|
42
|
+
circle at calc($_dot-size * 2),
|
|
43
43
|
var(--_track-color) 0,
|
|
44
|
-
var(--_track-color) $
|
|
45
|
-
transparent $
|
|
44
|
+
var(--_track-color) $_dot-size,
|
|
45
|
+
transparent $_dot-size
|
|
46
46
|
);
|
|
47
47
|
|
|
48
|
-
// Generates a list of rtl selectors. This is done so rules can be generated
|
|
49
|
-
// separately so they don't get dropped where unsupported.
|
|
50
|
-
$rtl-selectors: (
|
|
51
|
-
':host-context([dir="rtl"]) .progress',
|
|
52
|
-
':host([dir="rtl"]) .progress',
|
|
53
|
-
'.progress:dir(rtl)'
|
|
54
|
-
);
|
|
55
|
-
|
|
56
48
|
@mixin styles() {
|
|
57
49
|
$tokens: tokens.md-comp-linear-progress-indicator-values();
|
|
58
50
|
|
|
@@ -61,29 +53,31 @@ $rtl-selectors: (
|
|
|
61
53
|
--_#{$token}: var(--md-linear-progress-#{$token}, #{$value});
|
|
62
54
|
}
|
|
63
55
|
|
|
64
|
-
|
|
56
|
+
border-radius: var(--_track-shape);
|
|
57
|
+
display: flex;
|
|
65
58
|
position: relative;
|
|
66
59
|
// note, this matches the `meter` element and is just done so
|
|
67
|
-
// there's a
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
block-size: var(--_track-height);
|
|
60
|
+
// there's a default width.
|
|
61
|
+
width: 80px;
|
|
62
|
+
height: var(--_track-height);
|
|
71
63
|
content-visibility: auto;
|
|
72
64
|
contain: strict;
|
|
73
65
|
}
|
|
74
66
|
|
|
75
67
|
.progress,
|
|
76
|
-
.
|
|
77
|
-
.
|
|
68
|
+
.dots,
|
|
69
|
+
.inactive-track,
|
|
78
70
|
.bar,
|
|
79
71
|
.bar-inner {
|
|
80
72
|
position: absolute;
|
|
81
73
|
}
|
|
82
74
|
|
|
83
75
|
.progress {
|
|
76
|
+
// Animations need to be in LTR. We support RTL by flipping the indicator
|
|
77
|
+
// with scale(-1).
|
|
78
|
+
direction: ltr;
|
|
84
79
|
inset: 0;
|
|
85
|
-
|
|
86
|
-
border-radius: var(--_track-shape);
|
|
80
|
+
border-radius: inherit;
|
|
87
81
|
overflow: hidden;
|
|
88
82
|
display: flex;
|
|
89
83
|
align-items: center;
|
|
@@ -92,8 +86,8 @@ $rtl-selectors: (
|
|
|
92
86
|
.bar {
|
|
93
87
|
animation: none;
|
|
94
88
|
// position is offset for indeterminate animation, so we lock the inline size here.
|
|
95
|
-
|
|
96
|
-
|
|
89
|
+
width: 100%;
|
|
90
|
+
height: var(--_active-indicator-height);
|
|
97
91
|
transform-origin: left center;
|
|
98
92
|
transition: transform $_determinate-duration $_determinate-easing;
|
|
99
93
|
}
|
|
@@ -108,20 +102,19 @@ $rtl-selectors: (
|
|
|
108
102
|
background: var(--_active-indicator-color);
|
|
109
103
|
}
|
|
110
104
|
|
|
111
|
-
.
|
|
105
|
+
.inactive-track {
|
|
112
106
|
background: var(--_track-color);
|
|
113
107
|
inset: 0;
|
|
114
108
|
transition: transform $_determinate-duration $_determinate-easing;
|
|
115
109
|
transform-origin: left center;
|
|
116
110
|
}
|
|
117
111
|
|
|
118
|
-
.
|
|
112
|
+
.dots {
|
|
119
113
|
inset: 0;
|
|
120
114
|
animation: linear infinite $_determinate-duration;
|
|
121
|
-
// stylelint-disable-next-line no-unknown-animations --
|
|
122
|
-
// animation generated via mixin
|
|
123
115
|
animation-name: buffering;
|
|
124
|
-
background: $
|
|
116
|
+
background: $_dot-background;
|
|
117
|
+
z-index: -1; // Place behind tracks for Safari
|
|
125
118
|
}
|
|
126
119
|
|
|
127
120
|
// indeterminate
|
|
@@ -141,74 +134,51 @@ $rtl-selectors: (
|
|
|
141
134
|
display: block;
|
|
142
135
|
}
|
|
143
136
|
|
|
144
|
-
.indeterminate .
|
|
137
|
+
.indeterminate .dots {
|
|
145
138
|
display: none;
|
|
146
139
|
}
|
|
147
140
|
|
|
148
|
-
.indeterminate
|
|
141
|
+
.indeterminate .primary-bar {
|
|
149
142
|
animation: linear infinite $_indeterminate-duration;
|
|
150
|
-
// stylelint-disable-next-line no-unknown-animations --
|
|
151
|
-
// animation generated via mixin
|
|
152
143
|
animation-name: primary-indeterminate-translate;
|
|
153
144
|
}
|
|
154
145
|
|
|
155
|
-
.indeterminate
|
|
146
|
+
.indeterminate .primary-bar > .bar-inner {
|
|
156
147
|
animation: linear infinite $_indeterminate-duration
|
|
157
148
|
primary-indeterminate-scale;
|
|
158
149
|
}
|
|
159
150
|
|
|
160
|
-
.indeterminate.
|
|
151
|
+
.indeterminate.four-color .primary-bar > .bar-inner {
|
|
161
152
|
animation-name: primary-indeterminate-scale, four-color;
|
|
162
153
|
animation-duration: $_indeterminate-duration,
|
|
163
154
|
calc($_indeterminate-duration * 2);
|
|
164
155
|
}
|
|
165
156
|
|
|
166
|
-
.indeterminate
|
|
157
|
+
.indeterminate .secondary-bar {
|
|
167
158
|
animation: linear infinite $_indeterminate-duration;
|
|
168
|
-
// stylelint-disable-next-line no-unknown-animations --
|
|
169
|
-
// animation generated via mixin
|
|
170
159
|
animation-name: secondary-indeterminate-translate;
|
|
171
160
|
}
|
|
172
161
|
|
|
173
|
-
.indeterminate
|
|
162
|
+
.indeterminate .secondary-bar > .bar-inner {
|
|
174
163
|
animation: linear infinite $_indeterminate-duration
|
|
175
164
|
secondary-indeterminate-scale;
|
|
176
165
|
}
|
|
177
166
|
|
|
178
|
-
.indeterminate.
|
|
167
|
+
.indeterminate.four-color .secondary-bar > .bar-inner {
|
|
179
168
|
animation-name: secondary-indeterminate-scale, four-color;
|
|
180
169
|
animation-duration: $_indeterminate-duration,
|
|
181
170
|
calc($_indeterminate-duration * 2);
|
|
182
171
|
}
|
|
183
172
|
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
.track {
|
|
195
|
-
// stylelint-disable-next-line no-unknown-animations --
|
|
196
|
-
// animation generated via mixin
|
|
197
|
-
animation-name: buffering-rtl;
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
&.indeterminate.animation-ready .primary-bar {
|
|
201
|
-
// stylelint-disable-next-line no-unknown-animations --
|
|
202
|
-
// animation generated via mixin
|
|
203
|
-
animation-name: primary-indeterminate-translate-rtl;
|
|
204
|
-
}
|
|
205
|
-
|
|
206
|
-
&.indeterminate.animation-ready .secondary-bar {
|
|
207
|
-
// stylelint-disable-next-line no-unknown-animations --
|
|
208
|
-
// animation generated via mixin
|
|
209
|
-
animation-name: secondary-indeterminate-translate-rtl;
|
|
210
|
-
}
|
|
211
|
-
}
|
|
173
|
+
// TODO(https://bugs.chromium.org/p/chromium/issues/detail?id=1420655):
|
|
174
|
+
// remove :host and :host-context once Chrome supports :dir
|
|
175
|
+
:host-context([dir='rtl']),
|
|
176
|
+
:host([dir='rtl']) {
|
|
177
|
+
transform: scale(-1);
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
:host(:dir(rtl)) {
|
|
181
|
+
transform: scale(-1);
|
|
212
182
|
}
|
|
213
183
|
|
|
214
184
|
@keyframes primary-indeterminate-scale {
|
|
@@ -267,71 +237,17 @@ $rtl-selectors: (
|
|
|
267
237
|
}
|
|
268
238
|
}
|
|
269
239
|
|
|
270
|
-
@
|
|
271
|
-
@include _directional-keyframes('rtl');
|
|
272
|
-
|
|
273
|
-
@keyframes four-color {
|
|
274
|
-
0% {
|
|
275
|
-
background: var(--_four-color-active-indicator-one-color);
|
|
276
|
-
}
|
|
277
|
-
|
|
278
|
-
15% {
|
|
279
|
-
background: var(--_four-color-active-indicator-one-color);
|
|
280
|
-
}
|
|
281
|
-
25% {
|
|
282
|
-
background: var(--_four-color-active-indicator-two-color);
|
|
283
|
-
}
|
|
284
|
-
40% {
|
|
285
|
-
background: var(--_four-color-active-indicator-two-color);
|
|
286
|
-
}
|
|
287
|
-
|
|
288
|
-
50% {
|
|
289
|
-
background: var(--_four-color-active-indicator-three-color);
|
|
290
|
-
}
|
|
291
|
-
65% {
|
|
292
|
-
background: var(--_four-color-active-indicator-three-color);
|
|
293
|
-
}
|
|
294
|
-
75% {
|
|
295
|
-
background: var(--_four-color-active-indicator-four-color);
|
|
296
|
-
}
|
|
297
|
-
90% {
|
|
298
|
-
background: var(--_four-color-active-indicator-four-color);
|
|
299
|
-
}
|
|
300
|
-
100% {
|
|
301
|
-
background: var(--_four-color-active-indicator-one-color);
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
|
|
305
|
-
@media screen and (forced-colors: active) {
|
|
306
|
-
.progress {
|
|
307
|
-
--_active-indicator-color: canvastext;
|
|
308
|
-
--_track-color: graytext;
|
|
309
|
-
border: 1px solid canvastext;
|
|
310
|
-
}
|
|
311
|
-
|
|
312
|
-
.indeterminate.progress {
|
|
313
|
-
--_track-color: canvas;
|
|
314
|
-
}
|
|
315
|
-
}
|
|
316
|
-
}
|
|
317
|
-
|
|
318
|
-
// Generates keyframes for ltr and rtl.
|
|
319
|
-
@mixin _directional-keyframes($dir) {
|
|
320
|
-
$is-rtl: $dir == 'rtl';
|
|
321
|
-
$sign: if($is-rtl, -1, 1);
|
|
322
|
-
$suffix: if($is-rtl, '-rtl', '');
|
|
323
|
-
|
|
324
|
-
@keyframes buffering#{$suffix} {
|
|
240
|
+
@keyframes buffering {
|
|
325
241
|
0% {
|
|
326
242
|
// the amount to animate is aligned with the default track background
|
|
327
|
-
transform: translateX(
|
|
243
|
+
transform: translateX(#{$_dot-background-width});
|
|
328
244
|
}
|
|
329
245
|
}
|
|
330
246
|
|
|
331
247
|
// note, the numbers here come directly from the mdc implementation.
|
|
332
248
|
// see https://github.com/material-components/material-components-web/blob/main/packages/mdc-linear-progress/_linear-progress.scss#L208.
|
|
333
249
|
// keyframes
|
|
334
|
-
@keyframes primary-indeterminate-translate
|
|
250
|
+
@keyframes primary-indeterminate-translate {
|
|
335
251
|
0% {
|
|
336
252
|
transform: translateX(0px);
|
|
337
253
|
}
|
|
@@ -348,15 +264,15 @@ $rtl-selectors: (
|
|
|
348
264
|
0.55,
|
|
349
265
|
0.956352
|
|
350
266
|
);
|
|
351
|
-
transform: translateX(
|
|
267
|
+
transform: translateX(83.6714%);
|
|
352
268
|
}
|
|
353
269
|
|
|
354
270
|
100% {
|
|
355
|
-
transform: translateX(
|
|
271
|
+
transform: translateX(200.611%);
|
|
356
272
|
}
|
|
357
273
|
}
|
|
358
274
|
|
|
359
|
-
@keyframes secondary-indeterminate-translate
|
|
275
|
+
@keyframes secondary-indeterminate-translate {
|
|
360
276
|
0% {
|
|
361
277
|
animation-timing-function: cubic-bezier(0.15, 0, 0.515058, 0.409685);
|
|
362
278
|
transform: translateX(0px);
|
|
@@ -364,16 +280,61 @@ $rtl-selectors: (
|
|
|
364
280
|
|
|
365
281
|
25% {
|
|
366
282
|
animation-timing-function: cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);
|
|
367
|
-
transform: translateX(
|
|
283
|
+
transform: translateX(37.6519%);
|
|
368
284
|
}
|
|
369
285
|
|
|
370
286
|
48.35% {
|
|
371
287
|
animation-timing-function: cubic-bezier(0.4, 0.627035, 0.6, 0.902026);
|
|
372
|
-
transform: translateX(
|
|
288
|
+
transform: translateX(84.3862%);
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
100% {
|
|
292
|
+
transform: translateX(160.278%);
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
@keyframes four-color {
|
|
297
|
+
0% {
|
|
298
|
+
background: var(--_four-color-active-indicator-one-color);
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
15% {
|
|
302
|
+
background: var(--_four-color-active-indicator-one-color);
|
|
303
|
+
}
|
|
304
|
+
25% {
|
|
305
|
+
background: var(--_four-color-active-indicator-two-color);
|
|
306
|
+
}
|
|
307
|
+
40% {
|
|
308
|
+
background: var(--_four-color-active-indicator-two-color);
|
|
373
309
|
}
|
|
374
310
|
|
|
311
|
+
50% {
|
|
312
|
+
background: var(--_four-color-active-indicator-three-color);
|
|
313
|
+
}
|
|
314
|
+
65% {
|
|
315
|
+
background: var(--_four-color-active-indicator-three-color);
|
|
316
|
+
}
|
|
317
|
+
75% {
|
|
318
|
+
background: var(--_four-color-active-indicator-four-color);
|
|
319
|
+
}
|
|
320
|
+
90% {
|
|
321
|
+
background: var(--_four-color-active-indicator-four-color);
|
|
322
|
+
}
|
|
375
323
|
100% {
|
|
376
|
-
|
|
324
|
+
background: var(--_four-color-active-indicator-one-color);
|
|
377
325
|
}
|
|
378
326
|
}
|
|
327
|
+
|
|
328
|
+
@media (forced-colors: active) {
|
|
329
|
+
:host {
|
|
330
|
+
outline: 1px solid CanvasText;
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
.bar-inner {
|
|
334
|
+
background: CanvasText;
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
// TODO(b/296262544): fix dots not being CanvasText. This need a refactor,
|
|
338
|
+
// since background gradiants are not displayed in HCM.
|
|
339
|
+
}
|
|
379
340
|
}
|
|
@@ -4,6 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { css } from 'lit';
|
|
7
|
-
export const styles = css `:host{--_active-indicator-color: var(--md-circular-progress-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_active-indicator-width: var(--md-circular-progress-active-indicator-width, 8.3333333333);--_four-color-active-indicator-four-color: var(--md-circular-progress-four-color-active-indicator-four-color, var(--md-sys-color-tertiary-container, #ffd8e4));--_four-color-active-indicator-one-color: var(--md-circular-progress-four-color-active-indicator-one-color, var(--md-sys-color-primary, #6750a4));--_four-color-active-indicator-three-color: var(--md-circular-progress-four-color-active-indicator-three-color, var(--md-sys-color-tertiary, #7d5260));--_four-color-active-indicator-two-color: var(--md-circular-progress-four-color-active-indicator-two-color, var(--md-sys-color-primary-container, #eaddff));--_size: var(--md-circular-progress-size, 48px);display:inline-flex;vertical-align:middle;min-block-size:var(--_size);min-inline-size:var(--_size);position:relative;align-items:center;justify-content:center;contain:strict;content-visibility:auto}.progress{flex:1;align-self:stretch;margin:4px}.progress,.spinner,.left,.right,.circle,svg,.track,.
|
|
7
|
+
export const styles = css `:host{--_active-indicator-color: var(--md-circular-progress-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_active-indicator-width: var(--md-circular-progress-active-indicator-width, 8.3333333333);--_four-color-active-indicator-four-color: var(--md-circular-progress-four-color-active-indicator-four-color, var(--md-sys-color-tertiary-container, #ffd8e4));--_four-color-active-indicator-one-color: var(--md-circular-progress-four-color-active-indicator-one-color, var(--md-sys-color-primary, #6750a4));--_four-color-active-indicator-three-color: var(--md-circular-progress-four-color-active-indicator-three-color, var(--md-sys-color-tertiary, #7d5260));--_four-color-active-indicator-two-color: var(--md-circular-progress-four-color-active-indicator-two-color, var(--md-sys-color-primary-container, #eaddff));--_size: var(--md-circular-progress-size, 48px);display:inline-flex;vertical-align:middle;min-block-size:var(--_size);min-inline-size:var(--_size);position:relative;align-items:center;justify-content:center;contain:strict;content-visibility:auto}.progress{flex:1;align-self:stretch;margin:4px}.progress,.spinner,.left,.right,.circle,svg,.track,.active-track{position:absolute;inset:0}svg{transform:rotate(-90deg)}circle{cx:50%;cy:50%;r:calc(50%*(1 - var(--_active-indicator-width)/100));stroke-width:calc(var(--_active-indicator-width)*1%);stroke-dasharray:100;fill:rgba(0,0,0,0)}.active-track{transition:stroke-dashoffset 500ms cubic-bezier(0, 0, 0.2, 1);stroke:var(--_active-indicator-color)}.track{stroke:rgba(0,0,0,0)}.progress.indeterminate{animation:linear infinite linear-rotate;animation-duration:1568.2352941176ms}.spinner{animation:infinite both rotate-arc;animation-duration:5332ms;animation-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.left{overflow:hidden;inset:0 50% 0 0}.right{overflow:hidden;inset:0 0 0 50%}.circle{box-sizing:border-box;border-radius:50%;border:solid calc(var(--_active-indicator-width)/100*(var(--_size) - 8px));border-color:var(--_active-indicator-color) var(--_active-indicator-color) rgba(0,0,0,0) rgba(0,0,0,0);animation:expand-arc;animation-iteration-count:infinite;animation-fill-mode:both;animation-duration:1333ms,5332ms;animation-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.four-color .circle{animation-name:expand-arc,four-color}.left .circle{rotate:135deg;inset:0 -100% 0 0}.right .circle{rotate:100deg;inset:0 0 0 -100%;animation-delay:-666.5ms,0ms}@media(forced-colors: active){.active-track{stroke:CanvasText}.circle{border-color:CanvasText CanvasText Canvas Canvas}}@keyframes expand-arc{0%{transform:rotate(265deg)}50%{transform:rotate(130deg)}100%{transform:rotate(265deg)}}@keyframes rotate-arc{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}100%{transform:rotate(1080deg)}}@keyframes linear-rotate{to{transform:rotate(360deg)}}@keyframes four-color{0%{border-top-color:var(--_four-color-active-indicator-one-color);border-right-color:var(--_four-color-active-indicator-one-color)}15%{border-top-color:var(--_four-color-active-indicator-one-color);border-right-color:var(--_four-color-active-indicator-one-color)}25%{border-top-color:var(--_four-color-active-indicator-two-color);border-right-color:var(--_four-color-active-indicator-two-color)}40%{border-top-color:var(--_four-color-active-indicator-two-color);border-right-color:var(--_four-color-active-indicator-two-color)}50%{border-top-color:var(--_four-color-active-indicator-three-color);border-right-color:var(--_four-color-active-indicator-three-color)}65%{border-top-color:var(--_four-color-active-indicator-three-color);border-right-color:var(--_four-color-active-indicator-three-color)}75%{border-top-color:var(--_four-color-active-indicator-four-color);border-right-color:var(--_four-color-active-indicator-four-color)}90%{border-top-color:var(--_four-color-active-indicator-four-color);border-right-color:var(--_four-color-active-indicator-four-color)}100%{border-top-color:var(--_four-color-active-indicator-one-color);border-right-color:var(--_four-color-active-indicator-one-color)}}/*# sourceMappingURL=circular-progress-styles.css.map */
|
|
8
8
|
`;
|
|
9
9
|
//# sourceMappingURL=circular-progress-styles.css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"circular-progress-styles.css.js","sourceRoot":"","sources":["circular-progress-styles.css.ts"],"names":[],"mappings":"AAAA;;;;IAII;AACH,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACzB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n import {css} from 'lit';\n export const styles = css`:host{--_active-indicator-color: var(--md-circular-progress-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_active-indicator-width: var(--md-circular-progress-active-indicator-width, 8.3333333333);--_four-color-active-indicator-four-color: var(--md-circular-progress-four-color-active-indicator-four-color, var(--md-sys-color-tertiary-container, #ffd8e4));--_four-color-active-indicator-one-color: var(--md-circular-progress-four-color-active-indicator-one-color, var(--md-sys-color-primary, #6750a4));--_four-color-active-indicator-three-color: var(--md-circular-progress-four-color-active-indicator-three-color, var(--md-sys-color-tertiary, #7d5260));--_four-color-active-indicator-two-color: var(--md-circular-progress-four-color-active-indicator-two-color, var(--md-sys-color-primary-container, #eaddff));--_size: var(--md-circular-progress-size, 48px);display:inline-flex;vertical-align:middle;min-block-size:var(--_size);min-inline-size:var(--_size);position:relative;align-items:center;justify-content:center;contain:strict;content-visibility:auto}.progress{flex:1;align-self:stretch;margin:4px}.progress,.spinner,.left,.right,.circle,svg,.track,.
|
|
1
|
+
{"version":3,"file":"circular-progress-styles.css.js","sourceRoot":"","sources":["circular-progress-styles.css.ts"],"names":[],"mappings":"AAAA;;;;IAII;AACH,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACzB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n import {css} from 'lit';\n export const styles = css`:host{--_active-indicator-color: var(--md-circular-progress-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_active-indicator-width: var(--md-circular-progress-active-indicator-width, 8.3333333333);--_four-color-active-indicator-four-color: var(--md-circular-progress-four-color-active-indicator-four-color, var(--md-sys-color-tertiary-container, #ffd8e4));--_four-color-active-indicator-one-color: var(--md-circular-progress-four-color-active-indicator-one-color, var(--md-sys-color-primary, #6750a4));--_four-color-active-indicator-three-color: var(--md-circular-progress-four-color-active-indicator-three-color, var(--md-sys-color-tertiary, #7d5260));--_four-color-active-indicator-two-color: var(--md-circular-progress-four-color-active-indicator-two-color, var(--md-sys-color-primary-container, #eaddff));--_size: var(--md-circular-progress-size, 48px);display:inline-flex;vertical-align:middle;min-block-size:var(--_size);min-inline-size:var(--_size);position:relative;align-items:center;justify-content:center;contain:strict;content-visibility:auto}.progress{flex:1;align-self:stretch;margin:4px}.progress,.spinner,.left,.right,.circle,svg,.track,.active-track{position:absolute;inset:0}svg{transform:rotate(-90deg)}circle{cx:50%;cy:50%;r:calc(50%*(1 - var(--_active-indicator-width)/100));stroke-width:calc(var(--_active-indicator-width)*1%);stroke-dasharray:100;fill:rgba(0,0,0,0)}.active-track{transition:stroke-dashoffset 500ms cubic-bezier(0, 0, 0.2, 1);stroke:var(--_active-indicator-color)}.track{stroke:rgba(0,0,0,0)}.progress.indeterminate{animation:linear infinite linear-rotate;animation-duration:1568.2352941176ms}.spinner{animation:infinite both rotate-arc;animation-duration:5332ms;animation-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.left{overflow:hidden;inset:0 50% 0 0}.right{overflow:hidden;inset:0 0 0 50%}.circle{box-sizing:border-box;border-radius:50%;border:solid calc(var(--_active-indicator-width)/100*(var(--_size) - 8px));border-color:var(--_active-indicator-color) var(--_active-indicator-color) rgba(0,0,0,0) rgba(0,0,0,0);animation:expand-arc;animation-iteration-count:infinite;animation-fill-mode:both;animation-duration:1333ms,5332ms;animation-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.four-color .circle{animation-name:expand-arc,four-color}.left .circle{rotate:135deg;inset:0 -100% 0 0}.right .circle{rotate:100deg;inset:0 0 0 -100%;animation-delay:-666.5ms,0ms}@media(forced-colors: active){.active-track{stroke:CanvasText}.circle{border-color:CanvasText CanvasText Canvas Canvas}}@keyframes expand-arc{0%{transform:rotate(265deg)}50%{transform:rotate(130deg)}100%{transform:rotate(265deg)}}@keyframes rotate-arc{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}100%{transform:rotate(1080deg)}}@keyframes linear-rotate{to{transform:rotate(360deg)}}@keyframes four-color{0%{border-top-color:var(--_four-color-active-indicator-one-color);border-right-color:var(--_four-color-active-indicator-one-color)}15%{border-top-color:var(--_four-color-active-indicator-one-color);border-right-color:var(--_four-color-active-indicator-one-color)}25%{border-top-color:var(--_four-color-active-indicator-two-color);border-right-color:var(--_four-color-active-indicator-two-color)}40%{border-top-color:var(--_four-color-active-indicator-two-color);border-right-color:var(--_four-color-active-indicator-two-color)}50%{border-top-color:var(--_four-color-active-indicator-three-color);border-right-color:var(--_four-color-active-indicator-three-color)}65%{border-top-color:var(--_four-color-active-indicator-three-color);border-right-color:var(--_four-color-active-indicator-three-color)}75%{border-top-color:var(--_four-color-active-indicator-four-color);border-right-color:var(--_four-color-active-indicator-four-color)}90%{border-top-color:var(--_four-color-active-indicator-four-color);border-right-color:var(--_four-color-active-indicator-four-color)}100%{border-top-color:var(--_four-color-active-indicator-one-color);border-right-color:var(--_four-color-active-indicator-one-color)}}/*# sourceMappingURL=circular-progress-styles.css.map */\n`;\n "]}
|
|
@@ -24,7 +24,7 @@ export class CircularProgress extends Progress {
|
|
|
24
24
|
return html `
|
|
25
25
|
<svg viewBox="0 0 4800 4800">
|
|
26
26
|
<circle class="track" pathLength="100"></circle>
|
|
27
|
-
<circle class="
|
|
27
|
+
<circle class="active-track" pathLength="100"
|
|
28
28
|
stroke-dashoffset=${dashOffset}></circle>
|
|
29
29
|
</svg>
|
|
30
30
|
`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"circular-progress.js","sourceRoot":"","sources":["circular-progress.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,IAAI,EAAC,MAAM,KAAK,CAAC;AAEzB,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AAEvC;;GAEG;AACH,MAAM,OAAO,gBAAiB,SAAQ,QAAQ;IACzB,eAAe;QAChC,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,IAAI,CAAC,4BAA4B,EAAE,CAAC;SAC5C;QAED,OAAO,IAAI,CAAC,0BAA0B,EAAE,CAAC;IAC3C,CAAC;IAED,sEAAsE;IACtE,yCAAyC;IACjC,0BAA0B;QAChC,MAAM,UAAU,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;QACrD,mEAAmE;QACnE,4EAA4E;QAC5E,OAAO,IAAI,CAAA;;;;8BAIe,UAAU;;KAEnC,CAAC;IACJ,CAAC;IAED,oEAAoE;IACpE,6EAA6E;IAC7E,uDAAuD;IACvD,qEAAqE;IACrE,yEAAyE;IACjE,4BAA4B;QAClC,OAAO,IAAI,CAAA;;;;;;;;aAQF,CAAC;IACZ,CAAC;CACF","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {html} from 'lit';\n\nimport {Progress} from './progress.js';\n\n/**\n * A circular progress component.\n */\nexport class CircularProgress extends Progress {\n protected override renderIndicator() {\n if (this.indeterminate) {\n return this.renderIndeterminateContainer();\n }\n\n return this.renderDeterminateContainer();\n }\n\n // Determinate mode is rendered with an svg so the progress arc can be\n // easily animated via stroke-dashoffset.\n private renderDeterminateContainer() {\n const dashOffset = (1 - this.value / this.max) * 100;\n // note, dash-array/offset are relative to Setting `pathLength` but\n // Chrome seems to render this inaccurately and using a large viewbox helps.\n return html`\n <svg viewBox=\"0 0 4800 4800\">\n <circle class=\"track\" pathLength=\"100\"></circle>\n <circle class=\"
|
|
1
|
+
{"version":3,"file":"circular-progress.js","sourceRoot":"","sources":["circular-progress.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,IAAI,EAAC,MAAM,KAAK,CAAC;AAEzB,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AAEvC;;GAEG;AACH,MAAM,OAAO,gBAAiB,SAAQ,QAAQ;IACzB,eAAe;QAChC,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,IAAI,CAAC,4BAA4B,EAAE,CAAC;SAC5C;QAED,OAAO,IAAI,CAAC,0BAA0B,EAAE,CAAC;IAC3C,CAAC;IAED,sEAAsE;IACtE,yCAAyC;IACjC,0BAA0B;QAChC,MAAM,UAAU,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;QACrD,mEAAmE;QACnE,4EAA4E;QAC5E,OAAO,IAAI,CAAA;;;;8BAIe,UAAU;;KAEnC,CAAC;IACJ,CAAC;IAED,oEAAoE;IACpE,6EAA6E;IAC7E,uDAAuD;IACvD,qEAAqE;IACrE,yEAAyE;IACjE,4BAA4B;QAClC,OAAO,IAAI,CAAA;;;;;;;;aAQF,CAAC;IACZ,CAAC;CACF","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {html} from 'lit';\n\nimport {Progress} from './progress.js';\n\n/**\n * A circular progress component.\n */\nexport class CircularProgress extends Progress {\n protected override renderIndicator() {\n if (this.indeterminate) {\n return this.renderIndeterminateContainer();\n }\n\n return this.renderDeterminateContainer();\n }\n\n // Determinate mode is rendered with an svg so the progress arc can be\n // easily animated via stroke-dashoffset.\n private renderDeterminateContainer() {\n const dashOffset = (1 - this.value / this.max) * 100;\n // note, dash-array/offset are relative to Setting `pathLength` but\n // Chrome seems to render this inaccurately and using a large viewbox helps.\n return html`\n <svg viewBox=\"0 0 4800 4800\">\n <circle class=\"track\" pathLength=\"100\"></circle>\n <circle class=\"active-track\" pathLength=\"100\"\n stroke-dashoffset=${dashOffset}></circle>\n </svg>\n `;\n }\n\n // Indeterminate mode rendered with 2 bordered-divs. The borders are\n // clipped into half circles by their containers. The divs are then carefully\n // animated to produce changes to the spinner arc size.\n // This approach has 4.5x the FPS of rendering via svg on Chrome 111.\n // See https://lit.dev/playground/#gist=febb773565272f75408ab06a0eb49746.\n private renderIndeterminateContainer() {\n return html`\n <div class=\"spinner\">\n <div class=\"left\">\n <div class=\"circle\"></div>\n </div>\n <div class=\"right\">\n <div class=\"circle\"></div>\n </div>\n </div>`;\n }\n}\n"]}
|
|
@@ -4,6 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { css } from 'lit';
|
|
7
|
-
export const styles = css `:host{--_active-indicator-color: var(--md-linear-progress-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_active-indicator-height: var(--md-linear-progress-active-indicator-height, 4px);--_four-color-active-indicator-four-color: var(--md-linear-progress-four-color-active-indicator-four-color, var(--md-sys-color-tertiary-container, #ffd8e4));--_four-color-active-indicator-one-color: var(--md-linear-progress-four-color-active-indicator-one-color, var(--md-sys-color-primary, #6750a4));--_four-color-active-indicator-three-color: var(--md-linear-progress-four-color-active-indicator-three-color, var(--md-sys-color-tertiary, #7d5260));--_four-color-active-indicator-two-color: var(--md-linear-progress-four-color-active-indicator-two-color, var(--md-sys-color-primary-container, #eaddff));--_track-color: var(--md-linear-progress-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_track-height: var(--md-linear-progress-track-height, 4px);--_track-shape: var(--md-linear-progress-track-shape, 0px);display:
|
|
7
|
+
export const styles = css `:host{--_active-indicator-color: var(--md-linear-progress-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_active-indicator-height: var(--md-linear-progress-active-indicator-height, 4px);--_four-color-active-indicator-four-color: var(--md-linear-progress-four-color-active-indicator-four-color, var(--md-sys-color-tertiary-container, #ffd8e4));--_four-color-active-indicator-one-color: var(--md-linear-progress-four-color-active-indicator-one-color, var(--md-sys-color-primary, #6750a4));--_four-color-active-indicator-three-color: var(--md-linear-progress-four-color-active-indicator-three-color, var(--md-sys-color-tertiary, #7d5260));--_four-color-active-indicator-two-color: var(--md-linear-progress-four-color-active-indicator-two-color, var(--md-sys-color-primary-container, #eaddff));--_track-color: var(--md-linear-progress-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_track-height: var(--md-linear-progress-track-height, 4px);--_track-shape: var(--md-linear-progress-track-shape, 0px);border-radius:var(--_track-shape);display:flex;position:relative;width:80px;height:var(--_track-height);content-visibility:auto;contain:strict}.progress,.dots,.inactive-track,.bar,.bar-inner{position:absolute}.progress{direction:ltr;inset:0;border-radius:inherit;overflow:hidden;display:flex;align-items:center}.bar{animation:none;width:100%;height:var(--_active-indicator-height);transform-origin:left center;transition:transform 250ms cubic-bezier(0.4, 0, 0.6, 1)}.secondary-bar{display:none}.bar-inner{inset:0;animation:none;background:var(--_active-indicator-color)}.inactive-track{background:var(--_track-color);inset:0;transition:transform 250ms cubic-bezier(0.4, 0, 0.6, 1);transform-origin:left center}.dots{inset:0;animation:linear infinite 250ms;animation-name:buffering;background:0/calc(var(--_track-height) / 2 * 5) 100% radial-gradient(circle at calc(var(--_track-height) / 2 * 2), var(--_track-color) 0, var(--_track-color) calc(var(--_track-height) / 2), transparent calc(var(--_track-height) / 2));z-index:-1}.indeterminate .bar{transition:none}.indeterminate .primary-bar{inset-inline-start:-145.167%}.indeterminate .secondary-bar{inset-inline-start:-54.8889%;display:block}.indeterminate .dots{display:none}.indeterminate .primary-bar{animation:linear infinite 2s;animation-name:primary-indeterminate-translate}.indeterminate .primary-bar>.bar-inner{animation:linear infinite 2s primary-indeterminate-scale}.indeterminate.four-color .primary-bar>.bar-inner{animation-name:primary-indeterminate-scale,four-color;animation-duration:2s,4s}.indeterminate .secondary-bar{animation:linear infinite 2s;animation-name:secondary-indeterminate-translate}.indeterminate .secondary-bar>.bar-inner{animation:linear infinite 2s secondary-indeterminate-scale}.indeterminate.four-color .secondary-bar>.bar-inner{animation-name:secondary-indeterminate-scale,four-color;animation-duration:2s,4s}:host-context([dir=rtl]),:host([dir=rtl]){transform:scale(-1)}:host(:dir(rtl)){transform:scale(-1)}@keyframes primary-indeterminate-scale{0%{transform:scaleX(0.08)}36.65%{animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);transform:scaleX(0.08)}69.15%{animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);transform:scaleX(0.661479)}100%{transform:scaleX(0.08)}}@keyframes secondary-indeterminate-scale{0%{animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);transform:scaleX(0.08)}19.15%{animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.00432);transform:scaleX(0.457104)}44.15%{animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);transform:scaleX(0.72796)}100%{transform:scaleX(0.08)}}@keyframes buffering{0%{transform:translateX(calc(var(--_track-height) / 2 * 5))}}@keyframes primary-indeterminate-translate{0%{transform:translateX(0px)}20%{animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);transform:translateX(0px)}59.15%{animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);transform:translateX(83.6714%)}100%{transform:translateX(200.611%)}}@keyframes secondary-indeterminate-translate{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);transform:translateX(0px)}25%{animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);transform:translateX(37.6519%)}48.35%{animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);transform:translateX(84.3862%)}100%{transform:translateX(160.278%)}}@keyframes four-color{0%{background:var(--_four-color-active-indicator-one-color)}15%{background:var(--_four-color-active-indicator-one-color)}25%{background:var(--_four-color-active-indicator-two-color)}40%{background:var(--_four-color-active-indicator-two-color)}50%{background:var(--_four-color-active-indicator-three-color)}65%{background:var(--_four-color-active-indicator-three-color)}75%{background:var(--_four-color-active-indicator-four-color)}90%{background:var(--_four-color-active-indicator-four-color)}100%{background:var(--_four-color-active-indicator-one-color)}}@media(forced-colors: active){:host{outline:1px solid CanvasText}.bar-inner{background:CanvasText}}/*# sourceMappingURL=linear-progress-styles.css.map */
|
|
8
8
|
`;
|
|
9
9
|
//# sourceMappingURL=linear-progress-styles.css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"linear-progress-styles.css.js","sourceRoot":"","sources":["linear-progress-styles.css.ts"],"names":[],"mappings":"AAAA;;;;IAII;AACH,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACzB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n import {css} from 'lit';\n export const styles = css`:host{--_active-indicator-color: var(--md-linear-progress-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_active-indicator-height: var(--md-linear-progress-active-indicator-height, 4px);--_four-color-active-indicator-four-color: var(--md-linear-progress-four-color-active-indicator-four-color, var(--md-sys-color-tertiary-container, #ffd8e4));--_four-color-active-indicator-one-color: var(--md-linear-progress-four-color-active-indicator-one-color, var(--md-sys-color-primary, #6750a4));--_four-color-active-indicator-three-color: var(--md-linear-progress-four-color-active-indicator-three-color, var(--md-sys-color-tertiary, #7d5260));--_four-color-active-indicator-two-color: var(--md-linear-progress-four-color-active-indicator-two-color, var(--md-sys-color-primary-container, #eaddff));--_track-color: var(--md-linear-progress-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_track-height: var(--md-linear-progress-track-height, 4px);--_track-shape: var(--md-linear-progress-track-shape, 0px);display:
|
|
1
|
+
{"version":3,"file":"linear-progress-styles.css.js","sourceRoot":"","sources":["linear-progress-styles.css.ts"],"names":[],"mappings":"AAAA;;;;IAII;AACH,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACzB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n import {css} from 'lit';\n export const styles = css`:host{--_active-indicator-color: var(--md-linear-progress-active-indicator-color, var(--md-sys-color-primary, #6750a4));--_active-indicator-height: var(--md-linear-progress-active-indicator-height, 4px);--_four-color-active-indicator-four-color: var(--md-linear-progress-four-color-active-indicator-four-color, var(--md-sys-color-tertiary-container, #ffd8e4));--_four-color-active-indicator-one-color: var(--md-linear-progress-four-color-active-indicator-one-color, var(--md-sys-color-primary, #6750a4));--_four-color-active-indicator-three-color: var(--md-linear-progress-four-color-active-indicator-three-color, var(--md-sys-color-tertiary, #7d5260));--_four-color-active-indicator-two-color: var(--md-linear-progress-four-color-active-indicator-two-color, var(--md-sys-color-primary-container, #eaddff));--_track-color: var(--md-linear-progress-track-color, var(--md-sys-color-surface-container-highest, #e6e0e9));--_track-height: var(--md-linear-progress-track-height, 4px);--_track-shape: var(--md-linear-progress-track-shape, 0px);border-radius:var(--_track-shape);display:flex;position:relative;width:80px;height:var(--_track-height);content-visibility:auto;contain:strict}.progress,.dots,.inactive-track,.bar,.bar-inner{position:absolute}.progress{direction:ltr;inset:0;border-radius:inherit;overflow:hidden;display:flex;align-items:center}.bar{animation:none;width:100%;height:var(--_active-indicator-height);transform-origin:left center;transition:transform 250ms cubic-bezier(0.4, 0, 0.6, 1)}.secondary-bar{display:none}.bar-inner{inset:0;animation:none;background:var(--_active-indicator-color)}.inactive-track{background:var(--_track-color);inset:0;transition:transform 250ms cubic-bezier(0.4, 0, 0.6, 1);transform-origin:left center}.dots{inset:0;animation:linear infinite 250ms;animation-name:buffering;background:0/calc(var(--_track-height) / 2 * 5) 100% radial-gradient(circle at calc(var(--_track-height) / 2 * 2), var(--_track-color) 0, var(--_track-color) calc(var(--_track-height) / 2), transparent calc(var(--_track-height) / 2));z-index:-1}.indeterminate .bar{transition:none}.indeterminate .primary-bar{inset-inline-start:-145.167%}.indeterminate .secondary-bar{inset-inline-start:-54.8889%;display:block}.indeterminate .dots{display:none}.indeterminate .primary-bar{animation:linear infinite 2s;animation-name:primary-indeterminate-translate}.indeterminate .primary-bar>.bar-inner{animation:linear infinite 2s primary-indeterminate-scale}.indeterminate.four-color .primary-bar>.bar-inner{animation-name:primary-indeterminate-scale,four-color;animation-duration:2s,4s}.indeterminate .secondary-bar{animation:linear infinite 2s;animation-name:secondary-indeterminate-translate}.indeterminate .secondary-bar>.bar-inner{animation:linear infinite 2s secondary-indeterminate-scale}.indeterminate.four-color .secondary-bar>.bar-inner{animation-name:secondary-indeterminate-scale,four-color;animation-duration:2s,4s}:host-context([dir=rtl]),:host([dir=rtl]){transform:scale(-1)}:host(:dir(rtl)){transform:scale(-1)}@keyframes primary-indeterminate-scale{0%{transform:scaleX(0.08)}36.65%{animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);transform:scaleX(0.08)}69.15%{animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);transform:scaleX(0.661479)}100%{transform:scaleX(0.08)}}@keyframes secondary-indeterminate-scale{0%{animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);transform:scaleX(0.08)}19.15%{animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.00432);transform:scaleX(0.457104)}44.15%{animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);transform:scaleX(0.72796)}100%{transform:scaleX(0.08)}}@keyframes buffering{0%{transform:translateX(calc(var(--_track-height) / 2 * 5))}}@keyframes primary-indeterminate-translate{0%{transform:translateX(0px)}20%{animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);transform:translateX(0px)}59.15%{animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);transform:translateX(83.6714%)}100%{transform:translateX(200.611%)}}@keyframes secondary-indeterminate-translate{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);transform:translateX(0px)}25%{animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);transform:translateX(37.6519%)}48.35%{animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);transform:translateX(84.3862%)}100%{transform:translateX(160.278%)}}@keyframes four-color{0%{background:var(--_four-color-active-indicator-one-color)}15%{background:var(--_four-color-active-indicator-one-color)}25%{background:var(--_four-color-active-indicator-two-color)}40%{background:var(--_four-color-active-indicator-two-color)}50%{background:var(--_four-color-active-indicator-three-color)}65%{background:var(--_four-color-active-indicator-three-color)}75%{background:var(--_four-color-active-indicator-four-color)}90%{background:var(--_four-color-active-indicator-four-color)}100%{background:var(--_four-color-active-indicator-one-color)}}@media(forced-colors: active){:host{outline:1px solid CanvasText}.bar-inner{background:CanvasText}}/*# sourceMappingURL=linear-progress-styles.css.map */\n`;\n "]}
|
|
@@ -12,16 +12,5 @@ export declare class LinearProgress extends Progress {
|
|
|
12
12
|
* Buffer amount to display, a fraction between 0 and 1.
|
|
13
13
|
*/
|
|
14
14
|
buffer: number;
|
|
15
|
-
private readonly rootEl;
|
|
16
|
-
private animationReady;
|
|
17
|
-
private resizeObserver;
|
|
18
|
-
protected getRenderClasses(): {
|
|
19
|
-
'animation-ready': boolean;
|
|
20
|
-
indeterminate: boolean;
|
|
21
|
-
'four-color': boolean;
|
|
22
|
-
};
|
|
23
15
|
protected renderIndicator(): import("lit-html").TemplateResult<1>;
|
|
24
|
-
connectedCallback(): Promise<void>;
|
|
25
|
-
disconnectedCallback(): void;
|
|
26
|
-
private restartAnimation;
|
|
27
16
|
}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { __decorate } from "tslib";
|
|
7
7
|
import { html } from 'lit';
|
|
8
|
-
import { property
|
|
8
|
+
import { property } from 'lit/decorators.js';
|
|
9
9
|
import { styleMap } from 'lit/directives/style-map.js';
|
|
10
10
|
import { Progress } from './progress.js';
|
|
11
11
|
/**
|
|
@@ -18,14 +18,6 @@ export class LinearProgress extends Progress {
|
|
|
18
18
|
* Buffer amount to display, a fraction between 0 and 1.
|
|
19
19
|
*/
|
|
20
20
|
this.buffer = 1;
|
|
21
|
-
this.animationReady = true;
|
|
22
|
-
this.resizeObserver = null;
|
|
23
|
-
}
|
|
24
|
-
getRenderClasses() {
|
|
25
|
-
return {
|
|
26
|
-
...super.getRenderClasses(),
|
|
27
|
-
'animation-ready': this.animationReady,
|
|
28
|
-
};
|
|
29
21
|
}
|
|
30
22
|
// Note, the indeterminate animation is rendered with transform %'s
|
|
31
23
|
// Previously, this was optimized to use px calculated with the resizeObserver
|
|
@@ -34,12 +26,12 @@ export class LinearProgress extends Progress {
|
|
|
34
26
|
const progressStyles = {
|
|
35
27
|
transform: `scaleX(${(this.indeterminate ? 1 : this.value / this.max) * 100}%)`
|
|
36
28
|
};
|
|
37
|
-
const
|
|
29
|
+
const dotStyles = {
|
|
38
30
|
transform: `scaleX(${(this.indeterminate ? 1 : this.buffer / this.max) * 100}%)`
|
|
39
31
|
};
|
|
40
32
|
return html `
|
|
41
|
-
<div class="
|
|
42
|
-
<div class="
|
|
33
|
+
<div class="dots"></div>
|
|
34
|
+
<div class="inactive-track" style=${styleMap(dotStyles)}></div>
|
|
43
35
|
<div class="bar primary-bar" style=${styleMap(progressStyles)}>
|
|
44
36
|
<div class="bar-inner"></div>
|
|
45
37
|
</div>
|
|
@@ -48,44 +40,8 @@ export class LinearProgress extends Progress {
|
|
|
48
40
|
</div>
|
|
49
41
|
`;
|
|
50
42
|
}
|
|
51
|
-
async connectedCallback() {
|
|
52
|
-
super.connectedCallback();
|
|
53
|
-
// wait for rendering.
|
|
54
|
-
await this.updateComplete;
|
|
55
|
-
if (this.resizeObserver) {
|
|
56
|
-
return;
|
|
57
|
-
}
|
|
58
|
-
this.resizeObserver = new ResizeObserver(() => {
|
|
59
|
-
if (this.indeterminate) {
|
|
60
|
-
this.restartAnimation();
|
|
61
|
-
}
|
|
62
|
-
});
|
|
63
|
-
this.resizeObserver.observe(this.rootEl);
|
|
64
|
-
}
|
|
65
|
-
disconnectedCallback() {
|
|
66
|
-
if (this.resizeObserver) {
|
|
67
|
-
this.resizeObserver.disconnect();
|
|
68
|
-
this.resizeObserver = null;
|
|
69
|
-
}
|
|
70
|
-
super.disconnectedCallback();
|
|
71
|
-
}
|
|
72
|
-
// When size changes, restart the animation
|
|
73
|
-
// to avoid jank.
|
|
74
|
-
async restartAnimation() {
|
|
75
|
-
await this.updateComplete;
|
|
76
|
-
this.animationReady = false;
|
|
77
|
-
await new Promise(requestAnimationFrame);
|
|
78
|
-
this.animationReady = true;
|
|
79
|
-
await this.updateComplete;
|
|
80
|
-
}
|
|
81
43
|
}
|
|
82
44
|
__decorate([
|
|
83
45
|
property({ type: Number })
|
|
84
46
|
], LinearProgress.prototype, "buffer", void 0);
|
|
85
|
-
__decorate([
|
|
86
|
-
query('.progress')
|
|
87
|
-
], LinearProgress.prototype, "rootEl", void 0);
|
|
88
|
-
__decorate([
|
|
89
|
-
state()
|
|
90
|
-
], LinearProgress.prototype, "animationReady", void 0);
|
|
91
47
|
//# sourceMappingURL=linear-progress.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"linear-progress.js","sourceRoot":"","sources":["linear-progress.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,IAAI,EAAC,MAAM,KAAK,CAAC;AACzB,OAAO,EAAC,QAAQ,
|
|
1
|
+
{"version":3,"file":"linear-progress.js","sourceRoot":"","sources":["linear-progress.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,IAAI,EAAC,MAAM,KAAK,CAAC;AACzB,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAC,QAAQ,EAAC,MAAM,6BAA6B,CAAC;AAErD,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AAEvC;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,QAAQ;IAA5C;;QACE;;WAEG;QACuB,WAAM,GAAG,CAAC,CAAC;IA0BvC,CAAC;IAxBC,mEAAmE;IACnE,8EAA8E;IAC9E,mDAAmD;IAChC,eAAe;QAChC,MAAM,cAAc,GAAG;YACrB,SAAS,EACL,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI;SACzE,CAAC;QACF,MAAM,SAAS,GAAG;YAChB,SAAS,EACL,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI;SAC1E,CAAC;QAEF,OAAO,IAAI,CAAA;;0CAE2B,QAAQ,CAAC,SAAS,CAAC;2CAClB,QAAQ,CAAC,cAAc,CAAC;;;;;;KAM9D,CAAC;IACJ,CAAC;CACF;AA1B2B;IAAzB,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;8CAAY","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {html} from 'lit';\nimport {property} from 'lit/decorators.js';\nimport {styleMap} from 'lit/directives/style-map.js';\n\nimport {Progress} from './progress.js';\n\n/**\n * A linear progress component.\n */\nexport class LinearProgress extends Progress {\n /**\n * Buffer amount to display, a fraction between 0 and 1.\n */\n @property({type: Number}) buffer = 1;\n\n // Note, the indeterminate animation is rendered with transform %'s\n // Previously, this was optimized to use px calculated with the resizeObserver\n // due to a now fixed Chrome bug: crbug.com/389359.\n protected override renderIndicator() {\n const progressStyles = {\n transform:\n `scaleX(${(this.indeterminate ? 1 : this.value / this.max) * 100}%)`\n };\n const dotStyles = {\n transform:\n `scaleX(${(this.indeterminate ? 1 : this.buffer / this.max) * 100}%)`\n };\n\n return html`\n <div class=\"dots\"></div>\n <div class=\"inactive-track\" style=${styleMap(dotStyles)}></div>\n <div class=\"bar primary-bar\" style=${styleMap(progressStyles)}>\n <div class=\"bar-inner\"></div>\n </div>\n <div class=\"bar secondary-bar\">\n <div class=\"bar-inner\"></div>\n </div>\n `;\n }\n}\n"]}
|
|
@@ -14,7 +14,7 @@ export declare class Radio extends LitElement {
|
|
|
14
14
|
/** @nocollapse */
|
|
15
15
|
static shadowRootOptions: ShadowRootInit;
|
|
16
16
|
/** @nocollapse */
|
|
17
|
-
static formAssociated
|
|
17
|
+
static readonly formAssociated = true;
|
|
18
18
|
private readonly maskId;
|
|
19
19
|
/**
|
|
20
20
|
* Whether or not the radio is selected.
|