react-ui-basics 0.0.195 → 0.0.196

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/bundle.css CHANGED
@@ -1,196 +1,3 @@
1
- .Button {
2
- position: relative;
3
- min-width: 64px;
4
- min-height: 36px;
5
- height: 24px;
6
- margin: 0px;
7
- padding: 0px 16px;
8
- border: none;
9
- outline: none;
10
- font-size: 14px;
11
- font-weight: 500;
12
- letter-spacing: 1.25px;
13
- background: #dfdfdf;
14
- text-transform: uppercase;
15
- font-family: Roboto, sans-serif;
16
- -webkit-tap-highlight-color: transparent;
17
- display: inline-flex;
18
- justify-content: center;
19
- align-items: center;
20
- cursor: pointer;
21
- overflow: hidden;
22
- user-select: none;
23
- border-radius: 3px;
24
- transition: all 0.2s ease;
25
- }
26
-
27
- .Button.flat {
28
- background-color: transparent;
29
- }
30
-
31
- .Button.flat:hover {
32
- background-color: rgba(0, 0, 0, 0.05);
33
- }
34
-
35
- .Button.green {
36
- background-color: #43a047;
37
- color: white;
38
- }
39
-
40
- .Button.green:hover {
41
- background-color: #3b8e3f;
42
- }
43
-
44
- .Button.blue {
45
- background-color: #039be5;
46
- color: white;
47
- }
48
-
49
- .Button.blue:hover {
50
- background-color: #038acc;
51
- }
52
-
53
- .Button.red {
54
- background-color: #e53935;
55
- color: white;
56
- }
57
-
58
- .Button.red:hover {
59
- background-color: #e2231e;
60
- }
61
-
62
- .Button.black {
63
- background-color: #1e252d;
64
- color: white;
65
- }
66
-
67
- .Button.black:hover {
68
- background-color: #14181e;
69
- }
70
-
71
- .Button.gray {
72
- background: #D9D9D9;
73
- color: #999999;
74
- }
75
-
76
- .Button.gray:hover {
77
- background-color: #cccccc;
78
- }
79
-
80
- .Button.small {
81
- padding: 0px 8px;
82
- min-height: 16px;
83
- min-width: 16px;
84
- }
85
-
86
- .Button > .material-icons {
87
- margin-right: 10px;
88
- }
89
-
90
- .Button.round {
91
- padding: 0px;
92
- min-width: 36px;
93
- border-radius: 50%;
94
- }
95
-
96
- .Button.round > .material-icons {
97
- margin: 0px;
98
- }
99
-
100
- .Button .ripple {
101
- position: absolute;
102
- background: rgba(0, 0, 0, 0.1);
103
- border-radius: 100%;
104
- transform: scale(0);
105
- pointer-events: none;
106
- transition: opacity 0.2s ease-out;
107
- }
108
-
109
- .Button .ripple.show {
110
- animation: ripple 0.35s ease-out;
111
- }
112
-
113
- .Button:active .ripple.showed {
114
- opacity: 1;
115
- }
116
-
117
- .Button:focus .ripple.focused {
118
- opacity: 1;
119
- transition: opacity 0.2s ease-out, transform 0.2s ease-out;
120
- transform: scale(1);
121
- animation: resize 1.25s ease-out infinite;
122
- animation-delay: 0.2s;
123
- animation-direction: alternate;
124
- }
125
-
126
- .Button .ripple.showed {
127
- transform: scale(2);
128
- opacity: 0;
129
- }
130
-
131
- @keyframes ripple {
132
- to {
133
- transform: scale(2);
134
- }
135
- }
136
- @keyframes resize {
137
- to {
138
- transform: scale(0.9);
139
- }
140
- }
141
- .Button.raised {
142
- transition: color 0.2s ease-out, background-color 0.2s ease-out, box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
143
- }
144
-
145
- .Button.raised:hover {
146
- box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.25);
147
- }
148
-
149
- .Button.raised:active {
150
- box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.35);
151
- }
152
-
153
- .Button.disabled {
154
- box-shadow: none;
155
- background: #D9D9D9;
156
- color: #999999;
157
- }
158
-
159
- .Button.disabled:hover {
160
- background-color: #cccccc;
161
- }
162
-
163
- .Button::-moz-focus-inner {
164
- border: 0;
165
- }
166
-
167
- .DropFileInput {
168
- flex-grow: 1;
169
- }
170
-
171
- .DropFileInput .Dropzone {
172
- border: 1px dashed #808080;
173
- padding: 12px;
174
- display: flex;
175
- flex-flow: row nowrap;
176
- justify-content: center;
177
- align-items: center;
178
- color: gray;
179
- cursor: pointer;
180
- border-radius: 3px;
181
- font-weight: normal;
182
- line-height: 22px;
183
- font-size: 14px;
184
- color: #7E7E7E;
185
- max-width: 100%;
186
- word-break: break-all;
187
- word-break: break-word;
188
- }
189
-
190
- .DropFileInput .Dropzone .icon.withText {
191
- margin-right: 10px;
192
- }
193
-
194
1
  .AutocompleteSelect {
195
2
  display: inline-flex;
196
3
  flex-flow: column;
@@ -486,93 +293,183 @@
486
293
  position: absolute;
487
294
  }
488
295
 
489
- .CircleProgress {
490
- width: 48px;
491
- height: 48px;
296
+ .Button {
297
+ position: relative;
298
+ min-width: 64px;
299
+ min-height: 36px;
300
+ height: 24px;
301
+ margin: 0px;
302
+ padding: 0px 16px;
303
+ border: none;
304
+ outline: none;
305
+ font-size: 14px;
306
+ font-weight: 500;
307
+ letter-spacing: 1.25px;
308
+ background: #dfdfdf;
309
+ text-transform: uppercase;
310
+ font-family: Roboto, sans-serif;
311
+ -webkit-tap-highlight-color: transparent;
312
+ display: inline-flex;
313
+ justify-content: center;
314
+ align-items: center;
315
+ cursor: pointer;
316
+ overflow: hidden;
317
+ user-select: none;
318
+ border-radius: 3px;
319
+ transition: all 0.2s ease;
492
320
  }
493
321
 
494
- .CircleProgress .line {
495
- stroke-width: 2px;
496
- stroke: black;
497
- stroke-linecap: square;
498
- fill: none;
499
- transition: stroke-dashoffset 0.2s ease;
322
+ .Button.flat {
323
+ background-color: transparent;
500
324
  }
501
325
 
502
- .animated {
503
- transition: opacity 250ms ease;
504
- opacity: 0;
326
+ .Button.flat:hover {
327
+ background-color: rgba(0, 0, 0, 0.05);
505
328
  }
506
329
 
507
- .animated.mounting, .animated.mounted {
508
- opacity: 1;
330
+ .Button.green {
331
+ background-color: #43a047;
332
+ color: white;
509
333
  }
510
334
 
511
- .Checkbox {
512
- position: relative;
513
- white-space: pre;
335
+ .Button.green:hover {
336
+ background-color: #3b8e3f;
514
337
  }
515
338
 
516
- .Checkbox *, .Checkbox *:before, .Checkbox *:after {
517
- box-sizing: border-box;
339
+ .Button.blue {
340
+ background-color: #039be5;
341
+ color: white;
518
342
  }
519
343
 
520
- .Checkbox label {
521
- font-family: Roboto, sans-serif;
522
- font-size: 14px;
523
- color: #1e252d;
524
- cursor: pointer;
344
+ .Button.blue:hover {
345
+ background-color: #038acc;
525
346
  }
526
347
 
527
- .Checkbox label:before, .Checkbox label:after {
528
- content: "";
529
- position: absolute;
530
- left: 0;
531
- top: 0;
348
+ .Button.red {
349
+ background-color: #e53935;
350
+ color: white;
532
351
  }
533
352
 
534
- .Checkbox label:before {
535
- width: 20px;
536
- height: 20px;
537
- background: #fff;
538
- border: 2px solid #252525;
539
- border-radius: 2px;
540
- cursor: pointer;
541
- transition: background 0.3s;
353
+ .Button.red:hover {
354
+ background-color: #e2231e;
542
355
  }
543
356
 
544
- .Checkbox input[type=checkbox] {
545
- outline: 0;
357
+ .Button.black {
358
+ background-color: #1e252d;
359
+ color: white;
360
+ }
361
+
362
+ .Button.black:hover {
363
+ background-color: #14181e;
364
+ }
365
+
366
+ .Button.gray {
367
+ background: #D9D9D9;
368
+ color: #999999;
369
+ }
370
+
371
+ .Button.gray:hover {
372
+ background-color: #cccccc;
373
+ }
374
+
375
+ .Button.small {
376
+ padding: 0px 8px;
377
+ min-height: 16px;
378
+ min-width: 16px;
379
+ }
380
+
381
+ .Button > .material-icons {
546
382
  margin-right: 10px;
547
- visibility: hidden;
548
383
  }
549
384
 
550
- .Checkbox input[type=checkbox]:checked + label:before {
551
- background: #4AC263;
552
- border: none;
385
+ .Button.round {
386
+ padding: 0px;
387
+ min-width: 36px;
388
+ border-radius: 50%;
553
389
  }
554
390
 
555
- .Checkbox input[type=checkbox]:checked + label:after {
556
- transform: rotate(-45deg);
557
- top: 6px;
558
- left: 4px;
559
- width: 12px;
560
- height: 6px;
561
- border: 2px solid #fff;
562
- border-top-style: none;
563
- border-right-style: none;
391
+ .Button.round > .material-icons {
392
+ margin: 0px;
564
393
  }
565
394
 
566
- .Checkbox input[type=checkbox]:disabled + label {
567
- color: gray;
395
+ .Button .ripple {
396
+ position: absolute;
397
+ background: rgba(0, 0, 0, 0.1);
398
+ border-radius: 100%;
399
+ transform: scale(0);
400
+ pointer-events: none;
401
+ transition: opacity 0.2s ease-out;
568
402
  }
569
403
 
570
- .Checkbox input[type=checkbox]:disabled + label:before {
571
- border-color: rgba(0, 0, 0, 0.26);
404
+ .Button .ripple.show {
405
+ animation: ripple 0.35s ease-out;
572
406
  }
573
407
 
574
- .Checkbox input[type=checkbox]:disabled:checked + label:before {
575
- background: rgba(0, 0, 0, 0.26);
408
+ .Button:active .ripple.showed {
409
+ opacity: 1;
410
+ }
411
+
412
+ .Button:focus .ripple.focused {
413
+ opacity: 1;
414
+ transition: opacity 0.2s ease-out, transform 0.2s ease-out;
415
+ transform: scale(1);
416
+ animation: resize 1.25s ease-out infinite;
417
+ animation-delay: 0.2s;
418
+ animation-direction: alternate;
419
+ }
420
+
421
+ .Button .ripple.showed {
422
+ transform: scale(2);
423
+ opacity: 0;
424
+ }
425
+
426
+ @keyframes ripple {
427
+ to {
428
+ transform: scale(2);
429
+ }
430
+ }
431
+ @keyframes resize {
432
+ to {
433
+ transform: scale(0.9);
434
+ }
435
+ }
436
+ .Button.raised {
437
+ transition: color 0.2s ease-out, background-color 0.2s ease-out, box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
438
+ }
439
+
440
+ .Button.raised:hover {
441
+ box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.25);
442
+ }
443
+
444
+ .Button.raised:active {
445
+ box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.35);
446
+ }
447
+
448
+ .Button.disabled {
449
+ box-shadow: none;
450
+ background: #D9D9D9;
451
+ color: #999999;
452
+ }
453
+
454
+ .Button.disabled:hover {
455
+ background-color: #cccccc;
456
+ }
457
+
458
+ .Button::-moz-focus-inner {
459
+ border: 0;
460
+ }
461
+
462
+ .CircleProgress {
463
+ width: 48px;
464
+ height: 48px;
465
+ }
466
+
467
+ .CircleProgress .line {
468
+ stroke-width: 2px;
469
+ stroke: black;
470
+ stroke-linecap: square;
471
+ fill: none;
472
+ transition: stroke-dashoffset 0.2s ease;
576
473
  }
577
474
 
578
475
  .DialogModal {
@@ -617,73 +514,125 @@
617
514
  margin-bottom: 0;
618
515
  }
619
516
 
620
- .FormUploadProgress {
621
- position: absolute;
622
- left: 0;
623
- right: 0;
624
- top: 0;
625
- bottom: 0;
626
- background-color: rgba(255, 255, 255, 0.6);
627
- z-index: 2;
517
+ .animated {
518
+ transition: opacity 250ms ease;
519
+ opacity: 0;
628
520
  }
629
521
 
630
- .FormUploadProgress.animated.mounting, .FormUploadProgress.animated.mounted {
631
- transition-delay: 500ms;
522
+ .animated.mounting, .animated.mounted {
523
+ opacity: 1;
632
524
  }
633
525
 
634
- .FormUploadProgress .wrapper {
635
- position: sticky;
636
- top: 40%;
637
- margin-top: 40%;
638
- margin-left: 50%;
639
- transform: translateX(-50%);
640
- display: flex;
641
- flex-flow: column;
642
- justify-content: center;
643
- align-items: center;
526
+ .FilteredList {
527
+ max-height: 250px;
528
+ position: relative;
644
529
  }
645
530
 
646
- .FormUploadProgress .wrapper .CircleProgress, .FormUploadProgress .wrapper .SpinningProgress {
531
+ .FilteredList.popup {
532
+ padding: 0;
533
+ visibility: hidden;
647
534
  position: absolute;
648
- width: 107px;
649
- height: 107px;
650
- top: 0;
651
- left: 0;
535
+ background: white;
536
+ z-index: 4;
537
+ box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
538
+ transition: all 0.2s ease-out;
539
+ top: calc(100% + 4px);
540
+ opacity: 0;
541
+ border-radius: 2px;
652
542
  }
653
543
 
654
- .FormUploadProgress .wrapper .CircleProgress .line, .FormUploadProgress .wrapper .SpinningProgress .line {
655
- stroke: #2196F3;
544
+ .FilteredList.popup.visible {
545
+ opacity: 1;
546
+ visibility: visible;
656
547
  }
657
548
 
658
- .FormUploadProgress .wrapper > .progress {
659
- width: 107px;
660
- height: 107px;
661
- min-height: 107px;
549
+ .FilteredList.portal {
550
+ transition: opacity 0.2s ease-out;
551
+ }
552
+
553
+ .FilteredList.inline {
554
+ max-height: 225px;
555
+ margin-top: 5px;
556
+ }
557
+
558
+ .FilteredList .child {
662
559
  display: flex;
663
- justify-content: center;
560
+ flex-flow: row nowrap;
664
561
  align-items: center;
665
- box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.25);
666
- border-radius: 50%;
667
- background: white;
668
- position: relative;
562
+ white-space: nowrap;
563
+ font-size: 14px;
564
+ color: rgb(34, 34, 34);
565
+ height: 30px;
566
+ padding: 5px 10px;
567
+ padding-right: 15px;
568
+ cursor: pointer;
569
+ overflow: hidden;
570
+ transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
571
+ border-left: 5px solid #4AC263;
572
+ padding-left: 15px;
573
+ margin-left: -5px;
669
574
  }
670
575
 
671
- .FormUploadProgress .wrapper > .progress > .value {
672
- display: inline-block;
673
- margin-top: 5px;
674
- font-weight: bold;
675
- line-height: 16px;
676
- font-size: 13px;
677
- text-align: center;
678
- color: #818181;
576
+ .FilteredList .child.hidden {
577
+ height: 0 !important;
578
+ padding: 0 !important;
579
+ }
580
+
581
+ .FilteredList .child.selected {
582
+ background-color: #F0F0F0;
583
+ padding-left: 10px;
584
+ margin-left: 0px;
585
+ }
586
+
587
+ .FilteredList .child.active {
588
+ background-color: rgb(238, 238, 238);
589
+ }
590
+
591
+ .FilteredList .child {
592
+ margin-top: 8px;
593
+ }
594
+
595
+ .FilteredList .child.hidden {
596
+ margin-top: 0;
597
+ }
598
+
599
+ .FilteredList .child:not(.hidden) ~ .child {
600
+ margin-top: 0;
601
+ }
602
+
603
+ .FilteredList .child:not(.hidden) ~ .child:last-child {
604
+ margin-bottom: 8px;
605
+ }
606
+
607
+ .FilteredList .child:not(.hidden):last-child {
608
+ margin-bottom: 8px;
609
+ }
610
+
611
+ .DropFileInput {
612
+ flex-grow: 1;
613
+ }
614
+
615
+ .DropFileInput .Dropzone {
616
+ border: 1px dashed #808080;
617
+ padding: 12px;
618
+ display: flex;
619
+ flex-flow: row nowrap;
620
+ justify-content: center;
621
+ align-items: center;
622
+ color: gray;
623
+ cursor: pointer;
624
+ border-radius: 3px;
625
+ font-weight: normal;
626
+ line-height: 22px;
627
+ font-size: 14px;
628
+ color: #7E7E7E;
629
+ max-width: 100%;
630
+ word-break: break-all;
631
+ word-break: break-word;
679
632
  }
680
633
 
681
- .FormUploadProgress .wrapper .cancel {
682
- min-width: 107px;
683
- margin-top: 20px;
684
- background-color: white;
685
- color: #F96B5C;
686
- box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.25);
634
+ .DropFileInput .Dropzone .icon.withText {
635
+ margin-right: 10px;
687
636
  }
688
637
 
689
638
  .Dropzone {
@@ -746,51 +695,6 @@
746
695
  z-index: 1;
747
696
  }
748
697
 
749
- .Snackbar {
750
- transform: translateX(-50%);
751
- overflow: hidden;
752
- background-color: #323232;
753
- padding: 14px 24px 14px 24px;
754
- color: #fff;
755
- min-width: 288px;
756
- max-width: 568px;
757
- position: fixed;
758
- bottom: -50px;
759
- left: 50%;
760
- display: flex;
761
- flex-wrap: nowrap;
762
- align-items: center;
763
- opacity: 0;
764
- transition: bottom 0.25s ease, opacity 0.2s ease;
765
- border-radius: 4px;
766
- box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
767
- }
768
-
769
- .Snackbar.shown {
770
- bottom: 15px;
771
- opacity: 1;
772
- }
773
-
774
- .Snackbar .message {
775
- overflow: hidden;
776
- line-height: 1.2em;
777
- min-height: 1.2em;
778
- max-height: 2.4em;
779
- flex: 1;
780
- }
781
-
782
- .Snackbar .action {
783
- text-transform: uppercase;
784
- font-weight: bold;
785
- margin-left: 48px;
786
- color: #bf3727;
787
- }
788
-
789
- .Snackbar .action a {
790
- text-decoration: none;
791
- color: #bf3727;
792
- }
793
-
794
698
  .Scrollable {
795
699
  max-height: 250px;
796
700
  max-width: 250px;
@@ -886,113 +790,180 @@
886
790
  will-change: left;
887
791
  }
888
792
 
889
- .FilteredList {
890
- max-height: 250px;
891
- position: relative;
793
+ .Modal {
794
+ display: block;
795
+ position: fixed;
796
+ top: 0;
797
+ left: 0;
798
+ right: 0;
799
+ bottom: 100%;
800
+ overflow-y: scroll;
801
+ transition: bottom 0ms linear;
802
+ transition-delay: 0.2s;
892
803
  }
893
804
 
894
- .FilteredList.popup {
805
+ .Modal.show {
806
+ transition-delay: 0s;
807
+ bottom: 0;
808
+ }
809
+
810
+ .Modal > .overlay {
811
+ position: fixed;
812
+ top: 0;
813
+ bottom: 100%;
814
+ left: 0;
815
+ right: 0;
816
+ transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
817
+ opacity: 0;
818
+ background-color: black;
819
+ pointer-events: none;
820
+ }
821
+
822
+ .Modal > .overlay.show {
823
+ opacity: 0.5;
824
+ bottom: 0;
825
+ }
826
+
827
+ .Modal > .content {
828
+ left: 50%;
829
+ top: 10vh;
830
+ margin-bottom: 10vh;
831
+ font-size: 16px;
895
832
  padding: 0;
896
- visibility: hidden;
897
- position: absolute;
898
- background: white;
899
- z-index: 4;
900
- box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
901
- transition: all 0.2s ease-out;
902
- top: calc(100% + 4px);
903
833
  opacity: 0;
834
+ transition: opacity 0.25s ease, transform 0.25s ease;
835
+ transform: scaleY(0) translateY(-200px) translateX(-50%);
836
+ transform-origin: top;
837
+ position: absolute;
904
838
  border-radius: 2px;
839
+ box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.3);
905
840
  }
906
841
 
907
- .FilteredList.popup.visible {
842
+ .Modal > .content.show {
908
843
  opacity: 1;
909
- visibility: visible;
844
+ transform: scaleY(1) translateY(0px) translateX(-50%);
910
845
  }
911
846
 
912
- .FilteredList.portal {
913
- transition: opacity 0.2s ease-out;
847
+ .Modal > .content > .Scrollable {
848
+ overflow: visible;
849
+ max-height: 80vh;
914
850
  }
915
851
 
916
- .FilteredList.inline {
917
- max-height: 225px;
918
- margin-top: 5px;
852
+ .Modal > .content > .Scrollable > .viewport {
853
+ min-width: 10px;
854
+ min-height: 10px;
919
855
  }
920
856
 
921
- .FilteredList .child {
857
+ .Modal > .content > .Button.close {
858
+ top: 10px;
859
+ right: 10px;
860
+ position: absolute;
861
+ }
862
+
863
+ .FormUploadProgress {
864
+ position: absolute;
865
+ left: 0;
866
+ right: 0;
867
+ top: 0;
868
+ bottom: 0;
869
+ background-color: rgba(255, 255, 255, 0.6);
870
+ z-index: 2;
871
+ }
872
+
873
+ .FormUploadProgress.animated.mounting, .FormUploadProgress.animated.mounted {
874
+ transition-delay: 500ms;
875
+ }
876
+
877
+ .FormUploadProgress .wrapper {
878
+ position: sticky;
879
+ top: 40%;
880
+ margin-top: 40%;
881
+ margin-left: 50%;
882
+ transform: translateX(-50%);
922
883
  display: flex;
923
- flex-flow: row nowrap;
884
+ flex-flow: column;
885
+ justify-content: center;
924
886
  align-items: center;
925
- white-space: nowrap;
926
- font-size: 14px;
927
- color: rgb(34, 34, 34);
928
- height: 30px;
929
- padding: 5px 10px;
930
- padding-right: 15px;
931
- cursor: pointer;
932
- overflow: hidden;
933
- transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
934
- border-left: 5px solid #4AC263;
935
- padding-left: 15px;
936
- margin-left: -5px;
937
887
  }
938
888
 
939
- .FilteredList .child.hidden {
940
- height: 0 !important;
941
- padding: 0 !important;
889
+ .FormUploadProgress .wrapper .CircleProgress, .FormUploadProgress .wrapper .SpinningProgress {
890
+ position: absolute;
891
+ width: 107px;
892
+ height: 107px;
893
+ top: 0;
894
+ left: 0;
942
895
  }
943
896
 
944
- .FilteredList .child.selected {
945
- background-color: #F0F0F0;
946
- padding-left: 10px;
947
- margin-left: 0px;
897
+ .FormUploadProgress .wrapper .CircleProgress .line, .FormUploadProgress .wrapper .SpinningProgress .line {
898
+ stroke: #2196F3;
948
899
  }
949
900
 
950
- .FilteredList .child.active {
951
- background-color: rgb(238, 238, 238);
901
+ .FormUploadProgress .wrapper > .progress {
902
+ width: 107px;
903
+ height: 107px;
904
+ min-height: 107px;
905
+ display: flex;
906
+ justify-content: center;
907
+ align-items: center;
908
+ box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.25);
909
+ border-radius: 50%;
910
+ background: white;
911
+ position: relative;
952
912
  }
953
913
 
954
- .FilteredList .child {
955
- margin-top: 8px;
914
+ .FormUploadProgress .wrapper > .progress > .value {
915
+ display: inline-block;
916
+ margin-top: 5px;
917
+ font-weight: bold;
918
+ line-height: 16px;
919
+ font-size: 13px;
920
+ text-align: center;
921
+ color: #818181;
956
922
  }
957
923
 
958
- .FilteredList .child.hidden {
959
- margin-top: 0;
924
+ .FormUploadProgress .wrapper .cancel {
925
+ min-width: 107px;
926
+ margin-top: 20px;
927
+ background-color: white;
928
+ color: #F96B5C;
929
+ box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.25);
960
930
  }
961
931
 
962
- .FilteredList .child:not(.hidden) ~ .child {
963
- margin-top: 0;
932
+ .ModalMenu {
933
+ position: absolute;
934
+ top: 10px;
935
+ right: 50px;
964
936
  }
965
937
 
966
- .FilteredList .child:not(.hidden) ~ .child:last-child {
967
- margin-bottom: 8px;
938
+ .ModalMenu .material-icons {
939
+ color: #818181;
968
940
  }
969
941
 
970
- .FilteredList .child:not(.hidden):last-child {
971
- margin-bottom: 8px;
942
+ .ModalMenu .Button.animated {
943
+ position: absolute;
944
+ transition: opacity 150ms ease-in, right 200ms ease-in;
945
+ opacity: 0;
946
+ right: 0;
947
+ top: 0;
972
948
  }
973
949
 
974
- .Button.FloatingActionButton {
975
- position: absolute;
976
- right: 16px;
977
- bottom: 16px;
978
- width: 56px;
979
- height: 56px;
980
- padding: 16px;
981
- transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
950
+ .ModalMenu .Button.animated.mounting, .ModalMenu .Button.animated.mounted {
951
+ opacity: 1;
982
952
  }
983
953
 
984
- .Button.FloatingActionButton.raised {
985
- transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s ease-out, background-color 0.2s ease-out, box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
954
+ .ModalMenu .Button.animated.unmounting {
955
+ transition: opacity 100ms ease-out, right 200ms ease-out;
986
956
  }
987
957
 
988
- .Button.FloatingActionButton.mini {
989
- width: 40px;
990
- height: 40px;
991
- padding: 8px;
958
+ .ModalMenu .Button.active {
959
+ background: #EBEBEB;
992
960
  }
993
961
 
994
- .Button.FloatingActionButton.hidden {
995
- bottom: -100px;
962
+ .ModalMenu .separator {
963
+ height: 24px;
964
+ width: 1px;
965
+ background-color: #D9D9D9;
966
+ margin-left: 4px;
996
967
  }
997
968
 
998
969
  .ImageGallery {
@@ -1230,111 +1201,251 @@
1230
1201
  font-size: 24px;
1231
1202
  }
1232
1203
 
1233
- .ModalMenu {
1234
- position: absolute;
1235
- top: 10px;
1236
- right: 50px;
1204
+ .Snackbar {
1205
+ transform: translateX(-50%);
1206
+ overflow: hidden;
1207
+ background-color: #323232;
1208
+ padding: 14px 24px 14px 24px;
1209
+ color: #fff;
1210
+ min-width: 288px;
1211
+ max-width: 568px;
1212
+ position: fixed;
1213
+ bottom: -50px;
1214
+ left: 50%;
1215
+ display: flex;
1216
+ flex-wrap: nowrap;
1217
+ align-items: center;
1218
+ opacity: 0;
1219
+ transition: bottom 0.25s ease, opacity 0.2s ease;
1220
+ border-radius: 4px;
1221
+ box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
1237
1222
  }
1238
1223
 
1239
- .ModalMenu .material-icons {
1240
- color: #818181;
1224
+ .Snackbar.shown {
1225
+ bottom: 15px;
1226
+ opacity: 1;
1241
1227
  }
1242
1228
 
1243
- .ModalMenu .Button.animated {
1229
+ .Snackbar .message {
1230
+ overflow: hidden;
1231
+ line-height: 1.2em;
1232
+ min-height: 1.2em;
1233
+ max-height: 2.4em;
1234
+ flex: 1;
1235
+ }
1236
+
1237
+ .Snackbar .action {
1238
+ text-transform: uppercase;
1239
+ font-weight: bold;
1240
+ margin-left: 48px;
1241
+ color: #bf3727;
1242
+ }
1243
+
1244
+ .Snackbar .action a {
1245
+ text-decoration: none;
1246
+ color: #bf3727;
1247
+ }
1248
+
1249
+ .Checkbox {
1250
+ position: relative;
1251
+ white-space: pre;
1252
+ }
1253
+
1254
+ .Checkbox *, .Checkbox *:before, .Checkbox *:after {
1255
+ box-sizing: border-box;
1256
+ }
1257
+
1258
+ .Checkbox label {
1259
+ font-family: Roboto, sans-serif;
1260
+ font-size: 14px;
1261
+ color: #1e252d;
1262
+ cursor: pointer;
1263
+ }
1264
+
1265
+ .Checkbox label:before, .Checkbox label:after {
1266
+ content: "";
1244
1267
  position: absolute;
1245
- transition: opacity 150ms ease-in, right 200ms ease-in;
1246
- opacity: 0;
1247
- right: 0;
1268
+ left: 0;
1248
1269
  top: 0;
1249
1270
  }
1250
1271
 
1251
- .ModalMenu .Button.animated.mounting, .ModalMenu .Button.animated.mounted {
1252
- opacity: 1;
1272
+ .Checkbox label:before {
1273
+ width: 20px;
1274
+ height: 20px;
1275
+ background: #fff;
1276
+ border: 2px solid #252525;
1277
+ border-radius: 2px;
1278
+ cursor: pointer;
1279
+ transition: background 0.3s;
1253
1280
  }
1254
1281
 
1255
- .ModalMenu .Button.animated.unmounting {
1256
- transition: opacity 100ms ease-out, right 200ms ease-out;
1282
+ .Checkbox input[type=checkbox] {
1283
+ outline: 0;
1284
+ margin-right: 10px;
1285
+ visibility: hidden;
1257
1286
  }
1258
1287
 
1259
- .ModalMenu .Button.active {
1260
- background: #EBEBEB;
1288
+ .Checkbox input[type=checkbox]:checked + label:before {
1289
+ background: #4AC263;
1290
+ border: none;
1261
1291
  }
1262
1292
 
1263
- .ModalMenu .separator {
1264
- height: 24px;
1265
- width: 1px;
1266
- background-color: #D9D9D9;
1267
- margin-left: 4px;
1293
+ .Checkbox input[type=checkbox]:checked + label:after {
1294
+ transform: rotate(-45deg);
1295
+ top: 6px;
1296
+ left: 4px;
1297
+ width: 12px;
1298
+ height: 6px;
1299
+ border: 2px solid #fff;
1300
+ border-top-style: none;
1301
+ border-right-style: none;
1268
1302
  }
1269
1303
 
1270
- .Modal {
1304
+ .Checkbox input[type=checkbox]:disabled + label {
1305
+ color: gray;
1306
+ }
1307
+
1308
+ .Checkbox input[type=checkbox]:disabled + label:before {
1309
+ border-color: rgba(0, 0, 0, 0.26);
1310
+ }
1311
+
1312
+ .Checkbox input[type=checkbox]:disabled:checked + label:before {
1313
+ background: rgba(0, 0, 0, 0.26);
1314
+ }
1315
+
1316
+ .SpinningProgress {
1317
+ width: 48px;
1318
+ height: 48px;
1319
+ position: relative;
1320
+ margin: 0 auto;
1321
+ }
1322
+
1323
+ .SpinningProgress:before {
1324
+ content: "";
1271
1325
  display: block;
1272
- position: fixed;
1326
+ padding-top: 100%;
1327
+ }
1328
+
1329
+ .SpinningProgress .circular {
1330
+ animation: rotate 2s linear infinite;
1331
+ height: 100%;
1332
+ transform-origin: center center;
1333
+ width: 100%;
1334
+ position: absolute;
1273
1335
  top: 0;
1336
+ bottom: 0;
1274
1337
  left: 0;
1275
1338
  right: 0;
1276
- bottom: 100%;
1277
- overflow-y: scroll;
1278
- transition: bottom 0ms linear;
1279
- transition-delay: 0.2s;
1339
+ margin: auto;
1280
1340
  }
1281
1341
 
1282
- .Modal.show {
1283
- transition-delay: 0s;
1284
- bottom: 0;
1342
+ .SpinningProgress .line {
1343
+ stroke: black;
1344
+ stroke-width: 2px;
1345
+ stroke-dasharray: 1, 96;
1346
+ stroke-dashoffset: 0;
1347
+ animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
1285
1348
  }
1286
1349
 
1287
- .Modal > .overlay {
1288
- position: fixed;
1289
- top: 0;
1290
- bottom: 100%;
1291
- left: 0;
1292
- right: 0;
1293
- transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1294
- opacity: 0;
1295
- background-color: black;
1296
- pointer-events: none;
1350
+ @keyframes rotate {
1351
+ 100% {
1352
+ transform: rotate(360deg);
1353
+ }
1354
+ }
1355
+ @keyframes dash {
1356
+ 0% {
1357
+ stroke-dasharray: 1, 96;
1358
+ stroke-dashoffset: 0;
1359
+ }
1360
+ 50% {
1361
+ stroke-dasharray: 43, 96;
1362
+ stroke-dashoffset: -17px;
1363
+ }
1364
+ 100% {
1365
+ stroke-dasharray: 43, 96;
1366
+ stroke-dashoffset: -53px;
1367
+ }
1368
+ }
1369
+ .Switch {
1370
+ display: inline-flex;
1371
+ padding-top: 5px;
1297
1372
  }
1298
1373
 
1299
- .Modal > .overlay.show {
1300
- opacity: 0.5;
1301
- bottom: 0;
1374
+ .Switch .switch-input {
1375
+ display: none;
1302
1376
  }
1303
1377
 
1304
- .Modal > .content {
1305
- left: 50%;
1306
- top: 10vh;
1307
- margin-bottom: 10vh;
1308
- font-size: 16px;
1378
+ .Switch .switch-label {
1379
+ position: relative;
1380
+ display: inline-flex;
1381
+ align-items: center;
1382
+ min-width: 38px;
1383
+ height: 24px;
1384
+ cursor: pointer;
1385
+ font-weight: 500;
1386
+ text-align: left;
1387
+ user-select: none;
1388
+ margin: 0;
1309
1389
  padding: 0;
1310
- opacity: 0;
1311
- transition: opacity 0.25s ease, transform 0.25s ease;
1312
- transform: scaleY(0) translateY(-200px) translateX(-50%);
1313
- transform-origin: top;
1390
+ padding-left: 44px;
1391
+ box-sizing: border-box;
1392
+ }
1393
+
1394
+ .Switch .switch-label:before, .Switch .switch-label:after {
1395
+ content: "";
1396
+ box-sizing: border-box;
1314
1397
  position: absolute;
1315
- border-radius: 2px;
1316
- box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.3);
1398
+ margin: 0;
1399
+ outline: 0;
1400
+ top: 50%;
1401
+ transform: translate(0, -50%);
1402
+ transition: all 0.3s ease;
1403
+ }
1404
+
1405
+ .Switch .switch-label:before {
1406
+ left: 1px;
1407
+ width: 34px;
1408
+ height: 14px;
1409
+ background-color: #9E9E9E;
1410
+ border-radius: 8px;
1411
+ }
1412
+
1413
+ .Switch .switch-label:after {
1414
+ left: 0;
1415
+ width: 20px;
1416
+ height: 20px;
1417
+ background-color: #FAFAFA;
1418
+ border-radius: 50%;
1419
+ box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.14), 0 2px 2px 0 rgba(0, 0, 0, 0.098), 0 1px 5px 0 rgba(0, 0, 0, 0.084);
1420
+ }
1421
+
1422
+ .Switch .switch-label .toggle--on {
1423
+ display: none;
1317
1424
  }
1318
1425
 
1319
- .Modal > .content.show {
1320
- opacity: 1;
1321
- transform: scaleY(1) translateY(0px) translateX(-50%);
1426
+ .Switch .switch-label .toggle--off {
1427
+ display: inline-block;
1322
1428
  }
1323
1429
 
1324
- .Modal > .content > .Scrollable {
1325
- overflow: visible;
1326
- max-height: 80vh;
1430
+ .Switch .switch-label .label {
1431
+ margin-right: 5px;
1327
1432
  }
1328
1433
 
1329
- .Modal > .content > .Scrollable > .viewport {
1330
- min-width: 10px;
1331
- min-height: 10px;
1434
+ .Switch .switch-input:checked + .switch-label:before {
1435
+ background-color: #A5D6A7;
1332
1436
  }
1333
1437
 
1334
- .Modal > .content > .Button.close {
1335
- top: 10px;
1336
- right: 10px;
1337
- position: absolute;
1438
+ .Switch .switch-input:checked + .switch-label:after {
1439
+ background-color: #4CAF50;
1440
+ transform: translate(80%, -50%);
1441
+ }
1442
+
1443
+ .Switch .switch-input:checked + .switch-label .toggle--on {
1444
+ display: inline-block;
1445
+ }
1446
+
1447
+ .Switch .switch-input:checked + .switch-label .toggle--off {
1448
+ display: none;
1338
1449
  }
1339
1450
 
1340
1451
  .TextField {
@@ -1480,6 +1591,30 @@
1480
1591
  animation-name: shake;
1481
1592
  }
1482
1593
 
1594
+ .Button.FloatingActionButton {
1595
+ position: absolute;
1596
+ right: 16px;
1597
+ bottom: 16px;
1598
+ width: 56px;
1599
+ height: 56px;
1600
+ padding: 16px;
1601
+ transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1602
+ }
1603
+
1604
+ .Button.FloatingActionButton.raised {
1605
+ transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s ease-out, background-color 0.2s ease-out, box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
1606
+ }
1607
+
1608
+ .Button.FloatingActionButton.mini {
1609
+ width: 40px;
1610
+ height: 40px;
1611
+ padding: 8px;
1612
+ }
1613
+
1614
+ .Button.FloatingActionButton.hidden {
1615
+ bottom: -100px;
1616
+ }
1617
+
1483
1618
  .DNDContainer .DroppableList .Draggable {
1484
1619
  transform: unset;
1485
1620
  transition: unset;
@@ -1498,166 +1633,6 @@
1498
1633
  transition: transform 0.1s ease-in;
1499
1634
  }
1500
1635
 
1501
- .Switch {
1502
- display: inline-flex;
1503
- padding-top: 5px;
1504
- }
1505
-
1506
- .Switch .switch-input {
1507
- display: none;
1508
- }
1509
-
1510
- .Switch .switch-label {
1511
- position: relative;
1512
- display: inline-flex;
1513
- align-items: center;
1514
- min-width: 38px;
1515
- height: 24px;
1516
- cursor: pointer;
1517
- font-weight: 500;
1518
- text-align: left;
1519
- user-select: none;
1520
- margin: 0;
1521
- padding: 0;
1522
- padding-left: 44px;
1523
- box-sizing: border-box;
1524
- }
1525
-
1526
- .Switch .switch-label:before, .Switch .switch-label:after {
1527
- content: "";
1528
- box-sizing: border-box;
1529
- position: absolute;
1530
- margin: 0;
1531
- outline: 0;
1532
- top: 50%;
1533
- transform: translate(0, -50%);
1534
- transition: all 0.3s ease;
1535
- }
1536
-
1537
- .Switch .switch-label:before {
1538
- left: 1px;
1539
- width: 34px;
1540
- height: 14px;
1541
- background-color: #9E9E9E;
1542
- border-radius: 8px;
1543
- }
1544
-
1545
- .Switch .switch-label:after {
1546
- left: 0;
1547
- width: 20px;
1548
- height: 20px;
1549
- background-color: #FAFAFA;
1550
- border-radius: 50%;
1551
- box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.14), 0 2px 2px 0 rgba(0, 0, 0, 0.098), 0 1px 5px 0 rgba(0, 0, 0, 0.084);
1552
- }
1553
-
1554
- .Switch .switch-label .toggle--on {
1555
- display: none;
1556
- }
1557
-
1558
- .Switch .switch-label .toggle--off {
1559
- display: inline-block;
1560
- }
1561
-
1562
- .Switch .switch-label .label {
1563
- margin-right: 5px;
1564
- }
1565
-
1566
- .Switch .switch-input:checked + .switch-label:before {
1567
- background-color: #A5D6A7;
1568
- }
1569
-
1570
- .Switch .switch-input:checked + .switch-label:after {
1571
- background-color: #4CAF50;
1572
- transform: translate(80%, -50%);
1573
- }
1574
-
1575
- .Switch .switch-input:checked + .switch-label .toggle--on {
1576
- display: inline-block;
1577
- }
1578
-
1579
- .Switch .switch-input:checked + .switch-label .toggle--off {
1580
- display: none;
1581
- }
1582
-
1583
- .SpinningProgress {
1584
- width: 48px;
1585
- height: 48px;
1586
- position: relative;
1587
- margin: 0 auto;
1588
- }
1589
-
1590
- .SpinningProgress:before {
1591
- content: "";
1592
- display: block;
1593
- padding-top: 100%;
1594
- }
1595
-
1596
- .SpinningProgress .circular {
1597
- animation: rotate 2s linear infinite;
1598
- height: 100%;
1599
- transform-origin: center center;
1600
- width: 100%;
1601
- position: absolute;
1602
- top: 0;
1603
- bottom: 0;
1604
- left: 0;
1605
- right: 0;
1606
- margin: auto;
1607
- }
1608
-
1609
- .SpinningProgress .line {
1610
- stroke: black;
1611
- stroke-width: 2px;
1612
- stroke-dasharray: 1, 96;
1613
- stroke-dashoffset: 0;
1614
- animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
1615
- }
1616
-
1617
- @keyframes rotate {
1618
- 100% {
1619
- transform: rotate(360deg);
1620
- }
1621
- }
1622
- @keyframes dash {
1623
- 0% {
1624
- stroke-dasharray: 1, 96;
1625
- stroke-dashoffset: 0;
1626
- }
1627
- 50% {
1628
- stroke-dasharray: 43, 96;
1629
- stroke-dashoffset: -17px;
1630
- }
1631
- 100% {
1632
- stroke-dasharray: 43, 96;
1633
- stroke-dashoffset: -53px;
1634
- }
1635
- }
1636
- .CalendarMonthView {
1637
- display: flex;
1638
- flex-flow: column nowrap;
1639
- height: 100%;
1640
- }
1641
-
1642
- .CalendarMonthView > .row {
1643
- display: flex;
1644
- flex-flow: row nowrap;
1645
- }
1646
-
1647
- .CalendarMonthView .days {
1648
- flex-grow: 1;
1649
- position: relative;
1650
- }
1651
-
1652
- .CalendarMonthView .day, .CalendarMonthView .header {
1653
- flex-grow: 1;
1654
- flex-basis: 1px;
1655
- }
1656
-
1657
- .CalendarMonthView .day {
1658
- height: 100%;
1659
- }
1660
-
1661
1636
  .DatePicker {
1662
1637
  position: relative;
1663
1638
  }
@@ -1775,6 +1750,31 @@
1775
1750
  background-color: #51adf6;
1776
1751
  }
1777
1752
 
1753
+ .CalendarMonthView {
1754
+ display: flex;
1755
+ flex-flow: column nowrap;
1756
+ height: 100%;
1757
+ }
1758
+
1759
+ .CalendarMonthView > .row {
1760
+ display: flex;
1761
+ flex-flow: row nowrap;
1762
+ }
1763
+
1764
+ .CalendarMonthView .days {
1765
+ flex-grow: 1;
1766
+ position: relative;
1767
+ }
1768
+
1769
+ .CalendarMonthView .day, .CalendarMonthView .header {
1770
+ flex-grow: 1;
1771
+ flex-basis: 1px;
1772
+ }
1773
+
1774
+ .CalendarMonthView .day {
1775
+ height: 100%;
1776
+ }
1777
+
1778
1778
  .DNDContainer {
1779
1779
  position: relative;
1780
1780
  }
@@ -1807,6 +1807,14 @@
1807
1807
  pointer-events: none;
1808
1808
  }
1809
1809
 
1810
+ .ScrollableTable .Scrollable .scrollbar {
1811
+ top: 56px;
1812
+ }
1813
+
1814
+ .ScrollableTable .Table {
1815
+ position: static;
1816
+ }
1817
+
1810
1818
  .Table {
1811
1819
  font-family: Roboto, sans-serif;
1812
1820
  font-size: 14px;
@@ -1927,12 +1935,4 @@
1927
1935
 
1928
1936
  .Table .editable > .AutocompleteSelect > .selected > .DummyChild {
1929
1937
  margin: 0;
1930
- }
1931
-
1932
- .ScrollableTable .Scrollable .scrollbar {
1933
- top: 56px;
1934
- }
1935
-
1936
- .ScrollableTable .Table {
1937
- position: static;
1938
1938
  }