react-ui-basics 0.0.192 → 0.0.194

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,167 +1,10 @@
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);
1
+ .animated {
2
+ transition: opacity 250ms ease;
128
3
  opacity: 0;
129
4
  }
130
5
 
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;
6
+ .animated.mounting, .animated.mounted {
7
+ opacity: 1;
165
8
  }
166
9
 
167
10
  .AutocompleteSelect {
@@ -459,82 +302,239 @@
459
302
  position: absolute;
460
303
  }
461
304
 
462
- .Checkbox {
305
+ .Button {
463
306
  position: relative;
464
- white-space: pre;
307
+ min-width: 64px;
308
+ min-height: 36px;
309
+ height: 24px;
310
+ margin: 0px;
311
+ padding: 0px 16px;
312
+ border: none;
313
+ outline: none;
314
+ font-size: 14px;
315
+ font-weight: 500;
316
+ letter-spacing: 1.25px;
317
+ background: #dfdfdf;
318
+ text-transform: uppercase;
319
+ font-family: Roboto, sans-serif;
320
+ -webkit-tap-highlight-color: transparent;
321
+ display: inline-flex;
322
+ justify-content: center;
323
+ align-items: center;
324
+ cursor: pointer;
325
+ overflow: hidden;
326
+ user-select: none;
327
+ border-radius: 3px;
328
+ transition: all 0.2s ease;
465
329
  }
466
330
 
467
- .Checkbox *, .Checkbox *:before, .Checkbox *:after {
468
- box-sizing: border-box;
331
+ .Button.flat {
332
+ background-color: transparent;
469
333
  }
470
334
 
471
- .Checkbox label {
472
- font-family: Roboto, sans-serif;
473
- font-size: 14px;
474
- color: #1e252d;
475
- cursor: pointer;
335
+ .Button.flat:hover {
336
+ background-color: rgba(0, 0, 0, 0.05);
476
337
  }
477
338
 
478
- .Checkbox label:before, .Checkbox label:after {
479
- content: "";
480
- position: absolute;
481
- left: 0;
482
- top: 0;
339
+ .Button.green {
340
+ background-color: #43a047;
341
+ color: white;
483
342
  }
484
343
 
485
- .Checkbox label:before {
486
- width: 20px;
487
- height: 20px;
488
- background: #fff;
489
- border: 2px solid #252525;
490
- border-radius: 2px;
491
- cursor: pointer;
492
- transition: background 0.3s;
344
+ .Button.green:hover {
345
+ background-color: #3b8e3f;
493
346
  }
494
347
 
495
- .Checkbox input[type=checkbox] {
496
- outline: 0;
497
- margin-right: 10px;
498
- visibility: hidden;
348
+ .Button.blue {
349
+ background-color: #039be5;
350
+ color: white;
499
351
  }
500
352
 
501
- .Checkbox input[type=checkbox]:checked + label:before {
502
- background: #4AC263;
503
- border: none;
353
+ .Button.blue:hover {
354
+ background-color: #038acc;
504
355
  }
505
356
 
506
- .Checkbox input[type=checkbox]:checked + label:after {
507
- transform: rotate(-45deg);
508
- top: 6px;
509
- left: 4px;
510
- width: 12px;
511
- height: 6px;
512
- border: 2px solid #fff;
513
- border-top-style: none;
514
- border-right-style: none;
357
+ .Button.red {
358
+ background-color: #e53935;
359
+ color: white;
515
360
  }
516
361
 
517
- .Checkbox input[type=checkbox]:disabled + label {
518
- color: gray;
362
+ .Button.red:hover {
363
+ background-color: #e2231e;
519
364
  }
520
365
 
521
- .Checkbox input[type=checkbox]:disabled + label:before {
522
- border-color: rgba(0, 0, 0, 0.26);
366
+ .Button.black {
367
+ background-color: #1e252d;
368
+ color: white;
523
369
  }
524
370
 
525
- .Checkbox input[type=checkbox]:disabled:checked + label:before {
526
- background: rgba(0, 0, 0, 0.26);
371
+ .Button.black:hover {
372
+ background-color: #14181e;
527
373
  }
528
374
 
529
- .animated {
530
- transition: opacity 250ms ease;
531
- opacity: 0;
375
+ .Button.gray {
376
+ background: #D9D9D9;
377
+ color: #999999;
532
378
  }
533
379
 
534
- .animated.mounting, .animated.mounted {
380
+ .Button.gray:hover {
381
+ background-color: #cccccc;
382
+ }
383
+
384
+ .Button.small {
385
+ padding: 0px 8px;
386
+ min-height: 16px;
387
+ min-width: 16px;
388
+ }
389
+
390
+ .Button > .material-icons {
391
+ margin-right: 10px;
392
+ }
393
+
394
+ .Button.round {
395
+ padding: 0px;
396
+ min-width: 36px;
397
+ border-radius: 50%;
398
+ }
399
+
400
+ .Button.round > .material-icons {
401
+ margin: 0px;
402
+ }
403
+
404
+ .Button .ripple {
405
+ position: absolute;
406
+ background: rgba(0, 0, 0, 0.1);
407
+ border-radius: 100%;
408
+ transform: scale(0);
409
+ pointer-events: none;
410
+ transition: opacity 0.2s ease-out;
411
+ }
412
+
413
+ .Button .ripple.show {
414
+ animation: ripple 0.35s ease-out;
415
+ }
416
+
417
+ .Button:active .ripple.showed {
535
418
  opacity: 1;
536
419
  }
537
420
 
421
+ .Button:focus .ripple.focused {
422
+ opacity: 1;
423
+ transition: opacity 0.2s ease-out, transform 0.2s ease-out;
424
+ transform: scale(1);
425
+ animation: resize 1.25s ease-out infinite;
426
+ animation-delay: 0.2s;
427
+ animation-direction: alternate;
428
+ }
429
+
430
+ .Button .ripple.showed {
431
+ transform: scale(2);
432
+ opacity: 0;
433
+ }
434
+
435
+ @keyframes ripple {
436
+ to {
437
+ transform: scale(2);
438
+ }
439
+ }
440
+ @keyframes resize {
441
+ to {
442
+ transform: scale(0.9);
443
+ }
444
+ }
445
+ .Button.raised {
446
+ transition: color 0.2s ease-out, background-color 0.2s ease-out, box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
447
+ }
448
+
449
+ .Button.raised:hover {
450
+ box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.25);
451
+ }
452
+
453
+ .Button.raised:active {
454
+ box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.35);
455
+ }
456
+
457
+ .Button.disabled {
458
+ box-shadow: none;
459
+ background: #D9D9D9;
460
+ color: #999999;
461
+ }
462
+
463
+ .Button.disabled:hover {
464
+ background-color: #cccccc;
465
+ }
466
+
467
+ .Button::-moz-focus-inner {
468
+ border: 0;
469
+ }
470
+
471
+ .Checkbox {
472
+ position: relative;
473
+ white-space: pre;
474
+ }
475
+
476
+ .Checkbox *, .Checkbox *:before, .Checkbox *:after {
477
+ box-sizing: border-box;
478
+ }
479
+
480
+ .Checkbox label {
481
+ font-family: Roboto, sans-serif;
482
+ font-size: 14px;
483
+ color: #1e252d;
484
+ cursor: pointer;
485
+ }
486
+
487
+ .Checkbox label:before, .Checkbox label:after {
488
+ content: "";
489
+ position: absolute;
490
+ left: 0;
491
+ top: 0;
492
+ }
493
+
494
+ .Checkbox label:before {
495
+ width: 20px;
496
+ height: 20px;
497
+ background: #fff;
498
+ border: 2px solid #252525;
499
+ border-radius: 2px;
500
+ cursor: pointer;
501
+ transition: background 0.3s;
502
+ }
503
+
504
+ .Checkbox input[type=checkbox] {
505
+ outline: 0;
506
+ margin-right: 10px;
507
+ visibility: hidden;
508
+ }
509
+
510
+ .Checkbox input[type=checkbox]:checked + label:before {
511
+ background: #4AC263;
512
+ border: none;
513
+ }
514
+
515
+ .Checkbox input[type=checkbox]:checked + label:after {
516
+ transform: rotate(-45deg);
517
+ top: 6px;
518
+ left: 4px;
519
+ width: 12px;
520
+ height: 6px;
521
+ border: 2px solid #fff;
522
+ border-top-style: none;
523
+ border-right-style: none;
524
+ }
525
+
526
+ .Checkbox input[type=checkbox]:disabled + label {
527
+ color: gray;
528
+ }
529
+
530
+ .Checkbox input[type=checkbox]:disabled + label:before {
531
+ border-color: rgba(0, 0, 0, 0.26);
532
+ }
533
+
534
+ .Checkbox input[type=checkbox]:disabled:checked + label:before {
535
+ background: rgba(0, 0, 0, 0.26);
536
+ }
537
+
538
538
  .FilteredList {
539
539
  max-height: 250px;
540
540
  position: relative;
@@ -620,6 +620,46 @@
620
620
  margin-bottom: 8px;
621
621
  }
622
622
 
623
+ .DropFileInput {
624
+ flex-grow: 1;
625
+ }
626
+
627
+ .DropFileInput .Dropzone {
628
+ border: 1px dashed #808080;
629
+ padding: 12px;
630
+ display: flex;
631
+ flex-flow: row nowrap;
632
+ justify-content: center;
633
+ align-items: center;
634
+ color: gray;
635
+ cursor: pointer;
636
+ border-radius: 3px;
637
+ font-weight: normal;
638
+ line-height: 22px;
639
+ font-size: 14px;
640
+ color: #7E7E7E;
641
+ max-width: 100%;
642
+ word-break: break-all;
643
+ word-break: break-word;
644
+ }
645
+
646
+ .DropFileInput .Dropzone .icon.withText {
647
+ margin-right: 10px;
648
+ }
649
+
650
+ .CircleProgress {
651
+ width: 48px;
652
+ height: 48px;
653
+ }
654
+
655
+ .CircleProgress .line {
656
+ stroke-width: 2px;
657
+ stroke: black;
658
+ stroke-linecap: square;
659
+ fill: none;
660
+ transition: stroke-dashoffset 0.2s ease;
661
+ }
662
+
623
663
  .DialogModal {
624
664
  overflow: hidden;
625
665
  }
@@ -662,17 +702,28 @@
662
702
  margin-bottom: 0;
663
703
  }
664
704
 
665
- .CircleProgress {
666
- width: 48px;
667
- height: 48px;
705
+ .Button.FloatingActionButton {
706
+ position: absolute;
707
+ right: 16px;
708
+ bottom: 16px;
709
+ width: 56px;
710
+ height: 56px;
711
+ padding: 16px;
712
+ transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
668
713
  }
669
714
 
670
- .CircleProgress .line {
671
- stroke-width: 2px;
672
- stroke: black;
673
- stroke-linecap: square;
674
- fill: none;
675
- transition: stroke-dashoffset 0.2s ease;
715
+ .Button.FloatingActionButton.raised {
716
+ 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);
717
+ }
718
+
719
+ .Button.FloatingActionButton.mini {
720
+ width: 40px;
721
+ height: 40px;
722
+ padding: 8px;
723
+ }
724
+
725
+ .Button.FloatingActionButton.hidden {
726
+ bottom: -100px;
676
727
  }
677
728
 
678
729
  .Dropzone {
@@ -735,33 +786,6 @@
735
786
  z-index: 1;
736
787
  }
737
788
 
738
- .DropFileInput {
739
- flex-grow: 1;
740
- }
741
-
742
- .DropFileInput .Dropzone {
743
- border: 1px dashed #808080;
744
- padding: 12px;
745
- display: flex;
746
- flex-flow: row nowrap;
747
- justify-content: center;
748
- align-items: center;
749
- color: gray;
750
- cursor: pointer;
751
- border-radius: 3px;
752
- font-weight: normal;
753
- line-height: 22px;
754
- font-size: 14px;
755
- color: #7E7E7E;
756
- max-width: 100%;
757
- word-break: break-all;
758
- word-break: break-word;
759
- }
760
-
761
- .DropFileInput .Dropzone .icon.withText {
762
- margin-right: 10px;
763
- }
764
-
765
789
  .FormUploadProgress {
766
790
  position: absolute;
767
791
  left: 0;
@@ -831,65 +855,169 @@
831
855
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.25);
832
856
  }
833
857
 
834
- .Button.FloatingActionButton {
858
+ .Modal {
859
+ display: block;
860
+ position: fixed;
861
+ top: 0;
862
+ left: 0;
863
+ right: 0;
864
+ bottom: 100%;
865
+ overflow-y: scroll;
866
+ transition: bottom 0ms linear;
867
+ transition-delay: 0.2s;
868
+ }
869
+
870
+ .Modal.show {
871
+ transition-delay: 0s;
872
+ bottom: 0;
873
+ }
874
+
875
+ .Modal > .overlay {
876
+ position: fixed;
877
+ top: 0;
878
+ bottom: 100%;
879
+ left: 0;
880
+ right: 0;
881
+ transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
882
+ opacity: 0;
883
+ background-color: black;
884
+ pointer-events: none;
885
+ }
886
+
887
+ .Modal > .overlay.show {
888
+ opacity: 0.5;
889
+ bottom: 0;
890
+ }
891
+
892
+ .Modal > .content {
893
+ left: 50%;
894
+ top: 10vh;
895
+ margin-bottom: 10vh;
896
+ font-size: 16px;
897
+ padding: 0;
898
+ opacity: 0;
899
+ transition: opacity 0.25s ease, transform 0.25s ease;
900
+ transform: scaleY(0) translateY(-200px) translateX(-50%);
901
+ transform-origin: top;
835
902
  position: absolute;
836
- right: 16px;
837
- bottom: 16px;
838
- width: 56px;
839
- height: 56px;
840
- padding: 16px;
841
- transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
903
+ border-radius: 2px;
904
+ box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.3);
905
+ }
906
+
907
+ .Modal > .content.show {
908
+ opacity: 1;
909
+ transform: scaleY(1) translateY(0px) translateX(-50%);
910
+ }
911
+
912
+ .Modal > .content > .Scrollable {
913
+ overflow: visible;
914
+ max-height: 80vh;
915
+ }
916
+
917
+ .Modal > .content > .Scrollable > .viewport {
918
+ min-width: 10px;
919
+ min-height: 10px;
920
+ }
921
+
922
+ .Modal > .content > .Button.close {
923
+ top: 10px;
924
+ right: 10px;
925
+ position: absolute;
926
+ }
927
+
928
+ .Scrollable {
929
+ max-height: 250px;
930
+ max-width: 250px;
931
+ padding-right: 5px;
932
+ position: relative;
933
+ display: flex;
934
+ flex-flow: column;
935
+ align-items: stretch;
936
+ overflow: hidden;
937
+ }
938
+
939
+ .Scrollable:hover > .scrollbar.auto {
940
+ transition-delay: 0s;
941
+ opacity: 1;
942
+ }
943
+
944
+ .Scrollable .viewport {
945
+ overflow-y: scroll;
946
+ overflow-x: scroll;
947
+ max-height: 100%;
948
+ scroll-behavior: smooth;
949
+ scrollbar-width: none;
842
950
  }
843
951
 
844
- .Button.FloatingActionButton.raised {
845
- 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);
952
+ .Scrollable .viewport::-webkit-scrollbar {
953
+ display: none;
846
954
  }
847
955
 
848
- .Button.FloatingActionButton.mini {
849
- width: 40px;
850
- height: 40px;
851
- padding: 8px;
956
+ .Scrollable.without-scroll-horizontal {
957
+ max-width: unset;
852
958
  }
853
959
 
854
- .Button.FloatingActionButton.hidden {
855
- bottom: -100px;
960
+ .Scrollable.without-scroll {
961
+ padding-right: 0;
962
+ max-height: unset;
856
963
  }
857
964
 
858
- .ModalMenu {
859
- position: absolute;
860
- top: 10px;
861
- right: 50px;
965
+ .Scrollable.without-scroll > .viewport {
966
+ padding-right: 0;
967
+ margin-right: 0;
862
968
  }
863
969
 
864
- .ModalMenu .material-icons {
865
- color: #818181;
970
+ .Scrollable.without-scroll > .scrollbar {
971
+ visibility: hidden;
866
972
  }
867
973
 
868
- .ModalMenu .Button.animated {
974
+ .Scrollable .scrollbar {
869
975
  position: absolute;
870
- transition: opacity 150ms ease-in, right 200ms ease-in;
976
+ right: 0px;
977
+ top: 0px;
978
+ width: 5px;
979
+ transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
980
+ transition-delay: 0.5s;
981
+ z-index: 1;
982
+ }
983
+
984
+ .Scrollable .scrollbar.auto, .Scrollable .scrollbar.hidden {
871
985
  opacity: 0;
872
- right: 0;
873
- top: 0;
874
986
  }
875
987
 
876
- .ModalMenu .Button.animated.mounting, .ModalMenu .Button.animated.mounted {
877
- opacity: 1;
988
+ .Scrollable .scrollbar .thumb {
989
+ background-color: rgba(0, 0, 0, 0.3);
990
+ width: 5px;
991
+ position: absolute;
992
+ right: 0px;
993
+ top: 0px;
994
+ user-select: none;
995
+ will-change: top;
996
+ border-radius: 2px;
878
997
  }
879
998
 
880
- .ModalMenu .Button.animated.unmounting {
881
- transition: opacity 100ms ease-out, right 200ms ease-out;
999
+ .Scrollable .scrollbar .thumb:hover {
1000
+ background-color: rgba(0, 0, 0, 0.5);
882
1001
  }
883
1002
 
884
- .ModalMenu .Button.active {
885
- background: #EBEBEB;
1003
+ .Scrollable .scrollbar .thumb:active {
1004
+ background-color: rgba(0, 0, 0, 0.7);
886
1005
  }
887
1006
 
888
- .ModalMenu .separator {
889
- height: 24px;
890
- width: 1px;
891
- background-color: #D9D9D9;
892
- margin-left: 4px;
1007
+ .Scrollable .scrollbar.horizontal {
1008
+ left: 0px;
1009
+ right: 0px;
1010
+ height: 5px;
1011
+ bottom: 0;
1012
+ width: unset;
1013
+ top: unset;
1014
+ }
1015
+
1016
+ .Scrollable .scrollbar.horizontal .thumb {
1017
+ height: 5px;
1018
+ left: 0px;
1019
+ bottom: 0px;
1020
+ will-change: left;
893
1021
  }
894
1022
 
895
1023
  .Switch {
@@ -974,76 +1102,6 @@
974
1102
  display: none;
975
1103
  }
976
1104
 
977
- .Modal {
978
- display: block;
979
- position: fixed;
980
- top: 0;
981
- left: 0;
982
- right: 0;
983
- bottom: 100%;
984
- overflow-y: scroll;
985
- transition: bottom 0ms linear;
986
- transition-delay: 0.2s;
987
- }
988
-
989
- .Modal.show {
990
- transition-delay: 0s;
991
- bottom: 0;
992
- }
993
-
994
- .Modal > .overlay {
995
- position: fixed;
996
- top: 0;
997
- bottom: 100%;
998
- left: 0;
999
- right: 0;
1000
- transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1001
- opacity: 0;
1002
- background-color: black;
1003
- pointer-events: none;
1004
- }
1005
-
1006
- .Modal > .overlay.show {
1007
- opacity: 0.5;
1008
- bottom: 0;
1009
- }
1010
-
1011
- .Modal > .content {
1012
- left: 50%;
1013
- top: 10vh;
1014
- margin-bottom: 10vh;
1015
- font-size: 16px;
1016
- padding: 0;
1017
- opacity: 0;
1018
- transition: opacity 0.25s ease, transform 0.25s ease;
1019
- transform: scaleY(0) translateY(-200px) translateX(-50%);
1020
- transform-origin: top;
1021
- position: absolute;
1022
- border-radius: 2px;
1023
- box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.3);
1024
- }
1025
-
1026
- .Modal > .content.show {
1027
- opacity: 1;
1028
- transform: scaleY(1) translateY(0px) translateX(-50%);
1029
- }
1030
-
1031
- .Modal > .content > .Scrollable {
1032
- overflow: visible;
1033
- max-height: 80vh;
1034
- }
1035
-
1036
- .Modal > .content > .Scrollable > .viewport {
1037
- min-width: 10px;
1038
- min-height: 10px;
1039
- }
1040
-
1041
- .Modal > .content > .Button.close {
1042
- top: 10px;
1043
- right: 10px;
1044
- position: absolute;
1045
- }
1046
-
1047
1105
  .ImageGallery {
1048
1106
  position: fixed;
1049
1107
  top: 0;
@@ -1240,238 +1298,82 @@
1240
1298
  right: 0;
1241
1299
  bottom: 0;
1242
1300
  left: 0;
1243
- background: rgba(0, 0, 0, 0.35);
1244
- transition: background 0.2s ease;
1245
- }
1246
-
1247
- .ImageGallery .previews .preview:hover:after {
1248
- background: rgba(0, 0, 0, 0.1);
1249
- }
1250
-
1251
- .ImageGallery .previews .preview.selected .border .line {
1252
- left: 0;
1253
- width: 100%;
1254
- }
1255
-
1256
- .ImageGallery .previews .preview.selected:after {
1257
- background: rgba(0, 0, 0, 0);
1258
- }
1259
-
1260
- .ImageGallery .previews > .arrow {
1261
- position: absolute;
1262
- top: 50%;
1263
- height: 30px;
1264
- width: 30px;
1265
- min-width: 30px;
1266
- min-height: 30px;
1267
- margin-top: -15px;
1268
- }
1269
-
1270
- .ImageGallery .previews > .arrow.left {
1271
- left: 0;
1272
- }
1273
-
1274
- .ImageGallery .previews > .arrow.right {
1275
- right: 0;
1276
- }
1277
-
1278
- .ImageGallery .previews > .arrow .material-icons {
1279
- font-size: 24px;
1280
- }
1281
-
1282
- .Scrollable {
1283
- max-height: 250px;
1284
- max-width: 250px;
1285
- padding-right: 5px;
1286
- position: relative;
1287
- display: flex;
1288
- flex-flow: column;
1289
- align-items: stretch;
1290
- overflow: hidden;
1291
- }
1292
-
1293
- .Scrollable:hover > .scrollbar.auto {
1294
- transition-delay: 0s;
1295
- opacity: 1;
1296
- }
1297
-
1298
- .Scrollable .viewport {
1299
- overflow-y: scroll;
1300
- overflow-x: scroll;
1301
- max-height: 100%;
1302
- scroll-behavior: smooth;
1303
- scrollbar-width: none;
1304
- }
1305
-
1306
- .Scrollable .viewport::-webkit-scrollbar {
1307
- display: none;
1308
- }
1309
-
1310
- .Scrollable.without-scroll-horizontal {
1311
- max-width: unset;
1312
- }
1313
-
1314
- .Scrollable.without-scroll {
1315
- padding-right: 0;
1316
- max-height: unset;
1317
- }
1318
-
1319
- .Scrollable.without-scroll > .viewport {
1320
- padding-right: 0;
1321
- margin-right: 0;
1322
- }
1323
-
1324
- .Scrollable.without-scroll > .scrollbar {
1325
- visibility: hidden;
1326
- }
1327
-
1328
- .Scrollable .scrollbar {
1329
- position: absolute;
1330
- right: 0px;
1331
- top: 0px;
1332
- width: 5px;
1333
- transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1334
- transition-delay: 0.5s;
1335
- z-index: 1;
1336
- }
1337
-
1338
- .Scrollable .scrollbar.auto, .Scrollable .scrollbar.hidden {
1339
- opacity: 0;
1340
- }
1341
-
1342
- .Scrollable .scrollbar .thumb {
1343
- background-color: rgba(0, 0, 0, 0.3);
1344
- width: 5px;
1345
- position: absolute;
1346
- right: 0px;
1347
- top: 0px;
1348
- user-select: none;
1349
- will-change: top;
1350
- border-radius: 2px;
1301
+ background: rgba(0, 0, 0, 0.35);
1302
+ transition: background 0.2s ease;
1351
1303
  }
1352
1304
 
1353
- .Scrollable .scrollbar .thumb:hover {
1354
- background-color: rgba(0, 0, 0, 0.5);
1305
+ .ImageGallery .previews .preview:hover:after {
1306
+ background: rgba(0, 0, 0, 0.1);
1355
1307
  }
1356
1308
 
1357
- .Scrollable .scrollbar .thumb:active {
1358
- background-color: rgba(0, 0, 0, 0.7);
1309
+ .ImageGallery .previews .preview.selected .border .line {
1310
+ left: 0;
1311
+ width: 100%;
1359
1312
  }
1360
1313
 
1361
- .Scrollable .scrollbar.horizontal {
1362
- left: 0px;
1363
- right: 0px;
1364
- height: 5px;
1365
- bottom: 0;
1366
- width: unset;
1367
- top: unset;
1314
+ .ImageGallery .previews .preview.selected:after {
1315
+ background: rgba(0, 0, 0, 0);
1368
1316
  }
1369
1317
 
1370
- .Scrollable .scrollbar.horizontal .thumb {
1371
- height: 5px;
1372
- left: 0px;
1373
- bottom: 0px;
1374
- will-change: left;
1318
+ .ImageGallery .previews > .arrow {
1319
+ position: absolute;
1320
+ top: 50%;
1321
+ height: 30px;
1322
+ width: 30px;
1323
+ min-width: 30px;
1324
+ min-height: 30px;
1325
+ margin-top: -15px;
1375
1326
  }
1376
1327
 
1377
- .Snackbar {
1378
- transform: translateX(-50%);
1379
- overflow: hidden;
1380
- background-color: #323232;
1381
- padding: 14px 24px 14px 24px;
1382
- color: #fff;
1383
- min-width: 288px;
1384
- max-width: 568px;
1385
- position: fixed;
1386
- bottom: -50px;
1387
- left: 50%;
1388
- display: flex;
1389
- flex-wrap: nowrap;
1390
- align-items: center;
1391
- opacity: 0;
1392
- transition: bottom 0.25s ease, opacity 0.2s ease;
1393
- border-radius: 4px;
1394
- box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
1328
+ .ImageGallery .previews > .arrow.left {
1329
+ left: 0;
1395
1330
  }
1396
1331
 
1397
- .Snackbar.shown {
1398
- bottom: 15px;
1399
- opacity: 1;
1332
+ .ImageGallery .previews > .arrow.right {
1333
+ right: 0;
1400
1334
  }
1401
1335
 
1402
- .Snackbar .message {
1403
- overflow: hidden;
1404
- line-height: 1.2em;
1405
- min-height: 1.2em;
1406
- max-height: 2.4em;
1407
- flex: 1;
1336
+ .ImageGallery .previews > .arrow .material-icons {
1337
+ font-size: 24px;
1408
1338
  }
1409
1339
 
1410
- .Snackbar .action {
1411
- text-transform: uppercase;
1412
- font-weight: bold;
1413
- margin-left: 48px;
1414
- color: #bf3727;
1340
+ .ModalMenu {
1341
+ position: absolute;
1342
+ top: 10px;
1343
+ right: 50px;
1415
1344
  }
1416
1345
 
1417
- .Snackbar .action a {
1418
- text-decoration: none;
1419
- color: #bf3727;
1346
+ .ModalMenu .material-icons {
1347
+ color: #818181;
1420
1348
  }
1421
1349
 
1422
- .SpinningProgress {
1423
- width: 48px;
1424
- height: 48px;
1425
- position: relative;
1426
- margin: 0 auto;
1350
+ .ModalMenu .Button.animated {
1351
+ position: absolute;
1352
+ transition: opacity 150ms ease-in, right 200ms ease-in;
1353
+ opacity: 0;
1354
+ right: 0;
1355
+ top: 0;
1427
1356
  }
1428
1357
 
1429
- .SpinningProgress:before {
1430
- content: "";
1431
- display: block;
1432
- padding-top: 100%;
1358
+ .ModalMenu .Button.animated.mounting, .ModalMenu .Button.animated.mounted {
1359
+ opacity: 1;
1433
1360
  }
1434
1361
 
1435
- .SpinningProgress .circular {
1436
- animation: rotate 2s linear infinite;
1437
- height: 100%;
1438
- transform-origin: center center;
1439
- width: 100%;
1440
- position: absolute;
1441
- top: 0;
1442
- bottom: 0;
1443
- left: 0;
1444
- right: 0;
1445
- margin: auto;
1362
+ .ModalMenu .Button.animated.unmounting {
1363
+ transition: opacity 100ms ease-out, right 200ms ease-out;
1446
1364
  }
1447
1365
 
1448
- .SpinningProgress .line {
1449
- stroke: black;
1450
- stroke-width: 2px;
1451
- stroke-dasharray: 1, 96;
1452
- stroke-dashoffset: 0;
1453
- animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
1366
+ .ModalMenu .Button.active {
1367
+ background: #EBEBEB;
1454
1368
  }
1455
1369
 
1456
- @keyframes rotate {
1457
- 100% {
1458
- transform: rotate(360deg);
1459
- }
1460
- }
1461
- @keyframes dash {
1462
- 0% {
1463
- stroke-dasharray: 1, 96;
1464
- stroke-dashoffset: 0;
1465
- }
1466
- 50% {
1467
- stroke-dasharray: 43, 96;
1468
- stroke-dashoffset: -17px;
1469
- }
1470
- 100% {
1471
- stroke-dasharray: 43, 96;
1472
- stroke-dashoffset: -53px;
1473
- }
1370
+ .ModalMenu .separator {
1371
+ height: 24px;
1372
+ width: 1px;
1373
+ background-color: #D9D9D9;
1374
+ margin-left: 4px;
1474
1375
  }
1376
+
1475
1377
  .TextField {
1476
1378
  position: relative;
1477
1379
  width: 100%;
@@ -1615,6 +1517,104 @@
1615
1517
  animation-name: shake;
1616
1518
  }
1617
1519
 
1520
+ .SpinningProgress {
1521
+ width: 48px;
1522
+ height: 48px;
1523
+ position: relative;
1524
+ margin: 0 auto;
1525
+ }
1526
+
1527
+ .SpinningProgress:before {
1528
+ content: "";
1529
+ display: block;
1530
+ padding-top: 100%;
1531
+ }
1532
+
1533
+ .SpinningProgress .circular {
1534
+ animation: rotate 2s linear infinite;
1535
+ height: 100%;
1536
+ transform-origin: center center;
1537
+ width: 100%;
1538
+ position: absolute;
1539
+ top: 0;
1540
+ bottom: 0;
1541
+ left: 0;
1542
+ right: 0;
1543
+ margin: auto;
1544
+ }
1545
+
1546
+ .SpinningProgress .line {
1547
+ stroke: black;
1548
+ stroke-width: 2px;
1549
+ stroke-dasharray: 1, 96;
1550
+ stroke-dashoffset: 0;
1551
+ animation: dash 1.5s ease-in-out infinite, color 6s ease-in-out infinite;
1552
+ }
1553
+
1554
+ @keyframes rotate {
1555
+ 100% {
1556
+ transform: rotate(360deg);
1557
+ }
1558
+ }
1559
+ @keyframes dash {
1560
+ 0% {
1561
+ stroke-dasharray: 1, 96;
1562
+ stroke-dashoffset: 0;
1563
+ }
1564
+ 50% {
1565
+ stroke-dasharray: 43, 96;
1566
+ stroke-dashoffset: -17px;
1567
+ }
1568
+ 100% {
1569
+ stroke-dasharray: 43, 96;
1570
+ stroke-dashoffset: -53px;
1571
+ }
1572
+ }
1573
+ .Snackbar {
1574
+ transform: translateX(-50%);
1575
+ overflow: hidden;
1576
+ background-color: #323232;
1577
+ padding: 14px 24px 14px 24px;
1578
+ color: #fff;
1579
+ min-width: 288px;
1580
+ max-width: 568px;
1581
+ position: fixed;
1582
+ bottom: -50px;
1583
+ left: 50%;
1584
+ display: flex;
1585
+ flex-wrap: nowrap;
1586
+ align-items: center;
1587
+ opacity: 0;
1588
+ transition: bottom 0.25s ease, opacity 0.2s ease;
1589
+ border-radius: 4px;
1590
+ box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
1591
+ }
1592
+
1593
+ .Snackbar.shown {
1594
+ bottom: 15px;
1595
+ opacity: 1;
1596
+ }
1597
+
1598
+ .Snackbar .message {
1599
+ overflow: hidden;
1600
+ line-height: 1.2em;
1601
+ min-height: 1.2em;
1602
+ max-height: 2.4em;
1603
+ flex: 1;
1604
+ }
1605
+
1606
+ .Snackbar .action {
1607
+ text-transform: uppercase;
1608
+ font-weight: bold;
1609
+ margin-left: 48px;
1610
+ color: #bf3727;
1611
+ }
1612
+
1613
+ .Snackbar .action a {
1614
+ text-decoration: none;
1615
+ color: #bf3727;
1616
+ }
1617
+
1618
1618
  .DNDContainer .DroppableList .Draggable {
1619
1619
  transform: unset;
1620
1620
  transition: unset;
@@ -1807,14 +1807,6 @@
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
-
1818
1810
  .Table {
1819
1811
  font-family: Roboto, sans-serif;
1820
1812
  font-size: 14px;
@@ -1935,4 +1927,12 @@
1935
1927
 
1936
1928
  .Table .editable > .AutocompleteSelect > .selected > .DummyChild {
1937
1929
  margin: 0;
1930
+ }
1931
+
1932
+ .ScrollableTable .Scrollable .scrollbar {
1933
+ top: 56px;
1934
+ }
1935
+
1936
+ .ScrollableTable .Table {
1937
+ position: static;
1938
1938
  }