imbric-theme 0.4.2 → 0.4.4

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.
Files changed (35) hide show
  1. package/atoms/Icon/Icon.module.css +30 -0
  2. package/atoms/Icon/constants.js +93 -14
  3. package/atoms/Input/Input.js +104 -16
  4. package/atoms/Input/Input.module.css +18 -0
  5. package/atoms/Modal/Modal.js +8 -3
  6. package/atoms/Modal/Modal.module.css +28 -0
  7. package/index.js +1 -0
  8. package/molecules/CardDefault/CardDefault.js +64 -0
  9. package/molecules/CardDefault/CardDefault.module.css +18 -0
  10. package/molecules/CardDefault/CardDefault.stories.js +23 -0
  11. package/molecules/CardDefault/constants.js +1 -0
  12. package/molecules/CardDefault/index.js +3 -0
  13. package/molecules/CardProductTypesBooking/CardProductTypesBooking.js +39 -12
  14. package/molecules/CardProductTypesBooking/CardProductTypesBooking.module.css +59 -21
  15. package/molecules/CardServices/CardServices.js +4 -1
  16. package/molecules/DynamicSelect/DynamicSelect.js +8 -2
  17. package/molecules/InputAutocomplete/InputAutocomplete.js +265 -0
  18. package/molecules/InputAutocomplete/InputAutocomplete.module.css +55 -0
  19. package/molecules/InputAutocomplete/InputAutocomplete.stories.js +23 -0
  20. package/molecules/InputAutocomplete/constants.js +1 -0
  21. package/molecules/InputAutocomplete/index.js +3 -0
  22. package/molecules/RowTable/RowTable.js +207 -64
  23. package/molecules/RowTable/RowTable.module.css +11 -0
  24. package/molecules/RowTable/constants.js +39 -0
  25. package/package.json +3 -1
  26. package/public/static/images/csv-svgrepo-com (1).svg +16 -0
  27. package/public/static/images/csv-svgrepo-com.svg +45 -0
  28. package/public/static/images/list-svgrepo-com.svg +19 -0
  29. package/public/static/images/pdf-svgrepo-com.svg +17 -0
  30. package/public/static/images/xls-svgrepo-com (1).svg +17 -0
  31. package/public/static/images/xls-svgrepo-com.svg +24 -0
  32. package/public/static/images/user-svgrepo-com (1).svg +0 -27
  33. package/public/static/images/user-svgrepo-com (2).svg +0 -24
  34. package/public/static/images/user-svgrepo-com (3).svg +0 -24
  35. package/public/static/images/user-svgrepo-com.svg +0 -31
@@ -21,6 +21,26 @@
21
21
  padding: 15px;
22
22
  }
23
23
 
24
+ .color-success path,
25
+ .color-success circle {
26
+ fill: var(--color-tertiary-muted);
27
+ }
28
+
29
+ .color-success line,
30
+ .color-success rect {
31
+ stroke: var(--color-tertiary-muted);
32
+ }
33
+
34
+ .color-error path,
35
+ .color-error circle {
36
+ fill: var(--color-secondary-muted);
37
+ }
38
+
39
+ .color-error line,
40
+ .color-error rect {
41
+ stroke: var(--color-secondary-muted);
42
+ }
43
+
24
44
  .color-base path,
25
45
  .color-base circle {
26
46
  fill: var(--color-font-base);
@@ -75,6 +95,16 @@
75
95
  fill: var(--color-base-transparent) !important;
76
96
  }
77
97
 
98
+ .background-success {
99
+ background: var(--color-tertiary-muted);
100
+ border-radius: var(--border-radius-full);
101
+ }
102
+
103
+ .background-error {
104
+ background: var(--color-secondary-muted);
105
+ border-radius: var(--border-radius-full);
106
+ }
107
+
78
108
  .background-base {
79
109
  background: var(--color-gray-100);
80
110
  border-radius: var(--border-radius-full);
@@ -743,18 +743,18 @@ export const iconsMap = {
743
743
  viewBox: '0 0 24 24',
744
744
  svg: (
745
745
  <>
746
- <path d="M10.2,11.7c1.3,0,2.6-0.8,3.7-2.3c0.9-1.3,1.4-2.9,1.4-4.3C15.3,2.3,13,0,10.2,0C7.4,0,5.1,2.3,5.1,5.1
746
+ <path d="M10.2,11.7c1.3,0,2.6-0.8,3.7-2.3c0.9-1.3,1.4-2.9,1.4-4.3C15.3,2.3,13,0,10.2,0C7.4,0,5.1,2.3,5.1,5.1
747
747
  c0,1.4,0.5,3,1.4,4.3C7.6,10.9,8.9,11.7,10.2,11.7z M10.2,0.8c2.4,0,4.3,1.9,4.3,4.3c0,1.2-0.5,2.7-1.3,3.8
748
748
  c-0.9,1.2-1.9,1.9-3,1.9s-2.1-0.7-3-1.9C6.4,7.8,5.9,6.3,5.9,5.1C5.9,2.8,7.9,0.8,10.2,0.8z"/>
749
- <path d="M12.2,21.6C12.2,21.6,12.2,21.6,12.2,21.6C12.2,21.6,12.2,21.6,12.2,21.6c-0.2-0.1-0.4-0.1-0.5,0
749
+ <path d="M12.2,21.6C12.2,21.6,12.2,21.6,12.2,21.6C12.2,21.6,12.2,21.6,12.2,21.6c-0.2-0.1-0.4-0.1-0.5,0
750
750
  c-0.1,0.1-0.2,0.3-0.1,0.5c0.1,0.2,0.2,0.3,0.4,0.3c0.2,0,0.3-0.1,0.4-0.3C12.4,21.9,12.4,21.7,12.2,21.6z"/>
751
- <path d="M17.3,13.2c0,0-0.1,0-0.1,0c-0.8-1-1.9-1.9-3.1-2.4c-0.2-0.1-0.3,0-0.5,0.1c-1,1-2.2,1.5-3.3,1.5c-1.2,0-2.3-0.5-3.3-1.5
751
+ <path d="M17.3,13.2c0,0-0.1,0-0.1,0c-0.8-1-1.9-1.9-3.1-2.4c-0.2-0.1-0.3,0-0.5,0.1c-1,1-2.2,1.5-3.3,1.5c-1.2,0-2.3-0.5-3.3-1.5
752
752
  c-0.1-0.1-0.3-0.2-0.5-0.1c-1.5,0.7-2.8,1.8-3.7,3.2c-0.9,1.4-1.4,3.1-1.4,4.8v0c0,0.1,0,0.2,0.1,0.3c2.4,2.2,5.5,3.4,8.8,3.4
753
753
  c0.2,0,0.3,0,0.5,0c0.2,0,0.4-0.2,0.4-0.4s-0.2-0.4-0.4-0.4c-0.2,0-0.3,0-0.5,0c-3,0-5.8-1.1-8.1-3c0-1.5,0.5-2.9,1.3-4.2
754
754
  c0.8-1.2,1.8-2.1,3.1-2.8c1.1,1,2.4,1.6,3.7,1.6c1.3,0,2.6-0.5,3.7-1.6c0.8,0.4,1.6,1,2.2,1.7c-2.4,0.5-4.3,2.7-4.3,5.3
755
755
  c0,3,2.4,5.4,5.4,5.4s5.4-2.4,5.4-5.4C22.7,15.6,20.3,13.2,17.3,13.2z M17.3,23.2c-2.5,0-4.6-2.1-4.6-4.6s2.1-4.6,4.6-4.6
756
756
  s4.6,2.1,4.6,4.6S19.8,23.2,17.3,23.2z"/>
757
- <path d="M20.7,18.2h-3v-3c0-0.2-0.2-0.4-0.4-0.4c-0.2,0-0.4,0.2-0.4,0.4v3h-3c-0.2,0-0.4,0.2-0.4,0.4c0,0.2,0.2,0.4,0.4,0.4h3v3
757
+ <path d="M20.7,18.2h-3v-3c0-0.2-0.2-0.4-0.4-0.4c-0.2,0-0.4,0.2-0.4,0.4v3h-3c-0.2,0-0.4,0.2-0.4,0.4c0,0.2,0.2,0.4,0.4,0.4h3v3
758
758
  c0,0.2,0.2,0.4,0.4,0.4c0.2,0,0.4-0.2,0.4-0.4v-3h3c0.2,0,0.4-0.2,0.4-0.4C21.1,18.4,21,18.2,20.7,18.2z"/>
759
759
  </>
760
760
  ),
@@ -763,7 +763,7 @@ export const iconsMap = {
763
763
  viewBox: '0 0 24 24',
764
764
  svg: (
765
765
  <>
766
- <path d="M19.2,10c-1.4,0-2.5,0.8-3.1,2c-0.6-0.5-1.2-0.9-1.9-1.3c-0.2-0.1-0.3,0-0.5,0.1c-1,1-2.2,1.5-3.3,1.5
766
+ <path d="M19.2,10c-1.4,0-2.5,0.8-3.1,2c-0.6-0.5-1.2-0.9-1.9-1.3c-0.2-0.1-0.3,0-0.5,0.1c-1,1-2.2,1.5-3.3,1.5
767
767
  c-1.2,0-2.3-0.5-3.3-1.5c-0.1-0.1-0.3-0.2-0.5-0.1c-1.5,0.7-2.8,1.8-3.7,3.2c-0.9,1.4-1.4,3.1-1.4,4.8v0c0,0.1,0,0.2,0.1,0.3
768
768
  c2.4,2.2,5.5,3.4,8.8,3.4c1.2,0,2.5-0.2,3.6-0.5c0.2-0.1,0.3-0.3,0.3-0.5s-0.3-0.3-0.5-0.3c-1.1,0.3-2.2,0.5-3.4,0.5
769
769
  c-3,0-5.8-1.1-8.1-3c0-1.5,0.5-2.9,1.3-4.2c0.8-1.2,1.8-2.1,3.1-2.8c1.1,1,2.4,1.6,3.7,1.6c1.3,0,2.6-0.5,3.7-1.6
@@ -771,31 +771,30 @@ export const iconsMap = {
771
771
  v5.7c0,0.2,0.2,0.4,0.4,0.4c0.2,0,0.4-0.2,0.4-0.4v-5.7c0-0.7,0.5-1.2,1.2-1.2c0.7,0,1.2,0.5,1.2,1.2v6.4c0,1-0.8,1.9-1.9,1.9
772
772
  s-1.9-0.8-1.9-1.9v-7.9c0-1.4,1.1-2.5,2.5-2.5s2.5,1.1,2.5,2.5v7.2c0,0.2,0.2,0.4,0.4,0.4c0.2,0,0.4-0.2,0.4-0.4v-7.2
773
773
  C22.5,11.5,21,10,19.2,10z"/>
774
- <path d="M10.4,11.7c1.3,0,2.6-0.8,3.7-2.3c0.9-1.3,1.4-2.9,1.4-4.3c0-2.8-2.3-5.1-5.1-5.1C7.5,0,5.3,2.3,5.3,5.1
774
+ <path d="M10.4,11.7c1.3,0,2.6-0.8,3.7-2.3c0.9-1.3,1.4-2.9,1.4-4.3c0-2.8-2.3-5.1-5.1-5.1C7.5,0,5.3,2.3,5.3,5.1
775
775
  c0,1.4,0.5,3,1.4,4.3C7.7,10.9,9,11.7,10.4,11.7z M10.4,0.8c2.4,0,4.3,1.9,4.3,4.3c0,1.2-0.5,2.7-1.3,3.8c-0.9,1.2-1.9,1.9-3,1.9
776
776
  s-2.1-0.7-3-1.9C6.6,7.8,6.1,6.3,6.1,5.1C6.1,2.8,8,0.8,10.4,0.8z"/>
777
- <path d="M15.4,21C15.4,21,15.4,21,15.4,21L15.4,21z"/>
778
- <path d="M15,20.7c-0.2,0-0.3,0.1-0.4,0.3c-0.1,0.4,0.3,0.7,0.6,0.5c0.2-0.1,0.2-0.3,0.1-0.5C15.4,20.8,15.2,20.7,15,20.7z"/>
777
+ <path d="M15.4,21C15.4,21,15.4,21,15.4,21L15.4,21z" />
778
+ <path d="M15,20.7c-0.2,0-0.3,0.1-0.4,0.3c-0.1,0.4,0.3,0.7,0.6,0.5c0.2-0.1,0.2-0.3,0.1-0.5C15.4,20.8,15.2,20.7,15,20.7z" />
779
779
  </>
780
780
  ),
781
781
  },
782
-
783
782
  forAnother: {
784
783
  viewBox: '0 0 24 24',
785
784
  svg: (
786
785
  <>
787
- <path d="M5.6,5.2c0,1.4,0.5,3,1.5,4.3c1,1.5,2.4,2.3,3.7,2.3s2.7-0.8,3.7-2.3C15.4,8.2,16,6.6,16,5.2C16,2.3,13.6,0,10.8,0
786
+ <path d="M5.6,5.2c0,1.4,0.5,3,1.5,4.3c1,1.5,2.4,2.3,3.7,2.3s2.7-0.8,3.7-2.3C15.4,8.2,16,6.6,16,5.2C16,2.3,13.6,0,10.8,0
788
787
  C7.9,0,5.6,2.3,5.6,5.2z M10.8,0.8c2.4,0,4.3,1.9,4.3,4.3c0,1.2-0.5,2.7-1.3,3.8c-0.9,1.2-2,1.9-3,1.9s-2.1-0.7-3-1.9
789
788
  C7,7.9,6.5,6.4,6.5,5.2C6.5,2.8,8.4,0.8,10.8,0.8z"/>
790
- <path d="M13,22C13,22,13,22,13,22c0-0.1-0.1-0.1-0.1-0.1c-0.2-0.2-0.4-0.2-0.6,0c-0.2,0.2-0.2,0.4,0,0.6c0.2,0.2,0.4,0.2,0.6,0
789
+ <path d="M13,22C13,22,13,22,13,22c0-0.1-0.1-0.1-0.1-0.1c-0.2-0.2-0.4-0.2-0.6,0c-0.2,0.2-0.2,0.4,0,0.6c0.2,0.2,0.4,0.2,0.6,0
791
790
  C13,22.3,13.1,22.2,13,22C13,22,13,22,13,22z"/>
792
- <path d="M18,13.6c-0.9-1.2-2-2.2-3.4-2.8c-0.2-0.1-0.4,0-0.5,0.1c-1,1-2.2,1.5-3.4,1.5c-1.2,0-2.4-0.5-3.4-1.5
791
+ <path d="M18,13.6c-0.9-1.2-2-2.2-3.4-2.8c-0.2-0.1-0.4,0-0.5,0.1c-1,1-2.2,1.5-3.4,1.5c-1.2,0-2.4-0.5-3.4-1.5
793
792
  c-0.1-0.1-0.3-0.2-0.5-0.1c-1.5,0.7-2.8,1.8-3.7,3.3c-0.9,1.5-1.4,3.1-1.4,4.9v0c0,0.1,0.1,0.2,0.1,0.3c2.4,2.2,5.6,3.4,8.9,3.4
794
793
  c0.2,0,0.4,0,0.6,0c0.2,0,0.4-0.2,0.4-0.4c0-0.2-0.2-0.4-0.4-0.4c-0.2,0-0.4,0-0.6,0c-3,0-5.9-1.1-8.2-3.1c0-1.5,0.5-3,1.3-4.2
795
794
  c0.8-1.2,1.8-2.2,3.1-2.8c1.1,1,2.4,1.6,3.8,1.6c1.3,0,2.6-0.5,3.8-1.6c0.9,0.5,1.7,1.1,2.4,1.8c-2.6,0.2-4.7,2.3-4.7,5
796
795
  c0,2.8,2.2,5,5,5s5-2.2,5-5C22.2,16.1,20.4,14,18,13.6z M17.2,22.7c-2.3,0-4.2-1.9-4.2-4.2c0-2.3,1.9-4.2,4.2-4.2
797
796
  s4.2,1.9,4.2,4.2C21.4,20.9,19.5,22.7,17.2,22.7z"/>
798
- <path d="M20.7,17.4c0-0.2-0.2-0.3-0.3-0.3l-1.9-0.3l-0.9-1.7c-0.1-0.1-0.2-0.2-0.4-0.2s-0.3,0.1-0.4,0.2L16,16.9l-1.9,0.3
797
+ <path d="M20.7,17.4c0-0.2-0.2-0.3-0.3-0.3l-1.9-0.3l-0.9-1.7c-0.1-0.1-0.2-0.2-0.4-0.2s-0.3,0.1-0.4,0.2L16,16.9l-1.9,0.3
799
798
  c-0.2,0-0.3,0.1-0.3,0.3c0,0.2,0,0.3,0.1,0.4l1.4,1.3l-0.3,1.9c0,0.2,0,0.3,0.2,0.4c0.1,0.1,0.3,0.1,0.4,0l1.7-0.9l1.7,0.9
800
799
  c0.1,0,0.1,0,0.2,0c0.1,0,0.2,0,0.2-0.1c0.1-0.1,0.2-0.3,0.2-0.4l-0.3-1.9l1.4-1.3C20.7,17.8,20.7,17.6,20.7,17.4z M18.5,18.8
801
800
  c-0.1,0.1-0.1,0.2-0.1,0.4l0.2,1.3l-1.2-0.6c-0.1,0-0.1,0-0.2,0c-0.1,0-0.1,0-0.2,0l-1.2,0.6l0.2-1.3c0-0.1,0-0.3-0.1-0.4
@@ -803,6 +802,84 @@ export const iconsMap = {
803
802
  </>
804
803
  ),
805
804
  },
805
+ sendEmail: {
806
+ viewBox: '0 0 24 24',
807
+ svg: (
808
+ <>
809
+ <path d="M24,5.8h-8.2v1.5h6.7v1L12,14.7L1.5,8.3V7.3h6.6V5.8H0v16.9h24V5.8z M22.5,19.7l-5.2-6.5l5.2-3.2V19.7z M12,16.3
810
+ c0.1,0,0.3,0,0.4-0.1L16,14l5.7,7.1H2.3L8,14l3.6,2.2C11.7,16.3,11.9,16.3,12,16.3z M6.7,13.2l-5.2,6.5v-9.6L6.7,13.2z"/>
811
+ <polygon points="12.7,10.8 12.7,5.2 14.7,5.2 12,1.4 9.3,5.2 11.3,5.2 11.3,10.8 " />
812
+ </>
813
+ ),
814
+ },
815
+ listInvoice: {
816
+ viewBox: '0 0 24 24',
817
+ svg: (
818
+ <>
819
+ <path d="M23.9,2.3H9c0,0-0.1,0-0.1,0.1v1.4c0,0,0,0.1,0.1,0.1h15c0,0,0.1,0,0.1-0.1L23.9,2.3C24,2.3,24,2.3,23.9,2.3z" />
820
+ <circle cx="3.5" cy="12.5" r="1.9" />
821
+ <circle cx="3.5" cy="20.8" r="1.9" />
822
+ <path d="M9,6.3h7.1c0,0,0.1,0,0.1-0.1V4.9c0,0,0-0.1-0.1-0.1H9c0,0-0.1,0-0.1,0.1L9,6.3C8.9,6.3,9,6.3,9,6.3z" />
823
+ <path d="M23.9,10.5H9c0,0-0.1,0-0.1,0.1V12C8.9,12,9,12,9,12h15c0,0,0.1,0,0.1-0.1L23.9,10.5C24,10.5,24,10.5,23.9,10.5z" />
824
+ <path d="M9,14.6h7.1c0,0,0.1,0,0.1-0.1v-1.4c0,0,0-0.1-0.1-0.1H9c0,0-0.1,0-0.1,0.1L9,14.6C8.9,14.5,9,14.6,9,14.6z" />
825
+ <path d="M23.9,18.7H9c0,0-0.1,0-0.1,0.1v1.4c0,0,0,0.1,0.1,0.1h15c0,0,0.1,0,0.1-0.1L23.9,18.7C24,18.8,24,18.7,23.9,18.7z" />
826
+ <path d="M16.1,21.3H9c0,0-0.1,0-0.1,0.1v1.4c0,0,0,0.1,0.1,0.1h7.1c0,0,0.1,0,0.1-0.1L16.1,21.3C16.1,21.3,16.1,21.3,16.1,21.3z"
827
+ />
828
+ <polygon points="2.6,4.3 1.4,3 0,4.3 1.3,5.6 2.6,7 4,5.6 7.1,2.6 5.7,1.2 " />
829
+ </>
830
+ ),
831
+ },
832
+ listXLS: {
833
+ viewBox: '0 0 24 24',
834
+ svg: (
835
+ <>
836
+ <path d="M20.8,21.6c0,0.4-0.4,0.8-0.8,0.8H4c-0.4,0-0.8-0.4-0.8-0.8v-2.4H1.6v2.4C1.6,22.9,2.7,24,4,24h16c1.3,0,2.4-1.1,2.4-2.4
837
+ v-2.4h-1.6V21.6z"/>
838
+ <polygon points="3.2,14.9 3.2,15.2 3.2,17.6 4.8,17.6 4.8,15.5 5.6,14.7 6.4,15.5 6.4,17.6 8,17.6 8,15.2 8,14.9 7.8,14.6
839
+ 6.7,13.6 7.8,12.6 8,12.3 8,12 8,9.6 6.4,9.6 6.4,11.7 5.6,12.5 4.8,11.7 4.8,9.6 3.2,9.6 3.2,12 3.2,12.3 3.4,12.6 4.5,13.6
840
+ 3.4,14.6 "/>
841
+ <polygon points="16,16 16,17.6 20,17.6 20.8,17.6 20.8,16.8 20.8,13.6 20.8,12.8 20,12.8 17.6,12.8 17.6,11.2 20.8,11.2 20.8,9.6
842
+ 16.8,9.6 16,9.6 16,10.4 16,13.6 16,14.4 16.8,14.4 19.2,14.4 19.2,16 "/>
843
+ <polygon points="9.6,9.6 9.6,16.8 9.6,17.6 10.4,17.6 14.4,17.6 14.4,16 11.2,16 11.2,9.6 " />
844
+ <path d="M22.2,5l-4.8-4.8l-0.6,0.6l0,0l0.6-0.6L17.1,0h-0.3H4C2.7,0,1.6,1.1,1.6,2.4V8h1.6V2.4C3.2,2,3.6,1.6,4,1.6h12.5l4.3,4.3V8
845
+ h1.6V5.6V5.3L22.2,5z"/>
846
+ </>
847
+ ),
848
+ },
849
+ listCSV: {
850
+ viewBox: '0 0 24 24',
851
+ svg: (
852
+ <>
853
+ <polygon points="8,11.2 8,9.6 4,9.6 3.2,9.6 3.2,10.4 3.2,16.8 3.2,17.6 4,17.6 8,17.6 8,16 4.8,16 4.8,11.2 " />
854
+ <path d="M20.8,21.6c0,0.4-0.4,0.8-0.8,0.8H4c-0.4,0-0.8-0.4-0.8-0.8v-2.4H1.6v2.4C1.6,22.9,2.7,24,4,24h16c1.3,0,2.4-1.1,2.4-2.4
855
+ v-2.4h-1.6V21.6z"/>
856
+ <path d="M22.2,5l-4.8-4.8l-0.6,0.6l0,0l0.6-0.6L17.1,0h-0.3H4C2.7,0,1.6,1.1,1.6,2.4V8h1.6V2.4C3.2,2,3.6,1.6,4,1.6h12.5l4.3,4.3V8
857
+ h1.6V5.6V5.3L22.2,5z"/>
858
+ <polygon points="9.6,16 9.6,17.6 13.6,17.6 14.4,17.6 14.4,16.8 14.4,13.6 14.4,12.8 13.6,12.8 11.2,12.8 11.2,11.2 14.4,11.2
859
+ 14.4,9.6 10.4,9.6 9.6,9.6 9.6,10.4 9.6,13.6 9.6,14.4 10.4,14.4 12.8,14.4 12.8,16 "/>
860
+ <polygon points="16,9.6 16,15.2 16,15.5 16.2,15.8 16.8,15.2 16.8,15.2 16.2,15.8 17.8,17.4 18.4,17.9 19,17.4 20.6,15.8
861
+ 20.8,15.5 20.8,15.2 20.8,9.6 19.2,9.6 19.2,14.9 18.4,15.7 17.6,14.9 17.6,9.6 "/>
862
+ </>
863
+ ),
864
+ },
865
+ listPDF: {
866
+ viewBox: '0 0 24 24',
867
+ svg: (
868
+ <>
869
+ <path d="M4.8,14.4h0.8C7,14.4,8,13.3,8,12S7,9.6,5.6,9.6H4H3.3v0.8v3.2v4h1.6V14.4z M6.4,12c0,0.4-0.4,0.8-0.8,0.8H4.8v-1.6h0.8
870
+ C6.1,11.2,6.4,11.6,6.4,12z"/>
871
+ <path d="M20.7,21.5c0,0.4-0.4,0.8-0.8,0.8H4c-0.4,0-0.8-0.4-0.8-0.8v-2.4H1.7v2.4c0,1.3,1.1,2.4,2.4,2.4H20c1.3,0,2.4-1.1,2.4-2.4
872
+ v-2.4h-1.6V21.5z"/>
873
+ <path d="M14.4,15.2V12c0-1.3-1.1-2.4-2.4-2.4h-1.6H9.6v0.8v6.4v0.8h0.8H12C13.3,17.6,14.4,16.5,14.4,15.2z M11.2,16v-4.8H12
874
+ c0.4,0,0.8,0.4,0.8,0.8v3.2c0,0.4-0.4,0.8-0.8,0.8H11.2z"/>
875
+ <polygon points="20.7,11.2 20.7,9.6 17.6,9.6 16.8,9.6 16,9.6 16,17.6 17.6,17.6 17.6,14.4 19.2,14.4 19.2,12.8 17.6,12.8
876
+ 17.6,11.2 "/>
877
+ <path d="M22.1,5.1l-0.6,0.6l0,0L22.1,5.1l-4.8-4.8l-0.6,0.6l0,0l0.6-0.6l-0.2-0.2h-0.3H4c-1.3,0-2.4,1.1-2.4,2.4V8h1.6V2.5
878
+ C3.3,2,3.6,1.7,4,1.7h12.4L20.7,6V8h1.6V5.6V5.3L22.1,5.1z"/>
879
+ </>
880
+ ),
881
+ },
882
+
806
883
 
807
884
 
808
885
  }
@@ -811,7 +888,7 @@ export const iconsMap = {
811
888
  export const options = {
812
889
  sizes: ['xs', 'sm', 'md', 'lg', 'xl'],
813
890
  names: Object.keys(iconsMap),
814
- colors: ['base', 'highlight', 'muted', 'primary', 'inverted'],
891
+ colors: ['base', 'highlight', 'muted', 'primary', 'inverted', 'error', 'success'],
815
892
  backgrounds: [
816
893
  'transparent',
817
894
  'base',
@@ -819,5 +896,7 @@ export const options = {
819
896
  'inverted',
820
897
  'muted',
821
898
  'spotlight',
899
+ 'error',
900
+ 'success',
822
901
  ],
823
902
  }
@@ -4,6 +4,9 @@ import PropTypes from 'prop-types'
4
4
  import styles from './Input.module.css'
5
5
  import { options } from './constants'
6
6
  import withStyles from '../../hocs/withStyles'
7
+ import Icon from '../Icon'
8
+ import { Horizontal } from '../../layout/Spacer/components'
9
+
7
10
 
8
11
  // const handleChange = ({ onChange }) => () => {
9
12
  // onChange()
@@ -17,29 +20,93 @@ export const Input = ({
17
20
  isInline,
18
21
  isInlineCode,
19
22
  isInputFilter,
23
+ isInputSecondary,
20
24
  onChange,
25
+ onFocus,
26
+ onBlur,
21
27
  onClick,
28
+ onKeyDown,
22
29
  placeholder,
30
+ autocomplete,
31
+ disabled,
32
+ isViewIcon,
33
+ idIcon,
34
+ nameIcon,
35
+ sizeIcon,
36
+ colorIcon,
37
+ backgroundIcon,
23
38
  pattern,
24
39
  }) => (
25
- <input
26
- className={getStyles('input', {
27
- 'is-inline': isInline,
28
- 'is-inline-code': isInlineCode,
29
- 'is-input-filter': isInputFilter,
30
- })}
31
- type={type}
32
- id={id}
33
- value={value}
34
- placeholder={placeholder}
35
- onChange={onChange}
36
- onClick={onClick}
37
- ></input>
40
+
41
+ <>
42
+
43
+ {isViewIcon ?
44
+
45
+ <div className={getStyles('box-icon-input')}>
46
+
47
+ <Icon
48
+ id={idIcon}
49
+ name={nameIcon}
50
+ size={sizeIcon}
51
+ color={colorIcon}
52
+ background={backgroundIcon}
53
+ />
54
+
55
+ <Horizontal size="xs" />
56
+
57
+ <input
58
+ className={getStyles('input', {
59
+ 'is-inline': isInline,
60
+ 'is-inline-code': isInlineCode,
61
+ 'is-input-filter': isInputFilter,
62
+ 'is-input-secondary': isInputSecondary,
63
+ })}
64
+ type={type}
65
+ id={id}
66
+ value={value}
67
+ placeholder={placeholder}
68
+ onChange={onChange}
69
+ onFocus={onFocus}
70
+ onBlur={onBlur}
71
+ onClick={onClick}
72
+ onKeyDown={onKeyDown}
73
+ autocomplete={autocomplete}
74
+ disabled={disabled}
75
+ ></input>
76
+
77
+ </div> :
78
+
79
+ <input
80
+ className={getStyles('input', {
81
+ 'is-inline': isInline,
82
+ 'is-inline-code': isInlineCode,
83
+ 'is-input-filter': isInputFilter,
84
+ 'is-input-secondary': isInputSecondary,
85
+ })}
86
+ type={type}
87
+ id={id}
88
+ value={value}
89
+ placeholder={placeholder}
90
+ onChange={onChange}
91
+ onFocus={onFocus}
92
+ onBlur={onBlur}
93
+ onClick={onClick}
94
+ onKeyDown={onKeyDown}
95
+ autocomplete={autocomplete}
96
+ disabled={disabled}
97
+ ></input>
98
+
99
+ }
100
+
101
+ </>
38
102
  )
39
103
 
40
104
  Input.propTypes = {
41
105
  onChange: PropTypes.func.isRequired,
106
+ onFocus: PropTypes.func,
107
+ onBlur: PropTypes.func,
42
108
  onClick: PropTypes.func,
109
+ onKeyDown: PropTypes.func,
43
110
  getStyles: PropTypes.func.isRequired,
44
111
  type: PropTypes.oneOf(options.types),
45
112
  id: PropTypes.string.isRequired,
@@ -48,6 +115,15 @@ Input.propTypes = {
48
115
  isInline: PropTypes.bool,
49
116
  isInlineCode: PropTypes.bool,
50
117
  isInputFilter: PropTypes.bool,
118
+ isInputSecondary: PropTypes.bool,
119
+ isViewIcon: PropTypes.bool,
120
+ idIcon: PropTypes.string,
121
+ nameIcon: PropTypes.string,
122
+ sizeIcon: PropTypes.string,
123
+ colorIcon: PropTypes.string,
124
+ backgroundIcon: PropTypes.string,
125
+ autocomplete: PropTypes.string,
126
+ disabled: PropTypes.bool,
51
127
  }
52
128
 
53
129
  Input.defaultProps = {
@@ -58,9 +134,21 @@ Input.defaultProps = {
58
134
  isInline: false,
59
135
  isInlineCode: false,
60
136
  isInputFilter: false,
61
- onChange: () => {},
62
- onClick: () => {},
63
- getStyles: () => {},
137
+ isInputSecondary: false,
138
+ onChange: () => { },
139
+ onFocus: () => { },
140
+ onBlur: () => { },
141
+ onClick: () => { },
142
+ onKeyDown: () => { },
143
+ getStyles: () => { },
144
+ isViewIcon: false,
145
+ idIcon: 'Ejemplo',
146
+ nameIcon: 'user',
147
+ sizeIcon: 'md',
148
+ colorIcon: 'highlight',
149
+ backgroundIcon: 'base',
150
+ autocomplete: 'on',
151
+ disabled: false
64
152
  }
65
153
 
66
154
  export default withStyles(styles)(Input)
@@ -23,6 +23,10 @@
23
23
  outline: none;
24
24
  }
25
25
 
26
+ .input:disabled {
27
+ background: #dedede;
28
+ }
29
+
26
30
  .is-inline {
27
31
  max-width: max-content;
28
32
  }
@@ -45,3 +49,17 @@
45
49
  text-align: left;
46
50
  height: 28px;
47
51
  }
52
+
53
+ .is-input-secondary {
54
+ border-radius: var(--border-radius-sm);
55
+ color: var(--color-font-base);
56
+ padding: 7px 9px;
57
+ font-size: var(--font-size-base);
58
+ font-weight: var(--font-weight-light);
59
+ text-align: left;
60
+ height: 28px;
61
+ }
62
+
63
+ .box-icon-input {
64
+ display: flex;
65
+ }
@@ -36,6 +36,7 @@ export const Modal = ({
36
36
  type,
37
37
  isPlayground,
38
38
  titleModal,
39
+ isFullWidth,
39
40
  }) => {
40
41
  const isDesktop = useMedia(['(min-width: 992px)'], [true])
41
42
  const [onFadeOut, setOnFadeOut] = useState(false)
@@ -51,7 +52,7 @@ export const Modal = ({
51
52
  onClick={handleClose}
52
53
  >
53
54
  <div
54
- className={getStyles('modal', ['type'])}
55
+ className={getStyles(isFullWidth ? 'modal-full' : 'modal', ['type'])}
55
56
  onClick={createHandlerClick()}
56
57
  >
57
58
  <div className={getStyles('heading')}>
@@ -78,7 +79,9 @@ export const Modal = ({
78
79
  {titleModal}
79
80
  </Heading>
80
81
  </div>
81
- <Container><div className={getStyles('container')}>{children}</div></Container>
82
+
83
+ {isFullWidth ? <div className={getStyles('container-full')}>{children}</div> : <Container><div className={getStyles('container')}>{children}</div></Container>}
84
+
82
85
  </div>
83
86
  </div>
84
87
  )
@@ -94,13 +97,15 @@ Modal.propTypes = {
94
97
  }),
95
98
  type: PropTypes.oneOf(options.types),
96
99
  isPlayground: PropTypes.bool,
100
+ isFullWidth: PropTypes.bool,
97
101
  titleModal: PropTypes.string,
98
102
  }
99
103
 
100
104
  Modal.defaultProps = {
101
105
  getStyles: () => {},
102
106
  type: 'primary',
103
- titleModal: 'Ejemplo titulo'
107
+ titleModal: 'Ejemplo titulo',
108
+ isFullWidth: false
104
109
  }
105
110
 
106
111
  export default withStyles(styles)(Modal)
@@ -24,15 +24,32 @@
24
24
  padding: 16px 32px;
25
25
  }
26
26
 
27
+ .modal-full {
28
+ display: flex;
29
+ width: 100%;
30
+ height: 100%;
31
+ flex-direction: column;
32
+ padding: 16px 32px;
33
+ }
34
+
27
35
  :not(.is-playground)>.modal {
28
36
  animation: fadeInModal 0.4s ease-in forwards;
29
37
  opacity: 0;
30
38
  }
31
39
 
40
+ :not(.is-playground)>.modal-full {
41
+ animation: fadeInModal 0.4s ease-in forwards;
42
+ opacity: 0;
43
+ }
44
+
32
45
  .backdrop.on-fade-out .modal {
33
46
  animation: fadeOutModal 0.4s ease-in forwards;
34
47
  }
35
48
 
49
+ .backdrop.on-fade-out .modal-full {
50
+ animation: fadeOutModal 0.4s ease-in forwards;
51
+ }
52
+
36
53
  .heading {
37
54
  display: flex;
38
55
  justify-content: space-between;
@@ -61,6 +78,12 @@
61
78
  overflow: auto; */
62
79
  }
63
80
 
81
+ .modal-full {
82
+ width: 100%;
83
+ height: 100%;
84
+ padding: 16px 32px;
85
+ }
86
+
64
87
  .heading {
65
88
  flex-direction: row-reverse;
66
89
  }
@@ -70,6 +93,11 @@
70
93
  overflow: auto;
71
94
  min-width: 100%;
72
95
  }
96
+
97
+ .container-full {
98
+ overflow: auto;
99
+ min-width: 100%;
100
+ }
73
101
  }
74
102
 
75
103
  @keyframes fadeInModal {
package/index.js CHANGED
@@ -45,6 +45,7 @@ export { default as Task } from './molecules/Task'
45
45
  export { default as TaskCounter } from './molecules/TaskCounter'
46
46
  export { default as IconLabel } from './molecules/IconLabel'
47
47
  export { default as ItemMenu } from './molecules/ItemMenu'
48
+ export { default as InputAutocomplete } from './molecules/InputAutocomplete'
48
49
  export { default as CheckList } from './molecules/CheckList'
49
50
  export { default as ColumnTable } from './molecules/ColumnTable'
50
51
  export { default as RowTable } from './molecules/RowTable'
@@ -0,0 +1,64 @@
1
+ import React from 'react'
2
+ import PropTypes from 'prop-types'
3
+
4
+ import styles from './CardDefault.module.css'
5
+ import { options } from './constants'
6
+ import withStyles from '../../hocs/withStyles'
7
+ import Button from '../../atoms/Button'
8
+ import Paragraph from '../../atoms/Paragraph'
9
+ import Spacer from '../../layout/Spacer'
10
+
11
+
12
+ export const CardDefault = ({ children, titleCardDefault, titleBtnCardDefault, typeBtnCardDefault, onClickBtnCardDefault, getStyles }) => {
13
+
14
+
15
+ return <div className={getStyles('card-default')}>
16
+
17
+
18
+ <div className={getStyles('card-default-title')}>
19
+ {titleCardDefault}
20
+ </div>
21
+
22
+ <div className={getStyles('card-default-content')}>
23
+ {children}
24
+ <Spacer.Vertical size="md" />
25
+ </div>
26
+
27
+ <div className={getStyles('card-default-actions')}>
28
+
29
+ <Button
30
+ onClick={onClickBtnCardDefault}
31
+ type={typeBtnCardDefault}
32
+ >
33
+ {titleBtnCardDefault}
34
+ </Button>
35
+
36
+ </div>
37
+
38
+
39
+
40
+ </div>
41
+ }
42
+
43
+ CardDefault.propTypes = {
44
+ children: PropTypes.node.isRequired,
45
+ titleCardDefault: PropTypes.string.isRequired,
46
+ titleBtnCardDefault: PropTypes.string.isRequired,
47
+ typeBtnCardDefault: PropTypes.string.isRequired,
48
+ onClickBtnCardDefault: PropTypes.func,
49
+ getStyles: PropTypes.func.isRequired,
50
+ // type: PropTypes.oneOf(options.types),
51
+ }
52
+
53
+ // const renderValue = () => <Paragraph isCentered size="lg" weight="semibold"> 20 EUR </Paragraph>
54
+
55
+ CardDefault.defaultProps = {
56
+ children: <Paragraph isCentered size="lg" weight="semibold"> 20 EUR </Paragraph>,
57
+ titleCardDefault: 'Saldo actual',
58
+ typeBtnCardDefault: 'primary',
59
+ titleBtnCardDefault: '+ Añadir fondos',
60
+ onClickBtnCardDefault: () => { },
61
+ getStyles: () => { },
62
+ }
63
+
64
+ export default withStyles(styles)(CardDefault)
@@ -0,0 +1,18 @@
1
+ .card-default {
2
+ text-align: center;
3
+ box-shadow: 0px 2px 1px -1px rgb(0 0 0 / 20%), 0px 1px 1px 0px rgb(0 0 0 / 14%), 0px 1px 3px 0px rgb(0 0 0 / 12%);
4
+ transition: box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);
5
+ display: block;
6
+ position: relative;
7
+ padding: 16px;
8
+ border-radius: 4px;
9
+ background: white;
10
+ color: rgba(0, 0, 0, 0.87);
11
+ }
12
+
13
+ .card-default-title {
14
+ font-weight: 400;
15
+ font-size: 18px;
16
+ letter-spacing: -0.03em;
17
+ margin: 0 0 16px;
18
+ }
@@ -0,0 +1,23 @@
1
+ import { CardDefault, styles, options } from '.'
2
+
3
+ import {
4
+ getTemplate,
5
+ getListTemplate,
6
+ getOptionsArgTypes,
7
+ } from '../../helpers/storybook'
8
+
9
+ const Template = getTemplate(CardDefault, styles)
10
+ const ListTemplate = getListTemplate(CardDefault, styles)
11
+
12
+ export default {
13
+ title: 'Molecules/CardDefault',
14
+ component: CardDefault,
15
+ args: {},
16
+ argTypes: {
17
+ // types: getOptionsArgTypes(options.types),
18
+ },
19
+ }
20
+
21
+ export const Default = Template.bind({})
22
+ // export const List = ListTemplate.bind({})
23
+ // List.args = { items: options.types.map((type) => ({ type })) }
@@ -0,0 +1 @@
1
+ export const options = { types: [] }
@@ -0,0 +1,3 @@
1
+ export { default, CardDefault } from './CardDefault'
2
+ export { options } from './constants'
3
+ export { default as styles } from './CardDefault.module.css'