@dcrackel/meyersquaredui 1.0.43 → 1.0.45

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 (73) hide show
  1. package/dist/meyersquaredui.es.js +615 -498
  2. package/dist/meyersquaredui.umd.js +1 -1
  3. package/package.json +4 -3
  4. package/src/index.js +1 -1
  5. package/src/mocks/getAllClubs.js +106 -0
  6. package/src/mocks/getClubById.js +130 -0
  7. package/src/mocks/getFencersByWeapon.js +2167 -0
  8. package/src/mocks/getTouranmentDetailsMock.js +92 -0
  9. package/src/stories/Atoms/BaseButton/BaseButton.vue +5 -3
  10. package/src/stories/Atoms/BaseText/BaseText.vue +1 -1
  11. package/src/stories/Atoms/Icon/Icon.vue +4 -2
  12. package/src/stories/Atoms/InputField/InputField.stories.js +28 -9
  13. package/src/stories/Atoms/InputField/InputField.vue +20 -2
  14. package/src/stories/Molecules/Calendar/Calendar.stories.js +39 -0
  15. package/src/stories/Molecules/Calendar/Calendar.vue +110 -0
  16. package/src/stories/Molecules/DropDowns/BasicDropDown.stories.js +31 -0
  17. package/src/stories/Molecules/DropDowns/BasicDropDown.vue +78 -0
  18. package/src/stories/Molecules/MapBox/MapBox.stories.js +30 -0
  19. package/src/stories/Molecules/MapBox/MapBox.vue +67 -0
  20. package/src/stories/Molecules/SearchBox/SearchBox.vue +2 -1
  21. package/src/stories/Molecules/SearchBox/Searchbox.stories.js +1 -1
  22. package/src/stories/Organisms/Cards/ArticleCard/ArticleCard.vue +8 -3
  23. package/src/stories/Organisms/Cards/ClubListCard/CLubListCard.stories.js +31 -0
  24. package/src/stories/Organisms/Cards/ClubListCard/ClubListCard.vue +72 -0
  25. package/src/stories/Organisms/Cards/ClubMember/ClubMember.stories.js +40 -0
  26. package/src/stories/Organisms/Cards/ClubMember/ClubMember.vue +56 -0
  27. package/src/stories/Organisms/Cards/EventListCard/EventListCard.stories.js +38 -0
  28. package/src/stories/Organisms/Cards/EventListCard/EventListCard.vue +64 -0
  29. package/src/stories/Organisms/Cards/FencerCard/FencerCard.vue +3 -5
  30. package/src/stories/Organisms/Cards/FencerListCard/FencerListCard.stories.js +30 -0
  31. package/src/stories/Organisms/Cards/FencerListCard/FencerListCard.vue +86 -0
  32. package/src/stories/Organisms/Cards/PhotoCard/PhotoCard.stories.js +28 -0
  33. package/src/stories/Organisms/Cards/PhotoCard/PhotoCard.vue +18 -0
  34. package/src/stories/Organisms/Cards/SocialMediaLinkCard/SocialMediaLinkCard.stories.js +40 -0
  35. package/src/stories/Organisms/Cards/SocialMediaLinkCard/SocialMediaLinkCard.vue +54 -0
  36. package/src/stories/Organisms/Cards/TournamentCard/TournamentCard.stories.js +1 -1
  37. package/src/stories/Organisms/Cards/TournamentCard/TournamentCard.vue +7 -2
  38. package/src/stories/Organisms/Cards/TournamentDetails/TournamentDetails.stories.js +35 -0
  39. package/src/stories/Organisms/Cards/TournamentDetails/TournamentDetails.vue +59 -0
  40. package/src/stories/Organisms/Cards/TournamentListCard/TournamentListCard.stories.js +26 -0
  41. package/src/stories/Organisms/Cards/TournamentListCard/TournamentListCard.vue +103 -0
  42. package/src/stories/Organisms/Column/HostColumn.stories.js +39 -0
  43. package/src/stories/Organisms/Column/HostColumn.vue +105 -0
  44. package/src/stories/Organisms/GridLayout/GridLayout.vue +28 -8
  45. package/src/stories/Organisms/Headers/ClubHeader/ClubHeader.stories.js +21 -0
  46. package/src/stories/Organisms/Headers/ClubHeader/ClubHeader.vue +58 -0
  47. package/src/stories/Organisms/Headers/LeaderboardHeader/LeaderboardHeader.stories.js +29 -0
  48. package/src/stories/Organisms/Headers/LeaderboardHeader/LeaderboardHeader.vue +59 -0
  49. package/src/stories/Organisms/Headers/{Header.stories.js → PageHeader/PageHeader.stories.js} +2 -2
  50. package/src/stories/Organisms/Headers/PageHeader/PageHeader.vue +101 -0
  51. package/src/stories/Organisms/Headers/TournamentHeader/TournamentHeader.stories.js +34 -0
  52. package/src/stories/Organisms/Headers/TournamentHeader/TournamentHeader.vue +73 -0
  53. package/src/stories/Organisms/HeroBanners/HomePage/HeroBanner.stories.js +3 -3
  54. package/src/stories/Organisms/HeroBanners/HomePage/HeroBanner.vue +1 -1
  55. package/src/stories/Organisms/HeroBanners/TournamentDetails/TournamentDetailsBanner.stories.js +39 -0
  56. package/src/stories/Organisms/HeroBanners/TournamentDetails/TournamentDetailsBanner.vue +129 -0
  57. package/src/stories/Organisms/HeroBanners/Tournaments/TournamentBanner.stories.js +25 -0
  58. package/src/stories/Organisms/HeroBanners/Tournaments/TournamentBanner.vue +79 -0
  59. package/src/stories/Organisms/SectionBanners/DoubleButtonBanner/DoubleButtonBanner.vue +3 -3
  60. package/src/stories/Organisms/SectionBanners/SingleButtonBanner/SingleButtonBanner.vue +1 -1
  61. package/src/stories/Templates/ClubDetailPage/ClubDetailPage.stories.js +43 -0
  62. package/src/stories/Templates/ClubDetailPage/ClubDetailPage.vue +127 -0
  63. package/src/stories/Templates/ClubListPage/ClubListPage.stories.js +43 -0
  64. package/src/stories/Templates/ClubListPage/ClubListPage.vue +84 -0
  65. package/src/stories/Templates/HomePage/HomePage.stories.js +6 -6
  66. package/src/stories/Templates/HomePage/HomePage.vue +21 -14
  67. package/src/stories/Templates/Leaderboard/Leaderboard.stories.js +43 -0
  68. package/src/stories/Templates/Leaderboard/Leaderboard.vue +93 -0
  69. package/src/stories/Templates/TournamentDetailPage/TournamentDetail.stories.js +32 -0
  70. package/src/stories/Templates/TournamentDetailPage/TournamentDetailPage.vue +121 -0
  71. package/src/stories/Templates/TournamentListPage/TournamentListPage.stories.js +41 -0
  72. package/src/stories/Templates/TournamentListPage/TournamentListPage.vue +91 -0
  73. package/src/stories/Organisms/Headers/Header.vue +0 -62
@@ -0,0 +1,41 @@
1
+ import HomePage from './TournamentListPage.vue';
2
+ import mockTournaments from "../../../mocks/getTournamentsMock.js";
3
+ import mockTopFencers from "../../../mocks/getTopFencers.js";
4
+ import mockArticles from "../../../mocks/getArticles.js";
5
+ export default {
6
+ title: 'Templates/TournamentListPage',
7
+ component: HomePage,
8
+ argTypes: {
9
+ 'button-click': { action: 'button-click' },
10
+ title: { control: 'text', description: 'Title for the HeroBanner' },
11
+ description: { control: 'text', description: 'Description for the HeroBanner' },
12
+ buttonLabel: { control: 'text', description: 'Button label for the HeroBanner' },
13
+ imageSrc: { control: 'text', description: 'Image source for the HeroBanner' },
14
+ },
15
+ };
16
+
17
+ export const Default = {
18
+ args: {
19
+ title: 'Find HEMA Tournaments',
20
+ description: 'Near your location!',
21
+ imageSrc: 'https://meyersquared.com/images/banners/thinbanner02m1.png',
22
+ tournaments: mockTournaments,
23
+ topFencers: mockTopFencers,
24
+ articles: mockArticles,
25
+ },
26
+ };
27
+
28
+ export const AllLoading = {
29
+ args: {
30
+ title: 'Discover, Compete, Connect',
31
+ description: '',
32
+ buttonLabel: 'Find Out More',
33
+ imageSrc: 'https://meyersquared.com/images/banners/largebanner01.jpg',
34
+ tournaments: mockTournaments,
35
+ topFencers: mockTopFencers,
36
+ articles: mockArticles,
37
+ tournamentsIsLoading: true,
38
+ topFencersIsLoading: true,
39
+ articlesIsLoading: true,
40
+ },
41
+ };
@@ -0,0 +1,91 @@
1
+ <template>
2
+ <div class="m-0 w-full bg-secondary">
3
+ <Header />
4
+ <TournamentBanner :title="title" :description="description" :imageSrc="imageSrc" />
5
+ <TournamentHeader />
6
+
7
+ <div class="w-full flex justify-center">
8
+ <section class="w-full md:w-2/3 mb-20 flex">
9
+ <GridLayout
10
+ :cardComponent="cardComponent"
11
+ :items="limitedTournaments"
12
+ :maxColumns="1"
13
+ :isLoading="tournamentsIsLoading"
14
+ :whiteStyle="true"
15
+ moreButtonLabel="See All Tournaments"
16
+ :title="formattedDate"
17
+ />
18
+ <Calendar :tournaments="tournaments" class="hidden md:block mt-32" />
19
+ </section>
20
+ </div>
21
+
22
+ <Footer />
23
+ </div>
24
+ </template>
25
+
26
+
27
+ <script>
28
+ import TournamentBanner from "../../Organisms/HeroBanners/Tournaments/TournamentBanner.vue";
29
+ import Header from "../../Organisms/Headers/PageHeader/PageHeader.vue";
30
+ import TournamentListCard from "../../Organisms/Cards/TournamentListCard/TournamentListCard.vue";
31
+ import FencerCard from "../../Organisms/Cards/FencerCard/FencerCard.vue";
32
+ import GridLayout from "../../Organisms/GridLayout/GridLayout.vue";
33
+ import Footer from "../../Organisms/Footer/Footer.vue";
34
+ import TournamentHeader from "../../Organisms/Headers/TournamentHeader/TournamentHeader.vue";
35
+ import Calendar from "../../Molecules/Calendar/Calendar.vue";
36
+ import {markRaw} from "vue";
37
+
38
+ export default {
39
+ name: 'TournamentListPage',
40
+ components: {
41
+ Calendar,
42
+ TournamentHeader,
43
+ Footer,
44
+ GridLayout,
45
+ TournamentListCard,
46
+ FencerCard,
47
+ Header,
48
+ TournamentBanner,
49
+ },
50
+ props: {
51
+ title: {
52
+ type: String,
53
+ default: 'Hero Banner Title'
54
+ },
55
+ description: {
56
+ type: String,
57
+ default: 'This is the description that goes under the hero banner.'
58
+ },
59
+ imageSrc: {
60
+ type: String,
61
+ default: 'https://meyersquared.com/images/Banner2.png'
62
+ },
63
+ tournaments: {
64
+ type: Array,
65
+ default: () => []
66
+ },
67
+ tournamentsIsLoading: {
68
+ type: Boolean,
69
+ default: false
70
+ },
71
+ },
72
+ computed: {
73
+ formattedDate() {
74
+ return new Date().toLocaleDateString(undefined, {
75
+ weekday: 'long',
76
+ month: 'short',
77
+ day: 'numeric',
78
+ });
79
+ },
80
+ limitedTournaments() {
81
+ return this.tournaments;
82
+ }
83
+ },
84
+ data() {
85
+ return {
86
+ cardComponent: markRaw(TournamentListCard),
87
+ }
88
+ }
89
+ }
90
+
91
+ </script>
@@ -1,62 +0,0 @@
1
- <template>
2
- <header class="border-b border-lineGrey w-full bg-primary m-0">
3
- <section class="w-full hidden md:flex ">
4
- <div class="w-[150px] h-[150px] bg-primary flex-shrink-0 flex items-center justify-center">
5
- <img :src="logo" alt="Logo" class="h-14 w-18 bg-accent" />
6
- </div>
7
-
8
- <section class="flex w-full items-center border-r border-l border-lineGrey">
9
- <div class="hidden lg:flex w-1/3 pl-20">
10
- <SearchBox class="w-24 md:w-32 lg:w-52 xl:w-64 bg-primary" />
11
- </div>
12
- <nav class="ml-8 w-2/3 flex justify-around">
13
- <BaseText color="secondary" size="md" tag="p" weight="normal" class="border-b-2 border-primary hover:border-accent pb-2 duration-300 ease-in-out">Tournaments</BaseText>
14
- <BaseText color="secondary" size="md" tag="p" weight="normal" class="border-b-2 border-primary hover:border-accent pb-2 duration-300 ease-in-out">Clubs</BaseText>
15
- <BaseText color="secondary" size="md" tag="p" weight="normal" class="border-b-2 border-primary hover:border-accent pb-2 duration-300 ease-in-out">Leaderboard</BaseText>
16
- <BaseText color="secondary" size="md" tag="p" weight="normal" class="border-b-2 border-primary hover:border-accent pb-2 duration-300 ease-in-out">Contact</BaseText>
17
- </nav>
18
- </section>
19
- <div class="w-[150px] h-[150px] bg-primary flex-shrink-0 flex items-center justify-center">
20
- <BaseButton
21
- backgroundColor="primary"
22
- border="secondary"
23
- color="secondary"
24
- label="Login"
25
- size="xs"
26
- />
27
- </div>
28
- </section>
29
-
30
- <!-- mobile header -->
31
- <section class="w-full flex md:hidden">
32
- <div class="m-2 flex justify-between w-full">
33
- <img :src="logo" alt="Logo" class="h-6 w-9" />
34
- <Icon icon="fa-bars" color="secondary" size="xl" class="" @click="onSearch" />
35
- </div>
36
- </section>
37
- </header>
38
- </template>
39
-
40
- <script>
41
- import logo from '../../../assets/images/m2.png';
42
-
43
- import SearchBox from '../../Molecules/SearchBox/SearchBox.vue';
44
- import BaseText from '../../Atoms/BaseText/BaseText.vue';
45
- import Icon from '../../Atoms/Icon/Icon.vue';
46
- import BaseButton from '../../Atoms/BaseButton/BaseButton.vue';
47
-
48
- export default {
49
- name: 'Header',
50
- components: {
51
- SearchBox,
52
- BaseText,
53
- BaseButton,
54
- Icon
55
- },
56
- data() {
57
- return {
58
- logo: logo,
59
- };
60
- },
61
- };
62
- </script>