dae-material 0.0.1

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 (97) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +9 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +3 -0
  5. data/CODE_OF_CONDUCT.md +13 -0
  6. data/Gemfile +4 -0
  7. data/README.md +39 -0
  8. data/Rakefile +1 -0
  9. data/app/assets/fonts/material-design-icons/LICENSE.txt +428 -0
  10. data/app/assets/fonts/material-design-icons/Material-Design-Icons.eot +0 -0
  11. data/app/assets/fonts/material-design-icons/Material-Design-Icons.svg +751 -0
  12. data/app/assets/fonts/material-design-icons/Material-Design-Icons.ttf +0 -0
  13. data/app/assets/fonts/material-design-icons/Material-Design-Icons.woff +0 -0
  14. data/app/assets/fonts/material-design-icons/Material-Design-Icons.woff2 +0 -0
  15. data/app/assets/fonts/roboto/Roboto-Bold.ttf +0 -0
  16. data/app/assets/fonts/roboto/Roboto-Bold.woff +0 -0
  17. data/app/assets/fonts/roboto/Roboto-Bold.woff2 +0 -0
  18. data/app/assets/fonts/roboto/Roboto-Light.ttf +0 -0
  19. data/app/assets/fonts/roboto/Roboto-Light.woff +0 -0
  20. data/app/assets/fonts/roboto/Roboto-Light.woff2 +0 -0
  21. data/app/assets/fonts/roboto/Roboto-Medium.ttf +0 -0
  22. data/app/assets/fonts/roboto/Roboto-Medium.woff +0 -0
  23. data/app/assets/fonts/roboto/Roboto-Medium.woff2 +0 -0
  24. data/app/assets/fonts/roboto/Roboto-Regular.ttf +0 -0
  25. data/app/assets/fonts/roboto/Roboto-Regular.woff +0 -0
  26. data/app/assets/fonts/roboto/Roboto-Regular.woff2 +0 -0
  27. data/app/assets/fonts/roboto/Roboto-Thin.ttf +0 -0
  28. data/app/assets/fonts/roboto/Roboto-Thin.woff +0 -0
  29. data/app/assets/fonts/roboto/Roboto-Thin.woff2 +0 -0
  30. data/app/assets/javascripts/materialize-sprockets.js +27 -0
  31. data/app/assets/javascripts/materialize.js +6023 -0
  32. data/app/assets/javascripts/materialize/animation.js +9 -0
  33. data/app/assets/javascripts/materialize/buttons.js +35 -0
  34. data/app/assets/javascripts/materialize/cards.js +27 -0
  35. data/app/assets/javascripts/materialize/character_counter.js +59 -0
  36. data/app/assets/javascripts/materialize/collapsible.js +139 -0
  37. data/app/assets/javascripts/materialize/date_picker/picker.date.js +1430 -0
  38. data/app/assets/javascripts/materialize/date_picker/picker.js +1123 -0
  39. data/app/assets/javascripts/materialize/dropdown.js +176 -0
  40. data/app/assets/javascripts/materialize/forms.js +397 -0
  41. data/app/assets/javascripts/materialize/global.js +31 -0
  42. data/app/assets/javascripts/materialize/hammer.min.js +1 -0
  43. data/app/assets/javascripts/materialize/init.js +137 -0
  44. data/app/assets/javascripts/materialize/jquery.easing.1.3.js +205 -0
  45. data/app/assets/javascripts/materialize/jquery.hammer.js +33 -0
  46. data/app/assets/javascripts/materialize/jquery.timeago.min.js +1 -0
  47. data/app/assets/javascripts/materialize/leanModal.js +139 -0
  48. data/app/assets/javascripts/materialize/materialbox.js +249 -0
  49. data/app/assets/javascripts/materialize/parallax.js +58 -0
  50. data/app/assets/javascripts/materialize/prism.js +8 -0
  51. data/app/assets/javascripts/materialize/pushpin.js +62 -0
  52. data/app/assets/javascripts/materialize/scrollFire.js +69 -0
  53. data/app/assets/javascripts/materialize/scrollspy.js +284 -0
  54. data/app/assets/javascripts/materialize/sideNav.js +335 -0
  55. data/app/assets/javascripts/materialize/slider.js +263 -0
  56. data/app/assets/javascripts/materialize/tabs.js +129 -0
  57. data/app/assets/javascripts/materialize/toasts.js +121 -0
  58. data/app/assets/javascripts/materialize/tooltip.js +166 -0
  59. data/app/assets/javascripts/materialize/transitions.js +145 -0
  60. data/app/assets/javascripts/materialize/velocity.min.js +4 -0
  61. data/app/assets/javascripts/materialize/waves.js +338 -0
  62. data/app/assets/stylesheets/materialize.scss +38 -0
  63. data/app/assets/stylesheets/materialize/components/_buttons.scss +151 -0
  64. data/app/assets/stylesheets/materialize/components/_cards.scss +150 -0
  65. data/app/assets/stylesheets/materialize/components/_collapsible.scss +88 -0
  66. data/app/assets/stylesheets/materialize/components/_color.scss +412 -0
  67. data/app/assets/stylesheets/materialize/components/_dropdown.scss +38 -0
  68. data/app/assets/stylesheets/materialize/components/_form.scss +850 -0
  69. data/app/assets/stylesheets/materialize/components/_global.scss +682 -0
  70. data/app/assets/stylesheets/materialize/components/_grid.scss +118 -0
  71. data/app/assets/stylesheets/materialize/components/_icons-material-design.scss +783 -0
  72. data/app/assets/stylesheets/materialize/components/_materialbox.scss +41 -0
  73. data/app/assets/stylesheets/materialize/components/_mixins.scss +5 -0
  74. data/app/assets/stylesheets/materialize/components/_modal.scss +89 -0
  75. data/app/assets/stylesheets/materialize/components/_navbar.scss +143 -0
  76. data/app/assets/stylesheets/materialize/components/_normalize.scss +427 -0
  77. data/app/assets/stylesheets/materialize/components/_prefixer.scss +376 -0
  78. data/app/assets/stylesheets/materialize/components/_preloader.scss +332 -0
  79. data/app/assets/stylesheets/materialize/components/_roboto.scss +38 -0
  80. data/app/assets/stylesheets/materialize/components/_sideNav.scss +111 -0
  81. data/app/assets/stylesheets/materialize/components/_slider.scss +92 -0
  82. data/app/assets/stylesheets/materialize/components/_table_of_contents.scss +33 -0
  83. data/app/assets/stylesheets/materialize/components/_tabs.scss +42 -0
  84. data/app/assets/stylesheets/materialize/components/_toast.scss +63 -0
  85. data/app/assets/stylesheets/materialize/components/_tooltip.scss +34 -0
  86. data/app/assets/stylesheets/materialize/components/_typography.scss +56 -0
  87. data/app/assets/stylesheets/materialize/components/_variables.scss +143 -0
  88. data/app/assets/stylesheets/materialize/components/_waves.scss +167 -0
  89. data/app/assets/stylesheets/materialize/components/date_picker/_default.date.scss +435 -0
  90. data/app/assets/stylesheets/materialize/components/date_picker/_default.scss +201 -0
  91. data/app/assets/stylesheets/materialize/components/date_picker/_default.time.scss +125 -0
  92. data/bin/console +14 -0
  93. data/bin/setup +7 -0
  94. data/dae-material.gemspec +23 -0
  95. data/lib/dae/material.rb +7 -0
  96. data/lib/dae/material/version.rb +8 -0
  97. metadata +166 -0
@@ -0,0 +1,38 @@
1
+ .dropdown-button {
2
+ position: relative;
3
+ }
4
+ .dropdown-content {
5
+ @extend .z-depth-1;
6
+ background-color: #FFFFFF;
7
+ margin: 0;
8
+ display: none;
9
+ min-width: 100px;
10
+ max-height: 650px;
11
+ overflow-y: auto;
12
+ opacity: 0;
13
+ position: absolute;
14
+ white-space: nowrap; // Force one line
15
+ z-index: 1;
16
+ will-change: width, height;
17
+
18
+ li {
19
+ clear: both;
20
+ color: $off-black;
21
+ cursor: pointer;
22
+ line-height: 1.5rem;
23
+ width: 100%;
24
+ text-align: left;
25
+ text-transform: none;
26
+
27
+ &:hover, &.active {
28
+ background-color: #eee;
29
+ }
30
+
31
+ & > a, & > span {
32
+ font-size: 1.2rem;
33
+ color: $dropdown-color;
34
+ display: block;
35
+ padding: 1rem 1rem;
36
+ }
37
+ }
38
+ }
@@ -0,0 +1,850 @@
1
+ /* Remove Focus Boxes */
2
+ select:focus {
3
+ outline: 1px solid lighten($secondary-color, 47%);
4
+ }
5
+ button:focus {
6
+ outline: none;
7
+ background-color: lighten($button-color, 4%);
8
+ }
9
+
10
+ label {
11
+ font-size: $label-font-size;
12
+ color: $input-border-color;
13
+ }
14
+
15
+ /***************************
16
+ Text Inputs + Textarea
17
+ ****************************/
18
+
19
+ // Style Placeholders
20
+ ::-webkit-input-placeholder {
21
+ color: lighten($input-border-color, 20%);
22
+ }
23
+
24
+ :-moz-placeholder { /* Firefox 18- */
25
+ color: lighten($input-border-color, 20%);
26
+ }
27
+
28
+ ::-moz-placeholder { /* Firefox 19+ */
29
+ color: lighten($input-border-color, 20%);
30
+ }
31
+
32
+ :-ms-input-placeholder {
33
+ color: lighten($input-border-color, 20%);
34
+ }
35
+
36
+ // Text inputs
37
+ input[type=text],
38
+ input[type=password],
39
+ input[type=email],
40
+ input[type=url],
41
+ input[type=time],
42
+ input[type=date],
43
+ input[type=datetime-local],
44
+ input[type=tel],
45
+ input[type=number],
46
+ input[type=search],
47
+ textarea.materialize-textarea {
48
+
49
+ // General Styles
50
+ background-color: transparent;
51
+ border: none;
52
+ border-bottom: 1px solid $input-border-color;
53
+ border-radius: 0;
54
+ outline: none;
55
+ height: 3rem;
56
+ width: 100%;
57
+
58
+ font-size: 1rem;
59
+ margin: 0 0 15px 0;
60
+ padding: 0;
61
+ box-shadow: none;
62
+ @include box-sizing(content-box);
63
+ transition: all .3s;
64
+
65
+
66
+ // Disabled input style
67
+ &:disabled, &[readonly="readonly"] {
68
+ color: $input-disabled-color;
69
+ border-bottom: 1px dotted $input-disabled-color;
70
+ }
71
+ // Disabled label style
72
+ &:disabled+label, &[readonly="readonly"]+label {
73
+ color: $input-disabled-color;
74
+ }
75
+ // Focused input style
76
+ &:focus:not([readonly]) {
77
+ border-bottom: 1px solid $input-focus-color;
78
+ box-shadow: 0 1px 0 0 $input-focus-color;
79
+ }
80
+ // Focused label style
81
+ &:focus:not([readonly])+label {
82
+ color: $input-focus-color;
83
+ }
84
+ // Valid Input Style
85
+ &.valid,
86
+ &:focus.valid {
87
+ border-bottom: 1px solid $input-success-color;
88
+ box-shadow: 0 1px 0 0 $input-success-color;
89
+ }
90
+ // Invalid Input Style
91
+ &.invalid,
92
+ &:focus.invalid {
93
+ border-bottom: 1px solid $input-error-color;
94
+ box-shadow: 0 1px 0 0 $input-error-color;
95
+ }
96
+ }
97
+
98
+ // Styling for input field wrapper
99
+ .input-field {
100
+ position: relative;
101
+ margin-top: 1rem;
102
+
103
+ label {
104
+ color: $input-border-color;
105
+ position: absolute;
106
+ top: 0.8rem;
107
+ left: $gutter-width / 2;
108
+ font-size: 1rem;
109
+ cursor: text;
110
+ @include transition(.2s ease-out);
111
+ }
112
+ label.active {
113
+ font-size: $label-font-size;
114
+ @include transform(translateY(-140%));
115
+ }
116
+
117
+ // Prefix Icons
118
+ .prefix {
119
+ position: absolute;
120
+ width: 3rem;
121
+ font-size: 2rem;
122
+ @include transition(color .2s);
123
+
124
+ &.active { color: $input-focus-color; }
125
+ }
126
+ .prefix ~ input,
127
+ .prefix ~ textarea {
128
+ margin-left: 3rem;
129
+ width: 92%;
130
+ width: calc(100% - 3rem);
131
+ }
132
+ .prefix ~ textarea { padding-top: .8rem; }
133
+ .prefix ~ label { margin-left: 3rem; }
134
+
135
+ @media #{$medium-and-down} {
136
+ .prefix ~ input {
137
+ width: 86%;
138
+ width: calc(100% - 3rem);
139
+ }
140
+ }
141
+ @media #{$small-and-down} {
142
+ .prefix ~ input {
143
+ width: 80%;
144
+ width: calc(100% - 3rem);
145
+ }
146
+ }
147
+ }
148
+
149
+
150
+ // Search Field
151
+
152
+
153
+ .input-field input[type=search] {
154
+ display: block;
155
+ line-height: inherit;
156
+ padding-left: 4rem;
157
+ width: calc(100% - 4rem);
158
+
159
+ &:focus {
160
+ background-color: #FFF;
161
+ border: 0;
162
+ box-shadow: none;
163
+ color: #444;
164
+
165
+ & + label i,
166
+ & ~ .mdi-navigation-close {
167
+ color: #444;
168
+ }
169
+ }
170
+
171
+ & + label {
172
+ left: 1rem;
173
+ }
174
+
175
+ & ~ .mdi-navigation-close {
176
+ position: absolute;
177
+ top: 0;
178
+ right: 1rem;
179
+ color: transparent;
180
+ cursor: pointer;
181
+ font-size: 2rem;
182
+ transition: .3s color;
183
+ }
184
+ }
185
+
186
+
187
+ // Default textarea
188
+ textarea {
189
+ width: 100%;
190
+ height: 3rem;
191
+ background-color: transparent;
192
+
193
+ &.materialize-textarea {
194
+ overflow-y: hidden; /* prevents scroll bar flash */
195
+ padding: 1.6rem 0; /* prevents text jump on Enter keypress */
196
+ resize: none;
197
+ min-height: 3rem;
198
+ }
199
+ }
200
+
201
+
202
+ // For textarea autoresize
203
+ .hiddendiv {
204
+ display: none;
205
+ white-space: pre-wrap;
206
+ word-wrap: break-word;
207
+ overflow-wrap: break-word; /* future version of deprecated 'word-wrap' */
208
+ padding-top: 1.2rem; /* prevents text jump on Enter keypress */
209
+ }
210
+
211
+
212
+ /***************
213
+ Radio Buttons
214
+ ***************/
215
+
216
+ /* Remove default Radio Buttons */
217
+ [type="radio"]:not(:checked),
218
+ [type="radio"]:checked {
219
+ position: absolute;
220
+ left: -9999px;
221
+ visibility: hidden;
222
+ }
223
+
224
+ [type="radio"]:not(:checked) + label,
225
+ [type="radio"]:checked + label {
226
+ position: relative;
227
+ padding-left: 35px;
228
+ cursor: pointer;
229
+ display: inline-block;
230
+ height: 25px;
231
+ line-height: 25px;
232
+ font-size: 1rem;
233
+ @include transition(.28s ease);
234
+
235
+ -webkit-user-select: none; /* webkit (safari, chrome) browsers */
236
+ -moz-user-select: none; /* mozilla browsers */
237
+ -khtml-user-select: none; /* webkit (konqueror) browsers */
238
+ -ms-user-select: none; /* IE10+ */
239
+ }
240
+
241
+ [type="radio"] + label:before,
242
+ [type="radio"] + label:after {
243
+ content: '';
244
+ position: absolute;
245
+ left: 0;
246
+ top: 0;
247
+ margin: 4px;
248
+ width: 16px;
249
+ height: 16px;
250
+ z-index: 0;
251
+ @include transition(.28s ease);
252
+ }
253
+
254
+
255
+ /* Unchecked styles */
256
+ [type="radio"]:not(:checked) + label:before {
257
+ border-radius: 50%;
258
+ border: 2px solid $radio-empty-color;
259
+ }
260
+ [type="radio"]:not(:checked) + label:after {
261
+ border-radius: 50%;
262
+ border: 2px solid $radio-empty-color;
263
+ z-index: -1;
264
+
265
+ @include transform(scale(0));
266
+ }
267
+
268
+ /* Checked styles */
269
+ [type="radio"]:checked + label:before {
270
+ border-radius: 50%;
271
+ border: 2px solid transparent;
272
+ }
273
+ [type="radio"]:checked + label:after {
274
+ border-radius: 50%;
275
+ border: 2px solid $radio-fill-color;
276
+ background-color: $radio-fill-color;
277
+ z-index: 0;
278
+ @include transform(scale(1.02));
279
+ }
280
+
281
+ /* Radio With gap */
282
+ [type="radio"].with-gap:checked + label:before {
283
+ border-radius: 50%;
284
+ border: 2px solid $radio-fill-color;
285
+ }
286
+ [type="radio"].with-gap:checked + label:after {
287
+ border-radius: 50%;
288
+ border: 2px solid $radio-fill-color;
289
+ background-color: $radio-fill-color;
290
+ z-index: 0;
291
+ @include transform(scale(.5));
292
+ }
293
+
294
+ /* Disabled style */
295
+ [type="radio"]:disabled:not(:checked) + label:before,
296
+ [type="radio"]:disabled:checked + label:before {
297
+ background-color: transparent;
298
+ border-color: $input-disabled-color;
299
+ }
300
+ [type="radio"]:disabled + label {
301
+ color: $input-disabled-color;
302
+ }
303
+ [type="radio"]:disabled:not(:checked) + label:hover:before {
304
+ border-color: $input-disabled-color;
305
+ }
306
+
307
+
308
+ /***************
309
+ Checkboxes
310
+ ***************/
311
+
312
+ /* CUSTOM CSS CHECKBOXES */
313
+ form p {
314
+ margin-bottom: 10px;
315
+ text-align: left;
316
+ }
317
+ form p:last-child {
318
+ margin-bottom: 0;
319
+ }
320
+
321
+ /* Remove default checkbox */
322
+ [type="checkbox"]:not(:checked),
323
+ [type="checkbox"]:checked {
324
+ position: absolute;
325
+ left: -9999px;
326
+ }
327
+
328
+
329
+ // Checkbox Styles
330
+ [type="checkbox"] {
331
+
332
+ // Text Label Style
333
+ + label {
334
+ position: relative;
335
+ padding-left: 35px;
336
+ cursor: pointer;
337
+ display: inline-block;
338
+ height: 25px;
339
+ line-height: 25px;
340
+ font-size: 1rem;
341
+
342
+ -webkit-user-select: none; /* webkit (safari, chrome) browsers */
343
+ -moz-user-select: none; /* mozilla browsers */
344
+ -khtml-user-select: none; /* webkit (konqueror) browsers */
345
+ -ms-user-select: none; /* IE10+ */
346
+ }
347
+
348
+ /* checkbox aspect */
349
+ + label:before {
350
+ content: '';
351
+ position: absolute;
352
+ top: 0;
353
+ left: 0;
354
+ width: 18px;
355
+ height: 18px;
356
+ z-index: 0;
357
+ border: 2px solid $radio-empty-color;
358
+ border-radius: 1px;
359
+ margin-top: 2px;
360
+ @include transition(.2s);
361
+ }
362
+
363
+ &:not(:checked):disabled + label:before {
364
+ border: none;
365
+ background-color: $input-disabled-color;
366
+ }
367
+
368
+ }
369
+
370
+ [type="checkbox"]:checked {
371
+ + label:before {
372
+ top: -4px;
373
+ left: -3px;
374
+ width: 12px; height: 22px;
375
+ border-top: 2px solid transparent;
376
+ border-left: 2px solid transparent;
377
+ border-right: 2px solid $radio-fill-color;
378
+ border-bottom: 2px solid $radio-fill-color;
379
+ @include transform(rotate(40deg));
380
+ -webkit-backface-visibility: hidden;
381
+ @include transform-origin(100% 100%);
382
+ }
383
+
384
+ &:disabled + label:before {
385
+ border-right: 2px solid $input-disabled-color;
386
+ border-bottom: 2px solid $input-disabled-color;
387
+ }
388
+
389
+ }
390
+
391
+ /* Indeterminate checkbox */
392
+ [type="checkbox"]:indeterminate {
393
+ +label:before {
394
+ left: -10px;
395
+ top: -11px;
396
+ width: 10px; height: 22px;
397
+ border-top: none;
398
+ border-left: none;
399
+ border-right: 2px solid $radio-fill-color;
400
+ border-bottom: none;
401
+ @include transform(rotate(90deg));
402
+ -webkit-backface-visibility: hidden;
403
+ @include transform-origin(100% 100%);
404
+ }
405
+
406
+ // Disabled indeterminate
407
+ &:disabled + label:before {
408
+ border-right: 2px solid $input-disabled-color;
409
+ background-color: transparent;
410
+ }
411
+ }
412
+
413
+
414
+ // Filled in Style
415
+ [type="checkbox"].filled-in {
416
+ // General
417
+ + label:after {
418
+ border-radius: 2px;
419
+ }
420
+ + label:before,
421
+ + label:after {
422
+ content: '';
423
+ left: 0;
424
+ position: absolute;
425
+ /* .1s delay is for check animation */
426
+ transition: border .25s, background-color .25s, width .20s .1s, height .20s .1s, top .20s .1s, left .20s .1s;
427
+ z-index: 1;
428
+ }
429
+ // Unchecked style
430
+ &:not(:checked) + label:before {
431
+ width: 0;
432
+ height: 0;
433
+ border: 3px solid transparent;
434
+ left: 6px;
435
+ top: 10px;
436
+
437
+ -webkit-transform: rotateZ(37deg);
438
+ transform: rotateZ(37deg);
439
+ -webkit-transform-origin: 20% 40%;
440
+ transform-origin: 100% 100%;
441
+ }
442
+ &:not(:checked) + label:after {
443
+ height: 20px;
444
+ width: 20px;
445
+ background-color: transparent;
446
+ border: 2px solid $radio-empty-color;
447
+ top: 0px;
448
+ z-index: 0;
449
+ }
450
+ // Checked style
451
+ &:checked {
452
+ + label:before {
453
+ top: 0;
454
+ left: 1px;
455
+ width: 8px;
456
+ height: 13px;
457
+ border-top: 2px solid transparent;
458
+ border-left: 2px solid transparent;
459
+ border-right: 2px solid #fff;
460
+ border-bottom: 2px solid #fff;
461
+ -webkit-transform: rotateZ(37deg);
462
+ transform: rotateZ(37deg);
463
+
464
+ -webkit-transform-origin: 100% 100%;
465
+ transform-origin: 100% 100%;
466
+ }
467
+ + label:after {
468
+ top: 0px;
469
+ width: 20px;
470
+ height: 20px;
471
+ border: 2px solid $secondary-color;
472
+ background-color: $secondary-color;
473
+ z-index: 0;
474
+ }
475
+ }
476
+ // Disabled style
477
+ &:disabled:not(:checked) + label:before {
478
+
479
+ background-color: transparent;
480
+ border: 2px solid transparent;
481
+
482
+ }
483
+ &:disabled:not(:checked) + label:after {
484
+ border-color: transparent;
485
+ background-color: $input-disabled-solid-color;
486
+ }
487
+ &:disabled:checked + label:before {
488
+ background-color: transparent;
489
+
490
+ }
491
+ &:disabled:checked + label:after {
492
+ background-color: $input-disabled-solid-color;
493
+ border-color: $input-disabled-solid-color;
494
+ }
495
+
496
+ }
497
+
498
+ /***************
499
+ Switch
500
+ ***************/
501
+ .switch,
502
+ .switch * {
503
+ -webkit-user-select: none;
504
+ -moz-user-select: none;
505
+ -khtml-user-select: none;
506
+ -ms-user-select: none;
507
+ }
508
+ .switch label {
509
+ cursor: pointer;
510
+ }
511
+ .switch label input[type=checkbox]{
512
+ opacity: 0;
513
+ width: 0;
514
+ height: 0;
515
+ }
516
+ .switch label input[type=checkbox]:checked + .lever {
517
+ background-color: $switch-checked-lever-bg;
518
+ }
519
+ .switch label input[type=checkbox]:checked + .lever:after {
520
+ background-color: $switch-bg-color;
521
+ }
522
+ .switch label .lever {
523
+ content: "";
524
+ display: inline-block;
525
+ position: relative;
526
+ width: 40px;
527
+ height: 15px;
528
+ background-color: $switch-unchecked-lever-bg;
529
+ border-radius: 15px;
530
+ margin-right: 10px;
531
+ transition: background 0.3s ease;
532
+ vertical-align: middle;
533
+ margin: 0 16px;
534
+ }
535
+ .switch label .lever:after {
536
+ content: "";
537
+ position: absolute;
538
+ display: inline-block;
539
+ width: 21px;
540
+ height: 21px;
541
+ background-color: $switch-unchecked-bg;
542
+ border-radius: 21px;
543
+ box-shadow: 0 1px 3px 1px rgba(0,0,0,0.4);
544
+ left: -5px;
545
+ top: -3px;
546
+ transition: left 0.3s ease, background 0.3s ease, box-shadow 0.1s ease;
547
+ }
548
+ // Switch active style
549
+ input[type=checkbox]:checked:not(:disabled) ~ .lever:active:after {
550
+ box-shadow: 0 1px 3px 1px rgba(0,0,0,0.4), 0 0 0 15px transparentize($switch-bg-color, .9);
551
+ }
552
+ input[type=checkbox]:not(:disabled) ~ .lever:active:after {
553
+ box-shadow: 0 1px 3px 1px rgba(0,0,0,0.4), 0 0 0 15px rgba(0, 0, 0, 0.08);
554
+ }
555
+ .switch label input[type=checkbox]:checked + .lever:after {
556
+ left: 24px;
557
+ }
558
+
559
+ // Disabled Styles
560
+
561
+ .switch input[type=checkbox][disabled] + .lever{
562
+ cursor: default;
563
+ }
564
+ .switch label input[type=checkbox][disabled] + .lever:after,
565
+ .switch label input[type=checkbox][disabled]:checked + .lever:after {
566
+ background-color: $input-disabled-solid-color;
567
+ }
568
+
569
+
570
+
571
+
572
+ /***************
573
+ Select Field
574
+ ***************/
575
+
576
+ .select-label {
577
+ position: absolute;
578
+ }
579
+
580
+ .select-wrapper {
581
+ position: relative;
582
+
583
+ input.select-dropdown {
584
+ position: relative;
585
+ cursor: pointer;
586
+ // color: #444;
587
+ background-color: transparent;
588
+ border: none;
589
+ border-bottom: 1px solid $input-border-color;
590
+ outline: none;
591
+ height: 3rem;
592
+ line-height: 3rem;
593
+ width: 100%;
594
+ font-size: 1rem;
595
+ margin: 0 0 15px 0;
596
+ padding: 0;
597
+ display: block;
598
+ }
599
+ .mdi-navigation-arrow-drop-down {
600
+ color: initial;
601
+ position: absolute;
602
+ right: 0;
603
+ top: 0;
604
+ font-size: 23px;
605
+ &.disabled {
606
+ color: $input-disabled-color;
607
+ }
608
+ }
609
+ & + label {
610
+ position: absolute;
611
+ top: -14px;
612
+ font-size: $label-font-size;
613
+ }
614
+ }
615
+
616
+ select { display: none; }
617
+ select.browser-default { display: block; }
618
+
619
+
620
+ // Disabled styles
621
+ select:disabled {
622
+ color: rgba(0,0,0,.3);
623
+ }
624
+ .select-wrapper input.select-dropdown:disabled {
625
+ color: rgba(0,0,0,.3);
626
+ cursor: default;
627
+ -webkit-user-select: none; /* webkit (safari, chrome) browsers */
628
+ -moz-user-select: none; /* mozilla browsers */
629
+ -ms-user-select: none; /* IE10+ */
630
+ border-bottom: 1px solid rgba(0,0,0,.3);
631
+ }
632
+ .select-wrapper i {
633
+ color: rgba(0,0,0,.3);
634
+ }
635
+ .select-dropdown li.disabled {
636
+ color: rgba(0,0,0,.3);
637
+ background-color: transparent;
638
+ }
639
+
640
+
641
+ /*********************
642
+ File Input
643
+ **********************/
644
+ .file-field {
645
+ position: relative;
646
+
647
+ input.file-path {
648
+ margin-left: 100px;
649
+ width: calc(100% - 100px);
650
+ }
651
+
652
+ .btn {
653
+ position: absolute;
654
+ top: 0;
655
+ left: 0;
656
+ height: 3rem;
657
+ line-height: 3rem;
658
+ }
659
+
660
+ span {
661
+ cursor: pointer;
662
+ }
663
+
664
+ input[type=file] {
665
+ position: absolute;
666
+ top: 0;
667
+ right: 0;
668
+ left: 0;
669
+ bottom: 0;
670
+ width: 100%;
671
+ margin: 0;
672
+ padding: 0;
673
+ font-size: 20px;
674
+ cursor: pointer;
675
+ opacity: 0;
676
+ filter: alpha(opacity=0);
677
+ }
678
+ }
679
+
680
+
681
+
682
+ /***************
683
+ Range
684
+ ***************/
685
+
686
+ .range-field {
687
+ position: relative;
688
+ }
689
+
690
+ input[type=range], input[type=range] + .thumb {
691
+ @extend .no-select;
692
+ cursor: pointer;
693
+ }
694
+
695
+ input[type=range] {
696
+ position: relative;
697
+ background-color: transparent;
698
+ border: none;
699
+ outline: none;
700
+ width: 100%;
701
+ margin: 15px 0px;
702
+ padding: 0;
703
+ }
704
+ input[type=range] + .thumb {
705
+ position: absolute;
706
+ border: none;
707
+ height: 0;
708
+ width: 0;
709
+ border-radius: 50%;
710
+ background-color: $radio-fill-color;
711
+ top: 10px;
712
+ margin-left: -6px;
713
+
714
+ @include transform-origin(50% 50%);
715
+ @include transform(rotate(-45deg));
716
+
717
+ .value {
718
+ display: block;
719
+ width: 30px;
720
+ text-align: center;
721
+ color: $radio-fill-color;
722
+ font-size: 0;
723
+ @include transform(rotate(45deg));
724
+ }
725
+
726
+ &.active {
727
+ border-radius: 50% 50% 50% 0;
728
+
729
+ .value {
730
+ color: #fff;
731
+ margin-left: -1px;
732
+ margin-top: 8px;
733
+ font-size: 10px;
734
+ }
735
+ }
736
+ }
737
+
738
+
739
+ input[type=range]:focus {
740
+ outline: none;
741
+ }
742
+
743
+
744
+
745
+ // WebKit
746
+ input[type=range]{
747
+ -webkit-appearance: none;
748
+ }
749
+
750
+ input[type=range]::-webkit-slider-runnable-track {
751
+ height: 3px;
752
+ background: #c2c0c2;
753
+ border: none;
754
+ }
755
+
756
+ input[type=range]::-webkit-slider-thumb {
757
+ -webkit-appearance: none;
758
+ border: none;
759
+ height: 14px;
760
+ width: 14px;
761
+ border-radius: 50%;
762
+ background-color: $radio-fill-color;
763
+ transform-origin: 50% 50%;
764
+ margin: -5px 0 0 0;
765
+ @include transition(.3s);
766
+ }
767
+
768
+ input[type=range]:focus::-webkit-slider-runnable-track {
769
+ background: #ccc;
770
+ }
771
+
772
+ // FireFox
773
+ input[type=range]{
774
+ /* fix for FF unable to apply focus style bug */
775
+ border: 1px solid white;
776
+
777
+ /*required for proper track sizing in FF*/
778
+ }
779
+
780
+ input[type=range]::-moz-range-track {
781
+ height: 3px;
782
+ background: #ddd;
783
+ border: none;
784
+ }
785
+
786
+ input[type=range]::-moz-range-thumb {
787
+ border: none;
788
+ height: 14px;
789
+ width: 14px;
790
+ border-radius: 50%;
791
+ background: $radio-fill-color;
792
+ margin-top: -5px;
793
+ }
794
+
795
+ /*hide the outline behind the border*/
796
+ input[type=range]:-moz-focusring{
797
+ outline: 1px solid white;
798
+ outline-offset: -1px;
799
+ }
800
+
801
+ input[type=range]:focus::-moz-range-track {
802
+ background: #ccc;
803
+ }
804
+
805
+ // IE 10+
806
+ input[type=range]::-ms-track {
807
+ height: 3px;
808
+
809
+ /*remove bg colour from the track, we'll use ms-fill-lower and ms-fill-upper instead */
810
+ background: transparent;
811
+
812
+ /*leave room for the larger thumb to overflow with a transparent border */
813
+ border-color: transparent;
814
+ border-width: 6px 0;
815
+
816
+ /*remove default tick marks*/
817
+ color: transparent;
818
+ }
819
+ input[type=range]::-ms-fill-lower {
820
+ background: #777;
821
+ }
822
+ input[type=range]::-ms-fill-upper {
823
+ background: #ddd;
824
+ }
825
+ input[type=range]::-ms-thumb {
826
+ border: none;
827
+ height: 14px;
828
+ width: 14px;
829
+ border-radius: 50%;
830
+ background: $radio-fill-color;
831
+ }
832
+ input[type=range]:focus::-ms-fill-lower {
833
+ background: #888;
834
+ }
835
+ input[type=range]:focus::-ms-fill-upper {
836
+ background: #ccc;
837
+ }
838
+
839
+ /***************************
840
+ Text Inputs + Textarea
841
+ ****************************/
842
+
843
+ select {
844
+ background-color: rgba(255, 255, 255, 0.90);
845
+ width: 100%;
846
+ padding: 5px;
847
+ border: 1px solid #f2f2f2;
848
+ border-radius: 2px;
849
+ height: 3rem;
850
+ }