@dcrackel/hematournamentui 1.0.7 → 1.0.8

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 (104) hide show
  1. package/.storybook/preview-head.html +3 -1
  2. package/dist/HemaTouranmentUI-lib.es.js +307 -253
  3. package/dist/HemaTouranmentUI-lib.umd.js +1 -1
  4. package/package/.eslintrc.js +18 -0
  5. package/package/.gitattributes +2 -0
  6. package/package/.prettierignore +1 -0
  7. package/package/.storybook/main.js +18 -0
  8. package/package/.storybook/mockRoutes.js +9 -0
  9. package/package/.storybook/preview-head.html +1 -0
  10. package/package/.storybook/preview.js +17 -0
  11. package/package/LICENSE +21 -0
  12. package/package/README.md +83 -0
  13. package/package/index.html +12 -0
  14. package/package/package.json +49 -0
  15. package/package/postcss.config.js +6 -0
  16. package/package/prettier.config.js +10 -0
  17. package/package/src/assets/default-tournament.png +0 -0
  18. package/package/src/index.js +15 -0
  19. package/package/src/main.js +2 -0
  20. package/package/src/mocks/fileMock.js +1 -0
  21. package/package/src/mocks/tournamentMock.js +34 -0
  22. package/package/src/stories/Configure.mdx +320 -0
  23. package/package/tailwind/output.css +1072 -0
  24. package/package/tailwind/tailwind.css +4 -0
  25. package/package/tailwind.config.js +25 -0
  26. package/package/vite.config.js +23 -0
  27. package/package.json +9 -2
  28. package/src/assets/select-tournament.png +0 -0
  29. package/src/stories/Atoms/Icon/BaseIcon.stories.js +54 -0
  30. package/src/stories/Atoms/Icon/BaseIcon.vue +47 -0
  31. package/src/stories/Atoms/Input/BaseInput.stories.js +28 -0
  32. package/src/stories/Atoms/Input/BaseInput.test.js +87 -0
  33. package/src/stories/Atoms/Input/BaseInput.vue +73 -0
  34. package/src/stories/Atoms/RadioGroup/BaseRadioGroup.stories.js +31 -0
  35. package/src/stories/Atoms/RadioGroup/BaseRadioGroup.vue +49 -0
  36. package/src/stories/Atoms/Tag/BaseTag.stories.js +29 -0
  37. package/src/stories/Atoms/Tag/BaseTag.test.js +42 -0
  38. package/src/stories/Atoms/Tag/BaseTag.vue +57 -0
  39. package/src/stories/Atoms/Text/BaseText.stories.js +77 -0
  40. package/src/stories/Atoms/Text/BaseText.test.js +172 -0
  41. package/src/stories/Atoms/Text/BaseText.vue +170 -0
  42. package/src/stories/Molecules/Breadcrumb/Admin/Breadcrumb.stories.js +41 -0
  43. package/src/stories/Molecules/Breadcrumb/Admin/Breadcrumb.vue +31 -0
  44. package/src/stories/Molecules/Button/BaseButton.stories.js +76 -0
  45. package/src/stories/Molecules/Button/BaseButton.test.js +147 -0
  46. package/src/stories/Molecules/Button/BaseButton.vue +125 -0
  47. package/src/stories/Molecules/Cards/Detail/TournamentCardDetail.stories.js +33 -0
  48. package/src/stories/Molecules/Cards/Detail/TournamentCardDetail.vue +38 -0
  49. package/src/stories/Molecules/Cards/Header/TournamentCardHeader.stories.js +48 -0
  50. package/src/stories/Molecules/Cards/Header/TournamentCardHeader.vue +40 -0
  51. package/src/stories/Molecules/Filters/FilterAndSortBar/FilterAndSortBar.stories.js +36 -0
  52. package/src/stories/Molecules/Filters/FilterAndSortBar/FilterAndSortBar.vue +49 -0
  53. package/src/stories/Molecules/Filters/FilterUpcomingPast/FilterUpcomingPast.stories.js +32 -0
  54. package/src/stories/Molecules/Filters/FilterUpcomingPast/FilterUpcomingPast.vue +46 -0
  55. package/src/stories/Organisms/AddressAutocomplete/AddressAutocomplete.stories.js +25 -0
  56. package/src/stories/Organisms/AddressAutocomplete/AddressAutocomplete.vue +51 -0
  57. package/src/stories/Organisms/DatePicker/DatePicker.stories.js +25 -0
  58. package/src/stories/Organisms/DatePicker/DatePicker.vue +62 -0
  59. package/src/stories/Organisms/DropDown/DropDownMenu.stories.js +34 -0
  60. package/src/stories/Organisms/DropDown/DropDownMenu.vue +51 -0
  61. package/src/stories/Organisms/Grid/GridContainer.stories.js +47 -0
  62. package/src/stories/Organisms/Grid/GridContainer.vue +108 -0
  63. package/src/stories/Organisms/ImageCropper/ImageCropper.stories.js +28 -0
  64. package/src/stories/Organisms/ImageCropper/ImageCropper.vue +86 -0
  65. package/src/stories/Organisms/TextBoxEditor/TextBoxEditor.stories.js +28 -0
  66. package/src/stories/Organisms/TextBoxEditor/TextBoxEditor.vue +97 -0
  67. package/src/stories/Organisms/TournamentCard/TournamentCard.stories.js +37 -0
  68. package/src/stories/Organisms/TournamentCard/TournamentCard.vue +35 -0
  69. package/src/stories/Templates/Forms/AddTournamentPageOne/AddTournamentPageOne.stories.js +25 -0
  70. package/src/stories/Templates/Forms/AddTournamentPageOne/AddTournamentPageOne.vue +136 -0
  71. package/src/stories/Templates/Menu/Admin/AdminLeftMenu.stories.js +28 -0
  72. package/src/stories/Templates/Menu/Admin/AdminLeftMenu.vue +57 -0
  73. package/tailwind/output.css +147 -7
  74. package/tailwind.config.js +28 -3
  75. /package/{src → package/src}/stories/Base/Button/BaseButton.stories.js +0 -0
  76. /package/{src → package/src}/stories/Base/Button/BaseButton.test.js +0 -0
  77. /package/{src → package/src}/stories/Base/Button/BaseButton.vue +0 -0
  78. /package/{src → package/src}/stories/Base/Input/BaseInput.stories.js +0 -0
  79. /package/{src → package/src}/stories/Base/Input/BaseInput.test.js +0 -0
  80. /package/{src → package/src}/stories/Base/Input/BaseInput.vue +0 -0
  81. /package/{src → package/src}/stories/Base/Tag/BaseTag.stories.js +0 -0
  82. /package/{src → package/src}/stories/Base/Tag/BaseTag.test.js +0 -0
  83. /package/{src → package/src}/stories/Base/Tag/BaseTag.vue +0 -0
  84. /package/{src → package/src}/stories/Base/Text/BaseText.stories.js +0 -0
  85. /package/{src → package/src}/stories/Base/Text/BaseText.test.js +0 -0
  86. /package/{src → package/src}/stories/Base/Text/BaseText.vue +0 -0
  87. /package/{src → package/src}/stories/Breadcrumb/Admin/Breadcrumb.stories.js +0 -0
  88. /package/{src → package/src}/stories/Breadcrumb/Admin/Breadcrumb.vue +0 -0
  89. /package/{src → package/src}/stories/Cards/TournamentCard/Detail/TournamentCardDetail.stories.js +0 -0
  90. /package/{src → package/src}/stories/Cards/TournamentCard/Detail/TournamentCardDetail.vue +0 -0
  91. /package/{src → package/src}/stories/Cards/TournamentCard/Header/TournamentCardHeader.stories.js +0 -0
  92. /package/{src → package/src}/stories/Cards/TournamentCard/Header/TournamentCardHeader.vue +0 -0
  93. /package/{src → package/src}/stories/Cards/TournamentCard/TournamentCard.stories.js +0 -0
  94. /package/{src → package/src}/stories/Cards/TournamentCard/TournamentCard.vue +0 -0
  95. /package/{src → package/src}/stories/Containers/Grid/GridContainer.stories.js +0 -0
  96. /package/{src → package/src}/stories/Containers/Grid/GridContainer.vue +0 -0
  97. /package/{src → package/src}/stories/Filters/FilterAndSortBar/FilterAndSortBar.stories.js +0 -0
  98. /package/{src → package/src}/stories/Filters/FilterAndSortBar/FilterAndSortBar.vue +0 -0
  99. /package/{src → package/src}/stories/Filters/FilterUpcomingPast/FilterUpcomingPast.stories.js +0 -0
  100. /package/{src → package/src}/stories/Filters/FilterUpcomingPast/FilterUpcomingPast.vue +0 -0
  101. /package/{src → package/src}/stories/Menu/Admin/AdminLeftMenu.stories.js +0 -0
  102. /package/{src → package/src}/stories/Menu/Admin/AdminLeftMenu.vue +0 -0
  103. /package/{src → package/src}/stories/Menu/DropDown/DropDownMenu.stories.js +0 -0
  104. /package/{src → package/src}/stories/Menu/DropDown/DropDownMenu.vue +0 -0
@@ -0,0 +1,28 @@
1
+ import AdminLeftMenu from './AdminLeftMenu.vue';
2
+
3
+ export default {
4
+ title: 'Templates/Admin/AdminLeftMenu',
5
+ component: AdminLeftMenu,
6
+ tags: ['autodocs']
7
+ };
8
+ const Template = args => ({
9
+ components: { AdminLeftMenu },
10
+ setup() {
11
+ return { args };
12
+ },
13
+ methods: {
14
+ onMenuClick(index) {
15
+ alert(`Button ${index + 1} clicked!`);
16
+ }
17
+ }
18
+ });
19
+
20
+ export const Default = {
21
+ args: {
22
+ items: [
23
+ { text: 'Home', link: '/' },
24
+ { text: 'Category', link: '/category' },
25
+ { text: 'Product', link: '' }
26
+ ]
27
+ }
28
+ };
@@ -0,0 +1,57 @@
1
+ <template>
2
+ <div class="bg-secondary w-64 h-screen flex flex-col justify-between">
3
+ <section class="h-28 border-b border-neutral">
4
+ <div class="flex flex-col justify-center h-28">
5
+ <div class="ml-8">
6
+ <img class="w-32" src="https://ferrotas.com/assets/ferrotas-white-small-720502db.png" alt="logo"/>
7
+ </div>
8
+ </div>
9
+ </section>
10
+ <section class="flex flex-col p-2 h-full">
11
+ <BaseButton
12
+ v-for="button in buttons"
13
+ :label="button.label"
14
+ iconClass="fa-solid fa-trophy text-white"
15
+ type="admin"
16
+ hover="admin"
17
+ @click="handleButtonClick(button)"
18
+ />
19
+ </section>
20
+ <section class="flex flex-col justify-end p-2 flex-grow">
21
+ <div class="border-t border-neutral pt-2">
22
+ <BaseButton
23
+ iconClass="fa-solid fa-circle-user text-textSecondary"
24
+ label="Account"
25
+ type="adminSecondary"
26
+ @click="handleButtonClick(button)"
27
+ />
28
+ <BaseButton
29
+ iconClass="fa-solid fa-right-to-bracket fa-rotate-180 text-textSecondary"
30
+ label="Log Out"
31
+ type="adminSecondary"
32
+ @click="handleButtonClick(button)"
33
+ />
34
+ </div>
35
+ </section>
36
+ </div>
37
+ </template>
38
+
39
+ <script>
40
+ import BaseButton from "../../../Molecules/Button/BaseButton.vue";
41
+
42
+ export default {
43
+ name: 'AdminLeftMenu',
44
+ components: { BaseButton },
45
+ props: {
46
+ buttons: {
47
+ type: Array,
48
+ default: () => []
49
+ }
50
+ },
51
+ methods: {
52
+ handleButtonClick(button) {
53
+ this.$emit('button-click', button);
54
+ }
55
+ }
56
+ };
57
+ </script>
@@ -436,6 +436,20 @@ video {
436
436
  display: none;
437
437
  }
438
438
 
439
+ h1{
440
+ font-size: 1.875rem;
441
+ }
442
+
443
+ h2{
444
+ font-size: 1.5rem;
445
+ line-height: 1.5;
446
+ }
447
+
448
+ h3{
449
+ font-size: 1.25rem;
450
+ line-height: 1.75;
451
+ }
452
+
439
453
  *, ::before, ::after{
440
454
  --tw-border-spacing-x: 0;
441
455
  --tw-border-spacing-y: 0;
@@ -564,6 +578,22 @@ video {
564
578
  margin-bottom: 1rem;
565
579
  }
566
580
 
581
+ .mb-1{
582
+ margin-bottom: 0.25rem;
583
+ }
584
+
585
+ .mb-2{
586
+ margin-bottom: 0.5rem;
587
+ }
588
+
589
+ .mb-3{
590
+ margin-bottom: 0.75rem;
591
+ }
592
+
593
+ .ml-1{
594
+ margin-left: 0.25rem;
595
+ }
596
+
567
597
  .ml-3{
568
598
  margin-left: 0.75rem;
569
599
  }
@@ -572,6 +602,10 @@ video {
572
602
  margin-left: 2rem;
573
603
  }
574
604
 
605
+ .mr-1{
606
+ margin-right: 0.25rem;
607
+ }
608
+
575
609
  .mr-2{
576
610
  margin-right: 0.5rem;
577
611
  }
@@ -624,6 +658,10 @@ video {
624
658
  height: 9rem;
625
659
  }
626
660
 
661
+ .h-40{
662
+ height: 10rem;
663
+ }
664
+
627
665
  .h-8{
628
666
  height: 2rem;
629
667
  }
@@ -636,6 +674,10 @@ video {
636
674
  height: 100vh;
637
675
  }
638
676
 
677
+ .w-1\/3{
678
+ width: 33.333333%;
679
+ }
680
+
639
681
  .w-1\/4{
640
682
  width: 25%;
641
683
  }
@@ -652,6 +694,10 @@ video {
652
694
  width: 8rem;
653
695
  }
654
696
 
697
+ .w-40{
698
+ width: 10rem;
699
+ }
700
+
655
701
  .w-6{
656
702
  width: 1.5rem;
657
703
  }
@@ -664,6 +710,10 @@ video {
664
710
  width: 18rem;
665
711
  }
666
712
 
713
+ .w-96{
714
+ width: 24rem;
715
+ }
716
+
667
717
  .w-full{
668
718
  width: 100%;
669
719
  }
@@ -710,6 +760,10 @@ video {
710
760
  justify-content: space-between;
711
761
  }
712
762
 
763
+ .justify-around{
764
+ justify-content: space-around;
765
+ }
766
+
713
767
  .gap-2{
714
768
  gap: 0.5rem;
715
769
  }
@@ -722,6 +776,10 @@ video {
722
776
  gap: 1.5rem;
723
777
  }
724
778
 
779
+ .overflow-auto{
780
+ overflow: auto;
781
+ }
782
+
725
783
  .rounded-full{
726
784
  border-radius: 9999px;
727
785
  }
@@ -747,14 +805,31 @@ video {
747
805
  border-width: 1px;
748
806
  }
749
807
 
808
+ .border-2{
809
+ border-width: 2px;
810
+ }
811
+
750
812
  .border-b{
751
813
  border-bottom-width: 1px;
752
814
  }
753
815
 
816
+ .border-r{
817
+ border-right-width: 1px;
818
+ }
819
+
754
820
  .border-t{
755
821
  border-top-width: 1px;
756
822
  }
757
823
 
824
+ .border-dashed{
825
+ border-style: dashed;
826
+ }
827
+
828
+ .border-alarm{
829
+ --tw-border-opacity: 1;
830
+ border-color: rgb(253 84 111 / var(--tw-border-opacity));
831
+ }
832
+
758
833
  .border-dropdownSelect{
759
834
  --tw-border-opacity: 1;
760
835
  border-color: rgb(213 228 238 / var(--tw-border-opacity));
@@ -772,7 +847,7 @@ video {
772
847
 
773
848
  .bg-bright{
774
849
  --tw-bg-opacity: 1;
775
- background-color: rgb(160 177 236 / var(--tw-bg-opacity));
850
+ background-color: rgb(97 144 242 / var(--tw-bg-opacity));
776
851
  }
777
852
 
778
853
  .bg-dropdownSelect{
@@ -800,6 +875,11 @@ video {
800
875
  background-color: rgb(246 250 253 / var(--tw-bg-opacity));
801
876
  }
802
877
 
878
+ .bg-white{
879
+ --tw-bg-opacity: 1;
880
+ background-color: rgb(255 255 255 / var(--tw-bg-opacity));
881
+ }
882
+
803
883
  .bg-cover{
804
884
  background-size: cover;
805
885
  }
@@ -816,10 +896,23 @@ video {
816
896
  padding: 0.5rem;
817
897
  }
818
898
 
899
+ .p-3{
900
+ padding: 0.75rem;
901
+ }
902
+
903
+ .p-4{
904
+ padding: 1rem;
905
+ }
906
+
819
907
  .p-9{
820
908
  padding: 2.25rem;
821
909
  }
822
910
 
911
+ .px-1{
912
+ padding-left: 0.25rem;
913
+ padding-right: 0.25rem;
914
+ }
915
+
823
916
  .px-2{
824
917
  padding-left: 0.5rem;
825
918
  padding-right: 0.5rem;
@@ -867,6 +960,22 @@ video {
867
960
  padding-bottom: 0.75rem;
868
961
  }
869
962
 
963
+ .pb-4{
964
+ padding-bottom: 1rem;
965
+ }
966
+
967
+ .pl-2{
968
+ padding-left: 0.5rem;
969
+ }
970
+
971
+ .pr-2{
972
+ padding-right: 0.5rem;
973
+ }
974
+
975
+ .pr-4{
976
+ padding-right: 1rem;
977
+ }
978
+
870
979
  .pt-2{
871
980
  padding-top: 0.5rem;
872
981
  }
@@ -879,10 +988,6 @@ video {
879
988
  text-align: center;
880
989
  }
881
990
 
882
- .font-sans{
883
- font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont;
884
- }
885
-
886
991
  .text-2xl{
887
992
  font-size: 1.5rem;
888
993
  line-height: 2rem;
@@ -893,6 +998,11 @@ video {
893
998
  line-height: 2.25rem;
894
999
  }
895
1000
 
1001
+ .text-4xl{
1002
+ font-size: 2.25rem;
1003
+ line-height: 2.5rem;
1004
+ }
1005
+
896
1006
  .text-lg{
897
1007
  font-size: 1.125rem;
898
1008
  line-height: 1.75rem;
@@ -937,9 +1047,23 @@ video {
937
1047
  font-weight: 600;
938
1048
  }
939
1049
 
1050
+ .italic{
1051
+ font-style: italic;
1052
+ }
1053
+
1054
+ .text-alarm{
1055
+ --tw-text-opacity: 1;
1056
+ color: rgb(253 84 111 / var(--tw-text-opacity));
1057
+ }
1058
+
1059
+ .text-alarmText{
1060
+ --tw-text-opacity: 1;
1061
+ color: rgb(249 2 41 / var(--tw-text-opacity));
1062
+ }
1063
+
940
1064
  .text-bright{
941
1065
  --tw-text-opacity: 1;
942
- color: rgb(160 177 236 / var(--tw-text-opacity));
1066
+ color: rgb(97 144 242 / var(--tw-text-opacity));
943
1067
  }
944
1068
 
945
1069
  .text-neutral{
@@ -991,6 +1115,16 @@ video {
991
1115
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
992
1116
  }
993
1117
 
1118
+ .placeholder\:text-xs::-moz-placeholder{
1119
+ font-size: 0.75rem;
1120
+ line-height: 1rem;
1121
+ }
1122
+
1123
+ .placeholder\:text-xs::placeholder{
1124
+ font-size: 0.75rem;
1125
+ line-height: 1rem;
1126
+ }
1127
+
994
1128
  .last\:border-0:last-child{
995
1129
  border-width: 0px;
996
1130
  }
@@ -1026,7 +1160,7 @@ video {
1026
1160
 
1027
1161
  .hover\:text-bright:hover{
1028
1162
  --tw-text-opacity: 1;
1029
- color: rgb(160 177 236 / var(--tw-text-opacity));
1163
+ color: rgb(97 144 242 / var(--tw-text-opacity));
1030
1164
  }
1031
1165
 
1032
1166
  .hover\:text-neutral:hover{
@@ -1054,6 +1188,12 @@ video {
1054
1188
  color: rgb(246 250 253 / var(--tw-text-opacity));
1055
1189
  }
1056
1190
 
1191
+ .focus\:shadow-none:focus{
1192
+ --tw-shadow: 0 0 #0000;
1193
+ --tw-shadow-colored: 0 0 #0000;
1194
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
1195
+ }
1196
+
1057
1197
  .focus\:outline-none:focus{
1058
1198
  outline: 2px solid transparent;
1059
1199
  outline-offset: 2px;
@@ -9,17 +9,42 @@ export default {
9
9
  fontFamily: {
10
10
  sans: ['Inter', 'system-ui', '-apple-system', 'BlinkMacSystemFont']
11
11
  },
12
+ lineHeight: {
13
+ 'h1': '1.25',
14
+ 'h2': '1.5',
15
+ 'h3': '1.75'
16
+ },
12
17
  colors: {
13
18
  primary: '#141B33',
14
19
  primaryHighlight: '#52586C',
15
20
  secondary: '#2B324B',
16
- tertiary: '#F6FAFD',
17
21
  quaternary: '#8991AC',
22
+ tertiary: '#F6FAFD',
18
23
  dropdownSelect: '#D5E4EE',
19
24
  neutral: '#FFFFFF',
20
- bright: '#A0B1EC'
25
+ bright: '#6190f2',
26
+ alarm: '#FD546F',
27
+ alarmText: '#F90229',
28
+ alert: '#FFD255'
21
29
  }
22
30
  },
23
31
  },
24
- plugins: [],
32
+ plugins: [
33
+ function ({ addBase, theme }) {
34
+ addBase({
35
+ h1: {
36
+ fontSize: theme('fontSize.3xl'),
37
+ lineHeight: theme('lineHeight.leading-h1'),
38
+ },
39
+ h2: {
40
+ fontSize: theme('fontSize.2xl'),
41
+ lineHeight: theme('lineHeight.h2'),
42
+ },
43
+ h3: {
44
+ fontSize: theme('fontSize.xl'),
45
+ lineHeight: theme('lineHeight.h3'),
46
+ },
47
+ });
48
+ },
49
+ ],
25
50
  }