react-ui-basics 0.0.246 → 0.0.248

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
@@ -293,15 +293,6 @@
293
293
  position: absolute;
294
294
  }
295
295
 
296
- .animated {
297
- transition: opacity 250ms ease;
298
- opacity: 0;
299
- }
300
-
301
- .animated.mounting, .animated.mounted {
302
- opacity: 1;
303
- }
304
-
305
296
  .ImageGallery {
306
297
  position: fixed;
307
298
  top: 0;
@@ -555,6 +546,197 @@
555
546
  transition: transform 0.1s ease-in;
556
547
  }
557
548
 
549
+ .Button {
550
+ position: relative;
551
+ min-width: 64px;
552
+ min-height: 36px;
553
+ height: 24px;
554
+ margin: 0px;
555
+ padding: 0px 16px;
556
+ border: none;
557
+ outline: none;
558
+ font-size: 14px;
559
+ font-weight: 500;
560
+ letter-spacing: 1.25px;
561
+ background: #dfdfdf;
562
+ text-transform: uppercase;
563
+ font-family: Roboto, sans-serif;
564
+ -webkit-tap-highlight-color: transparent;
565
+ display: inline-flex;
566
+ justify-content: center;
567
+ align-items: center;
568
+ cursor: pointer;
569
+ overflow: hidden;
570
+ user-select: none;
571
+ border-radius: 3px;
572
+ transition: all 0.2s ease;
573
+ }
574
+
575
+ .Button.flat {
576
+ background-color: transparent;
577
+ }
578
+
579
+ .Button.flat:hover {
580
+ background-color: rgba(0, 0, 0, 0.05);
581
+ }
582
+
583
+ .Button.green {
584
+ background-color: #43a047;
585
+ color: white;
586
+ }
587
+
588
+ .Button.green:hover {
589
+ background-color: #3b8e3f;
590
+ }
591
+
592
+ .Button.blue {
593
+ background-color: #039be5;
594
+ color: white;
595
+ }
596
+
597
+ .Button.blue:hover {
598
+ background-color: #038acc;
599
+ }
600
+
601
+ .Button.red {
602
+ background-color: #e53935;
603
+ color: white;
604
+ }
605
+
606
+ .Button.red:hover {
607
+ background-color: #e2231e;
608
+ }
609
+
610
+ .Button.black {
611
+ background-color: #1e252d;
612
+ color: white;
613
+ }
614
+
615
+ .Button.black:hover {
616
+ background-color: #14181e;
617
+ }
618
+
619
+ .Button.gray {
620
+ background: #D9D9D9;
621
+ color: #999999;
622
+ }
623
+
624
+ .Button.gray:hover {
625
+ background-color: #cccccc;
626
+ }
627
+
628
+ .Button.small {
629
+ padding: 0px 8px;
630
+ min-height: 16px;
631
+ min-width: 16px;
632
+ }
633
+
634
+ .Button > .material-icons {
635
+ margin-right: 10px;
636
+ }
637
+
638
+ .Button.round {
639
+ padding: 0px;
640
+ min-width: 36px;
641
+ border-radius: 50%;
642
+ }
643
+
644
+ .Button.round > .material-icons {
645
+ margin: 0px;
646
+ }
647
+
648
+ .Button .ripple {
649
+ position: absolute;
650
+ background: rgba(0, 0, 0, 0.1);
651
+ border-radius: 100%;
652
+ transform: scale(0);
653
+ pointer-events: none;
654
+ transition: opacity 0.2s ease-out;
655
+ }
656
+
657
+ .Button .ripple.show {
658
+ animation: ripple 0.35s ease-out;
659
+ }
660
+
661
+ .Button:active .ripple.showed {
662
+ opacity: 1;
663
+ }
664
+
665
+ .Button:focus .ripple.focused {
666
+ opacity: 1;
667
+ transition: opacity 0.2s ease-out, transform 0.2s ease-out;
668
+ transform: scale(1);
669
+ animation: resize 1.25s ease-out infinite;
670
+ animation-delay: 0.2s;
671
+ animation-direction: alternate;
672
+ }
673
+
674
+ .Button .ripple.showed {
675
+ transform: scale(2);
676
+ opacity: 0;
677
+ }
678
+
679
+ @keyframes ripple {
680
+ to {
681
+ transform: scale(2);
682
+ }
683
+ }
684
+ @keyframes resize {
685
+ to {
686
+ transform: scale(0.9);
687
+ }
688
+ }
689
+ .Button.raised {
690
+ transition: color 0.2s ease-out, background-color 0.2s ease-out, box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
691
+ }
692
+
693
+ .Button.raised:hover {
694
+ box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.25);
695
+ }
696
+
697
+ .Button.raised:active {
698
+ box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.35);
699
+ }
700
+
701
+ .Button.disabled {
702
+ box-shadow: none;
703
+ background: #D9D9D9;
704
+ color: #999999;
705
+ }
706
+
707
+ .Button.disabled:hover {
708
+ background-color: #cccccc;
709
+ }
710
+
711
+ .Button::-moz-focus-inner {
712
+ border: 0;
713
+ }
714
+
715
+ .CalendarMonthView {
716
+ display: flex;
717
+ flex-flow: column nowrap;
718
+ height: 100%;
719
+ }
720
+
721
+ .CalendarMonthView > .row {
722
+ display: flex;
723
+ flex-flow: row nowrap;
724
+ }
725
+
726
+ .CalendarMonthView .days {
727
+ flex-grow: 1;
728
+ position: relative;
729
+ }
730
+
731
+ .CalendarMonthView .day, .CalendarMonthView .header {
732
+ flex-grow: 1;
733
+ flex-basis: 1px;
734
+ }
735
+
736
+ .CalendarMonthView .day {
737
+ height: 100%;
738
+ }
739
+
558
740
  .Checkbox {
559
741
  position: relative;
560
742
  white-space: pre;
@@ -622,121 +804,146 @@
622
804
  background: rgba(0, 0, 0, 0.26);
623
805
  }
624
806
 
625
- .DatePicker {
626
- position: relative;
807
+ .DialogModal {
808
+ overflow: hidden;
627
809
  }
628
810
 
629
- .DatePicker > .TextField {
630
- width: 200px;
631
- margin-bottom: 0px;
811
+ .DialogModal .content {
812
+ top: 20vh;
632
813
  }
633
814
 
634
- .DatePicker > .TextField input {
635
- text-align: center;
815
+ .Dialog {
816
+ background-color: white;
817
+ min-width: 460px;
818
+ max-width: 40vw;
819
+ padding: 15px;
636
820
  }
637
821
 
638
- .calendar {
639
- user-select: none;
640
- position: absolute;
641
- top: 33px;
642
- z-index: 10;
643
- box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
644
- border-radius: 4px;
645
- overflow: hidden;
646
- transition: 0.2s all ease;
647
- opacity: 0;
648
- visibility: hidden;
822
+ .Dialog .title {
823
+ margin-bottom: 15px;
824
+ padding: 20px 50px 0px 30px;
825
+ font-size: 1.25rem;
826
+ line-height: 2rem;
827
+ font-weight: 400;
828
+ letter-spacing: 0.0125em;
649
829
  }
650
830
 
651
- .calendar.focused {
652
- opacity: 1;
653
- visibility: visible;
831
+ .Dialog .description {
832
+ color: rgba(0, 0, 0, 0.54);
833
+ font-size: 1rem;
834
+ line-height: 1.5rem;
835
+ font-weight: 400;
836
+ letter-spacing: 0.03125em;
837
+ margin-top: 20px;
838
+ padding: 0 24px 24px;
654
839
  }
655
840
 
656
- .calendar .monthSelect {
657
- align-items: center;
658
- margin-bottom: 0;
659
- background: white;
660
- font-size: 12px;
661
- color: rgb(170, 170, 170);
662
- padding-right: 16px;
663
- padding-left: 16px;
664
- height: 40px;
841
+ .Dialog > div.row {
842
+ margin-bottom: 15px;
665
843
  }
666
844
 
667
- .calendar .monthSelect span {
668
- margin-right: auto;
669
- }
670
-
671
- .calendar .monthSelect .Button {
672
- min-width: 25px;
673
- min-height: 25px;
674
- }
675
-
676
- .calendar .monthSelect .Button .material-icons {
677
- font-size: 16px;
678
- }
679
-
680
- .calendar .monthSelect .Button.disabled {
681
- background: transparent;
845
+ .Dialog > div.row:last-child {
846
+ margin-bottom: 0;
682
847
  }
683
848
 
684
- .calendar .CalendarMonthView {
685
- background: white;
849
+ .DropFileInput {
850
+ flex-grow: 1;
686
851
  }
687
852
 
688
- .calendar .CalendarMonthView .headers, .calendar .CalendarMonthView .days {
689
- margin-bottom: 0;
853
+ .DropFileInput .Dropzone {
854
+ border: 1px dashed #808080;
855
+ padding: 12px;
856
+ display: flex;
857
+ flex-flow: row nowrap;
858
+ justify-content: center;
859
+ align-items: center;
860
+ color: gray;
861
+ cursor: pointer;
862
+ border-radius: 3px;
863
+ font-weight: normal;
864
+ line-height: 22px;
865
+ font-size: 14px;
866
+ color: #7E7E7E;
867
+ max-width: 100%;
868
+ word-break: break-all;
869
+ word-break: break-word;
690
870
  }
691
871
 
692
- .calendar .CalendarMonthView .header {
693
- font-size: 12px;
694
- font-weight: bold;
695
- text-align: center;
696
- text-transform: uppercase;
697
- margin: 5px;
872
+ .DropFileInput .Dropzone .icon.withText {
873
+ margin-right: 10px;
698
874
  }
699
875
 
700
- .calendar .CalendarMonthView .day {
701
- font-size: 10px;
876
+ .Dropzone {
877
+ position: relative;
702
878
  }
703
879
 
704
- .calendar .CalendarMonthView .day.notSelectedMonth {
705
- color: #969696;
880
+ .Dropzone > .overlay {
881
+ position: absolute;
882
+ left: 0;
883
+ right: 0;
884
+ top: 0;
885
+ bottom: 0;
886
+ background-color: #38ADC4;
887
+ z-index: 1;
888
+ opacity: 0;
889
+ transition: all 0.2s ease;
890
+ transition-delay: 100ms;
891
+ visibility: hidden;
892
+ display: flex;
893
+ justify-content: center;
894
+ align-items: center;
706
895
  }
707
896
 
708
- .calendar .CalendarMonthView .day span {
709
- display: inline-flex;
897
+ .Dropzone > .overlay .drop {
898
+ border-radius: 4px;
899
+ border: 1px dashed #FFFFFF;
900
+ position: absolute;
901
+ top: 18px;
902
+ left: 18px;
903
+ right: 18px;
904
+ bottom: 18px;
905
+ display: flex;
710
906
  justify-content: center;
711
907
  align-items: center;
712
- border-radius: 50%;
713
- width: 25px;
714
- height: 25px;
715
- margin: 5px;
716
- transition: 0.2s all ease;
717
- cursor: pointer;
908
+ font-weight: 500;
909
+ font-size: 18px;
910
+ color: #FFFFFF;
718
911
  }
719
912
 
720
- .calendar .CalendarMonthView .day span:hover {
721
- background-color: #e6e6e6;
913
+ .Dropzone.dragging > .overlay {
914
+ opacity: 0.7;
915
+ visibility: visible;
916
+ transition-delay: 0s;
722
917
  }
723
918
 
724
- .calendar .CalendarMonthView .day span.inactive {
725
- color: lightgray;
726
- cursor: unset;
919
+ .Dropzone.dragging > * {
920
+ pointer-events: none;
727
921
  }
728
922
 
729
- .calendar .CalendarMonthView .day span.inactive:hover {
730
- background: unset;
923
+ .Dropzone > input.file {
924
+ position: absolute;
925
+ left: 0;
926
+ right: 0;
927
+ top: 0;
928
+ bottom: 0;
929
+ width: 100%;
930
+ height: 100%;
931
+ opacity: 0;
932
+ cursor: pointer;
933
+ z-index: 1;
731
934
  }
732
935
 
733
- .calendar .CalendarMonthView .day span.selected {
734
- color: white;
735
- background-color: #2196F3;
936
+ .CircleProgress {
937
+ width: 48px;
938
+ height: 48px;
736
939
  }
737
940
 
738
- .calendar .CalendarMonthView .day span.selected:hover {
739
- background-color: #51adf6;
941
+ .CircleProgress .line {
942
+ stroke-width: 2px;
943
+ stroke: black;
944
+ stroke-linecap: square;
945
+ fill: none;
946
+ transition: stroke-dashoffset 0.2s ease;
740
947
  }
741
948
 
742
949
  .DNDContainer {
@@ -771,46 +978,88 @@
771
978
  pointer-events: none;
772
979
  }
773
980
 
774
- .DialogModal {
981
+ .FilteredList {
982
+ max-height: 250px;
983
+ position: relative;
984
+ }
985
+
986
+ .FilteredList.popup {
987
+ padding: 0;
988
+ visibility: hidden;
989
+ position: absolute;
990
+ background: white;
991
+ z-index: 4;
992
+ 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);
993
+ transition: top 0.2s ease-out, opacity 0.2s ease-out;
994
+ top: calc(100% + 4px);
995
+ opacity: 0;
996
+ border-radius: 2px;
997
+ }
998
+
999
+ .FilteredList.popup.visible {
1000
+ opacity: 1;
1001
+ visibility: visible;
1002
+ }
1003
+
1004
+ .FilteredList.portal {
1005
+ transition: opacity 0.2s ease-out;
1006
+ }
1007
+
1008
+ .FilteredList.inline {
1009
+ max-height: 225px;
1010
+ margin-top: 5px;
1011
+ }
1012
+
1013
+ .FilteredList .child {
1014
+ display: flex;
1015
+ flex-flow: row nowrap;
1016
+ align-items: center;
1017
+ white-space: nowrap;
1018
+ font-size: 14px;
1019
+ color: rgb(34, 34, 34);
1020
+ height: 30px;
1021
+ padding: 5px 10px;
1022
+ padding-right: 15px;
1023
+ cursor: pointer;
775
1024
  overflow: hidden;
1025
+ border-left: 5px solid #4AC263;
1026
+ padding-left: 15px;
1027
+ margin-left: -5px;
776
1028
  }
777
1029
 
778
- .DialogModal .content {
779
- top: 20vh;
1030
+ .FilteredList .child.hidden {
1031
+ height: 0 !important;
1032
+ padding: 0 !important;
780
1033
  }
781
1034
 
782
- .Dialog {
783
- background-color: white;
784
- min-width: 460px;
785
- max-width: 40vw;
786
- padding: 15px;
1035
+ .FilteredList .child.selected {
1036
+ background-color: #F0F0F0;
1037
+ padding-left: 10px;
1038
+ margin-left: 0px;
787
1039
  }
788
1040
 
789
- .Dialog .title {
790
- margin-bottom: 15px;
791
- padding: 20px 50px 0px 30px;
792
- font-size: 1.25rem;
793
- line-height: 2rem;
794
- font-weight: 400;
795
- letter-spacing: 0.0125em;
1041
+ .FilteredList .child.active {
1042
+ background-color: rgb(238, 238, 238);
796
1043
  }
797
1044
 
798
- .Dialog .description {
799
- color: rgba(0, 0, 0, 0.54);
800
- font-size: 1rem;
801
- line-height: 1.5rem;
802
- font-weight: 400;
803
- letter-spacing: 0.03125em;
804
- margin-top: 20px;
805
- padding: 0 24px 24px;
1045
+ .FilteredList .child {
1046
+ margin-top: 8px;
806
1047
  }
807
1048
 
808
- .Dialog > div.row {
809
- margin-bottom: 15px;
1049
+ .FilteredList .child.hidden {
1050
+ margin-top: 0;
810
1051
  }
811
1052
 
812
- .Dialog > div.row:last-child {
813
- margin-bottom: 0;
1053
+ .FilteredList .child:not(.hidden) ~ .child {
1054
+ margin-top: 0;
1055
+ }
1056
+
1057
+ .FilteredList .child:not(.hidden) ~ .child:last-child {
1058
+ margin-bottom: 8px;
1059
+ }
1060
+
1061
+ .FilteredList .child:not(.hidden):last-child {
1062
+ margin-bottom: 8px;
814
1063
  }
815
1064
 
816
1065
  .Scrollable {
@@ -911,366 +1160,14 @@
911
1160
  will-change: left;
912
1161
  }
913
1162
 
914
- .Button {
915
- position: relative;
916
- min-width: 64px;
917
- min-height: 36px;
918
- height: 24px;
919
- margin: 0px;
920
- padding: 0px 16px;
921
- border: none;
922
- outline: none;
923
- font-size: 14px;
924
- font-weight: 500;
925
- letter-spacing: 1.25px;
926
- background: #dfdfdf;
927
- text-transform: uppercase;
928
- font-family: Roboto, sans-serif;
929
- -webkit-tap-highlight-color: transparent;
930
- display: inline-flex;
931
- justify-content: center;
932
- align-items: center;
933
- cursor: pointer;
934
- overflow: hidden;
935
- user-select: none;
936
- border-radius: 3px;
937
- transition: all 0.2s ease;
938
- }
939
-
940
- .Button.flat {
941
- background-color: transparent;
942
- }
943
-
944
- .Button.flat:hover {
945
- background-color: rgba(0, 0, 0, 0.05);
946
- }
947
-
948
- .Button.green {
949
- background-color: #43a047;
950
- color: white;
951
- }
952
-
953
- .Button.green:hover {
954
- background-color: #3b8e3f;
955
- }
956
-
957
- .Button.blue {
958
- background-color: #039be5;
959
- color: white;
960
- }
961
-
962
- .Button.blue:hover {
963
- background-color: #038acc;
964
- }
965
-
966
- .Button.red {
967
- background-color: #e53935;
968
- color: white;
969
- }
970
-
971
- .Button.red:hover {
972
- background-color: #e2231e;
973
- }
974
-
975
- .Button.black {
976
- background-color: #1e252d;
977
- color: white;
978
- }
979
-
980
- .Button.black:hover {
981
- background-color: #14181e;
982
- }
983
-
984
- .Button.gray {
985
- background: #D9D9D9;
986
- color: #999999;
987
- }
988
-
989
- .Button.gray:hover {
990
- background-color: #cccccc;
991
- }
992
-
993
- .Button.small {
994
- padding: 0px 8px;
995
- min-height: 16px;
996
- min-width: 16px;
997
- }
998
-
999
- .Button > .material-icons {
1000
- margin-right: 10px;
1001
- }
1002
-
1003
- .Button.round {
1004
- padding: 0px;
1005
- min-width: 36px;
1006
- border-radius: 50%;
1007
- }
1008
-
1009
- .Button.round > .material-icons {
1010
- margin: 0px;
1011
- }
1012
-
1013
- .Button .ripple {
1014
- position: absolute;
1015
- background: rgba(0, 0, 0, 0.1);
1016
- border-radius: 100%;
1017
- transform: scale(0);
1018
- pointer-events: none;
1019
- transition: opacity 0.2s ease-out;
1020
- }
1021
-
1022
- .Button .ripple.show {
1023
- animation: ripple 0.35s ease-out;
1024
- }
1025
-
1026
- .Button:active .ripple.showed {
1027
- opacity: 1;
1028
- }
1029
-
1030
- .Button:focus .ripple.focused {
1031
- opacity: 1;
1032
- transition: opacity 0.2s ease-out, transform 0.2s ease-out;
1033
- transform: scale(1);
1034
- animation: resize 1.25s ease-out infinite;
1035
- animation-delay: 0.2s;
1036
- animation-direction: alternate;
1037
- }
1038
-
1039
- .Button .ripple.showed {
1040
- transform: scale(2);
1041
- opacity: 0;
1042
- }
1043
-
1044
- @keyframes ripple {
1045
- to {
1046
- transform: scale(2);
1047
- }
1048
- }
1049
- @keyframes resize {
1050
- to {
1051
- transform: scale(0.9);
1052
- }
1053
- }
1054
- .Button.raised {
1055
- transition: color 0.2s ease-out, background-color 0.2s ease-out, box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
1056
- }
1057
-
1058
- .Button.raised:hover {
1059
- box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.25);
1060
- }
1061
-
1062
- .Button.raised:active {
1063
- box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.35);
1064
- }
1065
-
1066
- .Button.disabled {
1067
- box-shadow: none;
1068
- background: #D9D9D9;
1069
- color: #999999;
1070
- }
1071
-
1072
- .Button.disabled:hover {
1073
- background-color: #cccccc;
1074
- }
1075
-
1076
- .Button::-moz-focus-inner {
1077
- border: 0;
1078
- }
1079
-
1080
- .SpinningProgress {
1081
- width: 48px;
1082
- height: 48px;
1083
- position: relative;
1084
- margin: 0 auto;
1085
- }
1086
-
1087
- .SpinningProgress:before {
1088
- content: "";
1089
- display: block;
1090
- padding-top: 100%;
1091
- }
1092
-
1093
- .SpinningProgress .circular {
1094
- animation: rotate 2s linear infinite;
1095
- height: 100%;
1096
- transform-origin: center center;
1097
- width: 100%;
1098
- position: absolute;
1099
- top: 0;
1100
- bottom: 0;
1101
- left: 0;
1102
- right: 0;
1103
- margin: auto;
1104
- }
1105
-
1106
- .SpinningProgress .line {
1107
- stroke: black;
1108
- stroke-width: 2px;
1109
- stroke-dasharray: 1, 96;
1110
- stroke-dashoffset: 0;
1111
- animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
1112
- }
1113
-
1114
- @keyframes rotate {
1115
- 100% {
1116
- transform: rotate(360deg);
1117
- }
1118
- }
1119
- @keyframes dash {
1120
- 0% {
1121
- stroke-dasharray: 1, 96;
1122
- stroke-dashoffset: 0;
1123
- }
1124
- 50% {
1125
- stroke-dasharray: 43, 96;
1126
- stroke-dashoffset: -17px;
1127
- }
1128
- 100% {
1129
- stroke-dasharray: 43, 96;
1130
- stroke-dashoffset: -53px;
1131
- }
1132
- }
1133
- .DropFileInput {
1134
- flex-grow: 1;
1135
- }
1136
-
1137
- .DropFileInput .Dropzone {
1138
- border: 1px dashed #808080;
1139
- padding: 12px;
1140
- display: flex;
1141
- flex-flow: row nowrap;
1142
- justify-content: center;
1143
- align-items: center;
1144
- color: gray;
1145
- cursor: pointer;
1146
- border-radius: 3px;
1147
- font-weight: normal;
1148
- line-height: 22px;
1149
- font-size: 14px;
1150
- color: #7E7E7E;
1151
- max-width: 100%;
1152
- word-break: break-all;
1153
- word-break: break-word;
1154
- }
1155
-
1156
- .DropFileInput .Dropzone .icon.withText {
1157
- margin-right: 10px;
1158
- }
1159
-
1160
- .ModalMenu {
1161
- position: absolute;
1162
- top: 10px;
1163
- right: 50px;
1164
- }
1165
-
1166
- .ModalMenu .material-icons {
1167
- color: #818181;
1168
- }
1169
-
1170
- .ModalMenu .Button.animated {
1171
- position: absolute;
1172
- transition: opacity 150ms ease-in, right 200ms ease-in;
1173
- opacity: 0;
1174
- right: 0;
1175
- top: 0;
1176
- }
1177
-
1178
- .ModalMenu .Button.animated.mounting, .ModalMenu .Button.animated.mounted {
1179
- opacity: 1;
1180
- }
1181
-
1182
- .ModalMenu .Button.animated.unmounting {
1183
- transition: opacity 100ms ease-out, right 200ms ease-out;
1184
- }
1185
-
1186
- .ModalMenu .Button.active {
1187
- background: #EBEBEB;
1188
- }
1189
-
1190
- .ModalMenu .separator {
1191
- height: 24px;
1192
- width: 1px;
1193
- background-color: #D9D9D9;
1194
- margin-left: 4px;
1195
- }
1196
-
1197
- .Snackbar {
1198
- transform: translateX(-50%);
1199
- overflow: hidden;
1200
- background-color: #323232;
1201
- padding: 14px 24px 14px 24px;
1202
- color: #fff;
1203
- min-width: 288px;
1204
- max-width: 568px;
1205
- position: fixed;
1206
- bottom: -50px;
1207
- left: 50%;
1208
- display: flex;
1209
- flex-wrap: nowrap;
1210
- align-items: center;
1211
- opacity: 0;
1212
- transition: bottom 0.25s ease, opacity 0.2s ease;
1213
- border-radius: 4px;
1214
- box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
1215
- }
1216
-
1217
- .Snackbar.shown {
1218
- bottom: 15px;
1219
- opacity: 1;
1220
- }
1221
-
1222
- .Snackbar .message {
1223
- overflow: hidden;
1224
- line-height: 1.2em;
1225
- min-height: 1.2em;
1226
- max-height: 2.4em;
1227
- flex: 1;
1228
- }
1229
-
1230
- .Snackbar .action {
1231
- text-transform: uppercase;
1232
- font-weight: bold;
1233
- margin-left: 48px;
1234
- color: #bf3727;
1235
- }
1236
-
1237
- .Snackbar .action a {
1238
- text-decoration: none;
1239
- color: #bf3727;
1240
- }
1241
-
1242
- .Button.FloatingActionButton {
1243
- position: absolute;
1244
- right: 16px;
1245
- bottom: 16px;
1246
- width: 56px;
1247
- height: 56px;
1248
- padding: 16px;
1249
- transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1250
- }
1251
-
1252
- .Button.FloatingActionButton.raised {
1253
- 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);
1254
- }
1255
-
1256
- .Button.FloatingActionButton.mini {
1257
- width: 40px;
1258
- height: 40px;
1259
- padding: 8px;
1260
- }
1261
-
1262
- .Button.FloatingActionButton.hidden {
1263
- bottom: -100px;
1264
- }
1265
-
1266
- .FormUploadProgress {
1267
- position: absolute;
1268
- left: 0;
1269
- right: 0;
1270
- top: 0;
1271
- bottom: 0;
1272
- background-color: rgba(255, 255, 255, 0.6);
1273
- z-index: 2;
1163
+ .FormUploadProgress {
1164
+ position: absolute;
1165
+ left: 0;
1166
+ right: 0;
1167
+ top: 0;
1168
+ bottom: 0;
1169
+ background-color: rgba(255, 255, 255, 0.6);
1170
+ z-index: 2;
1274
1171
  }
1275
1172
 
1276
1173
  .FormUploadProgress.animated.mounting, .FormUploadProgress.animated.mounted {
@@ -1332,244 +1229,191 @@
1332
1229
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.25);
1333
1230
  }
1334
1231
 
1335
- .FilteredList {
1336
- max-height: 250px;
1232
+ .DatePicker {
1337
1233
  position: relative;
1338
1234
  }
1339
1235
 
1340
- .FilteredList.popup {
1341
- padding: 0;
1342
- visibility: hidden;
1343
- position: absolute;
1344
- background: white;
1345
- z-index: 4;
1346
- 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);
1347
- transition: top 0.2s ease-out, opacity 0.2s ease-out;
1348
- top: calc(100% + 4px);
1349
- opacity: 0;
1350
- border-radius: 2px;
1351
- }
1352
-
1353
- .FilteredList.popup.visible {
1354
- opacity: 1;
1355
- visibility: visible;
1356
- }
1357
-
1358
- .FilteredList.portal {
1359
- transition: opacity 0.2s ease-out;
1236
+ .DatePicker > .TextField {
1237
+ width: 200px;
1238
+ margin-bottom: 0px;
1360
1239
  }
1361
1240
 
1362
- .FilteredList.inline {
1363
- max-height: 225px;
1364
- margin-top: 5px;
1241
+ .DatePicker > .TextField input {
1242
+ text-align: center;
1365
1243
  }
1366
1244
 
1367
- .FilteredList .child {
1368
- display: flex;
1369
- flex-flow: row nowrap;
1370
- align-items: center;
1371
- white-space: nowrap;
1372
- font-size: 14px;
1373
- color: rgb(34, 34, 34);
1374
- height: 30px;
1375
- padding: 5px 10px;
1376
- padding-right: 15px;
1377
- cursor: pointer;
1245
+ .calendar {
1246
+ user-select: none;
1247
+ position: absolute;
1248
+ top: 33px;
1249
+ z-index: 10;
1250
+ box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
1251
+ border-radius: 4px;
1378
1252
  overflow: hidden;
1379
- border-left: 5px solid #4AC263;
1380
- padding-left: 15px;
1381
- margin-left: -5px;
1382
- }
1383
-
1384
- .FilteredList .child.hidden {
1385
- height: 0 !important;
1386
- padding: 0 !important;
1387
- }
1388
-
1389
- .FilteredList .child.selected {
1390
- background-color: #F0F0F0;
1391
- padding-left: 10px;
1392
- margin-left: 0px;
1393
- }
1394
-
1395
- .FilteredList .child.active {
1396
- background-color: rgb(238, 238, 238);
1397
- }
1398
-
1399
- .FilteredList .child {
1400
- margin-top: 8px;
1401
- }
1402
-
1403
- .FilteredList .child.hidden {
1404
- margin-top: 0;
1405
- }
1406
-
1407
- .FilteredList .child:not(.hidden) ~ .child {
1408
- margin-top: 0;
1253
+ transition: 0.2s all ease;
1254
+ opacity: 0;
1255
+ visibility: hidden;
1409
1256
  }
1410
1257
 
1411
- .FilteredList .child:not(.hidden) ~ .child:last-child {
1412
- margin-bottom: 8px;
1258
+ .calendar.focused {
1259
+ opacity: 1;
1260
+ visibility: visible;
1413
1261
  }
1414
1262
 
1415
- .FilteredList .child:not(.hidden):last-child {
1416
- margin-bottom: 8px;
1263
+ .calendar .monthSelect {
1264
+ align-items: center;
1265
+ margin-bottom: 0;
1266
+ background: white;
1267
+ font-size: 12px;
1268
+ color: rgb(170, 170, 170);
1269
+ padding-right: 16px;
1270
+ padding-left: 16px;
1271
+ height: 40px;
1417
1272
  }
1418
1273
 
1419
- .TextField {
1420
- position: relative;
1421
- width: 100%;
1274
+ .calendar .monthSelect span {
1275
+ margin-right: auto;
1422
1276
  }
1423
1277
 
1424
- .TextField > label {
1425
- font-family: Roboto, sans-serif;
1426
- color: rgba(0, 0, 0, 0.5);
1427
- font-size: 16px;
1428
- position: absolute;
1429
- left: 0px;
1430
- top: 16px;
1431
- margin-top: -16px;
1432
- transition: all 0.2s ease;
1433
- user-select: none;
1434
- cursor: text;
1278
+ .calendar .monthSelect .Button {
1279
+ min-width: 25px;
1280
+ min-height: 25px;
1435
1281
  }
1436
1282
 
1437
- .TextField > input {
1438
- font-family: Roboto, sans-serif;
1439
- color: #1e252d;
1440
- height: 19px;
1283
+ .calendar .monthSelect .Button .material-icons {
1441
1284
  font-size: 16px;
1442
- width: 100%;
1443
- border: 0px;
1444
- padding-bottom: 4px;
1445
- padding-top: 0;
1446
- outline-color: rgba(0, 0, 0, 0);
1447
1285
  }
1448
1286
 
1449
- .TextField > input:focus {
1450
- outline: none;
1287
+ .calendar .monthSelect .Button.disabled {
1288
+ background: transparent;
1451
1289
  }
1452
1290
 
1453
- .TextField > input:disabled {
1454
- color: gray;
1455
- background-color: white;
1291
+ .calendar .CalendarMonthView {
1292
+ background: white;
1456
1293
  }
1457
1294
 
1458
- .TextField > input:disabled + .border {
1459
- height: 0px;
1460
- border-bottom: 2px dotted rgb(224, 224, 224);
1295
+ .calendar .CalendarMonthView .headers, .calendar .CalendarMonthView .days {
1296
+ margin-bottom: 0;
1461
1297
  }
1462
1298
 
1463
- .TextField > input::placeholder {
1464
- font-family: Roboto, sans-serif;
1465
- color: rgba(0, 0, 0, 0.3);
1466
- opacity: 1;
1299
+ .calendar .CalendarMonthView .header {
1300
+ font-size: 12px;
1301
+ font-weight: bold;
1302
+ text-align: center;
1303
+ text-transform: uppercase;
1304
+ margin: 5px;
1467
1305
  }
1468
1306
 
1469
- .TextField > .border {
1470
- border-bottom: 1px solid rgb(224, 224, 224);
1471
- height: 1px;
1472
- position: relative;
1307
+ .calendar .CalendarMonthView .day {
1308
+ font-size: 10px;
1473
1309
  }
1474
1310
 
1475
- .TextField > .border .line {
1476
- left: 50%;
1477
- width: 0;
1478
- height: 2px;
1479
- min-height: 2px;
1480
- background-color: rgb(0, 188, 212);
1481
- transition: all 0.2s ease;
1482
- position: absolute;
1311
+ .calendar .CalendarMonthView .day.notSelectedMonth {
1312
+ color: #969696;
1483
1313
  }
1484
1314
 
1485
- .TextField > .error {
1486
- text-align: left;
1487
- font-size: 10px;
1488
- min-height: 0;
1489
- line-height: 14px;
1490
- color: rgb(244, 67, 54);
1491
- visibility: hidden;
1492
- opacity: 0;
1493
- transition: all 0.2s ease;
1315
+ .calendar .CalendarMonthView .day span {
1316
+ display: inline-flex;
1317
+ justify-content: center;
1318
+ align-items: center;
1319
+ border-radius: 50%;
1320
+ width: 25px;
1321
+ height: 25px;
1322
+ margin: 5px;
1323
+ transition: 0.2s all ease;
1324
+ cursor: pointer;
1494
1325
  }
1495
1326
 
1496
- .TextField.focused > label, .TextField.withValue > label {
1497
- top: 4px;
1498
- font-size: 12px;
1499
- line-height: 14px;
1327
+ .calendar .CalendarMonthView .day span:hover {
1328
+ background-color: #e6e6e6;
1500
1329
  }
1501
1330
 
1502
- .TextField.errored > .error {
1503
- visibility: visible;
1504
- opacity: 1;
1331
+ .calendar .CalendarMonthView .day span.inactive {
1332
+ color: lightgray;
1333
+ cursor: unset;
1505
1334
  }
1506
1335
 
1507
- .TextField.errored > .border {
1508
- border-bottom-color: rgb(244, 67, 54);
1336
+ .calendar .CalendarMonthView .day span.inactive:hover {
1337
+ background: unset;
1509
1338
  }
1510
1339
 
1511
- .TextField.errored > label {
1512
- color: rgb(244, 67, 54);
1340
+ .calendar .CalendarMonthView .day span.selected {
1341
+ color: white;
1342
+ background-color: #2196F3;
1513
1343
  }
1514
1344
 
1515
- .TextField.focused > label {
1516
- color: rgb(0, 188, 212);
1345
+ .calendar .CalendarMonthView .day span.selected:hover {
1346
+ background-color: #51adf6;
1517
1347
  }
1518
1348
 
1519
- .TextField.focused > .border .line {
1349
+ .Modal {
1350
+ display: block;
1351
+ position: fixed;
1352
+ top: 0;
1520
1353
  left: 0;
1521
- width: 100%;
1354
+ right: 0;
1355
+ bottom: 100%;
1356
+ overflow-y: scroll;
1357
+ transition: bottom 0ms linear;
1358
+ transition-delay: 0.2s;
1522
1359
  }
1523
1360
 
1524
- .TextField.disabled label, .TextField.disabled input {
1525
- cursor: not-allowed;
1361
+ .Modal.show {
1362
+ transition-delay: 0s;
1363
+ bottom: 0;
1526
1364
  }
1527
1365
 
1528
- .TextField.withLabel {
1529
- margin-top: 15px;
1366
+ .Modal > .overlay {
1367
+ position: fixed;
1368
+ top: 0;
1369
+ bottom: 100%;
1370
+ left: 0;
1371
+ right: 0;
1372
+ transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1373
+ opacity: 0;
1374
+ background-color: black;
1375
+ pointer-events: none;
1530
1376
  }
1531
1377
 
1532
- .TextField input::-webkit-contacts-auto-fill-button {
1533
- visibility: hidden;
1534
- display: none !important;
1535
- pointer-events: none;
1536
- position: absolute;
1537
- right: 0;
1378
+ .Modal > .overlay.show {
1379
+ opacity: 0.5;
1380
+ bottom: 0;
1538
1381
  }
1539
1382
 
1540
- .TextField input:-webkit-autofill {
1541
- -webkit-box-shadow: inset 0 0 0px 9999px white;
1383
+ .Modal > .content {
1384
+ left: 50%;
1385
+ top: 10vh;
1386
+ margin-bottom: 10vh;
1387
+ font-size: 16px;
1388
+ padding: 0;
1389
+ opacity: 0;
1390
+ transition: opacity 0.25s ease, transform 0.25s ease;
1391
+ transform: scaleY(0) translateY(-200px) translateX(-50%);
1392
+ transform-origin: top;
1393
+ position: absolute;
1394
+ border-radius: 2px;
1395
+ box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.3);
1542
1396
  }
1543
1397
 
1544
- @keyframes shake {
1545
- 0%, 100% {
1546
- transform: translateX(0);
1547
- }
1548
- 20%, 60% {
1549
- transform: translateX(-5px);
1550
- }
1551
- 40%, 80% {
1552
- transform: translateX(5px);
1553
- }
1398
+ .Modal > .content.show {
1399
+ opacity: 1;
1400
+ transform: scaleY(1) translateY(0px) translateX(-50%);
1554
1401
  }
1555
- .TextField .shake {
1556
- animation-duration: 0.5s;
1557
- animation-fill-mode: both;
1558
- animation-timing-function: ease-in-out;
1559
- animation-name: shake;
1402
+
1403
+ .Modal > .content > .Scrollable {
1404
+ overflow: visible;
1405
+ max-height: 80vh;
1560
1406
  }
1561
1407
 
1562
- .CircleProgress {
1563
- width: 48px;
1564
- height: 48px;
1408
+ .Modal > .content > .Scrollable > .viewport {
1409
+ min-width: 10px;
1410
+ min-height: 10px;
1565
1411
  }
1566
1412
 
1567
- .CircleProgress .line {
1568
- stroke-width: 2px;
1569
- stroke: black;
1570
- stroke-linecap: square;
1571
- fill: none;
1572
- transition: stroke-dashoffset 0.2s ease;
1413
+ .Modal > .content > .Button.close {
1414
+ top: 10px;
1415
+ right: 10px;
1416
+ position: absolute;
1573
1417
  }
1574
1418
 
1575
1419
  .Switch {
@@ -1654,74 +1498,139 @@
1654
1498
  display: none;
1655
1499
  }
1656
1500
 
1657
- .Modal {
1501
+ .SpinningProgress {
1502
+ width: 48px;
1503
+ height: 48px;
1504
+ position: relative;
1505
+ margin: 0 auto;
1506
+ }
1507
+
1508
+ .SpinningProgress:before {
1509
+ content: "";
1658
1510
  display: block;
1659
- position: fixed;
1511
+ padding-top: 100%;
1512
+ }
1513
+
1514
+ .SpinningProgress .circular {
1515
+ animation: rotate 2s linear infinite;
1516
+ height: 100%;
1517
+ transform-origin: center center;
1518
+ width: 100%;
1519
+ position: absolute;
1660
1520
  top: 0;
1521
+ bottom: 0;
1661
1522
  left: 0;
1662
1523
  right: 0;
1663
- bottom: 100%;
1664
- overflow-y: scroll;
1665
- transition: bottom 0ms linear;
1666
- transition-delay: 0.2s;
1524
+ margin: auto;
1667
1525
  }
1668
1526
 
1669
- .Modal.show {
1670
- transition-delay: 0s;
1671
- bottom: 0;
1527
+ .SpinningProgress .line {
1528
+ stroke: black;
1529
+ stroke-width: 2px;
1530
+ stroke-dasharray: 1, 96;
1531
+ stroke-dashoffset: 0;
1532
+ animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
1672
1533
  }
1673
1534
 
1674
- .Modal > .overlay {
1535
+ @keyframes rotate {
1536
+ 100% {
1537
+ transform: rotate(360deg);
1538
+ }
1539
+ }
1540
+ @keyframes dash {
1541
+ 0% {
1542
+ stroke-dasharray: 1, 96;
1543
+ stroke-dashoffset: 0;
1544
+ }
1545
+ 50% {
1546
+ stroke-dasharray: 43, 96;
1547
+ stroke-dashoffset: -17px;
1548
+ }
1549
+ 100% {
1550
+ stroke-dasharray: 43, 96;
1551
+ stroke-dashoffset: -53px;
1552
+ }
1553
+ }
1554
+ .Snackbar {
1555
+ transform: translateX(-50%);
1556
+ overflow: hidden;
1557
+ background-color: #323232;
1558
+ padding: 14px 24px 14px 24px;
1559
+ color: #fff;
1560
+ min-width: 288px;
1561
+ max-width: 568px;
1675
1562
  position: fixed;
1676
- top: 0;
1677
- bottom: 100%;
1678
- left: 0;
1679
- right: 0;
1680
- transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1563
+ bottom: -50px;
1564
+ left: 50%;
1565
+ display: flex;
1566
+ flex-wrap: nowrap;
1567
+ align-items: center;
1681
1568
  opacity: 0;
1682
- background-color: black;
1683
- pointer-events: none;
1569
+ transition: bottom 0.25s ease, opacity 0.2s ease;
1570
+ border-radius: 4px;
1571
+ box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
1572
+ }
1573
+
1574
+ .Snackbar.shown {
1575
+ bottom: 15px;
1576
+ opacity: 1;
1577
+ }
1578
+
1579
+ .Snackbar .message {
1580
+ overflow: hidden;
1581
+ line-height: 1.2em;
1582
+ min-height: 1.2em;
1583
+ max-height: 2.4em;
1584
+ flex: 1;
1585
+ }
1586
+
1587
+ .Snackbar .action {
1588
+ text-transform: uppercase;
1589
+ font-weight: bold;
1590
+ margin-left: 48px;
1591
+ color: #bf3727;
1592
+ }
1593
+
1594
+ .Snackbar .action a {
1595
+ text-decoration: none;
1596
+ color: #bf3727;
1597
+ }
1598
+
1599
+ .ModalMenu {
1600
+ position: absolute;
1601
+ top: 10px;
1602
+ right: 50px;
1684
1603
  }
1685
1604
 
1686
- .Modal > .overlay.show {
1687
- opacity: 0.5;
1688
- bottom: 0;
1605
+ .ModalMenu .material-icons {
1606
+ color: #818181;
1689
1607
  }
1690
1608
 
1691
- .Modal > .content {
1692
- left: 50%;
1693
- top: 10vh;
1694
- margin-bottom: 10vh;
1695
- font-size: 16px;
1696
- padding: 0;
1697
- opacity: 0;
1698
- transition: opacity 0.25s ease, transform 0.25s ease;
1699
- transform: scaleY(0) translateY(-200px) translateX(-50%);
1700
- transform-origin: top;
1609
+ .ModalMenu .Button.animated {
1701
1610
  position: absolute;
1702
- border-radius: 2px;
1703
- box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.3);
1611
+ transition: opacity 150ms ease-in, right 200ms ease-in;
1612
+ opacity: 0;
1613
+ right: 0;
1614
+ top: 0;
1704
1615
  }
1705
1616
 
1706
- .Modal > .content.show {
1617
+ .ModalMenu .Button.animated.mounting, .ModalMenu .Button.animated.mounted {
1707
1618
  opacity: 1;
1708
- transform: scaleY(1) translateY(0px) translateX(-50%);
1709
1619
  }
1710
1620
 
1711
- .Modal > .content > .Scrollable {
1712
- overflow: visible;
1713
- max-height: 80vh;
1621
+ .ModalMenu .Button.animated.unmounting {
1622
+ transition: opacity 100ms ease-out, right 200ms ease-out;
1714
1623
  }
1715
1624
 
1716
- .Modal > .content > .Scrollable > .viewport {
1717
- min-width: 10px;
1718
- min-height: 10px;
1625
+ .ModalMenu .Button.active {
1626
+ background: #EBEBEB;
1719
1627
  }
1720
1628
 
1721
- .Modal > .content > .Button.close {
1722
- top: 10px;
1723
- right: 10px;
1724
- position: absolute;
1629
+ .ModalMenu .separator {
1630
+ height: 24px;
1631
+ width: 1px;
1632
+ background-color: #D9D9D9;
1633
+ margin-left: 4px;
1725
1634
  }
1726
1635
 
1727
1636
  .Table {
@@ -1846,95 +1755,186 @@
1846
1755
  margin: 0;
1847
1756
  }
1848
1757
 
1849
- .ScrollableTable .Scrollable .scrollbar {
1850
- top: 56px;
1758
+ .Button.FloatingActionButton {
1759
+ position: absolute;
1760
+ right: 16px;
1761
+ bottom: 16px;
1762
+ width: 56px;
1763
+ height: 56px;
1764
+ padding: 16px;
1765
+ transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1851
1766
  }
1852
1767
 
1853
- .ScrollableTable .Table {
1854
- position: static;
1768
+ .Button.FloatingActionButton.raised {
1769
+ 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);
1855
1770
  }
1856
1771
 
1857
- .CalendarMonthView {
1858
- display: flex;
1859
- flex-flow: column nowrap;
1860
- height: 100%;
1772
+ .Button.FloatingActionButton.mini {
1773
+ width: 40px;
1774
+ height: 40px;
1775
+ padding: 8px;
1861
1776
  }
1862
1777
 
1863
- .CalendarMonthView > .row {
1864
- display: flex;
1865
- flex-flow: row nowrap;
1778
+ .Button.FloatingActionButton.hidden {
1779
+ bottom: -100px;
1866
1780
  }
1867
1781
 
1868
- .CalendarMonthView .days {
1869
- flex-grow: 1;
1782
+ .TextField {
1870
1783
  position: relative;
1784
+ width: 100%;
1871
1785
  }
1872
1786
 
1873
- .CalendarMonthView .day, .CalendarMonthView .header {
1874
- flex-grow: 1;
1875
- flex-basis: 1px;
1787
+ .TextField > label {
1788
+ font-family: Roboto, sans-serif;
1789
+ color: rgba(0, 0, 0, 0.5);
1790
+ font-size: 16px;
1791
+ position: absolute;
1792
+ left: 0px;
1793
+ top: 16px;
1794
+ margin-top: -16px;
1795
+ transition: all 0.2s ease;
1796
+ user-select: none;
1797
+ cursor: text;
1876
1798
  }
1877
1799
 
1878
- .CalendarMonthView .day {
1879
- height: 100%;
1800
+ .TextField > input {
1801
+ font-family: Roboto, sans-serif;
1802
+ color: #1e252d;
1803
+ height: 19px;
1804
+ font-size: 16px;
1805
+ width: 100%;
1806
+ border: 0px;
1807
+ padding-bottom: 4px;
1808
+ padding-top: 0;
1809
+ outline-color: rgba(0, 0, 0, 0);
1880
1810
  }
1881
1811
 
1882
- .Dropzone {
1812
+ .TextField > input:focus {
1813
+ outline: none;
1814
+ }
1815
+
1816
+ .TextField > input:disabled {
1817
+ color: gray;
1818
+ background-color: white;
1819
+ }
1820
+
1821
+ .TextField > input:disabled + .border {
1822
+ height: 0px;
1823
+ border-bottom: 2px dotted rgb(224, 224, 224);
1824
+ }
1825
+
1826
+ .TextField > input::placeholder {
1827
+ font-family: Roboto, sans-serif;
1828
+ color: rgba(0, 0, 0, 0.3);
1829
+ opacity: 1;
1830
+ }
1831
+
1832
+ .TextField > .border {
1833
+ border-bottom: 1px solid rgb(224, 224, 224);
1834
+ height: 1px;
1883
1835
  position: relative;
1884
1836
  }
1885
1837
 
1886
- .Dropzone > .overlay {
1838
+ .TextField > .border .line {
1839
+ left: 50%;
1840
+ width: 0;
1841
+ height: 2px;
1842
+ min-height: 2px;
1843
+ background-color: rgb(0, 188, 212);
1844
+ transition: all 0.2s ease;
1887
1845
  position: absolute;
1888
- left: 0;
1889
- right: 0;
1890
- top: 0;
1891
- bottom: 0;
1892
- background-color: #38ADC4;
1893
- z-index: 1;
1846
+ }
1847
+
1848
+ .TextField > .error {
1849
+ text-align: left;
1850
+ font-size: 10px;
1851
+ min-height: 0;
1852
+ line-height: 14px;
1853
+ color: rgb(244, 67, 54);
1854
+ visibility: hidden;
1894
1855
  opacity: 0;
1895
1856
  transition: all 0.2s ease;
1896
- transition-delay: 100ms;
1897
- visibility: hidden;
1898
- display: flex;
1899
- justify-content: center;
1900
- align-items: center;
1901
1857
  }
1902
1858
 
1903
- .Dropzone > .overlay .drop {
1904
- border-radius: 4px;
1905
- border: 1px dashed #FFFFFF;
1906
- position: absolute;
1907
- top: 18px;
1908
- left: 18px;
1909
- right: 18px;
1910
- bottom: 18px;
1911
- display: flex;
1912
- justify-content: center;
1913
- align-items: center;
1914
- font-weight: 500;
1915
- font-size: 18px;
1916
- color: #FFFFFF;
1859
+ .TextField.focused > label, .TextField.withValue > label {
1860
+ top: 4px;
1861
+ font-size: 12px;
1862
+ line-height: 14px;
1917
1863
  }
1918
1864
 
1919
- .Dropzone.dragging > .overlay {
1920
- opacity: 0.7;
1865
+ .TextField.errored > .error {
1921
1866
  visibility: visible;
1922
- transition-delay: 0s;
1867
+ opacity: 1;
1923
1868
  }
1924
1869
 
1925
- .Dropzone.dragging > * {
1926
- pointer-events: none;
1870
+ .TextField.errored > .border {
1871
+ border-bottom-color: rgb(244, 67, 54);
1927
1872
  }
1928
1873
 
1929
- .Dropzone > input.file {
1930
- position: absolute;
1874
+ .TextField.errored > label {
1875
+ color: rgb(244, 67, 54);
1876
+ }
1877
+
1878
+ .TextField.focused > label {
1879
+ color: rgb(0, 188, 212);
1880
+ }
1881
+
1882
+ .TextField.focused > .border .line {
1931
1883
  left: 0;
1932
- right: 0;
1933
- top: 0;
1934
- bottom: 0;
1935
1884
  width: 100%;
1936
- height: 100%;
1885
+ }
1886
+
1887
+ .TextField.disabled label, .TextField.disabled input {
1888
+ cursor: not-allowed;
1889
+ }
1890
+
1891
+ .TextField.withLabel {
1892
+ margin-top: 15px;
1893
+ }
1894
+
1895
+ .TextField input::-webkit-contacts-auto-fill-button {
1896
+ visibility: hidden;
1897
+ display: none !important;
1898
+ pointer-events: none;
1899
+ position: absolute;
1900
+ right: 0;
1901
+ }
1902
+
1903
+ .TextField input:-webkit-autofill {
1904
+ -webkit-box-shadow: inset 0 0 0px 9999px white;
1905
+ }
1906
+
1907
+ @keyframes shake {
1908
+ 0%, 100% {
1909
+ transform: translateX(0);
1910
+ }
1911
+ 20%, 60% {
1912
+ transform: translateX(-5px);
1913
+ }
1914
+ 40%, 80% {
1915
+ transform: translateX(5px);
1916
+ }
1917
+ }
1918
+ .TextField .shake {
1919
+ animation-duration: 0.5s;
1920
+ animation-fill-mode: both;
1921
+ animation-timing-function: ease-in-out;
1922
+ animation-name: shake;
1923
+ }
1924
+
1925
+ .ScrollableTable .Scrollable .scrollbar {
1926
+ top: 56px;
1927
+ }
1928
+
1929
+ .ScrollableTable .Table {
1930
+ position: static;
1931
+ }
1932
+
1933
+ .animated {
1934
+ transition: opacity 250ms ease;
1937
1935
  opacity: 0;
1938
- cursor: pointer;
1939
- z-index: 1;
1936
+ }
1937
+
1938
+ .animated.mounting, .animated.mounted {
1939
+ opacity: 1;
1940
1940
  }