material_components_web-sass 0.11.1 → 0.12.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.
@@ -28,6 +28,8 @@
28
28
  justify-content: flex-end;
29
29
  padding: 0;
30
30
  box-sizing: border-box;
31
+ border-radius: 2px;
32
+ overflow: hidden;
31
33
 
32
34
  &__primary {
33
35
  padding: 16px;
@@ -32,10 +32,29 @@ $mdc-dialog-dark-theme-bg-color: #303030 !default;
32
32
  .mdc-dialog {
33
33
  display: flex;
34
34
  position: fixed;
35
+ top: 0;
36
+ left: 0;
35
37
  align-items: center;
36
38
  justify-content: center;
37
- opacity: 0;
38
- z-index: -1;
39
+ width: 100%;
40
+ height: 100%;
41
+ visibility: hidden;
42
+ z-index: 2;
43
+
44
+ &__backdrop {
45
+ position: fixed;
46
+ top: 0;
47
+ left: 0;
48
+ align-items: center;
49
+ justify-content: center;
50
+ width: 100%;
51
+ height: 100%;
52
+
53
+ @include mdc-theme-prop(background-color, text-primary-on-light);
54
+
55
+ opacity: 0;
56
+ z-index: -1;
57
+ }
39
58
 
40
59
  &__surface {
41
60
  display: inline-flex;
@@ -47,7 +66,6 @@ $mdc-dialog-dark-theme-bg-color: #303030 !default;
47
66
  min-width: 640px;
48
67
  max-width: 865px;
49
68
  transform: translateY(150px) scale(.8);
50
- transition: mdc-animation-enter(opacity, 120ms), mdc-animation-enter(transform, 120ms);
51
69
  border-radius: 2px;
52
70
 
53
71
  @include mdc-theme-prop(background-color, background);
@@ -66,22 +84,6 @@ $mdc-dialog-dark-theme-bg-color: #303030 !default;
66
84
  opacity: 0;
67
85
  }
68
86
 
69
- &__backdrop {
70
- display: flex;
71
- position: fixed;
72
- top: 0;
73
- left: 0;
74
- align-items: center;
75
- justify-content: center;
76
- width: 100%;
77
- height: 100%;
78
-
79
- @include mdc-theme-prop(background-color, text-primary-on-light);
80
-
81
- opacity: 0;
82
- z-index: -1;
83
- }
84
-
85
87
  &__header {
86
88
  display: flex;
87
89
  align-items: center;
@@ -131,6 +133,14 @@ $mdc-dialog-dark-theme-bg-color: #303030 !default;
131
133
  align-items: center;
132
134
  justify-content: flex-end;
133
135
  padding: 8px;
136
+
137
+ &__button {
138
+ margin-right: 8px;
139
+
140
+ &:last-child {
141
+ margin-right: 0;
142
+ }
143
+ }
134
144
  }
135
145
 
136
146
  // TODO: Replace with breakpoint variable
@@ -145,28 +155,34 @@ $mdc-dialog-dark-theme-bg-color: #303030 !default;
145
155
  line-height: 24px;
146
156
  }
147
157
  }
148
- }
149
158
 
150
- .mdc-dialog--open {
151
- display: flex;
152
- top: 0;
153
- left: 0;
154
- align-items: center;
155
- justify-content: center;
156
- width: 100%;
157
- height: 100%;
158
- opacity: 1;
159
- z-index: 2;
159
+ &--animating {
160
+ visibility: visible;
161
+
162
+ .mdc-dialog__backdrop {
163
+ transition: mdc-animation-enter(opacity, 120ms);
164
+ }
160
165
 
161
- .mdc-dialog__surface {
162
- transform: translateY(0) scale(1);
163
- transition: mdc-animation-enter(opacity, 120ms), mdc-animation-enter(transform, 120ms);
164
- opacity: 1;
166
+ .mdc-dialog--open .mdc-dialog__surface {
167
+ transition: mdc-animation-enter(opacity, 120ms), mdc-animation-enter(transform, 120ms);
168
+ }
169
+
170
+ .mdc-dialog__surface {
171
+ transition: mdc-animation-enter(opacity, 120ms), mdc-animation-enter(transform, 120ms);
172
+ }
165
173
  }
166
174
 
167
- .mdc-dialog__backdrop {
168
- transition: mdc-animation-enter(opacity, 120ms);
169
- opacity: .3;
175
+ &--open {
176
+ visibility: visible;
177
+
178
+ .mdc-dialog__backdrop {
179
+ opacity: .3;
180
+ }
181
+
182
+ .mdc-dialog__surface {
183
+ transform: translateY(0) scale(1);
184
+ opacity: 1;
185
+ }
170
186
  }
171
187
  }
172
188
 
@@ -41,8 +41,8 @@ $mdc-permanent-drawer-dark-theme-bg-color: #212121 !default;
41
41
 
42
42
  display: inline-flex;
43
43
  flex-direction: column;
44
+ flex: 0 0 auto;
44
45
  width: $mdc-permanent-drawer-width;
45
- height: 100%;
46
46
  box-sizing: border-box;
47
47
  overflow: hidden;
48
48
 
@@ -65,7 +65,7 @@
65
65
 
66
66
  @include mdc-slideable-drawer;
67
67
 
68
- @include mdc-rtl(".mdc-temporary-drawer__drawer") {
68
+ @include mdc-rtl(".mdc-temporary-drawer") {
69
69
  @include mdc-slideable-drawer-rtl;
70
70
  }
71
71
 
@@ -0,0 +1,150 @@
1
+ //
2
+ // Copyright 2017 Google Inc. All Rights Reserved.
3
+ //
4
+ // Licensed under the Apache License, Version 2.0 (the "License");
5
+ // you may not use this file except in compliance with the License.
6
+ // You may obtain a copy of the License at
7
+ //
8
+ // http://www.apache.org/licenses/LICENSE-2.0
9
+ //
10
+ // Unless required by applicable law or agreed to in writing, software
11
+ // distributed under the License is distributed on an "AS IS" BASIS,
12
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ // See the License for the specific language governing permissions and
14
+ // limitations under the License.
15
+ //
16
+
17
+ @keyframes primary-indeterminate-translate {
18
+ 0% {
19
+ transform: translateX(0);
20
+ }
21
+
22
+ 20% {
23
+ animation-timing-function: cubic-bezier(.5, 0, .701732, .495819);
24
+ transform: translateX(0);
25
+ }
26
+
27
+ 59.15% {
28
+ animation-timing-function: cubic-bezier(.302435, .381352, .55, .956352);
29
+ transform: translateX(83.67142%);
30
+ }
31
+
32
+ 100% {
33
+ transform: translateX(200.611057%);
34
+ }
35
+ }
36
+
37
+ @keyframes primary-indeterminate-scale {
38
+ 0% {
39
+ transform: scaleX(.08);
40
+ }
41
+
42
+ 36.65% {
43
+ animation-timing-function: cubic-bezier(.334731, .12482, .785844, 1);
44
+ transform: scaleX(.08);
45
+ }
46
+
47
+ 69.15% {
48
+ animation-timing-function: cubic-bezier(.06, .11, .6, 1);
49
+ transform: scaleX(.661479);
50
+ }
51
+
52
+ 100% {
53
+ transform: scaleX(.08);
54
+ }
55
+ }
56
+
57
+ @keyframes secondary-indeterminate-translate {
58
+ 0% {
59
+ animation-timing-function: cubic-bezier(.15, 0, .515058, .409685);
60
+ transform: translateX(0);
61
+ }
62
+
63
+ 25% {
64
+ animation-timing-function: cubic-bezier(.31033, .284058, .8, .733712);
65
+ transform: translateX(37.651913%);
66
+ }
67
+
68
+ 48.35% {
69
+ animation-timing-function: cubic-bezier(.4, .627035, .6, .902026);
70
+ transform: translateX(84.386165%);
71
+ }
72
+
73
+ 100% {
74
+ transform: translateX(160.277782%);
75
+ }
76
+ }
77
+
78
+ @keyframes secondary-indeterminate-scale {
79
+ 0% {
80
+ animation-timing-function: cubic-bezier(.205028, .057051, .57661, .453971);
81
+ transform: scaleX(.08);
82
+ }
83
+
84
+ 19.15% {
85
+ animation-timing-function: cubic-bezier(.152313, .196432, .648374, 1.004315);
86
+ transform: scaleX(.457104);
87
+ }
88
+
89
+ 44.15% {
90
+ animation-timing-function: cubic-bezier(.257759, -.003163, .211762, 1.38179);
91
+ transform: scaleX(.72796);
92
+ }
93
+
94
+ 100% {
95
+ transform: scaleX(.08);
96
+ }
97
+ }
98
+
99
+ @keyframes buffering {
100
+ to {
101
+ transform: translateX(-10px);
102
+ }
103
+ }
104
+
105
+ @keyframes primary-indeterminate-translate-reverse {
106
+ 0% {
107
+ transform: translateX(0);
108
+ }
109
+
110
+ 20% {
111
+ animation-timing-function: cubic-bezier(.5, 0, .701732, .495819);
112
+ transform: translateX(0);
113
+ }
114
+
115
+ 59.15% {
116
+ animation-timing-function: cubic-bezier(.302435, .381352, .55, .956352);
117
+ transform: translateX(-83.67142%);
118
+ }
119
+
120
+ 100% {
121
+ transform: translateX(-200.611057%);
122
+ }
123
+ }
124
+
125
+ @keyframes secondary-indeterminate-translate-reverse {
126
+ 0% {
127
+ animation-timing-function: cubic-bezier(.15, 0, .515058, .409685);
128
+ transform: translateX(0);
129
+ }
130
+
131
+ 25% {
132
+ animation-timing-function: cubic-bezier(.31033, .284058, .8, .733712);
133
+ transform: translateX(-37.651913%);
134
+ }
135
+
136
+ 48.35% {
137
+ animation-timing-function: cubic-bezier(.4, .627035, .6, .902026);
138
+ transform: translateX(-84.386165%);
139
+ }
140
+
141
+ 100% {
142
+ transform: translateX(-160.277782%);
143
+ }
144
+ }
145
+
146
+ @keyframes buffering-reverse {
147
+ to {
148
+ transform: translateX(10px);
149
+ }
150
+ }
@@ -0,0 +1,135 @@
1
+ // Copyright 2017 Google Inc. All Rights Reserved.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ @import "@material/animation/functions";
16
+ @import "@material/theme/mixins";
17
+ @import "./keyframes";
18
+
19
+ .mdc-linear-progress {
20
+ position: relative;
21
+ width: 100%;
22
+ height: 4px;
23
+ transform: translateZ(0);
24
+ transition: mdc-animation-exit(opacity, 250ms);
25
+ overflow: hidden;
26
+
27
+ &__bar {
28
+ animation: none;
29
+ position: absolute;
30
+ width: 100%;
31
+ height: 100%;
32
+ transform-origin: top left;
33
+ transition: mdc-animation-exit(transform, 250ms);
34
+ }
35
+
36
+ &__bar-inner {
37
+ @include mdc-theme-prop(background-color, primary);
38
+
39
+ animation: none;
40
+ display: inline-block;
41
+ position: absolute;
42
+ width: 100%;
43
+ height: 100%;
44
+ }
45
+
46
+ &--accent .mdc-linear-progress__bar-inner {
47
+ @include mdc-theme-prop(background-color, accent);
48
+ }
49
+
50
+ &__buffering-dots {
51
+ position: absolute;
52
+ width: 100%;
53
+ height: 100%;
54
+ // SVG is optimized for data URI (https://codepen.io/tigt/post/optimizing-svgs-in-data-uris)
55
+ // stylelint-disable-next-line function-url-quotes
56
+ background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' enable-background='new 0 0 5 2' xml:space='preserve' viewBox='0 0 5 2' preserveAspectRatio='none slice'%3E%3Ccircle cx='1' cy='1' r='1' fill='%23e6e6e6'/%3E%3C/svg%3E");
57
+ background-repeat: repeat-x;
58
+ background-size: 10px 4px;
59
+ animation: buffering 250ms infinite linear;
60
+ }
61
+
62
+ &__buffer {
63
+ position: absolute;
64
+ width: 100%;
65
+ height: 100%;
66
+ transform-origin: top left;
67
+ transition: mdc-animation-exit(transform, 250ms);
68
+ background-color: #e6e6e6;
69
+ }
70
+
71
+ &__secondary-bar {
72
+ visibility: hidden;
73
+ }
74
+
75
+ &--indeterminate {
76
+ .mdc-linear-progress__bar {
77
+ transition: none;
78
+ }
79
+
80
+ .mdc-linear-progress__primary-bar {
81
+ animation: primary-indeterminate-translate 2s infinite linear;
82
+ left: -145.166611%;
83
+
84
+ > .mdc-linear-progress__bar-inner {
85
+ animation: primary-indeterminate-scale 2s infinite linear;
86
+ }
87
+ }
88
+
89
+ .mdc-linear-progress__secondary-bar {
90
+ animation: secondary-indeterminate-translate 2s infinite linear;
91
+ left: -54.888891%;
92
+ visibility: visible;
93
+
94
+ > .mdc-linear-progress__bar-inner {
95
+ animation: secondary-indeterminate-scale 2s infinite linear;
96
+ }
97
+ }
98
+ }
99
+
100
+ &--reversed {
101
+ .mdc-linear-progress__bar,
102
+ .mdc-linear-progress__buffer {
103
+ right: 0;
104
+ transform-origin: center right;
105
+ }
106
+
107
+ .mdc-linear-progress__primary-bar {
108
+ animation-name: primary-indeterminate-translate-reverse;
109
+ }
110
+
111
+ .mdc-linear-progress__secondary-bar {
112
+ animation-name: secondary-indeterminate-translate-reverse;
113
+ }
114
+
115
+ .mdc-linear-progress__buffering-dots {
116
+ animation: buffering-reverse 250ms infinite linear;
117
+ }
118
+ }
119
+
120
+ &--closed {
121
+ opacity: 0;
122
+ }
123
+ }
124
+
125
+ .mdc-linear-progress--indeterminate.mdc-linear-progress--reversed {
126
+ .mdc-linear-progress__primary-bar {
127
+ right: -145.166611%;
128
+ left: auto;
129
+ }
130
+
131
+ .mdc-linear-progress__secondary-bar {
132
+ right: -54.888891%;
133
+ left: auto;
134
+ }
135
+ }
@@ -157,11 +157,11 @@ a.mdc-list-item {
157
157
  @include mdc-ripple-base;
158
158
  @include mdc-ripple-bg((pseudo: "::before"));
159
159
  @include mdc-ripple-fg((pseudo: "::after"));
160
+ @include mdc-rtl-reflexive-position(left, $mdc-list-side-padding * -1);
160
161
 
161
162
  position: relative;
162
163
  // Cause the upgraded list item to cover the entirety of the list, causing ripples to emanate
163
164
  // across the entire list element.
164
- left: $mdc-list-side-padding * -1;
165
165
  width: 100%;
166
166
  padding: 0 $mdc-list-side-padding;
167
167
  overflow: hidden;