react-ui-basics 0.0.199 → 0.0.201

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,73 +293,6 @@
293
293
  position: absolute;
294
294
  }
295
295
 
296
- .Checkbox {
297
- position: relative;
298
- white-space: pre;
299
- }
300
-
301
- .Checkbox *, .Checkbox *:before, .Checkbox *:after {
302
- box-sizing: border-box;
303
- }
304
-
305
- .Checkbox label {
306
- font-family: Roboto, sans-serif;
307
- font-size: 14px;
308
- color: #1e252d;
309
- cursor: pointer;
310
- }
311
-
312
- .Checkbox label:before, .Checkbox label:after {
313
- content: "";
314
- position: absolute;
315
- left: 0;
316
- top: 0;
317
- }
318
-
319
- .Checkbox label:before {
320
- width: 20px;
321
- height: 20px;
322
- background: #fff;
323
- border: 2px solid #252525;
324
- border-radius: 2px;
325
- cursor: pointer;
326
- transition: background 0.3s;
327
- }
328
-
329
- .Checkbox input[type=checkbox] {
330
- outline: 0;
331
- margin-right: 10px;
332
- visibility: hidden;
333
- }
334
-
335
- .Checkbox input[type=checkbox]:checked + label:before {
336
- background: #4AC263;
337
- border: none;
338
- }
339
-
340
- .Checkbox input[type=checkbox]:checked + label:after {
341
- transform: rotate(-45deg);
342
- top: 6px;
343
- left: 4px;
344
- width: 12px;
345
- height: 6px;
346
- border: 2px solid #fff;
347
- border-top-style: none;
348
- border-right-style: none;
349
- }
350
-
351
- .Checkbox input[type=checkbox]:disabled + label {
352
- color: gray;
353
- }
354
-
355
- .Checkbox input[type=checkbox]:disabled + label:before {
356
- border-color: rgba(0, 0, 0, 0.26);
357
- }
358
-
359
- .Checkbox input[type=checkbox]:disabled:checked + label:before {
360
- background: rgba(0, 0, 0, 0.26);
361
- }
362
-
363
296
  .CircleProgress {
364
297
  width: 48px;
365
298
  height: 48px;
@@ -373,117 +306,6 @@
373
306
  transition: stroke-dashoffset 0.2s ease;
374
307
  }
375
308
 
376
- .DialogModal {
377
- overflow: hidden;
378
- }
379
-
380
- .DialogModal .content {
381
- top: 20vh;
382
- }
383
-
384
- .Dialog {
385
- background-color: white;
386
- min-width: 460px;
387
- max-width: 40vw;
388
- padding: 15px;
389
- }
390
-
391
- .Dialog .title {
392
- margin-bottom: 15px;
393
- padding: 20px 50px 0px 30px;
394
- font-size: 1.25rem;
395
- line-height: 2rem;
396
- font-weight: 400;
397
- letter-spacing: 0.0125em;
398
- }
399
-
400
- .Dialog .description {
401
- color: rgba(0, 0, 0, 0.54);
402
- font-size: 1rem;
403
- line-height: 1.5rem;
404
- font-weight: 400;
405
- letter-spacing: 0.03125em;
406
- margin-top: 20px;
407
- padding: 0 24px 24px;
408
- }
409
-
410
- .Dialog > div.row {
411
- margin-bottom: 15px;
412
- }
413
-
414
- .Dialog > div.row:last-child {
415
- margin-bottom: 0;
416
- }
417
-
418
- .animated {
419
- transition: opacity 250ms ease;
420
- opacity: 0;
421
- }
422
-
423
- .animated.mounting, .animated.mounted {
424
- opacity: 1;
425
- }
426
-
427
- .Dropzone {
428
- position: relative;
429
- }
430
-
431
- .Dropzone > .overlay {
432
- position: absolute;
433
- left: 0;
434
- right: 0;
435
- top: 0;
436
- bottom: 0;
437
- background-color: #38ADC4;
438
- z-index: 1;
439
- opacity: 0;
440
- transition: all 0.2s ease;
441
- transition-delay: 100ms;
442
- visibility: hidden;
443
- display: flex;
444
- justify-content: center;
445
- align-items: center;
446
- }
447
-
448
- .Dropzone > .overlay .drop {
449
- border-radius: 4px;
450
- border: 1px dashed #FFFFFF;
451
- position: absolute;
452
- top: 18px;
453
- left: 18px;
454
- right: 18px;
455
- bottom: 18px;
456
- display: flex;
457
- justify-content: center;
458
- align-items: center;
459
- font-weight: 500;
460
- font-size: 18px;
461
- color: #FFFFFF;
462
- }
463
-
464
- .Dropzone.dragging > .overlay {
465
- opacity: 0.7;
466
- visibility: visible;
467
- transition-delay: 0s;
468
- }
469
-
470
- .Dropzone.dragging > * {
471
- pointer-events: none;
472
- }
473
-
474
- .Dropzone > input.file {
475
- position: absolute;
476
- left: 0;
477
- right: 0;
478
- top: 0;
479
- bottom: 0;
480
- width: 100%;
481
- height: 100%;
482
- opacity: 0;
483
- cursor: pointer;
484
- z-index: 1;
485
- }
486
-
487
309
  .Button {
488
310
  position: relative;
489
311
  min-width: 64px;
@@ -650,6 +472,82 @@
650
472
  border: 0;
651
473
  }
652
474
 
475
+ .animated {
476
+ transition: opacity 250ms ease;
477
+ opacity: 0;
478
+ }
479
+
480
+ .animated.mounting, .animated.mounted {
481
+ opacity: 1;
482
+ }
483
+
484
+ .Checkbox {
485
+ position: relative;
486
+ white-space: pre;
487
+ }
488
+
489
+ .Checkbox *, .Checkbox *:before, .Checkbox *:after {
490
+ box-sizing: border-box;
491
+ }
492
+
493
+ .Checkbox label {
494
+ font-family: Roboto, sans-serif;
495
+ font-size: 14px;
496
+ color: #1e252d;
497
+ cursor: pointer;
498
+ }
499
+
500
+ .Checkbox label:before, .Checkbox label:after {
501
+ content: "";
502
+ position: absolute;
503
+ left: 0;
504
+ top: 0;
505
+ }
506
+
507
+ .Checkbox label:before {
508
+ width: 20px;
509
+ height: 20px;
510
+ background: #fff;
511
+ border: 2px solid #252525;
512
+ border-radius: 2px;
513
+ cursor: pointer;
514
+ transition: background 0.3s;
515
+ }
516
+
517
+ .Checkbox input[type=checkbox] {
518
+ outline: 0;
519
+ margin-right: 10px;
520
+ visibility: hidden;
521
+ }
522
+
523
+ .Checkbox input[type=checkbox]:checked + label:before {
524
+ background: #4AC263;
525
+ border: none;
526
+ }
527
+
528
+ .Checkbox input[type=checkbox]:checked + label:after {
529
+ transform: rotate(-45deg);
530
+ top: 6px;
531
+ left: 4px;
532
+ width: 12px;
533
+ height: 6px;
534
+ border: 2px solid #fff;
535
+ border-top-style: none;
536
+ border-right-style: none;
537
+ }
538
+
539
+ .Checkbox input[type=checkbox]:disabled + label {
540
+ color: gray;
541
+ }
542
+
543
+ .Checkbox input[type=checkbox]:disabled + label:before {
544
+ border-color: rgba(0, 0, 0, 0.26);
545
+ }
546
+
547
+ .Checkbox input[type=checkbox]:disabled:checked + label:before {
548
+ background: rgba(0, 0, 0, 0.26);
549
+ }
550
+
653
551
  .DropFileInput {
654
552
  flex-grow: 1;
655
553
  }
@@ -677,8 +575,32 @@
677
575
  margin-right: 10px;
678
576
  }
679
577
 
680
- .Scrollable {
681
- max-height: 250px;
578
+ .Button.FloatingActionButton {
579
+ position: absolute;
580
+ right: 16px;
581
+ bottom: 16px;
582
+ width: 56px;
583
+ height: 56px;
584
+ padding: 16px;
585
+ transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
586
+ }
587
+
588
+ .Button.FloatingActionButton.raised {
589
+ 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);
590
+ }
591
+
592
+ .Button.FloatingActionButton.mini {
593
+ width: 40px;
594
+ height: 40px;
595
+ padding: 8px;
596
+ }
597
+
598
+ .Button.FloatingActionButton.hidden {
599
+ bottom: -100px;
600
+ }
601
+
602
+ .Scrollable {
603
+ max-height: 250px;
682
604
  max-width: 250px;
683
605
  padding-right: 5px;
684
606
  position: relative;
@@ -772,89 +694,213 @@
772
694
  will-change: left;
773
695
  }
774
696
 
775
- .FilteredList {
776
- max-height: 250px;
697
+ .Dropzone {
777
698
  position: relative;
778
699
  }
779
700
 
780
- .FilteredList.popup {
781
- padding: 0;
701
+ .Dropzone > .overlay {
702
+ position: absolute;
703
+ left: 0;
704
+ right: 0;
705
+ top: 0;
706
+ bottom: 0;
707
+ background-color: #38ADC4;
708
+ z-index: 1;
709
+ opacity: 0;
710
+ transition: all 0.2s ease;
711
+ transition-delay: 100ms;
782
712
  visibility: hidden;
713
+ display: flex;
714
+ justify-content: center;
715
+ align-items: center;
716
+ }
717
+
718
+ .Dropzone > .overlay .drop {
719
+ border-radius: 4px;
720
+ border: 1px dashed #FFFFFF;
783
721
  position: absolute;
784
- background: white;
785
- z-index: 4;
786
- 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);
787
- transition: all 0.2s ease-out;
788
- top: calc(100% + 4px);
722
+ top: 18px;
723
+ left: 18px;
724
+ right: 18px;
725
+ bottom: 18px;
726
+ display: flex;
727
+ justify-content: center;
728
+ align-items: center;
729
+ font-weight: 500;
730
+ font-size: 18px;
731
+ color: #FFFFFF;
732
+ }
733
+
734
+ .Dropzone.dragging > .overlay {
735
+ opacity: 0.7;
736
+ visibility: visible;
737
+ transition-delay: 0s;
738
+ }
739
+
740
+ .Dropzone.dragging > * {
741
+ pointer-events: none;
742
+ }
743
+
744
+ .Dropzone > input.file {
745
+ position: absolute;
746
+ left: 0;
747
+ right: 0;
748
+ top: 0;
749
+ bottom: 0;
750
+ width: 100%;
751
+ height: 100%;
789
752
  opacity: 0;
790
- border-radius: 2px;
753
+ cursor: pointer;
754
+ z-index: 1;
791
755
  }
792
756
 
793
- .FilteredList.popup.visible {
757
+ .ModalMenu {
758
+ position: absolute;
759
+ top: 10px;
760
+ right: 50px;
761
+ }
762
+
763
+ .ModalMenu .material-icons {
764
+ color: #818181;
765
+ }
766
+
767
+ .ModalMenu .Button.animated {
768
+ position: absolute;
769
+ transition: opacity 150ms ease-in, right 200ms ease-in;
770
+ opacity: 0;
771
+ right: 0;
772
+ top: 0;
773
+ }
774
+
775
+ .ModalMenu .Button.animated.mounting, .ModalMenu .Button.animated.mounted {
794
776
  opacity: 1;
795
- visibility: visible;
796
777
  }
797
778
 
798
- .FilteredList.portal {
799
- transition: opacity 0.2s ease-out;
779
+ .ModalMenu .Button.animated.unmounting {
780
+ transition: opacity 100ms ease-out, right 200ms ease-out;
800
781
  }
801
782
 
802
- .FilteredList.inline {
803
- max-height: 225px;
804
- margin-top: 5px;
783
+ .ModalMenu .Button.active {
784
+ background: #EBEBEB;
805
785
  }
806
786
 
807
- .FilteredList .child {
808
- display: flex;
809
- flex-flow: row nowrap;
810
- align-items: center;
811
- white-space: nowrap;
812
- font-size: 14px;
813
- color: rgb(34, 34, 34);
814
- height: 30px;
815
- padding: 5px 10px;
816
- padding-right: 15px;
817
- cursor: pointer;
787
+ .ModalMenu .separator {
788
+ height: 24px;
789
+ width: 1px;
790
+ background-color: #D9D9D9;
791
+ margin-left: 4px;
792
+ }
793
+
794
+ .DialogModal {
818
795
  overflow: hidden;
819
- transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
820
- border-left: 5px solid #4AC263;
821
- padding-left: 15px;
822
- margin-left: -5px;
823
796
  }
824
797
 
825
- .FilteredList .child.hidden {
826
- height: 0 !important;
827
- padding: 0 !important;
798
+ .DialogModal .content {
799
+ top: 20vh;
828
800
  }
829
801
 
830
- .FilteredList .child.selected {
831
- background-color: #F0F0F0;
832
- padding-left: 10px;
833
- margin-left: 0px;
802
+ .Dialog {
803
+ background-color: white;
804
+ min-width: 460px;
805
+ max-width: 40vw;
806
+ padding: 15px;
834
807
  }
835
808
 
836
- .FilteredList .child.active {
837
- background-color: rgb(238, 238, 238);
809
+ .Dialog .title {
810
+ margin-bottom: 15px;
811
+ padding: 20px 50px 0px 30px;
812
+ font-size: 1.25rem;
813
+ line-height: 2rem;
814
+ font-weight: 400;
815
+ letter-spacing: 0.0125em;
838
816
  }
839
817
 
840
- .FilteredList .child {
841
- margin-top: 8px;
818
+ .Dialog .description {
819
+ color: rgba(0, 0, 0, 0.54);
820
+ font-size: 1rem;
821
+ line-height: 1.5rem;
822
+ font-weight: 400;
823
+ letter-spacing: 0.03125em;
824
+ margin-top: 20px;
825
+ padding: 0 24px 24px;
842
826
  }
843
827
 
844
- .FilteredList .child.hidden {
845
- margin-top: 0;
828
+ .Dialog > div.row {
829
+ margin-bottom: 15px;
846
830
  }
847
831
 
848
- .FilteredList .child:not(.hidden) ~ .child {
849
- margin-top: 0;
832
+ .Dialog > div.row:last-child {
833
+ margin-bottom: 0;
850
834
  }
851
835
 
852
- .FilteredList .child:not(.hidden) ~ .child:last-child {
853
- margin-bottom: 8px;
836
+ .Modal {
837
+ display: block;
838
+ position: fixed;
839
+ top: 0;
840
+ left: 0;
841
+ right: 0;
842
+ bottom: 100%;
843
+ overflow-y: scroll;
844
+ transition: bottom 0ms linear;
845
+ transition-delay: 0.2s;
854
846
  }
855
847
 
856
- .FilteredList .child:not(.hidden):last-child {
857
- margin-bottom: 8px;
848
+ .Modal.show {
849
+ transition-delay: 0s;
850
+ bottom: 0;
851
+ }
852
+
853
+ .Modal > .overlay {
854
+ position: fixed;
855
+ top: 0;
856
+ bottom: 100%;
857
+ left: 0;
858
+ right: 0;
859
+ transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
860
+ opacity: 0;
861
+ background-color: black;
862
+ pointer-events: none;
863
+ }
864
+
865
+ .Modal > .overlay.show {
866
+ opacity: 0.5;
867
+ bottom: 0;
868
+ }
869
+
870
+ .Modal > .content {
871
+ left: 50%;
872
+ top: 10vh;
873
+ margin-bottom: 10vh;
874
+ font-size: 16px;
875
+ padding: 0;
876
+ opacity: 0;
877
+ transition: opacity 0.25s ease, transform 0.25s ease;
878
+ transform: scaleY(0) translateY(-200px) translateX(-50%);
879
+ transform-origin: top;
880
+ position: absolute;
881
+ border-radius: 2px;
882
+ box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.3);
883
+ }
884
+
885
+ .Modal > .content.show {
886
+ opacity: 1;
887
+ transform: scaleY(1) translateY(0px) translateX(-50%);
888
+ }
889
+
890
+ .Modal > .content > .Scrollable {
891
+ overflow: visible;
892
+ max-height: 80vh;
893
+ }
894
+
895
+ .Modal > .content > .Scrollable > .viewport {
896
+ min-width: 10px;
897
+ min-height: 10px;
898
+ }
899
+
900
+ .Modal > .content > .Button.close {
901
+ top: 10px;
902
+ right: 10px;
903
+ position: absolute;
858
904
  }
859
905
 
860
906
  .FormUploadProgress {
@@ -926,10 +972,95 @@
926
972
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.25);
927
973
  }
928
974
 
929
- .Switch {
930
- display: inline-flex;
931
- padding-top: 5px;
932
- }
975
+ .FilteredList {
976
+ max-height: 250px;
977
+ position: relative;
978
+ }
979
+
980
+ .FilteredList.popup {
981
+ padding: 0;
982
+ visibility: hidden;
983
+ position: absolute;
984
+ background: white;
985
+ z-index: 4;
986
+ 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);
987
+ transition: all 0.2s ease-out;
988
+ top: calc(100% + 4px);
989
+ opacity: 0;
990
+ border-radius: 2px;
991
+ }
992
+
993
+ .FilteredList.popup.visible {
994
+ opacity: 1;
995
+ visibility: visible;
996
+ }
997
+
998
+ .FilteredList.portal {
999
+ transition: opacity 0.2s ease-out;
1000
+ }
1001
+
1002
+ .FilteredList.inline {
1003
+ max-height: 225px;
1004
+ margin-top: 5px;
1005
+ }
1006
+
1007
+ .FilteredList .child {
1008
+ display: flex;
1009
+ flex-flow: row nowrap;
1010
+ align-items: center;
1011
+ white-space: nowrap;
1012
+ font-size: 14px;
1013
+ color: rgb(34, 34, 34);
1014
+ height: 30px;
1015
+ padding: 5px 10px;
1016
+ padding-right: 15px;
1017
+ cursor: pointer;
1018
+ overflow: hidden;
1019
+ transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1020
+ border-left: 5px solid #4AC263;
1021
+ padding-left: 15px;
1022
+ margin-left: -5px;
1023
+ }
1024
+
1025
+ .FilteredList .child.hidden {
1026
+ height: 0 !important;
1027
+ padding: 0 !important;
1028
+ }
1029
+
1030
+ .FilteredList .child.selected {
1031
+ background-color: #F0F0F0;
1032
+ padding-left: 10px;
1033
+ margin-left: 0px;
1034
+ }
1035
+
1036
+ .FilteredList .child.active {
1037
+ background-color: rgb(238, 238, 238);
1038
+ }
1039
+
1040
+ .FilteredList .child {
1041
+ margin-top: 8px;
1042
+ }
1043
+
1044
+ .FilteredList .child.hidden {
1045
+ margin-top: 0;
1046
+ }
1047
+
1048
+ .FilteredList .child:not(.hidden) ~ .child {
1049
+ margin-top: 0;
1050
+ }
1051
+
1052
+ .FilteredList .child:not(.hidden) ~ .child:last-child {
1053
+ margin-bottom: 8px;
1054
+ }
1055
+
1056
+ .FilteredList .child:not(.hidden):last-child {
1057
+ margin-bottom: 8px;
1058
+ }
1059
+
1060
+ .Switch {
1061
+ display: inline-flex;
1062
+ padding-top: 5px;
1063
+ }
933
1064
 
934
1065
  .Switch .switch-input {
935
1066
  display: none;
@@ -1008,341 +1139,239 @@
1008
1139
  display: none;
1009
1140
  }
1010
1141
 
1011
- .ModalMenu {
1012
- position: absolute;
1013
- top: 10px;
1014
- right: 50px;
1142
+ .ImageGallery {
1143
+ position: fixed;
1144
+ top: 0;
1145
+ left: 0;
1146
+ bottom: 0;
1147
+ right: 0;
1148
+ z-index: 1000;
1149
+ background-color: rgba(0, 0, 0, 0.01);
1150
+ user-select: none;
1015
1151
  }
1016
1152
 
1017
- .ModalMenu .material-icons {
1018
- color: #818181;
1153
+ .ImageGallery:focus {
1154
+ outline-width: 0px;
1019
1155
  }
1020
1156
 
1021
- .ModalMenu .Button.animated {
1157
+ .ImageGallery.animated {
1158
+ transition: background-color 0.25s ease;
1159
+ opacity: 1;
1160
+ }
1161
+
1162
+ .ImageGallery.mounting, .ImageGallery.mounted {
1163
+ background-color: rgba(0, 0, 0, 0.8);
1164
+ }
1165
+
1166
+ .ImageGallery .image {
1022
1167
  position: absolute;
1023
- transition: opacity 150ms ease-in, right 200ms ease-in;
1024
- opacity: 0;
1025
- right: 0;
1026
- top: 0;
1168
+ cursor: grab;
1027
1169
  }
1028
1170
 
1029
- .ModalMenu .Button.animated.mounting, .ModalMenu .Button.animated.mounted {
1030
- opacity: 1;
1171
+ .ImageGallery .image .counter {
1172
+ display: none;
1031
1173
  }
1032
1174
 
1033
- .ModalMenu .Button.animated.unmounting {
1034
- transition: opacity 100ms ease-out, right 200ms ease-out;
1175
+ .ImageGallery .image img {
1176
+ border-radius: 4px;
1177
+ max-width: 100%;
1178
+ min-width: 100%;
1035
1179
  }
1036
1180
 
1037
- .ModalMenu .Button.active {
1038
- background: #EBEBEB;
1181
+ .ImageGallery .image.animated {
1182
+ transition: top 0.25s ease, left 0.25s ease, width 0.25s ease, height 0.25s ease, opacity 0.25s ease;
1183
+ will-change: top, left, width, height, opacity;
1039
1184
  }
1040
1185
 
1041
- .ModalMenu .separator {
1042
- height: 24px;
1043
- width: 1px;
1044
- background-color: #D9D9D9;
1045
- margin-left: 4px;
1186
+ .ImageGallery .image.animated.mounting, .ImageGallery .image.animated.mounted, .ImageGallery .image.animated.unmounting {
1187
+ opacity: 1;
1046
1188
  }
1047
1189
 
1048
- .Modal {
1049
- display: block;
1050
- position: fixed;
1051
- top: 0;
1052
- left: 0;
1053
- right: 0;
1054
- bottom: 100%;
1055
- overflow-y: scroll;
1056
- transition: bottom 0ms linear;
1057
- transition-delay: 0.2s;
1190
+ .ImageGallery .image.zoomed {
1191
+ text-align: center;
1192
+ overflow: hidden;
1058
1193
  }
1059
1194
 
1060
- .Modal.show {
1061
- transition-delay: 0s;
1062
- bottom: 0;
1195
+ .ImageGallery .image.dragging {
1196
+ transition: none;
1197
+ cursor: move;
1063
1198
  }
1064
1199
 
1065
- .Modal > .overlay {
1066
- position: fixed;
1200
+ .ImageGallery .image .close {
1201
+ position: absolute;
1202
+ top: -18px;
1203
+ right: -18px;
1204
+ }
1205
+
1206
+ .ImageGallery .image .spinner {
1207
+ position: absolute;
1067
1208
  top: 0;
1068
- bottom: 100%;
1209
+ bottom: 0;
1069
1210
  left: 0;
1070
1211
  right: 0;
1071
- transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1072
- opacity: 0;
1073
- background-color: black;
1074
- pointer-events: none;
1212
+ background: rgba(0, 0, 0, 0.65);
1075
1213
  }
1076
1214
 
1077
- .Modal > .overlay.show {
1078
- opacity: 0.5;
1079
- bottom: 0;
1215
+ .ImageGallery .image .spinner .SpinningProgress {
1216
+ position: absolute;
1217
+ top: 50%;
1218
+ left: 50%;
1219
+ margin-left: -24px;
1220
+ margin-top: -24px;
1080
1221
  }
1081
1222
 
1082
- .Modal > .content {
1083
- left: 50%;
1084
- top: 10vh;
1085
- margin-bottom: 10vh;
1086
- font-size: 16px;
1087
- padding: 0;
1088
- opacity: 0;
1089
- transition: opacity 0.25s ease, transform 0.25s ease;
1090
- transform: scaleY(0) translateY(-200px) translateX(-50%);
1091
- transform-origin: top;
1092
- position: absolute;
1093
- border-radius: 2px;
1094
- box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.3);
1223
+ .ImageGallery .image .spinner .SpinningProgress .line {
1224
+ stroke: #2196F3;
1095
1225
  }
1096
1226
 
1097
- .Modal > .content.show {
1098
- opacity: 1;
1099
- transform: scaleY(1) translateY(0px) translateX(-50%);
1227
+ .ImageGallery .Button.animated {
1228
+ transition: all 0.25s ease;
1229
+ opacity: 0;
1230
+ transform: scale(0);
1100
1231
  }
1101
1232
 
1102
- .Modal > .content > .Scrollable {
1103
- overflow: visible;
1104
- max-height: 80vh;
1233
+ .ImageGallery .Button.animated.mounted, .ImageGallery .Button.animated.mounting {
1234
+ opacity: 1;
1235
+ transform: scale(1);
1105
1236
  }
1106
1237
 
1107
- .Modal > .content > .Scrollable > .viewport {
1108
- min-width: 10px;
1109
- min-height: 10px;
1238
+ .ImageGallery .Button {
1239
+ color: white;
1240
+ background: rgba(0, 0, 0, 0.4);
1110
1241
  }
1111
1242
 
1112
- .Modal > .content > .Button.close {
1113
- top: 10px;
1114
- right: 10px;
1115
- position: absolute;
1243
+ .ImageGallery .Button:hover {
1244
+ background: rgba(0, 0, 0, 0.7);
1116
1245
  }
1117
1246
 
1118
- .Button.FloatingActionButton {
1247
+ .ImageGallery > .arrow {
1119
1248
  position: absolute;
1120
- right: 16px;
1121
- bottom: 16px;
1122
- width: 56px;
1123
- height: 56px;
1124
- padding: 16px;
1125
- transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1249
+ top: 50%;
1250
+ height: 76px;
1251
+ width: 76px;
1252
+ margin-top: -38px;
1126
1253
  }
1127
1254
 
1128
- .Button.FloatingActionButton.raised {
1129
- 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);
1255
+ .ImageGallery > .arrow.left {
1256
+ left: 5%;
1130
1257
  }
1131
1258
 
1132
- .Button.FloatingActionButton.mini {
1133
- width: 40px;
1134
- height: 40px;
1135
- padding: 8px;
1259
+ .ImageGallery > .arrow.right {
1260
+ right: 5%;
1136
1261
  }
1137
1262
 
1138
- .Button.FloatingActionButton.hidden {
1139
- bottom: -100px;
1263
+ .ImageGallery > .arrow .material-icons {
1264
+ font-size: 40px;
1140
1265
  }
1141
1266
 
1142
- .Snackbar {
1143
- transform: translateX(-50%);
1144
- overflow: hidden;
1145
- background-color: #323232;
1146
- padding: 14px 24px 14px 24px;
1147
- color: #fff;
1148
- min-width: 288px;
1149
- max-width: 568px;
1150
- position: fixed;
1151
- bottom: -50px;
1152
- left: 50%;
1153
- display: flex;
1154
- flex-wrap: nowrap;
1155
- align-items: center;
1156
- opacity: 0;
1157
- transition: bottom 0.25s ease, opacity 0.2s ease;
1158
- border-radius: 4px;
1159
- box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
1267
+ .ImageGallery .counter {
1268
+ position: absolute;
1269
+ top: 10px;
1270
+ left: 10px;
1271
+ color: white;
1272
+ font-size: 13px;
1160
1273
  }
1161
1274
 
1162
- .Snackbar.shown {
1275
+ .ImageGallery .previews {
1276
+ height: 80px;
1277
+ position: absolute;
1163
1278
  bottom: 15px;
1164
- opacity: 1;
1279
+ left: 50%;
1280
+ transform: translateX(-50%);
1281
+ padding: 0 45px;
1165
1282
  }
1166
1283
 
1167
- .Snackbar .message {
1284
+ .ImageGallery .previews .viewport {
1168
1285
  overflow: hidden;
1169
- line-height: 1.2em;
1170
- min-height: 1.2em;
1171
- max-height: 2.4em;
1172
- flex: 1;
1173
- }
1174
-
1175
- .Snackbar .action {
1176
- text-transform: uppercase;
1177
- font-weight: bold;
1178
- margin-left: 48px;
1179
- color: #bf3727;
1286
+ position: relative;
1287
+ height: 100%;
1180
1288
  }
1181
1289
 
1182
- .Snackbar .action a {
1183
- text-decoration: none;
1184
- color: #bf3727;
1290
+ .ImageGallery .previews .container {
1291
+ position: relative;
1292
+ display: flex;
1293
+ flex-flow: row nowrap;
1294
+ height: 100%;
1295
+ transition: left 0.25s ease;
1185
1296
  }
1186
1297
 
1187
- .TextField {
1298
+ .ImageGallery .previews .preview {
1188
1299
  position: relative;
1189
- width: 100%;
1300
+ height: 100%;
1301
+ display: inline-block;
1302
+ width: 106.66px;
1303
+ overflow: hidden;
1304
+ margin-left: 12px;
1305
+ border-radius: 2px;
1306
+ cursor: pointer;
1307
+ box-sizing: border-box;
1190
1308
  }
1191
1309
 
1192
- .TextField > label {
1193
- font-family: Roboto, sans-serif;
1194
- color: rgba(0, 0, 0, 0.3);
1195
- font-size: 16px;
1196
- position: absolute;
1197
- left: 0px;
1198
- top: 16px;
1199
- margin-top: -16px;
1200
- transition: all 0.2s ease;
1201
- user-select: none;
1202
- cursor: text;
1310
+ .ImageGallery .previews .preview:first-child {
1311
+ margin-left: 0;
1203
1312
  }
1204
1313
 
1205
- .TextField > input {
1206
- font-family: Roboto, sans-serif;
1207
- color: #1e252d;
1208
- height: 19px;
1209
- font-size: 16px;
1314
+ .ImageGallery .previews .preview > .border {
1315
+ position: absolute;
1316
+ bottom: 0;
1210
1317
  width: 100%;
1211
- border: 0px;
1212
- padding-bottom: 4px;
1213
- padding-top: 0;
1214
- outline-color: rgba(0, 0, 0, 0);
1215
- }
1216
-
1217
- .TextField > input:focus {
1218
- outline: none;
1219
- }
1220
-
1221
- .TextField > input:disabled {
1222
- color: gray;
1223
- background-color: white;
1224
- }
1225
-
1226
- .TextField > input:disabled + .border {
1227
- height: 0px;
1228
- border-bottom: 2px dotted rgb(224, 224, 224);
1229
- }
1230
-
1231
- .TextField > input::placeholder {
1232
- font-family: Roboto, sans-serif;
1233
- color: rgba(0, 0, 0, 0.3);
1234
- opacity: 1;
1235
- }
1236
-
1237
- .TextField > .border {
1238
- border-bottom: 1px solid rgb(224, 224, 224);
1239
- height: 1px;
1240
- position: relative;
1318
+ height: 3px;
1241
1319
  }
1242
1320
 
1243
- .TextField > .border .line {
1321
+ .ImageGallery .previews .preview > .border .line {
1244
1322
  left: 50%;
1245
1323
  width: 0;
1246
- height: 2px;
1247
- min-height: 2px;
1248
- background-color: rgb(0, 188, 212);
1324
+ height: 3px;
1325
+ min-height: 3px;
1326
+ background-color: #4AC263;
1249
1327
  transition: all 0.2s ease;
1250
1328
  position: absolute;
1251
1329
  }
1252
1330
 
1253
- .TextField > .error {
1254
- text-align: left;
1255
- font-size: 10px;
1256
- min-height: 0;
1257
- line-height: 14px;
1258
- color: rgb(244, 67, 54);
1259
- visibility: hidden;
1260
- opacity: 0;
1261
- transition: all 0.2s ease;
1262
- }
1263
-
1264
- .TextField.focused > label, .TextField.withValue > label {
1265
- top: 4px;
1266
- font-size: 12px;
1267
- line-height: 14px;
1268
- }
1269
-
1270
- .TextField.errored > .error {
1271
- visibility: visible;
1272
- opacity: 1;
1273
- }
1274
-
1275
- .TextField.errored > .border {
1276
- border-bottom-color: rgb(244, 67, 54);
1277
- }
1278
-
1279
- .TextField.errored > label {
1280
- color: rgb(244, 67, 54);
1331
+ .ImageGallery .previews .preview:after {
1332
+ content: "";
1333
+ position: absolute;
1334
+ top: 0;
1335
+ right: 0;
1336
+ bottom: 0;
1337
+ left: 0;
1338
+ background: rgba(0, 0, 0, 0.35);
1339
+ transition: background 0.2s ease;
1281
1340
  }
1282
1341
 
1283
- .TextField.focused > label {
1284
- color: rgb(0, 188, 212);
1342
+ .ImageGallery .previews .preview:hover:after {
1343
+ background: rgba(0, 0, 0, 0.1);
1285
1344
  }
1286
1345
 
1287
- .TextField.focused > .border .line {
1346
+ .ImageGallery .previews .preview.selected .border .line {
1288
1347
  left: 0;
1289
1348
  width: 100%;
1290
1349
  }
1291
1350
 
1292
- .TextField.disabled label, .TextField.disabled input {
1293
- cursor: not-allowed;
1294
- }
1295
-
1296
- .TextField.withLabel {
1297
- margin-top: 15px;
1351
+ .ImageGallery .previews .preview.selected:after {
1352
+ background: rgba(0, 0, 0, 0);
1298
1353
  }
1299
1354
 
1300
- .TextField input::-webkit-contacts-auto-fill-button {
1301
- visibility: hidden;
1302
- display: none !important;
1303
- pointer-events: none;
1355
+ .ImageGallery .previews > .arrow {
1304
1356
  position: absolute;
1305
- right: 0;
1306
- }
1307
-
1308
- .TextField input:-webkit-autofill {
1309
- -webkit-box-shadow: inset 0 0 0px 9999px white;
1310
- }
1311
-
1312
- @keyframes shake {
1313
- 0%, 100% {
1314
- transform: translateX(0);
1315
- }
1316
- 20%, 60% {
1317
- transform: translateX(-5px);
1318
- }
1319
- 40%, 80% {
1320
- transform: translateX(5px);
1321
- }
1322
- }
1323
- .TextField .shake {
1324
- animation-duration: 0.5s;
1325
- animation-fill-mode: both;
1326
- animation-timing-function: ease-in-out;
1327
- animation-name: shake;
1328
- }
1329
-
1330
- .DNDContainer .DroppableList .Draggable {
1331
- transform: unset;
1332
- transition: unset;
1333
- opacity: 1;
1357
+ top: 50%;
1358
+ height: 30px;
1359
+ width: 30px;
1360
+ min-width: 30px;
1361
+ min-height: 30px;
1362
+ margin-top: -15px;
1334
1363
  }
1335
1364
 
1336
- .DNDContainer .DroppableList .Draggable.dragged {
1337
- transition: unset !important;
1365
+ .ImageGallery .previews > .arrow.left {
1366
+ left: 0;
1338
1367
  }
1339
1368
 
1340
- .DNDContainer .DroppableList.hover .Draggable {
1341
- transition: transform 0.2s ease-in;
1369
+ .ImageGallery .previews > .arrow.right {
1370
+ right: 0;
1342
1371
  }
1343
1372
 
1344
- .DNDContainer .DroppableList.resetting .Draggable {
1345
- transition: transform 0.1s ease-in;
1373
+ .ImageGallery .previews > .arrow .material-icons {
1374
+ font-size: 24px;
1346
1375
  }
1347
1376
 
1348
1377
  .SpinningProgress {
@@ -1398,239 +1427,210 @@
1398
1427
  stroke-dashoffset: -53px;
1399
1428
  }
1400
1429
  }
1401
- .ImageGallery {
1430
+ .Snackbar {
1431
+ transform: translateX(-50%);
1432
+ overflow: hidden;
1433
+ background-color: #323232;
1434
+ padding: 14px 24px 14px 24px;
1435
+ color: #fff;
1436
+ min-width: 288px;
1437
+ max-width: 568px;
1402
1438
  position: fixed;
1403
- top: 0;
1404
- left: 0;
1405
- bottom: 0;
1406
- right: 0;
1407
- z-index: 1000;
1408
- background-color: rgba(0, 0, 0, 0.01);
1409
- user-select: none;
1410
- }
1411
-
1412
- .ImageGallery:focus {
1413
- outline-width: 0px;
1414
- }
1415
-
1416
- .ImageGallery.animated {
1417
- transition: background-color 0.25s ease;
1418
- opacity: 1;
1419
- }
1420
-
1421
- .ImageGallery.mounting, .ImageGallery.mounted {
1422
- background-color: rgba(0, 0, 0, 0.8);
1423
- }
1424
-
1425
- .ImageGallery .image {
1426
- position: absolute;
1427
- cursor: grab;
1428
- }
1429
-
1430
- .ImageGallery .image .counter {
1431
- display: none;
1432
- }
1433
-
1434
- .ImageGallery .image img {
1439
+ bottom: -50px;
1440
+ left: 50%;
1441
+ display: flex;
1442
+ flex-wrap: nowrap;
1443
+ align-items: center;
1444
+ opacity: 0;
1445
+ transition: bottom 0.25s ease, opacity 0.2s ease;
1435
1446
  border-radius: 4px;
1436
- max-width: 100%;
1437
- min-width: 100%;
1438
- }
1439
-
1440
- .ImageGallery .image.animated {
1441
- transition: top 0.25s ease, left 0.25s ease, width 0.25s ease, height 0.25s ease, opacity 0.25s ease;
1442
- will-change: top, left, width, height, opacity;
1447
+ box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
1443
1448
  }
1444
1449
 
1445
- .ImageGallery .image.animated.mounting, .ImageGallery .image.animated.mounted, .ImageGallery .image.animated.unmounting {
1450
+ .Snackbar.shown {
1451
+ bottom: 15px;
1446
1452
  opacity: 1;
1447
1453
  }
1448
1454
 
1449
- .ImageGallery .image.zoomed {
1450
- text-align: center;
1455
+ .Snackbar .message {
1451
1456
  overflow: hidden;
1457
+ line-height: 1.2em;
1458
+ min-height: 1.2em;
1459
+ max-height: 2.4em;
1460
+ flex: 1;
1452
1461
  }
1453
1462
 
1454
- .ImageGallery .image.dragging {
1455
- transition: none;
1456
- cursor: move;
1457
- }
1458
-
1459
- .ImageGallery .image .close {
1460
- position: absolute;
1461
- top: -18px;
1462
- right: -18px;
1463
- }
1464
-
1465
- .ImageGallery .image .spinner {
1466
- position: absolute;
1467
- top: 0;
1468
- bottom: 0;
1469
- left: 0;
1470
- right: 0;
1471
- background: rgba(0, 0, 0, 0.65);
1463
+ .Snackbar .action {
1464
+ text-transform: uppercase;
1465
+ font-weight: bold;
1466
+ margin-left: 48px;
1467
+ color: #bf3727;
1472
1468
  }
1473
1469
 
1474
- .ImageGallery .image .spinner .SpinningProgress {
1475
- position: absolute;
1476
- top: 50%;
1477
- left: 50%;
1478
- margin-left: -24px;
1479
- margin-top: -24px;
1470
+ .Snackbar .action a {
1471
+ text-decoration: none;
1472
+ color: #bf3727;
1480
1473
  }
1481
1474
 
1482
- .ImageGallery .image .spinner .SpinningProgress .line {
1483
- stroke: #2196F3;
1475
+ .DNDContainer .DroppableList .Draggable {
1476
+ transform: unset;
1477
+ transition: unset;
1478
+ opacity: 1;
1484
1479
  }
1485
1480
 
1486
- .ImageGallery .Button.animated {
1487
- transition: all 0.25s ease;
1488
- opacity: 0;
1489
- transform: scale(0);
1481
+ .DNDContainer .DroppableList .Draggable.dragged {
1482
+ transition: unset !important;
1490
1483
  }
1491
1484
 
1492
- .ImageGallery .Button.animated.mounted, .ImageGallery .Button.animated.mounting {
1493
- opacity: 1;
1494
- transform: scale(1);
1485
+ .DNDContainer .DroppableList.hover .Draggable {
1486
+ transition: transform 0.2s ease-in;
1495
1487
  }
1496
1488
 
1497
- .ImageGallery .Button {
1498
- color: white;
1499
- background: rgba(0, 0, 0, 0.4);
1489
+ .DNDContainer .DroppableList.resetting .Draggable {
1490
+ transition: transform 0.1s ease-in;
1500
1491
  }
1501
1492
 
1502
- .ImageGallery .Button:hover {
1503
- background: rgba(0, 0, 0, 0.7);
1493
+ .TextField {
1494
+ position: relative;
1495
+ width: 100%;
1504
1496
  }
1505
1497
 
1506
- .ImageGallery > .arrow {
1498
+ .TextField > label {
1499
+ font-family: Roboto, sans-serif;
1500
+ color: rgba(0, 0, 0, 0.3);
1501
+ font-size: 16px;
1507
1502
  position: absolute;
1508
- top: 50%;
1509
- height: 76px;
1510
- width: 76px;
1511
- margin-top: -38px;
1503
+ left: 0px;
1504
+ top: 16px;
1505
+ margin-top: -16px;
1506
+ transition: all 0.2s ease;
1507
+ user-select: none;
1508
+ cursor: text;
1512
1509
  }
1513
1510
 
1514
- .ImageGallery > .arrow.left {
1515
- left: 5%;
1511
+ .TextField > input {
1512
+ font-family: Roboto, sans-serif;
1513
+ color: #1e252d;
1514
+ height: 19px;
1515
+ font-size: 16px;
1516
+ width: 100%;
1517
+ border: 0px;
1518
+ padding-bottom: 4px;
1519
+ padding-top: 0;
1520
+ outline-color: rgba(0, 0, 0, 0);
1516
1521
  }
1517
1522
 
1518
- .ImageGallery > .arrow.right {
1519
- right: 5%;
1523
+ .TextField > input:focus {
1524
+ outline: none;
1520
1525
  }
1521
1526
 
1522
- .ImageGallery > .arrow .material-icons {
1523
- font-size: 40px;
1527
+ .TextField > input:disabled {
1528
+ color: gray;
1529
+ background-color: white;
1524
1530
  }
1525
1531
 
1526
- .ImageGallery .counter {
1527
- position: absolute;
1528
- top: 10px;
1529
- left: 10px;
1530
- color: white;
1531
- font-size: 13px;
1532
+ .TextField > input:disabled + .border {
1533
+ height: 0px;
1534
+ border-bottom: 2px dotted rgb(224, 224, 224);
1532
1535
  }
1533
1536
 
1534
- .ImageGallery .previews {
1535
- height: 80px;
1536
- position: absolute;
1537
- bottom: 15px;
1538
- left: 50%;
1539
- transform: translateX(-50%);
1540
- padding: 0 45px;
1537
+ .TextField > input::placeholder {
1538
+ font-family: Roboto, sans-serif;
1539
+ color: rgba(0, 0, 0, 0.3);
1540
+ opacity: 1;
1541
1541
  }
1542
1542
 
1543
- .ImageGallery .previews .viewport {
1544
- overflow: hidden;
1543
+ .TextField > .border {
1544
+ border-bottom: 1px solid rgb(224, 224, 224);
1545
+ height: 1px;
1545
1546
  position: relative;
1546
- height: 100%;
1547
1547
  }
1548
1548
 
1549
- .ImageGallery .previews .container {
1550
- position: relative;
1551
- display: flex;
1552
- flex-flow: row nowrap;
1553
- height: 100%;
1554
- transition: left 0.25s ease;
1549
+ .TextField > .border .line {
1550
+ left: 50%;
1551
+ width: 0;
1552
+ height: 2px;
1553
+ min-height: 2px;
1554
+ background-color: rgb(0, 188, 212);
1555
+ transition: all 0.2s ease;
1556
+ position: absolute;
1555
1557
  }
1556
1558
 
1557
- .ImageGallery .previews .preview {
1558
- position: relative;
1559
- height: 100%;
1560
- display: inline-block;
1561
- width: 106.66px;
1562
- overflow: hidden;
1563
- margin-left: 12px;
1564
- border-radius: 2px;
1565
- cursor: pointer;
1566
- box-sizing: border-box;
1559
+ .TextField > .error {
1560
+ text-align: left;
1561
+ font-size: 10px;
1562
+ min-height: 0;
1563
+ line-height: 14px;
1564
+ color: rgb(244, 67, 54);
1565
+ visibility: hidden;
1566
+ opacity: 0;
1567
+ transition: all 0.2s ease;
1567
1568
  }
1568
1569
 
1569
- .ImageGallery .previews .preview:first-child {
1570
- margin-left: 0;
1570
+ .TextField.focused > label, .TextField.withValue > label {
1571
+ top: 4px;
1572
+ font-size: 12px;
1573
+ line-height: 14px;
1571
1574
  }
1572
1575
 
1573
- .ImageGallery .previews .preview > .border {
1574
- position: absolute;
1575
- bottom: 0;
1576
- width: 100%;
1577
- height: 3px;
1576
+ .TextField.errored > .error {
1577
+ visibility: visible;
1578
+ opacity: 1;
1578
1579
  }
1579
1580
 
1580
- .ImageGallery .previews .preview > .border .line {
1581
- left: 50%;
1582
- width: 0;
1583
- height: 3px;
1584
- min-height: 3px;
1585
- background-color: #4AC263;
1586
- transition: all 0.2s ease;
1587
- position: absolute;
1581
+ .TextField.errored > .border {
1582
+ border-bottom-color: rgb(244, 67, 54);
1588
1583
  }
1589
1584
 
1590
- .ImageGallery .previews .preview:after {
1591
- content: "";
1592
- position: absolute;
1593
- top: 0;
1594
- right: 0;
1595
- bottom: 0;
1596
- left: 0;
1597
- background: rgba(0, 0, 0, 0.35);
1598
- transition: background 0.2s ease;
1585
+ .TextField.errored > label {
1586
+ color: rgb(244, 67, 54);
1599
1587
  }
1600
1588
 
1601
- .ImageGallery .previews .preview:hover:after {
1602
- background: rgba(0, 0, 0, 0.1);
1589
+ .TextField.focused > label {
1590
+ color: rgb(0, 188, 212);
1603
1591
  }
1604
1592
 
1605
- .ImageGallery .previews .preview.selected .border .line {
1593
+ .TextField.focused > .border .line {
1606
1594
  left: 0;
1607
1595
  width: 100%;
1608
1596
  }
1609
1597
 
1610
- .ImageGallery .previews .preview.selected:after {
1611
- background: rgba(0, 0, 0, 0);
1598
+ .TextField.disabled label, .TextField.disabled input {
1599
+ cursor: not-allowed;
1612
1600
  }
1613
1601
 
1614
- .ImageGallery .previews > .arrow {
1615
- position: absolute;
1616
- top: 50%;
1617
- height: 30px;
1618
- width: 30px;
1619
- min-width: 30px;
1620
- min-height: 30px;
1621
- margin-top: -15px;
1602
+ .TextField.withLabel {
1603
+ margin-top: 15px;
1622
1604
  }
1623
1605
 
1624
- .ImageGallery .previews > .arrow.left {
1625
- left: 0;
1606
+ .TextField input::-webkit-contacts-auto-fill-button {
1607
+ visibility: hidden;
1608
+ display: none !important;
1609
+ pointer-events: none;
1610
+ position: absolute;
1611
+ right: 0;
1626
1612
  }
1627
1613
 
1628
- .ImageGallery .previews > .arrow.right {
1629
- right: 0;
1614
+ .TextField input:-webkit-autofill {
1615
+ -webkit-box-shadow: inset 0 0 0px 9999px white;
1630
1616
  }
1631
1617
 
1632
- .ImageGallery .previews > .arrow .material-icons {
1633
- font-size: 24px;
1618
+ @keyframes shake {
1619
+ 0%, 100% {
1620
+ transform: translateX(0);
1621
+ }
1622
+ 20%, 60% {
1623
+ transform: translateX(-5px);
1624
+ }
1625
+ 40%, 80% {
1626
+ transform: translateX(5px);
1627
+ }
1628
+ }
1629
+ .TextField .shake {
1630
+ animation-duration: 0.5s;
1631
+ animation-fill-mode: both;
1632
+ animation-timing-function: ease-in-out;
1633
+ animation-name: shake;
1634
1634
  }
1635
1635
 
1636
1636
  .DatePicker {
@@ -1750,29 +1750,44 @@
1750
1750
  background-color: #51adf6;
1751
1751
  }
1752
1752
 
1753
- .CalendarMonthView {
1754
- display: flex;
1755
- flex-flow: column nowrap;
1756
- height: 100%;
1753
+ .DNDContainer {
1754
+ position: relative;
1757
1755
  }
1758
1756
 
1759
- .CalendarMonthView > .row {
1760
- display: flex;
1761
- flex-flow: row nowrap;
1757
+ .DNDContainer .Draggable[draggable=true], .DNDContainer .Draggable [draggable=true] {
1758
+ cursor: pointer;
1762
1759
  }
1763
1760
 
1764
- .CalendarMonthView .days {
1765
- flex-grow: 1;
1766
- position: relative;
1761
+ .DNDContainer .Draggable.placeholder {
1762
+ opacity: 0.2;
1767
1763
  }
1768
1764
 
1769
- .CalendarMonthView .day, .CalendarMonthView .header {
1770
- flex-grow: 1;
1771
- flex-basis: 1px;
1765
+ .DNDContainer .Draggable.copy {
1766
+ position: absolute;
1767
+ box-sizing: border-box;
1768
+ will-change: transform;
1769
+ opacity: 0;
1772
1770
  }
1773
1771
 
1774
- .CalendarMonthView .day {
1775
- height: 100%;
1772
+ .DNDContainer .Draggable.dragged {
1773
+ z-index: 10;
1774
+ }
1775
+
1776
+ .DNDContainer .overlay {
1777
+ position: absolute;
1778
+ top: 0;
1779
+ left: 0;
1780
+ right: 0;
1781
+ bottom: 0;
1782
+ pointer-events: none;
1783
+ }
1784
+
1785
+ .ScrollableTable .Scrollable .scrollbar {
1786
+ top: 56px;
1787
+ }
1788
+
1789
+ .ScrollableTable .Table {
1790
+ position: static;
1776
1791
  }
1777
1792
 
1778
1793
  .Table {
@@ -1897,42 +1912,27 @@
1897
1912
  margin: 0;
1898
1913
  }
1899
1914
 
1900
- .ScrollableTable .Scrollable .scrollbar {
1901
- top: 56px;
1915
+ .CalendarMonthView {
1916
+ display: flex;
1917
+ flex-flow: column nowrap;
1918
+ height: 100%;
1902
1919
  }
1903
1920
 
1904
- .ScrollableTable .Table {
1905
- position: static;
1921
+ .CalendarMonthView > .row {
1922
+ display: flex;
1923
+ flex-flow: row nowrap;
1906
1924
  }
1907
1925
 
1908
- .DNDContainer {
1926
+ .CalendarMonthView .days {
1927
+ flex-grow: 1;
1909
1928
  position: relative;
1910
1929
  }
1911
1930
 
1912
- .DNDContainer .Draggable[draggable=true], .DNDContainer .Draggable [draggable=true] {
1913
- cursor: pointer;
1914
- }
1915
-
1916
- .DNDContainer .Draggable.placeholder {
1917
- opacity: 0.2;
1918
- }
1919
-
1920
- .DNDContainer .Draggable.copy {
1921
- position: absolute;
1922
- box-sizing: border-box;
1923
- will-change: transform;
1924
- opacity: 0;
1925
- }
1926
-
1927
- .DNDContainer .Draggable.dragged {
1928
- z-index: 10;
1931
+ .CalendarMonthView .day, .CalendarMonthView .header {
1932
+ flex-grow: 1;
1933
+ flex-basis: 1px;
1929
1934
  }
1930
1935
 
1931
- .DNDContainer .overlay {
1932
- position: absolute;
1933
- top: 0;
1934
- left: 0;
1935
- right: 0;
1936
- bottom: 0;
1937
- pointer-events: none;
1936
+ .CalendarMonthView .day {
1937
+ height: 100%;
1938
1938
  }