react-ui-basics 0.0.181 → 0.0.183

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/DatePicker.d.ts CHANGED
@@ -4,6 +4,9 @@ import { DateExtended } from "./DateTools";
4
4
  export interface DatePickerProps {
5
5
  id?: number | string;
6
6
  name?: string;
7
+ open?: boolean;
8
+ onClose?: () => void;
9
+ renderInput?: () => JSX.Element;
7
10
  value: Date;
8
11
  minDate?: Date;
9
12
  formatter: (date: Date) => string;
package/DatePicker.js CHANGED
@@ -39,7 +39,7 @@ var DatePicker = /** @class */ (function (_super) {
39
39
  };
40
40
  var value = __value(props);
41
41
  _this.state = {
42
- focused: false,
42
+ focused: !!props.open,
43
43
  value: value,
44
44
  text: props.formatter(value),
45
45
  selectedMonth: dateOf(value || new Date()).resetTime().set(1, TimeUnit.DAY),
@@ -55,6 +55,15 @@ var DatePicker = /** @class */ (function (_super) {
55
55
  text: __props(this).formatter(value)
56
56
  });
57
57
  }
58
+ if (__props(this).open !== prevProps.open) {
59
+ var open_1 = !!__props(this).open;
60
+ this.setState({
61
+ focused: open_1
62
+ });
63
+ }
64
+ if (!__state(this).focused && !!prevState.focused) {
65
+ orNoop(__props(this).onClose)();
66
+ }
58
67
  };
59
68
  DatePicker.prototype[ReactConstants[0]] = function () {
60
69
  var _this = this;
@@ -71,6 +80,8 @@ var DatePicker = /** @class */ (function (_super) {
71
80
  return true;
72
81
  if (!equals(__state(this).value, __value(nextState)))
73
82
  return true;
83
+ if (__props(this).open !== nextProps.open)
84
+ return true;
74
85
  if (__state(this).text !== nextState.text)
75
86
  return true;
76
87
  if (__state(this).focused !== nextState.focused)
@@ -83,9 +94,9 @@ var DatePicker = /** @class */ (function (_super) {
83
94
  };
84
95
  DatePicker.prototype[ReactConstants[3]] = function () {
85
96
  var _this = this;
86
- var _a = __props(this), minDate = _a.minDate, formatter = _a.formatter, parser = _a.parser, dayOfWeekToString = _a.dayOfWeekToString, monthToString = _a.monthToString;
97
+ var _a = __props(this), minDate = _a.minDate, formatter = _a.formatter, parser = _a.parser, dayOfWeekToString = _a.dayOfWeekToString, monthToString = _a.monthToString, renderInput = _a.renderInput;
87
98
  var _b = __state(this), value = __value(_b), text = _b.text, focused = _b.focused, selectedMonth = _b.selectedMonth;
88
- return jsxRuntime_1("div", __extends({ [ReactConstants[5]]: "DatePicker", ref: function (el) { return _this.el = el; } }, { [ReactConstants[4]]: [jsxRuntime_2(TextField, { id: 'value', value: text, autoComplete: "off", onFocus: function () { return _this.setState({ focused: true }); }, [ReactConstants[7]]: function (e) {
99
+ return jsxRuntime_1("div", __extends({ [ReactConstants[5]]: "DatePicker", ref: function (el) { return _this.el = el; } }, { [ReactConstants[4]]: [!!renderInput && renderInput(), !renderInput && jsxRuntime_2(TextField, { id: 'value', value: text, autoComplete: "off", onFocus: function () { return _this.setState({ focused: true }); }, [ReactConstants[7]]: function (e) {
89
100
  var text = __target(e).value;
90
101
  try {
91
102
  var date = parser(text);
package/DatePicker.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"DatePicker.js","sources":["./src/DatePicker.tsx"],"sourcesContent":[null],"names":["_jsx","DateTools.get","DateTools.TimeUnit","DateTools.dateOf","DateTools.equals","_jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"DatePicker.js","sources":["./src/DatePicker.tsx"],"sourcesContent":[null],"names":["_jsx","DateTools.get","DateTools.TimeUnit","DateTools.dateOf","DateTools.equals","_jsxs"],"mappings":"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"}
package/bundle.css CHANGED
@@ -468,48 +468,6 @@
468
468
  opacity: 1;
469
469
  }
470
470
 
471
- .DialogModal {
472
- overflow: hidden;
473
- }
474
-
475
- .DialogModal .content {
476
- top: 20vh;
477
- }
478
-
479
- .Dialog {
480
- background-color: white;
481
- min-width: 460px;
482
- max-width: 40vw;
483
- padding: 15px;
484
- }
485
-
486
- .Dialog .title {
487
- margin-bottom: 15px;
488
- padding: 20px 50px 0px 30px;
489
- font-size: 1.25rem;
490
- line-height: 2rem;
491
- font-weight: 400;
492
- letter-spacing: 0.0125em;
493
- }
494
-
495
- .Dialog .description {
496
- color: rgba(0, 0, 0, 0.54);
497
- font-size: 1rem;
498
- line-height: 1.5rem;
499
- font-weight: 400;
500
- letter-spacing: 0.03125em;
501
- margin-top: 20px;
502
- padding: 0 24px 24px;
503
- }
504
-
505
- .Dialog > div.row {
506
- margin-bottom: 15px;
507
- }
508
-
509
- .Dialog > div.row:last-child {
510
- margin-bottom: 0;
511
- }
512
-
513
471
  .Checkbox {
514
472
  position: relative;
515
473
  white-space: pre;
@@ -590,184 +548,46 @@
590
548
  transition: stroke-dashoffset 0.2s ease;
591
549
  }
592
550
 
593
- .Dropzone {
594
- position: relative;
595
- }
596
-
597
- .Dropzone > .overlay {
598
- position: absolute;
599
- left: 0;
600
- right: 0;
601
- top: 0;
602
- bottom: 0;
603
- background-color: #38ADC4;
604
- z-index: 1;
605
- opacity: 0;
606
- transition: all 0.2s ease;
607
- transition-delay: 100ms;
608
- visibility: hidden;
609
- display: flex;
610
- justify-content: center;
611
- align-items: center;
612
- }
613
-
614
- .Dropzone > .overlay .drop {
615
- border-radius: 4px;
616
- border: 1px dashed #FFFFFF;
617
- position: absolute;
618
- top: 18px;
619
- left: 18px;
620
- right: 18px;
621
- bottom: 18px;
622
- display: flex;
623
- justify-content: center;
624
- align-items: center;
625
- font-weight: 500;
626
- font-size: 18px;
627
- color: #FFFFFF;
628
- }
629
-
630
- .Dropzone.dragging > .overlay {
631
- opacity: 0.7;
632
- visibility: visible;
633
- transition-delay: 0s;
634
- }
635
-
636
- .Dropzone.dragging > * {
637
- pointer-events: none;
638
- }
639
-
640
- .Dropzone > input.file {
641
- position: absolute;
642
- left: 0;
643
- right: 0;
644
- top: 0;
645
- bottom: 0;
646
- width: 100%;
647
- height: 100%;
648
- opacity: 0;
649
- cursor: pointer;
650
- z-index: 1;
651
- }
652
-
653
- .DropFileInput {
654
- flex-grow: 1;
655
- }
656
-
657
- .DropFileInput .Dropzone {
658
- border: 1px dashed #808080;
659
- padding: 12px;
660
- display: flex;
661
- flex-flow: row nowrap;
662
- justify-content: center;
663
- align-items: center;
664
- color: gray;
665
- cursor: pointer;
666
- border-radius: 3px;
667
- font-weight: normal;
668
- line-height: 22px;
669
- font-size: 14px;
670
- color: #7E7E7E;
671
- max-width: 100%;
672
- word-break: break-all;
673
- word-break: break-word;
674
- }
675
-
676
- .DropFileInput .Dropzone .icon.withText {
677
- margin-right: 10px;
678
- }
679
-
680
- .FormUploadProgress {
681
- position: absolute;
682
- left: 0;
683
- right: 0;
684
- top: 0;
685
- bottom: 0;
686
- background-color: rgba(255, 255, 255, 0.6);
687
- z-index: 2;
688
- }
689
-
690
- .FormUploadProgress.animated.mounting, .FormUploadProgress.animated.mounted {
691
- transition-delay: 500ms;
692
- }
693
-
694
- .FormUploadProgress .wrapper {
695
- position: sticky;
696
- top: 40%;
697
- margin-top: 40%;
698
- margin-left: 50%;
699
- transform: translateX(-50%);
700
- display: flex;
701
- flex-flow: column;
702
- justify-content: center;
703
- align-items: center;
704
- }
705
-
706
- .FormUploadProgress .wrapper .CircleProgress, .FormUploadProgress .wrapper .SpinningProgress {
707
- position: absolute;
708
- width: 107px;
709
- height: 107px;
710
- top: 0;
711
- left: 0;
712
- }
713
-
714
- .FormUploadProgress .wrapper .CircleProgress .line, .FormUploadProgress .wrapper .SpinningProgress .line {
715
- stroke: #2196F3;
716
- }
717
-
718
- .FormUploadProgress .wrapper > .progress {
719
- width: 107px;
720
- height: 107px;
721
- min-height: 107px;
722
- display: flex;
723
- justify-content: center;
724
- align-items: center;
725
- box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.25);
726
- border-radius: 50%;
727
- background: white;
728
- position: relative;
551
+ .DialogModal {
552
+ overflow: hidden;
729
553
  }
730
554
 
731
- .FormUploadProgress .wrapper > .progress > .value {
732
- display: inline-block;
733
- margin-top: 5px;
734
- font-weight: bold;
735
- line-height: 16px;
736
- font-size: 13px;
737
- text-align: center;
738
- color: #818181;
555
+ .DialogModal .content {
556
+ top: 20vh;
739
557
  }
740
558
 
741
- .FormUploadProgress .wrapper .cancel {
742
- min-width: 107px;
743
- margin-top: 20px;
559
+ .Dialog {
744
560
  background-color: white;
745
- color: #F96B5C;
746
- box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.25);
561
+ min-width: 460px;
562
+ max-width: 40vw;
563
+ padding: 15px;
747
564
  }
748
565
 
749
- .Button.FloatingActionButton {
750
- position: absolute;
751
- right: 16px;
752
- bottom: 16px;
753
- width: 56px;
754
- height: 56px;
755
- padding: 16px;
756
- transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
566
+ .Dialog .title {
567
+ margin-bottom: 15px;
568
+ padding: 20px 50px 0px 30px;
569
+ font-size: 1.25rem;
570
+ line-height: 2rem;
571
+ font-weight: 400;
572
+ letter-spacing: 0.0125em;
757
573
  }
758
574
 
759
- .Button.FloatingActionButton.raised {
760
- 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);
575
+ .Dialog .description {
576
+ color: rgba(0, 0, 0, 0.54);
577
+ font-size: 1rem;
578
+ line-height: 1.5rem;
579
+ font-weight: 400;
580
+ letter-spacing: 0.03125em;
581
+ margin-top: 20px;
582
+ padding: 0 24px 24px;
761
583
  }
762
584
 
763
- .Button.FloatingActionButton.mini {
764
- width: 40px;
765
- height: 40px;
766
- padding: 8px;
585
+ .Dialog > div.row {
586
+ margin-bottom: 15px;
767
587
  }
768
588
 
769
- .Button.FloatingActionButton.hidden {
770
- bottom: -100px;
589
+ .Dialog > div.row:last-child {
590
+ margin-bottom: 0;
771
591
  }
772
592
 
773
593
  .FilteredList {
@@ -851,156 +671,255 @@
851
671
  margin-bottom: 8px;
852
672
  }
853
673
 
854
- .ModalMenu {
855
- position: absolute;
856
- top: 10px;
857
- right: 50px;
674
+ .DropFileInput {
675
+ flex-grow: 1;
858
676
  }
859
677
 
860
- .ModalMenu .material-icons {
861
- color: #818181;
678
+ .DropFileInput .Dropzone {
679
+ border: 1px dashed #808080;
680
+ padding: 12px;
681
+ display: flex;
682
+ flex-flow: row nowrap;
683
+ justify-content: center;
684
+ align-items: center;
685
+ color: gray;
686
+ cursor: pointer;
687
+ border-radius: 3px;
688
+ font-weight: normal;
689
+ line-height: 22px;
690
+ font-size: 14px;
691
+ color: #7E7E7E;
692
+ max-width: 100%;
693
+ word-break: break-all;
694
+ word-break: break-word;
862
695
  }
863
696
 
864
- .ModalMenu .Button.animated {
865
- position: absolute;
866
- transition: opacity 150ms ease-in, right 200ms ease-in;
867
- opacity: 0;
868
- right: 0;
869
- top: 0;
697
+ .DropFileInput .Dropzone .icon.withText {
698
+ margin-right: 10px;
870
699
  }
871
700
 
872
- .ModalMenu .Button.animated.mounting, .ModalMenu .Button.animated.mounted {
701
+ .Scrollable {
702
+ max-height: 250px;
703
+ max-width: 250px;
704
+ padding-right: 5px;
705
+ position: relative;
706
+ display: flex;
707
+ flex-flow: column;
708
+ align-items: stretch;
709
+ overflow: hidden;
710
+ }
711
+
712
+ .Scrollable:hover > .scrollbar.auto {
713
+ transition-delay: 0s;
873
714
  opacity: 1;
874
715
  }
875
716
 
876
- .ModalMenu .Button.animated.unmounting {
877
- transition: opacity 100ms ease-out, right 200ms ease-out;
717
+ .Scrollable .viewport {
718
+ overflow-y: scroll;
719
+ overflow-x: scroll;
720
+ max-height: 100%;
721
+ scroll-behavior: smooth;
722
+ scrollbar-width: none;
878
723
  }
879
724
 
880
- .ModalMenu .Button.active {
881
- background: #EBEBEB;
725
+ .Scrollable .viewport::-webkit-scrollbar {
726
+ display: none;
882
727
  }
883
728
 
884
- .ModalMenu .separator {
885
- height: 24px;
886
- width: 1px;
887
- background-color: #D9D9D9;
888
- margin-left: 4px;
729
+ .Scrollable.without-scroll-horizontal {
730
+ max-width: unset;
889
731
  }
890
732
 
891
- .Modal {
892
- display: block;
893
- position: fixed;
894
- top: 0;
895
- left: 0;
896
- right: 0;
897
- bottom: 100%;
898
- overflow-y: scroll;
899
- transition: bottom 0ms linear;
900
- transition-delay: 0.2s;
733
+ .Scrollable.without-scroll {
734
+ padding-right: 0;
735
+ max-height: unset;
901
736
  }
902
737
 
903
- .Modal.show {
904
- transition-delay: 0s;
905
- bottom: 0;
738
+ .Scrollable.without-scroll > .viewport {
739
+ padding-right: 0;
740
+ margin-right: 0;
906
741
  }
907
742
 
908
- .Modal > .overlay {
909
- position: fixed;
910
- top: 0;
911
- bottom: 100%;
912
- left: 0;
913
- right: 0;
914
- transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
915
- opacity: 0;
916
- background-color: black;
917
- pointer-events: none;
743
+ .Scrollable.without-scroll > .scrollbar {
744
+ visibility: hidden;
918
745
  }
919
746
 
920
- .Modal > .overlay.show {
921
- opacity: 0.5;
922
- bottom: 0;
747
+ .Scrollable .scrollbar {
748
+ position: absolute;
749
+ right: 0px;
750
+ top: 0px;
751
+ width: 5px;
752
+ transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
753
+ transition-delay: 0.5s;
754
+ z-index: 1;
923
755
  }
924
756
 
925
- .Modal > .content {
926
- left: 50%;
927
- top: 10vh;
928
- margin-bottom: 10vh;
929
- font-size: 16px;
930
- padding: 0;
757
+ .Scrollable .scrollbar.auto, .Scrollable .scrollbar.hidden {
931
758
  opacity: 0;
932
- transition: opacity 0.25s ease, transform 0.25s ease;
933
- transform: scaleY(0) translateY(-200px) translateX(-50%);
934
- transform-origin: top;
759
+ }
760
+
761
+ .Scrollable .scrollbar .thumb {
762
+ background-color: rgba(0, 0, 0, 0.3);
763
+ width: 5px;
935
764
  position: absolute;
765
+ right: 0px;
766
+ top: 0px;
767
+ user-select: none;
768
+ will-change: top;
936
769
  border-radius: 2px;
937
- box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.3);
938
770
  }
939
771
 
940
- .Modal > .content.show {
941
- opacity: 1;
942
- transform: scaleY(1) translateY(0px) translateX(-50%);
772
+ .Scrollable .scrollbar .thumb:hover {
773
+ background-color: rgba(0, 0, 0, 0.5);
943
774
  }
944
775
 
945
- .Modal > .content > .Scrollable {
946
- overflow: visible;
947
- max-height: 80vh;
776
+ .Scrollable .scrollbar .thumb:active {
777
+ background-color: rgba(0, 0, 0, 0.7);
948
778
  }
949
779
 
950
- .Modal > .content > .Scrollable > .viewport {
951
- min-width: 10px;
952
- min-height: 10px;
780
+ .Scrollable .scrollbar.horizontal {
781
+ left: 0px;
782
+ right: 0px;
783
+ height: 5px;
784
+ bottom: 0;
785
+ width: unset;
786
+ top: unset;
953
787
  }
954
788
 
955
- .Modal > .content > .Button.close {
956
- top: 10px;
957
- right: 10px;
789
+ .Scrollable .scrollbar.horizontal .thumb {
790
+ height: 5px;
791
+ left: 0px;
792
+ bottom: 0px;
793
+ will-change: left;
794
+ }
795
+
796
+ .FormUploadProgress {
958
797
  position: absolute;
798
+ left: 0;
799
+ right: 0;
800
+ top: 0;
801
+ bottom: 0;
802
+ background-color: rgba(255, 255, 255, 0.6);
803
+ z-index: 2;
959
804
  }
960
805
 
961
- .Snackbar {
806
+ .FormUploadProgress.animated.mounting, .FormUploadProgress.animated.mounted {
807
+ transition-delay: 500ms;
808
+ }
809
+
810
+ .FormUploadProgress .wrapper {
811
+ position: sticky;
812
+ top: 40%;
813
+ margin-top: 40%;
814
+ margin-left: 50%;
962
815
  transform: translateX(-50%);
963
- overflow: hidden;
964
- background-color: #323232;
965
- padding: 14px 24px 14px 24px;
966
- color: #fff;
967
- min-width: 288px;
968
- max-width: 568px;
969
- position: fixed;
970
- bottom: -50px;
971
- left: 50%;
972
816
  display: flex;
973
- flex-wrap: nowrap;
817
+ flex-flow: column;
818
+ justify-content: center;
974
819
  align-items: center;
820
+ }
821
+
822
+ .FormUploadProgress .wrapper .CircleProgress, .FormUploadProgress .wrapper .SpinningProgress {
823
+ position: absolute;
824
+ width: 107px;
825
+ height: 107px;
826
+ top: 0;
827
+ left: 0;
828
+ }
829
+
830
+ .FormUploadProgress .wrapper .CircleProgress .line, .FormUploadProgress .wrapper .SpinningProgress .line {
831
+ stroke: #2196F3;
832
+ }
833
+
834
+ .FormUploadProgress .wrapper > .progress {
835
+ width: 107px;
836
+ height: 107px;
837
+ min-height: 107px;
838
+ display: flex;
839
+ justify-content: center;
840
+ align-items: center;
841
+ box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.25);
842
+ border-radius: 50%;
843
+ background: white;
844
+ position: relative;
845
+ }
846
+
847
+ .FormUploadProgress .wrapper > .progress > .value {
848
+ display: inline-block;
849
+ margin-top: 5px;
850
+ font-weight: bold;
851
+ line-height: 16px;
852
+ font-size: 13px;
853
+ text-align: center;
854
+ color: #818181;
855
+ }
856
+
857
+ .FormUploadProgress .wrapper .cancel {
858
+ min-width: 107px;
859
+ margin-top: 20px;
860
+ background-color: white;
861
+ color: #F96B5C;
862
+ box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.25);
863
+ }
864
+
865
+ .Dropzone {
866
+ position: relative;
867
+ }
868
+
869
+ .Dropzone > .overlay {
870
+ position: absolute;
871
+ left: 0;
872
+ right: 0;
873
+ top: 0;
874
+ bottom: 0;
875
+ background-color: #38ADC4;
876
+ z-index: 1;
975
877
  opacity: 0;
976
- transition: bottom 0.25s ease, opacity 0.2s ease;
977
- border-radius: 4px;
978
- box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
878
+ transition: all 0.2s ease;
879
+ transition-delay: 100ms;
880
+ visibility: hidden;
881
+ display: flex;
882
+ justify-content: center;
883
+ align-items: center;
979
884
  }
980
885
 
981
- .Snackbar.shown {
982
- bottom: 15px;
983
- opacity: 1;
886
+ .Dropzone > .overlay .drop {
887
+ border-radius: 4px;
888
+ border: 1px dashed #FFFFFF;
889
+ position: absolute;
890
+ top: 18px;
891
+ left: 18px;
892
+ right: 18px;
893
+ bottom: 18px;
894
+ display: flex;
895
+ justify-content: center;
896
+ align-items: center;
897
+ font-weight: 500;
898
+ font-size: 18px;
899
+ color: #FFFFFF;
984
900
  }
985
901
 
986
- .Snackbar .message {
987
- overflow: hidden;
988
- line-height: 1.2em;
989
- min-height: 1.2em;
990
- max-height: 2.4em;
991
- flex: 1;
902
+ .Dropzone.dragging > .overlay {
903
+ opacity: 0.7;
904
+ visibility: visible;
905
+ transition-delay: 0s;
992
906
  }
993
907
 
994
- .Snackbar .action {
995
- text-transform: uppercase;
996
- font-weight: bold;
997
- margin-left: 48px;
998
- color: #bf3727;
908
+ .Dropzone.dragging > * {
909
+ pointer-events: none;
999
910
  }
1000
911
 
1001
- .Snackbar .action a {
1002
- text-decoration: none;
1003
- color: #bf3727;
912
+ .Dropzone > input.file {
913
+ position: absolute;
914
+ left: 0;
915
+ right: 0;
916
+ top: 0;
917
+ bottom: 0;
918
+ width: 100%;
919
+ height: 100%;
920
+ opacity: 0;
921
+ cursor: pointer;
922
+ z-index: 1;
1004
923
  }
1005
924
 
1006
925
  .ImageGallery {
@@ -1238,99 +1157,156 @@
1238
1157
  font-size: 24px;
1239
1158
  }
1240
1159
 
1241
- .Scrollable {
1242
- max-height: 250px;
1243
- max-width: 250px;
1244
- padding-right: 5px;
1245
- position: relative;
1246
- display: flex;
1247
- flex-flow: column;
1248
- align-items: stretch;
1249
- overflow: hidden;
1160
+ .Modal {
1161
+ display: block;
1162
+ position: fixed;
1163
+ top: 0;
1164
+ left: 0;
1165
+ right: 0;
1166
+ bottom: 100%;
1167
+ overflow-y: scroll;
1168
+ transition: bottom 0ms linear;
1169
+ transition-delay: 0.2s;
1250
1170
  }
1251
1171
 
1252
- .Scrollable:hover > .scrollbar.auto {
1172
+ .Modal.show {
1253
1173
  transition-delay: 0s;
1254
- opacity: 1;
1174
+ bottom: 0;
1255
1175
  }
1256
1176
 
1257
- .Scrollable .viewport {
1258
- overflow-y: scroll;
1259
- overflow-x: scroll;
1260
- max-height: 100%;
1261
- scroll-behavior: smooth;
1262
- scrollbar-width: none;
1177
+ .Modal > .overlay {
1178
+ position: fixed;
1179
+ top: 0;
1180
+ bottom: 100%;
1181
+ left: 0;
1182
+ right: 0;
1183
+ transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1184
+ opacity: 0;
1185
+ background-color: black;
1186
+ pointer-events: none;
1263
1187
  }
1264
1188
 
1265
- .Scrollable .viewport::-webkit-scrollbar {
1266
- display: none;
1189
+ .Modal > .overlay.show {
1190
+ opacity: 0.5;
1191
+ bottom: 0;
1267
1192
  }
1268
1193
 
1269
- .Scrollable.without-scroll-horizontal {
1270
- max-width: unset;
1194
+ .Modal > .content {
1195
+ left: 50%;
1196
+ top: 10vh;
1197
+ margin-bottom: 10vh;
1198
+ font-size: 16px;
1199
+ padding: 0;
1200
+ opacity: 0;
1201
+ transition: opacity 0.25s ease, transform 0.25s ease;
1202
+ transform: scaleY(0) translateY(-200px) translateX(-50%);
1203
+ transform-origin: top;
1204
+ position: absolute;
1205
+ border-radius: 2px;
1206
+ box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.3);
1271
1207
  }
1272
1208
 
1273
- .Scrollable.without-scroll {
1274
- padding-right: 0;
1275
- max-height: unset;
1209
+ .Modal > .content.show {
1210
+ opacity: 1;
1211
+ transform: scaleY(1) translateY(0px) translateX(-50%);
1276
1212
  }
1277
1213
 
1278
- .Scrollable.without-scroll > .viewport {
1279
- padding-right: 0;
1280
- margin-right: 0;
1214
+ .Modal > .content > .Scrollable {
1215
+ overflow: visible;
1216
+ max-height: 80vh;
1281
1217
  }
1282
1218
 
1283
- .Scrollable.without-scroll > .scrollbar {
1284
- visibility: hidden;
1219
+ .Modal > .content > .Scrollable > .viewport {
1220
+ min-width: 10px;
1221
+ min-height: 10px;
1285
1222
  }
1286
1223
 
1287
- .Scrollable .scrollbar {
1224
+ .Modal > .content > .Button.close {
1225
+ top: 10px;
1226
+ right: 10px;
1288
1227
  position: absolute;
1289
- right: 0px;
1290
- top: 0px;
1291
- width: 5px;
1292
- transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1293
- transition-delay: 0.5s;
1294
- z-index: 1;
1295
1228
  }
1296
1229
 
1297
- .Scrollable .scrollbar.auto, .Scrollable .scrollbar.hidden {
1298
- opacity: 0;
1230
+ .ModalMenu {
1231
+ position: absolute;
1232
+ top: 10px;
1233
+ right: 50px;
1299
1234
  }
1300
1235
 
1301
- .Scrollable .scrollbar .thumb {
1302
- background-color: rgba(0, 0, 0, 0.3);
1303
- width: 5px;
1236
+ .ModalMenu .material-icons {
1237
+ color: #818181;
1238
+ }
1239
+
1240
+ .ModalMenu .Button.animated {
1304
1241
  position: absolute;
1305
- right: 0px;
1306
- top: 0px;
1307
- user-select: none;
1308
- will-change: top;
1309
- border-radius: 2px;
1242
+ transition: opacity 150ms ease-in, right 200ms ease-in;
1243
+ opacity: 0;
1244
+ right: 0;
1245
+ top: 0;
1310
1246
  }
1311
1247
 
1312
- .Scrollable .scrollbar .thumb:hover {
1313
- background-color: rgba(0, 0, 0, 0.5);
1248
+ .ModalMenu .Button.animated.mounting, .ModalMenu .Button.animated.mounted {
1249
+ opacity: 1;
1314
1250
  }
1315
1251
 
1316
- .Scrollable .scrollbar .thumb:active {
1317
- background-color: rgba(0, 0, 0, 0.7);
1252
+ .ModalMenu .Button.animated.unmounting {
1253
+ transition: opacity 100ms ease-out, right 200ms ease-out;
1318
1254
  }
1319
1255
 
1320
- .Scrollable .scrollbar.horizontal {
1321
- left: 0px;
1322
- right: 0px;
1323
- height: 5px;
1324
- bottom: 0;
1325
- width: unset;
1326
- top: unset;
1256
+ .ModalMenu .Button.active {
1257
+ background: #EBEBEB;
1327
1258
  }
1328
1259
 
1329
- .Scrollable .scrollbar.horizontal .thumb {
1330
- height: 5px;
1331
- left: 0px;
1332
- bottom: 0px;
1333
- will-change: left;
1260
+ .ModalMenu .separator {
1261
+ height: 24px;
1262
+ width: 1px;
1263
+ background-color: #D9D9D9;
1264
+ margin-left: 4px;
1265
+ }
1266
+
1267
+ .Snackbar {
1268
+ transform: translateX(-50%);
1269
+ overflow: hidden;
1270
+ background-color: #323232;
1271
+ padding: 14px 24px 14px 24px;
1272
+ color: #fff;
1273
+ min-width: 288px;
1274
+ max-width: 568px;
1275
+ position: fixed;
1276
+ bottom: -50px;
1277
+ left: 50%;
1278
+ display: flex;
1279
+ flex-wrap: nowrap;
1280
+ align-items: center;
1281
+ opacity: 0;
1282
+ transition: bottom 0.25s ease, opacity 0.2s ease;
1283
+ border-radius: 4px;
1284
+ box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
1285
+ }
1286
+
1287
+ .Snackbar.shown {
1288
+ bottom: 15px;
1289
+ opacity: 1;
1290
+ }
1291
+
1292
+ .Snackbar .message {
1293
+ overflow: hidden;
1294
+ line-height: 1.2em;
1295
+ min-height: 1.2em;
1296
+ max-height: 2.4em;
1297
+ flex: 1;
1298
+ }
1299
+
1300
+ .Snackbar .action {
1301
+ text-transform: uppercase;
1302
+ font-weight: bold;
1303
+ margin-left: 48px;
1304
+ color: #bf3727;
1305
+ }
1306
+
1307
+ .Snackbar .action a {
1308
+ text-decoration: none;
1309
+ color: #bf3727;
1334
1310
  }
1335
1311
 
1336
1312
  .Switch {
@@ -1611,6 +1587,30 @@
1611
1587
  stroke-dashoffset: -53px;
1612
1588
  }
1613
1589
  }
1590
+ .Button.FloatingActionButton {
1591
+ position: absolute;
1592
+ right: 16px;
1593
+ bottom: 16px;
1594
+ width: 56px;
1595
+ height: 56px;
1596
+ padding: 16px;
1597
+ transition: bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1598
+ }
1599
+
1600
+ .Button.FloatingActionButton.raised {
1601
+ 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);
1602
+ }
1603
+
1604
+ .Button.FloatingActionButton.mini {
1605
+ width: 40px;
1606
+ height: 40px;
1607
+ padding: 8px;
1608
+ }
1609
+
1610
+ .Button.FloatingActionButton.hidden {
1611
+ bottom: -100px;
1612
+ }
1613
+
1614
1614
  .DNDContainer .DroppableList .Draggable {
1615
1615
  transform: unset;
1616
1616
  transition: unset;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-ui-basics",
3
- "version": "0.0.181",
3
+ "version": "0.0.183",
4
4
  "description": "",
5
5
  "module": "index.js",
6
6
  "_main": "index.cjs.js",
@@ -32,6 +32,9 @@ const DayRenderer = ({day, selected, minDate, onClick}: {
32
32
  export interface DatePickerProps {
33
33
  id?: number | string
34
34
  name?: string
35
+ open?: boolean
36
+ onClose?: () => void
37
+ renderInput?: () => JSX.Element
35
38
  value: Date
36
39
  minDate?: Date
37
40
  formatter: (date: Date) => string
@@ -56,7 +59,7 @@ class DatePicker extends React.Component<DatePickerProps, DatePickerState> {
56
59
  super(props);
57
60
  const value = props.value;
58
61
  this.state = {
59
- focused: false,
62
+ focused: !!props.open,
60
63
  value,
61
64
  text: props.formatter(value),
62
65
  selectedMonth: DateTools.dateOf(value || new Date()).resetTime().set(1, DateTools.TimeUnit.DAY),
@@ -72,6 +75,15 @@ class DatePicker extends React.Component<DatePickerProps, DatePickerState> {
72
75
  text: this.props.formatter(value)
73
76
  })
74
77
  }
78
+ if (this.props.open !== prevProps.open) {
79
+ const open = !!this.props.open
80
+ this.setState({
81
+ focused: open
82
+ })
83
+ }
84
+ if (!this.state.focused && !!prevState.focused) {
85
+ orNoop(this.props.onClose)()
86
+ }
75
87
  };
76
88
 
77
89
  componentDidMount() {
@@ -92,6 +104,9 @@ class DatePicker extends React.Component<DatePickerProps, DatePickerState> {
92
104
  if (!DateTools.equals(this.state.value, nextState.value))
93
105
  return true;
94
106
 
107
+ if (this.props.open !== nextProps.open)
108
+ return true;
109
+
95
110
  if (this.state.text !== nextState.text)
96
111
  return true;
97
112
 
@@ -108,32 +123,33 @@ class DatePicker extends React.Component<DatePickerProps, DatePickerState> {
108
123
  };
109
124
 
110
125
  render() {
111
- const {minDate, formatter, parser, dayOfWeekToString, monthToString} = this.props;
126
+ const {minDate, formatter, parser, dayOfWeekToString, monthToString, renderInput} = this.props;
112
127
  const {value, text, focused, selectedMonth} = this.state;
113
128
 
114
129
  return <div className={`DatePicker`} ref={el => this.el = el}>
115
- <TextField id={'value'} value={text}
116
- autoComplete="off"
117
- onFocus={() => this.setState({focused: true})}
118
- onChange={e => {
119
- const text = e.target.value;
120
- try {
121
- const date = parser(text);
122
- if (date && date instanceof Date && !Number.isNaN(date.getTime())) {
123
- if (!value || !DateTools.equals(value, date))
124
- this.onChange(date);
125
- }
126
- this.setState({text})
127
- } catch (ignored) {
128
- }
129
- }}
130
- onKeyDown={e => {
131
- if ((e.keyCode === 27/*esc*/ || e.keyCode === 13/*enter*/) && focused) {
132
- e.preventDefault();
133
- this.setState({text: formatter(value), focused: false});
134
- }
135
- }}
136
- />
130
+ {!!renderInput && renderInput()}
131
+ {!renderInput && <TextField id={'value'} value={text}
132
+ autoComplete="off"
133
+ onFocus={() => this.setState({focused: true})}
134
+ onChange={e => {
135
+ const text = e.target.value;
136
+ try {
137
+ const date = parser(text);
138
+ if (date && date instanceof Date && !Number.isNaN(date.getTime())) {
139
+ if (!value || !DateTools.equals(value, date))
140
+ this.onChange(date);
141
+ }
142
+ this.setState({text})
143
+ } catch (ignored) {
144
+ }
145
+ }}
146
+ onKeyDown={e => {
147
+ if ((e.keyCode === 27/*esc*/ || e.keyCode === 13/*enter*/) && focused) {
148
+ e.preventDefault();
149
+ this.setState({text: formatter(value), focused: false});
150
+ }
151
+ }}
152
+ />}
137
153
  <div className={`calendar ${focused && 'focused'}`}>
138
154
  <div className={'row monthSelect'}>
139
155
  <span>