@universal-tennis/ui-shared 0.1.87 → 0.1.88

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 (300) hide show
  1. package/.eslintignore +1 -1
  2. package/.eslintrc.js +73 -73
  3. package/.storybook/preview.js +17 -17
  4. package/.storybook/variables.css +16 -16
  5. package/README.md +129 -129
  6. package/dist/App.d.ts +2 -2
  7. package/dist/App.js +12 -12
  8. package/dist/components.d.ts +38 -38
  9. package/dist/components.js +43 -43
  10. package/dist/index.d.ts +1 -1
  11. package/dist/index.js +12 -12
  12. package/dist/items.d.ts +2 -2
  13. package/dist/items.js +1 -1
  14. package/dist/stories/assets/css/variables.css +15 -15
  15. package/dist/stories/assets/icon-chat-blue.svg +10 -10
  16. package/dist/stories/assets/utr-sports-logo.svg +9 -9
  17. package/dist/stories/atoms/Button/Button.d.ts +10 -10
  18. package/dist/stories/atoms/Button/Button.js +95 -95
  19. package/dist/stories/atoms/Button/Button.stories.d.ts +17 -17
  20. package/dist/stories/atoms/Button/Button.stories.js +45 -45
  21. package/dist/stories/atoms/Icons/AddIcon.d.ts +3 -3
  22. package/dist/stories/atoms/Icons/AddIcon.js +8 -8
  23. package/dist/stories/atoms/Icons/AvailabilityMaybeIcon.d.ts +3 -3
  24. package/dist/stories/atoms/Icons/AvailabilityMaybeIcon.js +6 -6
  25. package/dist/stories/atoms/Icons/AvailabilityNoIcon.d.ts +3 -3
  26. package/dist/stories/atoms/Icons/AvailabilityNoIcon.js +6 -6
  27. package/dist/stories/atoms/Icons/AvailabilityNotSetIcon.d.ts +3 -3
  28. package/dist/stories/atoms/Icons/AvailabilityNotSetIcon.js +7 -7
  29. package/dist/stories/atoms/Icons/AvailabilityYesIcon.d.ts +3 -3
  30. package/dist/stories/atoms/Icons/AvailabilityYesIcon.js +6 -6
  31. package/dist/stories/atoms/Icons/CalendarIcon.d.ts +3 -3
  32. package/dist/stories/atoms/Icons/CalendarIcon.js +6 -6
  33. package/dist/stories/atoms/Icons/ClockIcon.d.ts +3 -3
  34. package/dist/stories/atoms/Icons/ClockIcon.js +8 -8
  35. package/dist/stories/atoms/Icons/CloseIcon.d.ts +3 -3
  36. package/dist/stories/atoms/Icons/CloseIcon.js +6 -6
  37. package/dist/stories/atoms/Icons/DeleteIcon.d.ts +3 -3
  38. package/dist/stories/atoms/Icons/DeleteIcon.js +10 -10
  39. package/dist/stories/atoms/Icons/DoublePersonIcon.d.ts +3 -3
  40. package/dist/stories/atoms/Icons/DoublePersonIcon.js +13 -13
  41. package/dist/stories/atoms/Icons/EditIcon.d.ts +3 -3
  42. package/dist/stories/atoms/Icons/EditIcon.js +6 -6
  43. package/dist/stories/atoms/Icons/Icons.stories.d.ts +33 -33
  44. package/dist/stories/atoms/Icons/Icons.stories.js +269 -269
  45. package/dist/stories/atoms/Icons/LeftChevronIcon.d.ts +3 -3
  46. package/dist/stories/atoms/Icons/LeftChevronIcon.js +6 -6
  47. package/dist/stories/atoms/Icons/LineIcon.d.ts +3 -3
  48. package/dist/stories/atoms/Icons/LineIcon.js +6 -6
  49. package/dist/stories/atoms/Icons/LocationIcon.d.ts +3 -3
  50. package/dist/stories/atoms/Icons/LocationIcon.js +7 -7
  51. package/dist/stories/atoms/Icons/MessageIcon.d.ts +3 -3
  52. package/dist/stories/atoms/Icons/MessageIcon.js +6 -6
  53. package/dist/stories/atoms/Icons/RightChevronIcon.d.ts +3 -3
  54. package/dist/stories/atoms/Icons/RightChevronIcon.js +6 -6
  55. package/dist/stories/atoms/Icons/SessionIcon.d.ts +3 -3
  56. package/dist/stories/atoms/Icons/SessionIcon.js +6 -6
  57. package/dist/stories/atoms/Icons/SinglePersonIcon.d.ts +3 -3
  58. package/dist/stories/atoms/Icons/SinglePersonIcon.js +9 -9
  59. package/dist/stories/atoms/Icons/SocialMediaFacebookIcon.d.ts +3 -3
  60. package/dist/stories/atoms/Icons/SocialMediaFacebookIcon.js +10 -10
  61. package/dist/stories/atoms/Icons/SocialMediaInstagramIcon.d.ts +3 -3
  62. package/dist/stories/atoms/Icons/SocialMediaInstagramIcon.js +6 -6
  63. package/dist/stories/atoms/Icons/SocialMediaTikTokIcon.d.ts +3 -3
  64. package/dist/stories/atoms/Icons/SocialMediaTikTokIcon.js +10 -10
  65. package/dist/stories/atoms/Icons/SocialMediaXIcon.d.ts +3 -3
  66. package/dist/stories/atoms/Icons/SocialMediaXIcon.js +10 -10
  67. package/dist/stories/atoms/Icons/SocialMediaYoutubeIcon.d.ts +3 -3
  68. package/dist/stories/atoms/Icons/SocialMediaYoutubeIcon.js +6 -6
  69. package/dist/stories/atoms/Icons/SwapIcon.d.ts +3 -3
  70. package/dist/stories/atoms/Icons/SwapIcon.js +6 -6
  71. package/dist/stories/atoms/Icons/SwapNoBorderIcon.d.ts +3 -3
  72. package/dist/stories/atoms/Icons/SwapNoBorderIcon.js +9 -9
  73. package/dist/stories/atoms/Icons/VerifiedIcon.d.ts +3 -3
  74. package/dist/stories/atoms/Icons/VerifiedIcon.js +7 -7
  75. package/dist/stories/atoms/Icons/VisibilityIcon.d.ts +3 -3
  76. package/dist/stories/atoms/Icons/VisibilityIcon.js +7 -7
  77. package/dist/stories/atoms/Icons/VisibilityOffIcon.d.ts +3 -3
  78. package/dist/stories/atoms/Icons/VisibilityOffIcon.js +8 -8
  79. package/dist/stories/atoms/Icons/WinnerIndicatorIcon.d.ts +3 -3
  80. package/dist/stories/atoms/Icons/WinnerIndicatorIcon.js +31 -31
  81. package/dist/stories/atoms/Icons/sharedTypes.d.ts +11 -11
  82. package/dist/stories/atoms/Icons/sharedTypes.js +1 -1
  83. package/dist/stories/atoms/Map/Map.d.ts +7 -0
  84. package/dist/stories/atoms/Map/Map.js +9 -0
  85. package/dist/stories/atoms/Map/Map.js.map +1 -0
  86. package/dist/stories/atoms/Map/Map.stories.d.ts +9 -0
  87. package/dist/stories/atoms/Map/Map.stories.js +36 -0
  88. package/dist/stories/atoms/Map/Map.stories.js.map +1 -0
  89. package/dist/stories/atoms/Typography/Typography.d.ts +49 -49
  90. package/dist/stories/atoms/Typography/Typography.js +143 -143
  91. package/dist/stories/atoms/Typography/Typography.stories.d.ts +37 -37
  92. package/dist/stories/atoms/Typography/Typography.stories.js +190 -190
  93. package/dist/stories/atoms/UTMap/UTMap.d.ts +7 -7
  94. package/dist/stories/atoms/UTMap/UTMap.js +8 -8
  95. package/dist/stories/atoms/UTMap/UTMap.stories.d.ts +9 -9
  96. package/dist/stories/atoms/UTMap/UTMap.stories.js +35 -35
  97. package/dist/stories/molecules/AvatarWithName/AvatarWithName.d.ts +27 -27
  98. package/dist/stories/molecules/AvatarWithName/AvatarWithName.js +20 -20
  99. package/dist/stories/molecules/AvatarWithName/AvatarWithName.stories.d.ts +15 -15
  100. package/dist/stories/molecules/AvatarWithName/AvatarWithName.stories.js +72 -72
  101. package/dist/stories/molecules/Cards/Cards.stories.d.ts +7 -7
  102. package/dist/stories/molecules/Cards/Cards.stories.js +64 -64
  103. package/dist/stories/molecules/Cards/ContactCard.d.ts +3 -3
  104. package/dist/stories/molecules/Cards/ContactCard.js +38 -38
  105. package/dist/stories/molecules/Cards/DrawCard.d.ts +3 -3
  106. package/dist/stories/molecules/Cards/DrawCard.js +116 -116
  107. package/dist/stories/molecules/Cards/Modals.stories.d.ts +5 -5
  108. package/dist/stories/molecules/Cards/Modals.stories.js +72 -72
  109. package/dist/stories/molecules/Cards/TeamCard.d.ts +3 -3
  110. package/dist/stories/molecules/Cards/TeamCard.js +20 -20
  111. package/dist/stories/molecules/Cards/TeamDrawCard.d.ts +3 -3
  112. package/dist/stories/molecules/Cards/TeamDrawCard.js +78 -78
  113. package/dist/stories/molecules/Cards/TeamDrawCard.js.map +1 -1
  114. package/dist/stories/molecules/Cards/shared.d.ts +4 -9
  115. package/dist/stories/molecules/Cards/shared.js +12 -12
  116. package/dist/stories/molecules/Cards/sharedTypes.d.ts +61 -61
  117. package/dist/stories/molecules/Cards/sharedTypes.js +2 -2
  118. package/dist/stories/molecules/FooterSection/FooterSection.d.ts +4 -4
  119. package/dist/stories/molecules/FooterSection/FooterSection.js +11 -11
  120. package/dist/stories/molecules/FooterSection/FooterSection.stories.d.ts +5 -5
  121. package/dist/stories/molecules/FooterSection/FooterSection.stories.js +20 -20
  122. package/dist/stories/molecules/FooterSection/sharedTypes.d.ts +5 -5
  123. package/dist/stories/molecules/FooterSection/sharedTypes.js +1 -1
  124. package/dist/stories/molecules/SquareAvatarWithName/SquareAvatarWithName.d.ts +29 -29
  125. package/dist/stories/molecules/SquareAvatarWithName/SquareAvatarWithName.js +32 -29
  126. package/dist/stories/molecules/SquareAvatarWithName/SquareAvatarWithName.js.map +1 -1
  127. package/dist/stories/molecules/SquareAvatarWithName/SquareAvatarWithName.stories.d.ts +16 -16
  128. package/dist/stories/molecules/SquareAvatarWithName/SquareAvatarWithName.stories.js +81 -81
  129. package/dist/stories/organisms/Footer/Footer.d.ts +4 -4
  130. package/dist/stories/organisms/Footer/Footer.js +61 -61
  131. package/dist/stories/organisms/Footer/Footer.stories.d.ts +5 -5
  132. package/dist/stories/organisms/Footer/Footer.stories.js +58 -58
  133. package/dist/stories/organisms/Footer/sharedTypes.d.ts +14 -14
  134. package/dist/stories/organisms/Footer/sharedTypes.js +1 -1
  135. package/dist/stories/organisms/Modals/FullPageModal.d.ts +4 -4
  136. package/dist/stories/organisms/Modals/FullPageModal.js +59 -59
  137. package/dist/stories/organisms/Modals/Modals.stories.d.ts +5 -5
  138. package/dist/stories/organisms/Modals/Modals.stories.js +73 -73
  139. package/dist/stories/organisms/Modals/sharedTypes.d.ts +14 -14
  140. package/dist/stories/organisms/Modals/sharedTypes.js +1 -1
  141. package/dist/stories/organisms/Tables/DrawCardTable.d.ts +3 -3
  142. package/dist/stories/organisms/Tables/DrawCardTable.js +58 -58
  143. package/dist/stories/organisms/Tables/SortableTable.d.ts +23 -23
  144. package/dist/stories/organisms/Tables/SortableTable.js +34 -34
  145. package/dist/stories/organisms/Tables/Tables.stories.d.ts +8 -8
  146. package/dist/stories/organisms/Tables/Tables.stories.js +90 -90
  147. package/dist/stories/organisms/Tables/TeamDrawCardTable/DesktopTableRows.d.ts +3 -3
  148. package/dist/stories/organisms/Tables/TeamDrawCardTable/DesktopTableRows.js +66 -66
  149. package/dist/stories/organisms/Tables/TeamDrawCardTable/MobileTableRows.d.ts +3 -3
  150. package/dist/stories/organisms/Tables/TeamDrawCardTable/MobileTableRows.js +43 -43
  151. package/dist/stories/organisms/Tables/TeamDrawCardTable/TeamDrawCardTable.d.ts +3 -3
  152. package/dist/stories/organisms/Tables/TeamDrawCardTable/TeamDrawCardTable.js +22 -22
  153. package/dist/stories/organisms/Tables/TeamDrawCardTable.d.ts +3 -0
  154. package/dist/stories/organisms/Tables/TeamDrawCardTable.js +126 -0
  155. package/dist/stories/organisms/Tables/TeamDrawCardTable.js.map +1 -0
  156. package/dist/stories/organisms/Tables/mockData.d.ts +71 -71
  157. package/dist/stories/organisms/Tables/mockData.js +99 -99
  158. package/dist/stories/organisms/Tables/mockData.js.map +1 -1
  159. package/dist/stories/organisms/Tables/sharedTypes.d.ts +15 -15
  160. package/dist/stories/organisms/Tables/sharedTypes.js +1 -1
  161. package/dist/stories/utils/constants.d.ts +10 -10
  162. package/dist/stories/utils/constants.js +10 -10
  163. package/dist/stories/utils/getArrayWithIds.d.ts +3 -3
  164. package/dist/stories/utils/getArrayWithIds.js +1 -1
  165. package/dist/stories/utils/useScreenSize.d.ts +4 -4
  166. package/dist/stories/utils/useScreenSize.js +27 -27
  167. package/dist/types/tableDataTypes.d.ts +38 -38
  168. package/dist/types/tableDataTypes.js +1 -1
  169. package/infrastructure/azure-pipelines.yml +112 -112
  170. package/package.json +100 -100
  171. package/src/App.js +25 -25
  172. package/src/components.jsx +47 -47
  173. package/src/custom.d.ts +13 -13
  174. package/src/index.js +17 -17
  175. package/src/items.jsx +1 -1
  176. package/src/stories/assets/css/variables.css +15 -15
  177. package/src/stories/assets/icon-chat-blue.svg +10 -10
  178. package/src/stories/assets/icons/icon-add.svg +7 -7
  179. package/src/stories/assets/icons/icon-availability-maybe.svg +3 -3
  180. package/src/stories/assets/icons/icon-availability-no.svg +3 -3
  181. package/src/stories/assets/icons/icon-availability-not-set.svg +8 -8
  182. package/src/stories/assets/icons/icon-availability-yes.svg +3 -3
  183. package/src/stories/assets/icons/icon-calendar.svg +4 -4
  184. package/src/stories/assets/icons/icon-clock.svg +7 -7
  185. package/src/stories/assets/icons/icon-close.svg +3 -3
  186. package/src/stories/assets/icons/icon-delete.svg +9 -9
  187. package/src/stories/assets/icons/icon-edit.svg +3 -3
  188. package/src/stories/assets/icons/icon-location.svg +6 -6
  189. package/src/stories/assets/icons/icon-message.svg +3 -3
  190. package/src/stories/assets/icons/icon-session.svg +3 -3
  191. package/src/stories/assets/icons/icon-social-media-facebook.svg +10 -10
  192. package/src/stories/assets/icons/icon-social-media-instagram.svg +3 -3
  193. package/src/stories/assets/icons/icon-social-media-tiktok.svg +10 -10
  194. package/src/stories/assets/icons/icon-social-media-x.svg +10 -10
  195. package/src/stories/assets/icons/icon-social-media-youtube.svg +3 -3
  196. package/src/stories/assets/icons/icon-swap.svg +3 -3
  197. package/src/stories/assets/icons/icon-visibility-off.svg +7 -7
  198. package/src/stories/assets/icons/icon-visibility.svg +6 -6
  199. package/src/stories/assets/utr-sports-logo.svg +9 -9
  200. package/src/stories/atoms/Button/Button.stories.tsx +63 -63
  201. package/src/stories/atoms/Button/Button.tsx +145 -145
  202. package/src/stories/atoms/Icons/AddIcon.tsx +13 -13
  203. package/src/stories/atoms/Icons/AvailabilityMaybeIcon.tsx +11 -11
  204. package/src/stories/atoms/Icons/AvailabilityNoIcon.tsx +11 -11
  205. package/src/stories/atoms/Icons/AvailabilityNotSetIcon.tsx +12 -12
  206. package/src/stories/atoms/Icons/AvailabilityYesIcon.tsx +11 -11
  207. package/src/stories/atoms/Icons/CalendarIcon.tsx +11 -11
  208. package/src/stories/atoms/Icons/ClockIcon.tsx +14 -14
  209. package/src/stories/atoms/Icons/CloseIcon.tsx +11 -11
  210. package/src/stories/atoms/Icons/DeleteIcon.tsx +15 -15
  211. package/src/stories/atoms/Icons/DoublePersonIcon.tsx +20 -20
  212. package/src/stories/atoms/Icons/EditIcon.tsx +11 -11
  213. package/src/stories/atoms/Icons/Icons.stories.tsx +330 -330
  214. package/src/stories/atoms/Icons/LeftChevronIcon.tsx +13 -13
  215. package/src/stories/atoms/Icons/LineIcon.tsx +12 -12
  216. package/src/stories/atoms/Icons/LocationIcon.tsx +12 -12
  217. package/src/stories/atoms/Icons/MessageIcon.tsx +12 -12
  218. package/src/stories/atoms/Icons/RightChevronIcon.tsx +11 -11
  219. package/src/stories/atoms/Icons/SessionIcon.tsx +16 -16
  220. package/src/stories/atoms/Icons/SinglePersonIcon.tsx +16 -16
  221. package/src/stories/atoms/Icons/SocialMediaFacebookIcon.tsx +19 -19
  222. package/src/stories/atoms/Icons/SocialMediaInstagramIcon.tsx +11 -11
  223. package/src/stories/atoms/Icons/SocialMediaTikTokIcon.tsx +18 -18
  224. package/src/stories/atoms/Icons/SocialMediaXIcon.tsx +18 -18
  225. package/src/stories/atoms/Icons/SocialMediaYoutubeIcon.tsx +11 -11
  226. package/src/stories/atoms/Icons/SwapIcon.tsx +11 -11
  227. package/src/stories/atoms/Icons/SwapNoBorderIcon.tsx +14 -14
  228. package/src/stories/atoms/Icons/VerifiedIcon.tsx +13 -13
  229. package/src/stories/atoms/Icons/VisibilityIcon.tsx +12 -12
  230. package/src/stories/atoms/Icons/VisibilityOffIcon.tsx +13 -13
  231. package/src/stories/atoms/Icons/WinnerIndicatorIcon.tsx +39 -39
  232. package/src/stories/atoms/Icons/sharedTypes.tsx +12 -12
  233. package/src/stories/atoms/Typography/Typography.tsx +185 -185
  234. package/src/stories/atoms/UTMap/UTMap.stories.tsx +43 -43
  235. package/src/stories/atoms/UTMap/UTMap.tsx +25 -25
  236. package/src/stories/molecules/AvatarWithName/AvatarWithName.stories.tsx +86 -86
  237. package/src/stories/molecules/AvatarWithName/AvatarWithName.tsx +68 -68
  238. package/src/stories/molecules/Cards/Cards.stories.tsx +76 -76
  239. package/src/stories/molecules/Cards/ContactCard.tsx +45 -45
  240. package/src/stories/molecules/Cards/DrawCard.tsx +211 -211
  241. package/src/stories/molecules/Cards/Modals.stories.tsx +137 -137
  242. package/src/stories/molecules/Cards/TeamCard.tsx +14 -14
  243. package/src/stories/molecules/Cards/TeamDrawCard.tsx +159 -159
  244. package/src/stories/molecules/Cards/sharedTypes.ts +69 -69
  245. package/src/stories/molecules/FooterSection/FooterSection.stories.tsx +25 -25
  246. package/src/stories/molecules/FooterSection/FooterSection.tsx +34 -34
  247. package/src/stories/molecules/FooterSection/sharedTypes.ts +6 -6
  248. package/src/stories/molecules/SquareAvatarWithName/SquareAvatarWithName.stories.tsx +96 -96
  249. package/src/stories/molecules/SquareAvatarWithName/SquareAvatarWithName.tsx +111 -99
  250. package/src/stories/organisms/Footer/Footer.stories.tsx +63 -63
  251. package/src/stories/organisms/Footer/Footer.tsx +118 -118
  252. package/src/stories/organisms/Footer/sharedTypes.ts +14 -14
  253. package/src/stories/organisms/Modals/FullPageModal.tsx +93 -93
  254. package/src/stories/organisms/Modals/Modals.stories.tsx +138 -138
  255. package/src/stories/organisms/Modals/sharedTypes.ts +15 -15
  256. package/src/stories/organisms/Tables/DrawCardTable.tsx +92 -92
  257. package/src/stories/organisms/Tables/SortableTable.tsx +119 -119
  258. package/src/stories/organisms/Tables/Tables.stories.tsx +104 -104
  259. package/src/stories/organisms/Tables/TeamDrawCardTable/DesktopTableRows.tsx +120 -120
  260. package/src/stories/organisms/Tables/TeamDrawCardTable/MobileTableRows.tsx +67 -67
  261. package/src/stories/organisms/Tables/TeamDrawCardTable/TeamDrawCardTable.tsx +24 -24
  262. package/src/stories/organisms/Tables/mockData.tsx +131 -131
  263. package/src/stories/organisms/Tables/sharedTypes.ts +17 -17
  264. package/src/stories/utils/constants.ts +11 -11
  265. package/src/stories/utils/getArrayWithIds.ts +1 -1
  266. package/src/stories/utils/useScreenSize.ts +28 -28
  267. package/src/types/tableDataTypes.ts +42 -42
  268. package/tsconfig.json +23 -23
  269. package/dist/stories/Button.d.ts +0 -27
  270. package/dist/stories/Button.js +0 -51
  271. package/dist/stories/Button.js.map +0 -1
  272. package/dist/stories/Button.stories.d.ts +0 -15
  273. package/dist/stories/Button.stories.js +0 -34
  274. package/dist/stories/Button.stories.js.map +0 -1
  275. package/dist/stories/Header.d.ts +0 -19
  276. package/dist/stories/Header.js +0 -31
  277. package/dist/stories/Header.js.map +0 -1
  278. package/dist/stories/Header.stories.d.ts +0 -11
  279. package/dist/stories/Header.stories.js +0 -20
  280. package/dist/stories/Header.stories.js.map +0 -1
  281. package/dist/stories/Page.d.ts +0 -1
  282. package/dist/stories/Page.js +0 -38
  283. package/dist/stories/Page.js.map +0 -1
  284. package/dist/stories/Page.stories.d.ts +0 -11
  285. package/dist/stories/Page.stories.js +0 -30
  286. package/dist/stories/Page.stories.js.map +0 -1
  287. package/dist/stories/assets/comments.svg +0 -1
  288. package/dist/stories/assets/direction.svg +0 -1
  289. package/dist/stories/atoms/Button/index.d.ts +0 -1
  290. package/dist/stories/atoms/Button/index.js +0 -2
  291. package/dist/stories/atoms/Button/index.js.map +0 -1
  292. package/dist/stories/atoms/Button.d.ts +0 -7
  293. package/dist/stories/atoms/Button.js +0 -20
  294. package/dist/stories/atoms/Button.js.map +0 -1
  295. package/dist/stories/atoms/Button.stories.d.ts +0 -13
  296. package/dist/stories/atoms/Button.stories.js +0 -22
  297. package/dist/stories/atoms/Button.stories.js.map +0 -1
  298. package/dist/stories/atoms/Typography/index.d.ts +0 -1
  299. package/dist/stories/atoms/Typography/index.js +0 -2
  300. package/dist/stories/atoms/Typography/index.js.map +0 -1
@@ -1,99 +1,111 @@
1
- import React from 'react';
2
-
3
- import Avatar from '@mui/material/Avatar';
4
- import Box from '@mui/material/Box';
5
- import Link from '@mui/material/Link';
6
-
7
- import Typography from '../../atoms/Typography/Typography';
8
-
9
- export interface SquareAvatarWithNameProps {
10
- avatarOnly?: boolean;
11
- avatarFontCategory?: string;
12
- avatarFontSize?: string;
13
- avatarWidth?: string;
14
- avatarHeight?: string;
15
- href?: string,
16
- maxLinkWidth?: string,
17
- name: string;
18
- fontCategory?: string;
19
- fontSize?: string;
20
- disabled?: boolean;
21
- subtitle?: string;
22
- }
23
-
24
- export default function SquareAvatarWithName({
25
- avatarOnly = false, name = '', avatarFontSize = 'small-medium', href = '',
26
- avatarFontCategory = 'primary', avatarWidth = '26px', avatarHeight = '26px',
27
- fontSize = 'medium-book', fontCategory = 'secondary', disabled = false, maxLinkWidth = "auto", subtitle = ''
28
- }) {
29
- const getAcronym = (str: string) => {
30
- const cleanStr = str?.replace(/[^a-zA-Z\s]/g, '').split(' '); // Remove non-letter and non-space characters
31
- const acronym = cleanStr?.map((word) => word.charAt(0)).join('').substring(0, 3);
32
- return acronym;
33
- };
34
-
35
- const SquareAvatarComponent = (
36
- <Avatar
37
- sx={{
38
- backgroundColor: disabled ? 'var(--grey)' : 'var(--black)',
39
- marginRight: '8px',
40
- width: `${avatarWidth}`,
41
- height: `${avatarHeight}`
42
- }}
43
- variant="rounded"
44
- >
45
- <Typography
46
- sx={{ textTransform: 'uppercase' }}
47
- size={avatarFontSize}
48
- category={avatarFontCategory}
49
- >
50
- {disabled ? '—' : getAcronym(name)}
51
- </Typography>
52
- </Avatar>
53
- );
54
-
55
- return (
56
- avatarOnly ? (
57
- SquareAvatarComponent
58
- ) : (
59
- <Box display="flex" alignItems="center">
60
- {SquareAvatarComponent}
61
- <Box>
62
- {href ? (
63
- <Link href={href} sx={{ textDecoration: 'none' }}>
64
- <Typography
65
- category={fontCategory}
66
- size={fontSize}
67
- maxWidth={maxLinkWidth}
68
- sx={{ whiteSpace: 'noWrap', overflow: 'hidden', textOverflow: 'ellipsis' }}
69
- >
70
- {name}
71
- </Typography>
72
- </Link>
73
- ) : (
74
- <Typography
75
- category={fontCategory}
76
- size={fontSize}
77
- sx={{
78
- whiteSpace: 'noWrap', overflow: 'hidden', textOverflow: 'ellipsis', color: disabled ? 'grey' : 'black'
79
- }}
80
- >
81
- {name}
82
- </Typography>
83
- )}
84
- {subtitle && (
85
- <Typography
86
- category="secondary"
87
- size="small-book"
88
- sx={{
89
- whiteSpace: 'noWrap', overflow: 'hidden', textOverflow: 'ellipsis', color: 'black'
90
- }}
91
- >
92
- {subtitle}
93
- </Typography>
94
- )}
95
- </Box>
96
- </Box>
97
- )
98
- );
99
- }
1
+ import React from 'react';
2
+
3
+ import Avatar from '@mui/material/Avatar';
4
+ import Box from '@mui/material/Box';
5
+ import Link from '@mui/material/Link';
6
+
7
+ import Typography from '../../atoms/Typography/Typography';
8
+
9
+ export interface SquareAvatarWithNameProps {
10
+ avatarOnly?: boolean;
11
+ avatarFontCategory?: string;
12
+ avatarFontSize?: string;
13
+ avatarWidth?: string;
14
+ avatarHeight?: string;
15
+ href?: string,
16
+ maxLinkWidth?: string,
17
+ name: string;
18
+ fontCategory?: string;
19
+ fontSize?: string;
20
+ disabled?: boolean;
21
+ subtitle?: string;
22
+ }
23
+
24
+ export default function SquareAvatarWithName({
25
+ avatarOnly = false, name = '', avatarFontSize = 'small-medium', href = '',
26
+ avatarFontCategory = 'primary', avatarWidth = '26px', avatarHeight = '26px',
27
+ fontSize = 'medium-book', fontCategory = 'secondary', disabled = false, maxLinkWidth = "auto", subtitle = ''
28
+ }) {
29
+ const getAcronym = (str: string) => {
30
+ const cleanStr = str?.replace(/[^a-zA-Z\s]/g, '').split(' '); // Remove non-letter and non-space characters
31
+ const acronym = cleanStr?.map((word) => word.charAt(0)).join('').substring(0, 3);
32
+ return acronym;
33
+ };
34
+
35
+ const textOverflowStyles = {
36
+ overflow: "hidden",
37
+ textOverflow: "ellipsis",
38
+ display: "-webkit-box",
39
+ WebkitBoxOrient: "vertical",
40
+ WebkitLineClamp: 1
41
+ };
42
+
43
+ const SquareAvatarComponent = (
44
+ <Avatar
45
+ sx={{
46
+ backgroundColor: disabled ? 'var(--grey)' : 'var(--black)',
47
+ marginRight: '8px',
48
+ width: `${avatarWidth}`,
49
+ height: `${avatarHeight}`
50
+ }}
51
+ variant="rounded"
52
+ >
53
+ <Typography
54
+ sx={{ textTransform: 'uppercase' }}
55
+ size={avatarFontSize}
56
+ category={avatarFontCategory}
57
+ >
58
+ {disabled ? '—' : getAcronym(name)}
59
+ </Typography>
60
+ </Avatar>
61
+ );
62
+
63
+ return (
64
+ avatarOnly ? (
65
+ SquareAvatarComponent
66
+ ) : (
67
+ <Box display="flex" alignItems="center">
68
+ {SquareAvatarComponent}
69
+ <Box>
70
+ {href ? (
71
+ <Link href={href} sx={{ textDecoration: 'none' }}>
72
+ <Typography
73
+ category={fontCategory}
74
+ size={fontSize}
75
+ maxWidth={maxLinkWidth}
76
+ sx={{
77
+ ...textOverflowStyles
78
+ }}
79
+ >
80
+ {name}
81
+ </Typography>
82
+ </Link>
83
+ ) : (
84
+ <Typography
85
+ category={fontCategory}
86
+ size={fontSize}
87
+ maxWidth={maxLinkWidth}
88
+ sx={{
89
+ ...textOverflowStyles,
90
+ color: disabled ? 'grey' : 'black'
91
+ }}
92
+ >
93
+ {name}
94
+ </Typography>
95
+ )}
96
+ {subtitle && (
97
+ <Typography
98
+ category="secondary"
99
+ size="small-book"
100
+ sx={{
101
+ ...textOverflowStyles, color: 'black'
102
+ }}
103
+ >
104
+ {subtitle}
105
+ </Typography>
106
+ )}
107
+ </Box>
108
+ </Box>
109
+ )
110
+ );
111
+ }
@@ -1,63 +1,63 @@
1
- import React from 'react';
2
-
3
- import Footer from './Footer';
4
- import { FooterProps } from './sharedTypes';
5
-
6
- // Default
7
- export default {
8
- title: 'Organisms/Footer',
9
- };
10
-
11
- // Templates
12
- function FooterTemplate(args: FooterProps) {
13
- return <Footer {...args} />;
14
- }
15
-
16
- // Stories
17
- export const BottomFooter = FooterTemplate.bind({});
18
- BottomFooter.args = {
19
- exploreItems: [
20
- { href: '#', label: 'Countries' },
21
- { href: '#', label: 'States' },
22
- { href: '#', label: 'Cities' },
23
- ],
24
- eventItems: [
25
- { href: '#', label: 'Color Ball' },
26
- { href: '#', label: 'National Pathway' },
27
- { href: '#', label: 'Camps' },
28
- { href: '#', label: 'Team Leagues' },
29
- { href: '#', label: 'Flex Leagues' },
30
- { href: '#', label: 'Junior Circuits' },
31
- { href: '#', label: 'College Pathways' },
32
- { href: '#', label: 'College Circuits' },
33
- { href: '#', label: 'Pro Tennis Tour' },
34
- { href: '#', label: 'College Camps' },
35
- ],
36
- providerItems: [
37
- { href: '#', label: 'Clubs' },
38
- { href: '#', label: 'Academies' },
39
- { href: '#', label: 'High Schools' },
40
- { href: '#', label: 'Colleges' },
41
- { href: '#', label: 'Get in Touch' },
42
- ],
43
- moreItems: [
44
- { href: '#', label: 'Tennis' },
45
- { href: '#', label: 'Pickleball' },
46
- { href: '#', label: 'News' },
47
- { href: '#', label: 'Shop' },
48
- { href: '#', label: 'Press' },
49
- { href: '#', label: 'Careers' },
50
- { href: '#', label: 'About Us' },
51
- { href: '#', label: 'Foundation' },
52
- ],
53
- supportItems: [
54
- { href: '#', label: 'Help Center' },
55
- { href: '#', label: 'Privacy Policy' },
56
- { href: '#', label: 'Terms & Conditions' },
57
- { href: '#', label: 'Guidelines' },
58
- { href: '#', label: 'Verified Events' },
59
- { href: '#', label: 'About UTR Rating' },
60
- { href: '#', label: 'About UTR-P Rating' },
61
- { href: '#', label: 'About Color Ball Rating' },
62
- ],
63
- };
1
+ import React from 'react';
2
+
3
+ import Footer from './Footer';
4
+ import { FooterProps } from './sharedTypes';
5
+
6
+ // Default
7
+ export default {
8
+ title: 'Organisms/Footer',
9
+ };
10
+
11
+ // Templates
12
+ function FooterTemplate(args: FooterProps) {
13
+ return <Footer {...args} />;
14
+ }
15
+
16
+ // Stories
17
+ export const BottomFooter = FooterTemplate.bind({});
18
+ BottomFooter.args = {
19
+ exploreItems: [
20
+ { href: '#', label: 'Countries' },
21
+ { href: '#', label: 'States' },
22
+ { href: '#', label: 'Cities' },
23
+ ],
24
+ eventItems: [
25
+ { href: '#', label: 'Color Ball' },
26
+ { href: '#', label: 'National Pathway' },
27
+ { href: '#', label: 'Camps' },
28
+ { href: '#', label: 'Team Leagues' },
29
+ { href: '#', label: 'Flex Leagues' },
30
+ { href: '#', label: 'Junior Circuits' },
31
+ { href: '#', label: 'College Pathways' },
32
+ { href: '#', label: 'College Circuits' },
33
+ { href: '#', label: 'Pro Tennis Tour' },
34
+ { href: '#', label: 'College Camps' },
35
+ ],
36
+ providerItems: [
37
+ { href: '#', label: 'Clubs' },
38
+ { href: '#', label: 'Academies' },
39
+ { href: '#', label: 'High Schools' },
40
+ { href: '#', label: 'Colleges' },
41
+ { href: '#', label: 'Get in Touch' },
42
+ ],
43
+ moreItems: [
44
+ { href: '#', label: 'Tennis' },
45
+ { href: '#', label: 'Pickleball' },
46
+ { href: '#', label: 'News' },
47
+ { href: '#', label: 'Shop' },
48
+ { href: '#', label: 'Press' },
49
+ { href: '#', label: 'Careers' },
50
+ { href: '#', label: 'About Us' },
51
+ { href: '#', label: 'Foundation' },
52
+ ],
53
+ supportItems: [
54
+ { href: '#', label: 'Help Center' },
55
+ { href: '#', label: 'Privacy Policy' },
56
+ { href: '#', label: 'Terms & Conditions' },
57
+ { href: '#', label: 'Guidelines' },
58
+ { href: '#', label: 'Verified Events' },
59
+ { href: '#', label: 'About UTR Rating' },
60
+ { href: '#', label: 'About UTR-P Rating' },
61
+ { href: '#', label: 'About Color Ball Rating' },
62
+ ],
63
+ };
@@ -1,118 +1,118 @@
1
- import React from 'react';
2
-
3
- import Box from '@mui/material/Box';
4
- import Grid from '@mui/material/Grid';
5
- import IconButton from '@mui/material/IconButton';
6
- import useMediaQuery from '@mui/material/useMediaQuery';
7
-
8
- import { FooterProps } from './sharedTypes';
9
- import { SocialMediaIds } from '../../utils/constants';
10
- import FooterSection from '../../molecules/FooterSection/FooterSection';
11
- import SocialMediaInstagramIcon from '../../atoms/Icons/SocialMediaInstagramIcon';
12
- import SocialMediaTikTokIcon from '../../atoms/Icons/SocialMediaTikTokIcon';
13
- import SocialMediaXIcon from '../../atoms/Icons/SocialMediaXIcon';
14
- import SocialMediaYoutubeIcon from '../../atoms/Icons/SocialMediaYoutubeIcon';
15
- import SocialMediaFacebookIcon from '../../atoms/Icons/SocialMediaFacebookIcon';
16
- import Typography from '../../atoms/Typography/Typography';
17
- import utrLogo from '../../assets/utr-sports-logo.svg';
18
-
19
- function Footer({
20
- exploreItems,
21
- eventItems,
22
- providerItems,
23
- moreItems,
24
- supportItems,
25
- onSocialMediaClick,
26
- }: FooterProps) {
27
- const matches = useMediaQuery('(min-width:600px)');
28
- const {
29
- X, FACEBOOK, INSTAGRAM, TIKTOK, YOUTUBE
30
- } = SocialMediaIds;
31
-
32
- const handleOnSocialMediaClick = (id: number) => {
33
- onSocialMediaClick(id);
34
- };
35
-
36
- return (
37
- <Box sx={{ backgroundColor: 'var(--black)' }}>
38
- <Grid p={1.5} container justifyContent="space-evenly" display={matches ? 'row' : 'column'}>
39
- <Grid item xs={12} lg={2}>
40
- <Box mb={2} display="flex" alignItems="center" flexDirection="column">
41
- <img
42
- alt="UTR Sports logo"
43
- width="205"
44
- height="51"
45
- src={utrLogo}
46
- />
47
- <Box display="flex" mt={1}>
48
- <IconButton sx={{ p: 0.5 }} onClick={() => handleOnSocialMediaClick(X)}>
49
- <SocialMediaXIcon size={27} color="var(--white)" />
50
- </IconButton>
51
- <IconButton sx={{ p: 0.5 }} onClick={() => handleOnSocialMediaClick(FACEBOOK)}>
52
- <SocialMediaFacebookIcon size={27} color="var(--white)" />
53
- </IconButton>
54
- <IconButton sx={{ p: 0.5 }} onClick={() => handleOnSocialMediaClick(INSTAGRAM)}>
55
- <SocialMediaInstagramIcon size={27} color="var(--white)" />
56
- </IconButton>
57
- <IconButton sx={{ p: 0.5 }} onClick={() => handleOnSocialMediaClick(TIKTOK)}>
58
- <SocialMediaTikTokIcon size={27} color="var(--white)" />
59
- </IconButton>
60
- <IconButton sx={{ p: 0.5 }} onClick={() => handleOnSocialMediaClick(YOUTUBE)}>
61
- <SocialMediaYoutubeIcon size={27} color="var(--white)" />
62
- </IconButton>
63
- </Box>
64
- </Box>
65
- </Grid>
66
- {matches ? (
67
- <Grid container item lg={10} justifyContent="space-evenly">
68
- <Grid item>
69
- <FooterSection title="Explore" items={exploreItems} />
70
- </Grid>
71
- <Grid item>
72
- <FooterSection title="Events" items={eventItems} />
73
- </Grid>
74
- <Grid item>
75
- <FooterSection title="Providers" items={providerItems} />
76
- </Grid>
77
- <Grid item>
78
- <FooterSection title="More" items={moreItems} />
79
- </Grid>
80
- <Grid item>
81
- <FooterSection title="Support" items={supportItems} />
82
- </Grid>
83
- </Grid>
84
- ) : (
85
- <Grid container display="column" justifyContent="space-evenly">
86
- <Grid item>
87
- <Box mb={2}>
88
- <FooterSection title="Explore" items={exploreItems} />
89
- </Box>
90
- <Box mb={3.3}>
91
- <FooterSection title="Providers" items={providerItems} />
92
- </Box>
93
- <FooterSection title="Support" items={supportItems} />
94
- </Grid>
95
- <Grid item>
96
- <Box mb={2}>
97
- <FooterSection title="Events" items={eventItems} />
98
- </Box>
99
- <FooterSection title="More" items={moreItems} />
100
- </Grid>
101
- </Grid>
102
- )}
103
- </Grid>
104
- <Box display="absolute" sx={{ bottom: 24, borderTop: 1, borderColor: "var(--white)" }}>
105
- <Typography
106
- p={0.5}
107
- category="secondary"
108
- size="x-small-book-cap"
109
- color="var(--white)"
110
- align="center"
111
- >
112
- {`\u00A9 2024, UTR SPORTS`}
113
- </Typography>
114
- </Box>
115
- </Box>
116
- );
117
- }
118
- export default Footer;
1
+ import React from 'react';
2
+
3
+ import Box from '@mui/material/Box';
4
+ import Grid from '@mui/material/Grid';
5
+ import IconButton from '@mui/material/IconButton';
6
+ import useMediaQuery from '@mui/material/useMediaQuery';
7
+
8
+ import { FooterProps } from './sharedTypes';
9
+ import { SocialMediaIds } from '../../utils/constants';
10
+ import FooterSection from '../../molecules/FooterSection/FooterSection';
11
+ import SocialMediaInstagramIcon from '../../atoms/Icons/SocialMediaInstagramIcon';
12
+ import SocialMediaTikTokIcon from '../../atoms/Icons/SocialMediaTikTokIcon';
13
+ import SocialMediaXIcon from '../../atoms/Icons/SocialMediaXIcon';
14
+ import SocialMediaYoutubeIcon from '../../atoms/Icons/SocialMediaYoutubeIcon';
15
+ import SocialMediaFacebookIcon from '../../atoms/Icons/SocialMediaFacebookIcon';
16
+ import Typography from '../../atoms/Typography/Typography';
17
+ import utrLogo from '../../assets/utr-sports-logo.svg';
18
+
19
+ function Footer({
20
+ exploreItems,
21
+ eventItems,
22
+ providerItems,
23
+ moreItems,
24
+ supportItems,
25
+ onSocialMediaClick,
26
+ }: FooterProps) {
27
+ const matches = useMediaQuery('(min-width:600px)');
28
+ const {
29
+ X, FACEBOOK, INSTAGRAM, TIKTOK, YOUTUBE
30
+ } = SocialMediaIds;
31
+
32
+ const handleOnSocialMediaClick = (id: number) => {
33
+ onSocialMediaClick(id);
34
+ };
35
+
36
+ return (
37
+ <Box sx={{ backgroundColor: 'var(--black)' }}>
38
+ <Grid p={1.5} container justifyContent="space-evenly" display={matches ? 'row' : 'column'}>
39
+ <Grid item xs={12} lg={2}>
40
+ <Box mb={2} display="flex" alignItems="center" flexDirection="column">
41
+ <img
42
+ alt="UTR Sports logo"
43
+ width="205"
44
+ height="51"
45
+ src={utrLogo}
46
+ />
47
+ <Box display="flex" mt={1}>
48
+ <IconButton sx={{ p: 0.5 }} onClick={() => handleOnSocialMediaClick(X)}>
49
+ <SocialMediaXIcon size={27} color="var(--white)" />
50
+ </IconButton>
51
+ <IconButton sx={{ p: 0.5 }} onClick={() => handleOnSocialMediaClick(FACEBOOK)}>
52
+ <SocialMediaFacebookIcon size={27} color="var(--white)" />
53
+ </IconButton>
54
+ <IconButton sx={{ p: 0.5 }} onClick={() => handleOnSocialMediaClick(INSTAGRAM)}>
55
+ <SocialMediaInstagramIcon size={27} color="var(--white)" />
56
+ </IconButton>
57
+ <IconButton sx={{ p: 0.5 }} onClick={() => handleOnSocialMediaClick(TIKTOK)}>
58
+ <SocialMediaTikTokIcon size={27} color="var(--white)" />
59
+ </IconButton>
60
+ <IconButton sx={{ p: 0.5 }} onClick={() => handleOnSocialMediaClick(YOUTUBE)}>
61
+ <SocialMediaYoutubeIcon size={27} color="var(--white)" />
62
+ </IconButton>
63
+ </Box>
64
+ </Box>
65
+ </Grid>
66
+ {matches ? (
67
+ <Grid container item lg={10} justifyContent="space-evenly">
68
+ <Grid item>
69
+ <FooterSection title="Explore" items={exploreItems} />
70
+ </Grid>
71
+ <Grid item>
72
+ <FooterSection title="Events" items={eventItems} />
73
+ </Grid>
74
+ <Grid item>
75
+ <FooterSection title="Providers" items={providerItems} />
76
+ </Grid>
77
+ <Grid item>
78
+ <FooterSection title="More" items={moreItems} />
79
+ </Grid>
80
+ <Grid item>
81
+ <FooterSection title="Support" items={supportItems} />
82
+ </Grid>
83
+ </Grid>
84
+ ) : (
85
+ <Grid container display="column" justifyContent="space-evenly">
86
+ <Grid item>
87
+ <Box mb={2}>
88
+ <FooterSection title="Explore" items={exploreItems} />
89
+ </Box>
90
+ <Box mb={3.3}>
91
+ <FooterSection title="Providers" items={providerItems} />
92
+ </Box>
93
+ <FooterSection title="Support" items={supportItems} />
94
+ </Grid>
95
+ <Grid item>
96
+ <Box mb={2}>
97
+ <FooterSection title="Events" items={eventItems} />
98
+ </Box>
99
+ <FooterSection title="More" items={moreItems} />
100
+ </Grid>
101
+ </Grid>
102
+ )}
103
+ </Grid>
104
+ <Box display="absolute" sx={{ bottom: 24, borderTop: 1, borderColor: "var(--white)" }}>
105
+ <Typography
106
+ p={0.5}
107
+ category="secondary"
108
+ size="x-small-book-cap"
109
+ color="var(--white)"
110
+ align="center"
111
+ >
112
+ {`\u00A9 2024, UTR SPORTS`}
113
+ </Typography>
114
+ </Box>
115
+ </Box>
116
+ );
117
+ }
118
+ export default Footer;
@@ -1,14 +1,14 @@
1
- export interface LinkItem {
2
- href: string;
3
- label: string;
4
- }
5
- export type FooterProps = {
6
- sectionTitleColor: string;
7
- listItemColor: string;
8
- exploreItems: [LinkItem];
9
- eventItems:[LinkItem];
10
- providerItems:[LinkItem];
11
- moreItems:[LinkItem];
12
- supportItems:[LinkItem];
13
- onSocialMediaClick(id: number): VoidFunction;
14
- };
1
+ export interface LinkItem {
2
+ href: string;
3
+ label: string;
4
+ }
5
+ export type FooterProps = {
6
+ sectionTitleColor: string;
7
+ listItemColor: string;
8
+ exploreItems: [LinkItem];
9
+ eventItems:[LinkItem];
10
+ providerItems:[LinkItem];
11
+ moreItems:[LinkItem];
12
+ supportItems:[LinkItem];
13
+ onSocialMediaClick(id: number): VoidFunction;
14
+ };