materialize-sass 0.99.0 → 0.100.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 (60) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +2 -2
  3. data/app/assets/javascripts/materialize.js +6015 -5060
  4. data/app/assets/javascripts/materialize/animation.js +4 -5
  5. data/app/assets/javascripts/materialize/buttons.js +24 -38
  6. data/app/assets/javascripts/materialize/cards.js +13 -21
  7. data/app/assets/javascripts/materialize/carousel.js +122 -110
  8. data/app/assets/javascripts/materialize/character_counter.js +14 -22
  9. data/app/assets/javascripts/materialize/chips.js +41 -44
  10. data/app/assets/javascripts/materialize/collapsible.js +41 -46
  11. data/app/assets/javascripts/materialize/date_picker/picker.date.js +965 -1167
  12. data/app/assets/javascripts/materialize/date_picker/picker.js +546 -634
  13. data/app/assets/javascripts/materialize/date_picker/picker.time.js +166 -212
  14. data/app/assets/javascripts/materialize/dropdown.js +53 -68
  15. data/app/assets/javascripts/materialize/extras/nouislider.js +3 -1
  16. data/app/assets/javascripts/materialize/extras/nouislider.min.js +1 -1
  17. data/app/assets/javascripts/materialize/forms.js +156 -154
  18. data/app/assets/javascripts/materialize/global.js +34 -43
  19. data/app/assets/javascripts/materialize/hammer.min.js +424 -1
  20. data/app/assets/javascripts/materialize/initial.js +3 -3
  21. data/app/assets/javascripts/materialize/jquery.easing.1.4.js +120 -142
  22. data/app/assets/javascripts/materialize/jquery.hammer.js +9 -9
  23. data/app/assets/javascripts/materialize/materialbox.js +81 -107
  24. data/app/assets/javascripts/materialize/modal.js +373 -162
  25. data/app/assets/javascripts/materialize/parallax.js +11 -15
  26. data/app/assets/javascripts/materialize/pushpin.js +2 -5
  27. data/app/assets/javascripts/materialize/scrollFire.js +9 -11
  28. data/app/assets/javascripts/materialize/scrollspy.js +84 -92
  29. data/app/assets/javascripts/materialize/sideNav.js +128 -139
  30. data/app/assets/javascripts/materialize/slider.js +83 -112
  31. data/app/assets/javascripts/materialize/tabs.js +196 -196
  32. data/app/assets/javascripts/materialize/tapTarget.js +170 -173
  33. data/app/assets/javascripts/materialize/toasts.js +330 -112
  34. data/app/assets/javascripts/materialize/tooltip.js +134 -145
  35. data/app/assets/javascripts/materialize/transitions.js +43 -49
  36. data/app/assets/javascripts/materialize/velocity.min.js +623 -2
  37. data/app/assets/javascripts/materialize/waves.js +42 -47
  38. data/app/assets/stylesheets/materialize/components/_buttons.scss +1 -1
  39. data/app/assets/stylesheets/materialize/components/_carousel.scss +4 -5
  40. data/app/assets/stylesheets/materialize/components/_chips.scss +1 -0
  41. data/app/assets/stylesheets/materialize/components/_collapsible.scss +4 -7
  42. data/app/assets/stylesheets/materialize/components/_color.scss +1 -1
  43. data/app/assets/stylesheets/materialize/components/_global.scss +8 -14
  44. data/app/assets/stylesheets/materialize/components/_navbar.scss +0 -1
  45. data/app/assets/stylesheets/materialize/components/_tabs.scss +1 -7
  46. data/app/assets/stylesheets/materialize/components/_toast.scss +6 -12
  47. data/app/assets/stylesheets/materialize/components/_variables.scss +55 -43
  48. data/app/assets/stylesheets/materialize/components/date_picker/_default.scss +1 -0
  49. data/app/assets/stylesheets/materialize/components/forms/_checkboxes.scss +2 -12
  50. data/app/assets/stylesheets/materialize/components/forms/_file-input.scss +6 -0
  51. data/app/assets/stylesheets/materialize/components/forms/_input-fields.scss +67 -37
  52. data/app/assets/stylesheets/materialize/components/forms/_radio-buttons.scss +1 -3
  53. data/app/assets/stylesheets/materialize/components/forms/_select.scss +72 -11
  54. data/app/assets/stylesheets/materialize/components/forms/_switches.scss +2 -4
  55. data/app/assets/stylesheets/materialize/extras/nouislider.css +8 -1
  56. data/lib/materialize-sass/version.rb +1 -1
  57. metadata +2 -5
  58. data/app/assets/javascripts/materialize/init.js +0 -214
  59. data/app/assets/javascripts/materialize/jquery.timeago.min.js +0 -1
  60. data/app/assets/javascripts/materialize/prism.js +0 -8
@@ -7,7 +7,7 @@
7
7
  * https://github.com/fians/Waves/blob/master/LICENSE
8
8
  */
9
9
 
10
- ;(function(window) {
10
+ ;(function (window) {
11
11
  'use strict';
12
12
 
13
13
  var Waves = Waves || {};
@@ -23,8 +23,9 @@
23
23
  }
24
24
 
25
25
  function offset(elem) {
26
- var docElem, win,
27
- box = {top: 0, left: 0},
26
+ var docElem,
27
+ win,
28
+ box = { top: 0, left: 0 },
28
29
  doc = elem && elem.ownerDocument;
29
30
 
30
31
  docElem = doc.documentElement;
@@ -44,7 +45,7 @@
44
45
 
45
46
  for (var a in obj) {
46
47
  if (obj.hasOwnProperty(a)) {
47
- style += (a + ':' + obj[a] + ';');
48
+ style += a + ':' + obj[a] + ';';
48
49
  }
49
50
  }
50
51
 
@@ -56,7 +57,7 @@
56
57
  // Effect delay
57
58
  duration: 750,
58
59
 
59
- show: function(e, element) {
60
+ show: function (e, element) {
60
61
 
61
62
  // Disable right click
62
63
  if (e.button === 2) {
@@ -71,15 +72,15 @@
71
72
  el.appendChild(ripple);
72
73
 
73
74
  // Get click coordinate and element witdh
74
- var pos = offset(el);
75
- var relativeY = (e.pageY - pos.top);
76
- var relativeX = (e.pageX - pos.left);
77
- var scale = 'scale('+((el.clientWidth / 100) * 10)+')';
75
+ var pos = offset(el);
76
+ var relativeY = e.pageY - pos.top;
77
+ var relativeX = e.pageX - pos.left;
78
+ var scale = 'scale(' + el.clientWidth / 100 * 10 + ')';
78
79
 
79
80
  // Support for touch devices
80
81
  if ('touches' in e) {
81
- relativeY = (e.touches[0].pageY - pos.top);
82
- relativeX = (e.touches[0].pageX - pos.left);
82
+ relativeY = e.touches[0].pageY - pos.top;
83
+ relativeX = e.touches[0].pageX - pos.left;
83
84
  }
84
85
 
85
86
  // Attach data to element
@@ -90,8 +91,8 @@
90
91
 
91
92
  // Set ripple position
92
93
  var rippleStyle = {
93
- 'top': relativeY+'px',
94
- 'left': relativeX+'px'
94
+ 'top': relativeY + 'px',
95
+ 'left': relativeX + 'px'
95
96
  };
96
97
 
97
98
  ripple.className = ripple.className + ' waves-notransition';
@@ -104,22 +105,22 @@
104
105
  rippleStyle['-ms-transform'] = scale;
105
106
  rippleStyle['-o-transform'] = scale;
106
107
  rippleStyle.transform = scale;
107
- rippleStyle.opacity = '1';
108
+ rippleStyle.opacity = '1';
108
109
 
109
110
  rippleStyle['-webkit-transition-duration'] = Effect.duration + 'ms';
110
- rippleStyle['-moz-transition-duration'] = Effect.duration + 'ms';
111
- rippleStyle['-o-transition-duration'] = Effect.duration + 'ms';
112
- rippleStyle['transition-duration'] = Effect.duration + 'ms';
111
+ rippleStyle['-moz-transition-duration'] = Effect.duration + 'ms';
112
+ rippleStyle['-o-transition-duration'] = Effect.duration + 'ms';
113
+ rippleStyle['transition-duration'] = Effect.duration + 'ms';
113
114
 
114
115
  rippleStyle['-webkit-transition-timing-function'] = 'cubic-bezier(0.250, 0.460, 0.450, 0.940)';
115
- rippleStyle['-moz-transition-timing-function'] = 'cubic-bezier(0.250, 0.460, 0.450, 0.940)';
116
- rippleStyle['-o-transition-timing-function'] = 'cubic-bezier(0.250, 0.460, 0.450, 0.940)';
117
- rippleStyle['transition-timing-function'] = 'cubic-bezier(0.250, 0.460, 0.450, 0.940)';
116
+ rippleStyle['-moz-transition-timing-function'] = 'cubic-bezier(0.250, 0.460, 0.450, 0.940)';
117
+ rippleStyle['-o-transition-timing-function'] = 'cubic-bezier(0.250, 0.460, 0.450, 0.940)';
118
+ rippleStyle['transition-timing-function'] = 'cubic-bezier(0.250, 0.460, 0.450, 0.940)';
118
119
 
119
120
  ripple.setAttribute('style', convertStyle(rippleStyle));
120
121
  },
121
122
 
122
- hide: function(e) {
123
+ hide: function (e) {
123
124
  TouchHandler.touchup(e);
124
125
 
125
126
  var el = this;
@@ -134,9 +135,9 @@
134
135
  return false;
135
136
  }
136
137
 
137
- var relativeX = ripple.getAttribute('data-x');
138
- var relativeY = ripple.getAttribute('data-y');
139
- var scale = ripple.getAttribute('data-scale');
138
+ var relativeX = ripple.getAttribute('data-x');
139
+ var relativeY = ripple.getAttribute('data-y');
140
+ var scale = ripple.getAttribute('data-scale');
140
141
 
141
142
  // Get delay beetween mousedown and mouse leave
142
143
  var diff = Date.now() - Number(ripple.getAttribute('data-hold'));
@@ -147,10 +148,10 @@
147
148
  }
148
149
 
149
150
  // Fade out ripple after delay
150
- setTimeout(function() {
151
+ setTimeout(function () {
151
152
  var style = {
152
- 'top': relativeY+'px',
153
- 'left': relativeX+'px',
153
+ 'top': relativeY + 'px',
154
+ 'left': relativeX + 'px',
154
155
  'opacity': '0',
155
156
 
156
157
  // Duration
@@ -162,15 +163,15 @@
162
163
  '-moz-transform': scale,
163
164
  '-ms-transform': scale,
164
165
  '-o-transform': scale,
165
- 'transform': scale,
166
+ 'transform': scale
166
167
  };
167
168
 
168
169
  ripple.setAttribute('style', convertStyle(style));
169
170
 
170
- setTimeout(function() {
171
+ setTimeout(function () {
171
172
  try {
172
173
  el.removeChild(ripple);
173
- } catch(e) {
174
+ } catch (e) {
174
175
  return false;
175
176
  }
176
177
  }, Effect.duration);
@@ -178,7 +179,7 @@
178
179
  },
179
180
 
180
181
  // Little hack to make <input> can perform waves effect
181
- wrapInput: function(elements) {
182
+ wrapInput: function (elements) {
182
183
  for (var a = 0; a < elements.length; a++) {
183
184
  var el = elements[a];
184
185
 
@@ -213,7 +214,6 @@
213
214
  }
214
215
  };
215
216
 
216
-
217
217
  /**
218
218
  * Disable mousedown event for 500ms during and after touch
219
219
  */
@@ -223,13 +223,13 @@
223
223
  * within the 500ms. Cannot mouseup between touchstart and
224
224
  * touchend, nor in the 500ms after touchend. */
225
225
  touches: 0,
226
- allowEvent: function(e) {
226
+ allowEvent: function (e) {
227
227
  var allow = true;
228
228
 
229
229
  if (e.type === 'touchstart') {
230
230
  TouchHandler.touches += 1; //push
231
231
  } else if (e.type === 'touchend' || e.type === 'touchcancel') {
232
- setTimeout(function() {
232
+ setTimeout(function () {
233
233
  if (TouchHandler.touches > 0) {
234
234
  TouchHandler.touches -= 1; //pop after 500ms
235
235
  }
@@ -240,12 +240,11 @@
240
240
 
241
241
  return allow;
242
242
  },
243
- touchup: function(e) {
243
+ touchup: function (e) {
244
244
  TouchHandler.allowEvent(e);
245
245
  }
246
246
  };
247
247
 
248
-
249
248
  /**
250
249
  * Delegated click handler for .waves-effect element.
251
250
  * returns null when .waves-effect element not in "click tree"
@@ -258,17 +257,13 @@
258
257
  var element = null;
259
258
  var target = e.target || e.srcElement;
260
259
 
261
- while (target.parentElement !== null) {
260
+ while (target.parentNode !== null) {
262
261
  if (!(target instanceof SVGElement) && target.className.indexOf('waves-effect') !== -1) {
263
262
  element = target;
264
263
  break;
265
- } else if (target.className.indexOf('waves-effect') !== -1) {
266
- element = target;
267
- break;
268
264
  }
269
- target = target.parentElement;
265
+ target = target.parentNode;
270
266
  }
271
-
272
267
  return element;
273
268
  }
274
269
 
@@ -288,10 +283,11 @@
288
283
 
289
284
  element.addEventListener('mouseup', Effect.hide, false);
290
285
  element.addEventListener('mouseleave', Effect.hide, false);
286
+ element.addEventListener('dragend', Effect.hide, false);
291
287
  }
292
288
  }
293
289
 
294
- Waves.displayEffect = function(options) {
290
+ Waves.displayEffect = function (options) {
295
291
  options = options || {};
296
292
 
297
293
  if ('duration' in options) {
@@ -314,12 +310,12 @@
314
310
  * Intended to be used with dynamically loaded forms/inputs, or
315
311
  * where the user doesn't want a delegated click handler.
316
312
  */
317
- Waves.attach = function(element) {
313
+ Waves.attach = function (element) {
318
314
  //FUTURE: automatically add waves classes and allow users
319
315
  // to specify them with an options param? Eg. light/classic/button
320
316
  if (element.tagName.toLowerCase() === 'input') {
321
317
  Effect.wrapInput([element]);
322
- element = element.parentElement;
318
+ element = element.parentNode;
323
319
  }
324
320
 
325
321
  if ('ontouchstart' in window) {
@@ -331,8 +327,7 @@
331
327
 
332
328
  window.Waves = Waves;
333
329
 
334
- document.addEventListener('DOMContentLoaded', function() {
330
+ document.addEventListener('DOMContentLoaded', function () {
335
331
  Waves.displayEffect();
336
332
  }, false);
337
-
338
333
  })(window);
@@ -217,7 +217,7 @@ button.btn-floating {
217
217
  bottom: 23px;
218
218
  padding-top: 15px;
219
219
  margin-bottom: 0;
220
- z-index: 998;
220
+ z-index: 997;
221
221
 
222
222
  ul {
223
223
  left: 0;
@@ -2,7 +2,6 @@
2
2
  &.carousel-slider {
3
3
  top: 0;
4
4
  left: 0;
5
- height: 0;
6
5
 
7
6
  .carousel-fixed-item {
8
7
  &.with-indicators {
@@ -19,7 +18,7 @@
19
18
  .carousel-item {
20
19
  width: 100%;
21
20
  height: 100%;
22
- min-height: 400px;
21
+ min-height: $carousel-height;
23
22
  position: absolute;
24
23
  top: 0;
25
24
  left: 0;
@@ -39,15 +38,15 @@
39
38
  overflow: hidden;
40
39
  position: relative;
41
40
  width: 100%;
42
- height: 400px;
41
+ height: $carousel-height;
43
42
  perspective: 500px;
44
43
  transform-style: preserve-3d;
45
44
  transform-origin: 0% 50%;
46
45
 
47
46
  .carousel-item {
48
47
  display: none;
49
- width: 200px;
50
- height: 200px;
48
+ width: $carousel-item-width;
49
+ height: $carousel-item-height;
51
50
  position: absolute;
52
51
  top: 0;
53
52
  left: 0;
@@ -73,6 +73,7 @@
73
73
  // Autocomplete
74
74
  .autocomplete-content {
75
75
  margin-top: 0;
76
+ margin-bottom: 0;
76
77
  }
77
78
  }
78
79
 
@@ -7,21 +7,18 @@
7
7
  }
8
8
 
9
9
  .collapsible-header {
10
- display: block;
10
+ display: flex;
11
11
  cursor: pointer;
12
12
  -webkit-tap-highlight-color: transparent;
13
- min-height: $collapsible-height;
14
- line-height: $collapsible-line-height;
15
- padding: 0 1rem;
13
+ line-height: 1.5;
14
+ padding: 1rem;
16
15
  background-color: $collapsible-header-color;
17
16
  border-bottom: 1px solid $collapsible-border-color;
18
17
 
19
18
  i {
20
19
  width: 2rem;
21
20
  font-size: 1.6rem;
22
- line-height: $collapsible-line-height;
23
- display: block;
24
- float: left;
21
+ display: inline-block;
25
22
  text-align: center;
26
23
  margin-right: 1rem;
27
24
  }
@@ -406,7 +406,7 @@ $colors: (
406
406
  @return map-get($curr_color, $type);
407
407
  }
408
408
  }
409
- @warn "Unknown `#{name}` in $colors.";
409
+ @warn "Unknown `#{$color}` - `#{$type}` in $colors.";
410
410
  @return null;
411
411
  }
412
412
 
@@ -22,7 +22,7 @@ ul {
22
22
  padding-left: 0;
23
23
  list-style-type: none;
24
24
 
25
- li {
25
+ & > li {
26
26
  list-style-type: none;
27
27
  }
28
28
  }
@@ -75,12 +75,10 @@ a {
75
75
 
76
76
  .hoverable {
77
77
  transition: box-shadow .25s;
78
- box-shadow: 0;
79
- }
80
78
 
81
- .hoverable:hover {
82
- transition: box-shadow .25s;
83
- box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
79
+ &:hover {
80
+ box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
81
+ }
84
82
  }
85
83
 
86
84
  // Dividers
@@ -247,8 +245,7 @@ video.responsive-video {
247
245
  bottom: 0;
248
246
  min-width: 100%;
249
247
  min-height: 100%;
250
- -webkit-transform: translate3d(0,0,0);
251
- transform: translate3d(0,0,0);
248
+ transform: translate3d(0,0,0);
252
249
  transform: translateX(-50%);
253
250
  }
254
251
  }
@@ -503,7 +500,9 @@ td, th{
503
500
  padding-left: 72px;
504
501
  position: relative;
505
502
 
506
- .circle {
503
+ // Don't style circles inside preloader classes.
504
+ &:not(.circle-clipper) > .circle,
505
+ :not(.circle-clipper) > .circle {
507
506
  position: absolute;
508
507
  width: 42px;
509
508
  height: 42px;
@@ -710,11 +709,6 @@ td, th{
710
709
 
711
710
  // No Text Select
712
711
  .no-select {
713
- -webkit-touch-callout: none;
714
- -webkit-user-select: none;
715
- -khtml-user-select: none;
716
- -moz-user-select: none;
717
- -ms-user-select: none;
718
712
  user-select: none;
719
713
  }
720
714
 
@@ -63,7 +63,6 @@ nav {
63
63
  display: inline-block;
64
64
  font-size: $navbar-brand-font-size;
65
65
  padding: 0;
66
- white-space: nowrap;
67
66
 
68
67
  &.center {
69
68
  left: 50%;
@@ -22,10 +22,7 @@
22
22
  display: flex;
23
23
 
24
24
  .tab {
25
- -webkit-box-flex: 1;
26
- -webkit-flex-grow: 1;
27
- -ms-flex-positive: 1;
28
- flex-grow: 1;
25
+ flex-grow: 1;
29
26
  }
30
27
  }
31
28
 
@@ -86,9 +83,6 @@
86
83
  display: flex;
87
84
 
88
85
  .tab {
89
- -webkit-box-flex: 1;
90
- -webkit-flex-grow: 1;
91
- -ms-flex-positive: 1;
92
86
  flex-grow: 1;
93
87
 
94
88
  a {
@@ -24,7 +24,6 @@
24
24
  border-radius: 2px;
25
25
  top: 35px;
26
26
  width: auto;
27
- clear: both;
28
27
  margin-top: 10px;
29
28
  position: relative;
30
29
  max-width:100%;
@@ -37,13 +36,15 @@
37
36
  font-size: 1.1rem;
38
37
  font-weight: 300;
39
38
  color: $toast-text-color;
40
-
41
39
  display: flex;
42
40
  align-items: center;
43
41
  justify-content: space-between;
42
+ cursor: default;
44
43
 
45
- .btn, .btn-flat {
46
- margin: 0;
44
+ .toast-action {
45
+ color: $toast-action-color;
46
+ font-weight: 500;
47
+ margin-right: -25px;
47
48
  margin-left: 3rem;
48
49
  }
49
50
 
@@ -52,14 +53,7 @@
52
53
  }
53
54
 
54
55
  @media #{$small-and-down} {
55
- width:100%;
56
+ width: 100%;
56
57
  border-radius: 0;
57
58
  }
58
- @media #{$medium-only} {
59
- float: left;
60
- }
61
- @media #{$large-and-up} {
62
- float: right;
63
- }
64
-
65
59
  }