@universal-tennis/ui-shared 0.1.68 → 0.1.70

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 (285) hide show
  1. package/.eslintignore +1 -1
  2. package/.eslintrc.js +73 -73
  3. package/.storybook/preview.js +12 -12
  4. package/.storybook/variables.css +15 -15
  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 +32 -4
  9. package/dist/components.js +37 -8
  10. package/dist/components.js.map +1 -1
  11. package/dist/index.d.ts +1 -1
  12. package/dist/index.js +12 -12
  13. package/dist/items.d.ts +2 -2
  14. package/dist/items.js +1 -1
  15. package/dist/stories/assets/css/variables.css +6 -3
  16. package/dist/stories/assets/icon-chat-blue.svg +10 -10
  17. package/dist/stories/atoms/Button/Button.d.ts +10 -9
  18. package/dist/stories/atoms/Button/Button.js +95 -79
  19. package/dist/stories/atoms/Button/Button.js.map +1 -1
  20. package/dist/stories/atoms/Button/Button.stories.d.ts +17 -16
  21. package/dist/stories/atoms/Button/Button.stories.js +45 -36
  22. package/dist/stories/atoms/Button/Button.stories.js.map +1 -1
  23. package/dist/stories/atoms/Icons/AddIcon.d.ts +3 -0
  24. package/dist/stories/atoms/Icons/AddIcon.js +9 -0
  25. package/dist/stories/atoms/Icons/AddIcon.js.map +1 -0
  26. package/dist/stories/atoms/Icons/AvailabilityMaybeIcon.d.ts +3 -0
  27. package/dist/stories/atoms/Icons/AvailabilityMaybeIcon.js +7 -0
  28. package/dist/stories/atoms/Icons/AvailabilityMaybeIcon.js.map +1 -0
  29. package/dist/stories/atoms/Icons/AvailabilityNoIcon.d.ts +3 -0
  30. package/dist/stories/atoms/Icons/AvailabilityNoIcon.js +7 -0
  31. package/dist/stories/atoms/Icons/AvailabilityNoIcon.js.map +1 -0
  32. package/dist/stories/atoms/Icons/AvailabilityNotSetIcon.d.ts +3 -0
  33. package/dist/stories/atoms/Icons/AvailabilityNotSetIcon.js +8 -0
  34. package/dist/stories/atoms/Icons/AvailabilityNotSetIcon.js.map +1 -0
  35. package/dist/stories/atoms/Icons/AvailabilityYesIcon.d.ts +3 -0
  36. package/dist/stories/atoms/Icons/AvailabilityYesIcon.js +7 -0
  37. package/dist/stories/atoms/Icons/AvailabilityYesIcon.js.map +1 -0
  38. package/dist/stories/atoms/Icons/CalendarIcon.d.ts +3 -0
  39. package/dist/stories/atoms/Icons/CalendarIcon.js +7 -0
  40. package/dist/stories/atoms/Icons/CalendarIcon.js.map +1 -0
  41. package/dist/stories/atoms/Icons/ClockIcon.d.ts +3 -0
  42. package/dist/stories/atoms/Icons/ClockIcon.js +9 -0
  43. package/dist/stories/atoms/Icons/ClockIcon.js.map +1 -0
  44. package/dist/stories/atoms/Icons/CloseIcon.d.ts +3 -0
  45. package/dist/stories/atoms/Icons/CloseIcon.js +7 -0
  46. package/dist/stories/atoms/Icons/CloseIcon.js.map +1 -0
  47. package/dist/stories/atoms/Icons/DeleteIcon.d.ts +3 -0
  48. package/dist/stories/atoms/Icons/DeleteIcon.js +11 -0
  49. package/dist/stories/atoms/Icons/DeleteIcon.js.map +1 -0
  50. package/dist/stories/atoms/Icons/EditIcon.d.ts +3 -0
  51. package/dist/stories/atoms/Icons/EditIcon.js +7 -0
  52. package/dist/stories/atoms/Icons/EditIcon.js.map +1 -0
  53. package/dist/stories/atoms/Icons/Icons.stories.d.ts +23 -0
  54. package/dist/stories/atoms/Icons/Icons.stories.js +178 -0
  55. package/dist/stories/atoms/Icons/Icons.stories.js.map +1 -0
  56. package/dist/stories/atoms/Icons/LeftChevronIcon.d.ts +3 -0
  57. package/dist/stories/atoms/Icons/LeftChevronIcon.js +7 -0
  58. package/dist/stories/atoms/Icons/LeftChevronIcon.js.map +1 -0
  59. package/dist/stories/atoms/Icons/LocationIcon.d.ts +3 -0
  60. package/dist/stories/atoms/Icons/LocationIcon.js +8 -0
  61. package/dist/stories/atoms/Icons/LocationIcon.js.map +1 -0
  62. package/dist/stories/atoms/Icons/MessageIcon.d.ts +3 -0
  63. package/dist/stories/atoms/Icons/MessageIcon.js +7 -0
  64. package/dist/stories/atoms/Icons/MessageIcon.js.map +1 -0
  65. package/dist/stories/atoms/Icons/RightChevronIcon.d.ts +3 -0
  66. package/dist/stories/atoms/Icons/RightChevronIcon.js +7 -0
  67. package/dist/stories/atoms/Icons/RightChevronIcon.js.map +1 -0
  68. package/dist/stories/atoms/Icons/SessionIcon.d.ts +3 -0
  69. package/dist/stories/atoms/Icons/SessionIcon.js +7 -0
  70. package/dist/stories/atoms/Icons/SessionIcon.js.map +1 -0
  71. package/dist/stories/atoms/Icons/SwapIcon.d.ts +3 -0
  72. package/dist/stories/atoms/Icons/SwapIcon.js +7 -0
  73. package/dist/stories/atoms/Icons/SwapIcon.js.map +1 -0
  74. package/dist/stories/atoms/Icons/VisibilityIcon.d.ts +3 -0
  75. package/dist/stories/atoms/Icons/VisibilityIcon.js +8 -0
  76. package/dist/stories/atoms/Icons/VisibilityIcon.js.map +1 -0
  77. package/dist/stories/atoms/Icons/VisibilityOffIcon.d.ts +3 -0
  78. package/dist/stories/atoms/Icons/VisibilityOffIcon.js +9 -0
  79. package/dist/stories/atoms/Icons/VisibilityOffIcon.js.map +1 -0
  80. package/dist/stories/atoms/Icons/WinnerIndicatorIcon.d.ts +3 -0
  81. package/dist/stories/atoms/Icons/WinnerIndicatorIcon.js +32 -0
  82. package/dist/stories/atoms/Icons/WinnerIndicatorIcon.js.map +1 -0
  83. package/dist/stories/atoms/Icons/sharedTypes.d.ts +9 -0
  84. package/dist/stories/atoms/Icons/sharedTypes.js +2 -0
  85. package/dist/stories/atoms/Icons/sharedTypes.js.map +1 -0
  86. package/dist/stories/atoms/Map/Map.d.ts +7 -0
  87. package/dist/stories/atoms/Map/Map.js +9 -0
  88. package/dist/stories/atoms/Map/Map.js.map +1 -0
  89. package/dist/stories/atoms/Map/Map.stories.d.ts +9 -0
  90. package/dist/stories/atoms/Map/Map.stories.js +36 -0
  91. package/dist/stories/atoms/Map/Map.stories.js.map +1 -0
  92. package/dist/stories/atoms/Typography/Typography.d.ts +49 -10
  93. package/dist/stories/atoms/Typography/Typography.js +143 -99
  94. package/dist/stories/atoms/Typography/Typography.js.map +1 -1
  95. package/dist/stories/atoms/Typography/Typography.stories.d.ts +37 -37
  96. package/dist/stories/atoms/Typography/Typography.stories.js +190 -190
  97. package/dist/stories/molecules/AvatarWithName/AvatarWithName.d.ts +27 -0
  98. package/dist/stories/molecules/AvatarWithName/AvatarWithName.js +21 -0
  99. package/dist/stories/molecules/AvatarWithName/AvatarWithName.js.map +1 -0
  100. package/dist/stories/molecules/AvatarWithName/AvatarWithName.stories.d.ts +15 -0
  101. package/dist/stories/molecules/AvatarWithName/AvatarWithName.stories.js +73 -0
  102. package/dist/stories/molecules/AvatarWithName/AvatarWithName.stories.js.map +1 -0
  103. package/dist/stories/molecules/Cards/Cards.stories.d.ts +7 -6
  104. package/dist/stories/molecules/Cards/Cards.stories.js +64 -26
  105. package/dist/stories/molecules/Cards/Cards.stories.js.map +1 -1
  106. package/dist/stories/molecules/Cards/ContactCard.d.ts +3 -9
  107. package/dist/stories/molecules/Cards/ContactCard.js +38 -38
  108. package/dist/stories/molecules/Cards/ContactCard.js.map +1 -1
  109. package/dist/stories/molecules/Cards/DrawCard.d.ts +3 -0
  110. package/dist/stories/molecules/Cards/DrawCard.js +117 -0
  111. package/dist/stories/molecules/Cards/DrawCard.js.map +1 -0
  112. package/dist/stories/molecules/Cards/Modals.stories.d.ts +5 -0
  113. package/dist/stories/molecules/Cards/Modals.stories.js +73 -0
  114. package/dist/stories/molecules/Cards/Modals.stories.js.map +1 -0
  115. package/dist/stories/molecules/Cards/TeamCard.d.ts +3 -7
  116. package/dist/stories/molecules/Cards/TeamCard.js +20 -20
  117. package/dist/stories/molecules/Cards/TeamCard.js.map +1 -1
  118. package/dist/stories/molecules/Cards/TeamDrawCard.d.ts +3 -0
  119. package/dist/stories/molecules/Cards/TeamDrawCard.js +77 -0
  120. package/dist/stories/molecules/Cards/TeamDrawCard.js.map +1 -0
  121. package/dist/stories/molecules/Cards/shared.d.ts +4 -9
  122. package/dist/stories/molecules/Cards/shared.js +12 -12
  123. package/dist/stories/molecules/Cards/sharedTypes.d.ts +59 -0
  124. package/dist/stories/molecules/Cards/sharedTypes.js +3 -0
  125. package/dist/stories/molecules/Cards/sharedTypes.js.map +1 -0
  126. package/dist/stories/molecules/SquareAvatarWithName/SquareAvatarWithName.d.ts +27 -0
  127. package/dist/stories/molecules/SquareAvatarWithName/SquareAvatarWithName.js +25 -0
  128. package/dist/stories/molecules/SquareAvatarWithName/SquareAvatarWithName.js.map +1 -0
  129. package/dist/stories/molecules/SquareAvatarWithName/SquareAvatarWithName.stories.d.ts +13 -0
  130. package/dist/stories/molecules/SquareAvatarWithName/SquareAvatarWithName.stories.js +66 -0
  131. package/dist/stories/molecules/SquareAvatarWithName/SquareAvatarWithName.stories.js.map +1 -0
  132. package/dist/stories/organisms/Modals/FullPageModal.d.ts +4 -0
  133. package/dist/stories/organisms/Modals/FullPageModal.js +60 -0
  134. package/dist/stories/organisms/Modals/FullPageModal.js.map +1 -0
  135. package/dist/stories/organisms/Modals/Modals.stories.d.ts +5 -0
  136. package/dist/stories/organisms/Modals/Modals.stories.js +74 -0
  137. package/dist/stories/organisms/Modals/Modals.stories.js.map +1 -0
  138. package/dist/stories/organisms/Modals/sharedTypes.d.ts +14 -0
  139. package/dist/stories/organisms/Modals/sharedTypes.js +2 -0
  140. package/dist/stories/organisms/Modals/sharedTypes.js.map +1 -0
  141. package/dist/stories/organisms/Tables/DrawCardTable.d.ts +3 -0
  142. package/dist/stories/organisms/Tables/DrawCardTable.js +59 -0
  143. package/dist/stories/organisms/Tables/DrawCardTable.js.map +1 -0
  144. package/dist/stories/organisms/Tables/SortableTable.d.ts +23 -0
  145. package/dist/stories/organisms/Tables/SortableTable.js +34 -0
  146. package/dist/stories/organisms/Tables/SortableTable.js.map +1 -0
  147. package/dist/stories/organisms/Tables/Tables.stories.d.ts +8 -0
  148. package/dist/stories/organisms/Tables/Tables.stories.js +91 -0
  149. package/dist/stories/organisms/Tables/Tables.stories.js.map +1 -0
  150. package/dist/stories/organisms/Tables/TeamDrawCardTable/DesktopTableRows.d.ts +3 -0
  151. package/dist/stories/organisms/Tables/TeamDrawCardTable/DesktopTableRows.js +62 -0
  152. package/dist/stories/organisms/Tables/TeamDrawCardTable/DesktopTableRows.js.map +1 -0
  153. package/dist/stories/organisms/Tables/TeamDrawCardTable/MobileTableRows.d.ts +3 -0
  154. package/dist/stories/organisms/Tables/TeamDrawCardTable/MobileTableRows.js +43 -0
  155. package/dist/stories/organisms/Tables/TeamDrawCardTable/MobileTableRows.js.map +1 -0
  156. package/dist/stories/organisms/Tables/TeamDrawCardTable/TeamDrawCardTable.d.ts +3 -0
  157. package/dist/stories/organisms/Tables/TeamDrawCardTable/TeamDrawCardTable.js +23 -0
  158. package/dist/stories/organisms/Tables/TeamDrawCardTable/TeamDrawCardTable.js.map +1 -0
  159. package/dist/stories/organisms/Tables/TeamDrawCardTable.d.ts +3 -0
  160. package/dist/stories/organisms/Tables/TeamDrawCardTable.js +126 -0
  161. package/dist/stories/organisms/Tables/TeamDrawCardTable.js.map +1 -0
  162. package/dist/stories/organisms/Tables/mockData.d.ts +69 -0
  163. package/dist/stories/organisms/Tables/mockData.js +98 -0
  164. package/dist/stories/organisms/Tables/mockData.js.map +1 -0
  165. package/dist/stories/organisms/Tables/sharedTypes.d.ts +15 -0
  166. package/dist/stories/organisms/Tables/sharedTypes.js +2 -0
  167. package/dist/stories/organisms/Tables/sharedTypes.js.map +1 -0
  168. package/dist/stories/utils/constants.d.ts +3 -0
  169. package/dist/stories/utils/constants.js +4 -0
  170. package/dist/stories/utils/constants.js.map +1 -0
  171. package/dist/stories/utils/useScreenSize.d.ts +4 -0
  172. package/dist/stories/utils/useScreenSize.js +28 -0
  173. package/dist/stories/utils/useScreenSize.js.map +1 -0
  174. package/dist/types/tableDataTypes.d.ts +38 -0
  175. package/dist/types/tableDataTypes.js +2 -0
  176. package/dist/types/tableDataTypes.js.map +1 -0
  177. package/infrastructure/azure-pipelines.yml +112 -112
  178. package/package.json +93 -94
  179. package/src/App.js +25 -25
  180. package/src/components.jsx +41 -41
  181. package/src/custom.d.ts +13 -13
  182. package/src/index.js +17 -17
  183. package/src/items.jsx +1 -1
  184. package/src/stories/assets/css/variables.css +14 -14
  185. package/src/stories/assets/icon-chat-blue.svg +10 -10
  186. package/src/stories/assets/icons/icon-add.svg +7 -7
  187. package/src/stories/assets/icons/icon-availability-maybe.svg +3 -3
  188. package/src/stories/assets/icons/icon-availability-no.svg +3 -3
  189. package/src/stories/assets/icons/icon-availability-not-set.svg +8 -8
  190. package/src/stories/assets/icons/icon-availability-yes.svg +3 -3
  191. package/src/stories/assets/icons/icon-calendar.svg +4 -4
  192. package/src/stories/assets/icons/icon-clock.svg +7 -7
  193. package/src/stories/assets/icons/icon-close.svg +3 -3
  194. package/src/stories/assets/icons/icon-delete.svg +9 -9
  195. package/src/stories/assets/icons/icon-edit.svg +3 -3
  196. package/src/stories/assets/icons/icon-location.svg +6 -6
  197. package/src/stories/assets/icons/icon-message.svg +3 -3
  198. package/src/stories/assets/icons/icon-session.svg +3 -3
  199. package/src/stories/assets/icons/icon-swap.svg +3 -3
  200. package/src/stories/assets/icons/icon-visibility-off.svg +7 -7
  201. package/src/stories/assets/icons/icon-visibility.svg +6 -6
  202. package/src/stories/atoms/Button/Button.stories.tsx +63 -63
  203. package/src/stories/atoms/Button/Button.tsx +145 -145
  204. package/src/stories/atoms/Icons/AddIcon.tsx +13 -13
  205. package/src/stories/atoms/Icons/AvailabilityMaybeIcon.tsx +11 -11
  206. package/src/stories/atoms/Icons/AvailabilityNoIcon.tsx +11 -11
  207. package/src/stories/atoms/Icons/AvailabilityNotSetIcon.tsx +12 -12
  208. package/src/stories/atoms/Icons/AvailabilityYesIcon.tsx +11 -11
  209. package/src/stories/atoms/Icons/CalendarIcon.tsx +11 -11
  210. package/src/stories/atoms/Icons/ClockIcon.tsx +14 -14
  211. package/src/stories/atoms/Icons/CloseIcon.tsx +11 -11
  212. package/src/stories/atoms/Icons/DeleteIcon.tsx +15 -15
  213. package/src/stories/atoms/Icons/EditIcon.tsx +11 -11
  214. package/src/stories/atoms/Icons/Icons.stories.tsx +218 -218
  215. package/src/stories/atoms/Icons/LeftChevronIcon.tsx +13 -13
  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/SwapIcon.tsx +11 -11
  221. package/src/stories/atoms/Icons/VisibilityIcon.tsx +12 -12
  222. package/src/stories/atoms/Icons/VisibilityOffIcon.tsx +13 -13
  223. package/src/stories/atoms/Icons/WinnerIndicatorIcon.tsx +39 -39
  224. package/src/stories/atoms/Icons/sharedTypes.tsx +10 -10
  225. package/src/stories/atoms/Map/Map.stories.tsx +43 -43
  226. package/src/stories/atoms/Map/Map.tsx +25 -25
  227. package/src/stories/atoms/Typography/Typography.tsx +185 -185
  228. package/src/stories/molecules/AvatarWithName/AvatarWithName.stories.tsx +86 -86
  229. package/src/stories/molecules/AvatarWithName/AvatarWithName.tsx +68 -68
  230. package/src/stories/molecules/Cards/Cards.stories.tsx +76 -76
  231. package/src/stories/molecules/Cards/ContactCard.tsx +45 -45
  232. package/src/stories/molecules/Cards/DrawCard.tsx +211 -211
  233. package/src/stories/molecules/Cards/Modals.stories.tsx +137 -137
  234. package/src/stories/molecules/Cards/TeamCard.tsx +14 -14
  235. package/src/stories/molecules/Cards/TeamDrawCard.tsx +146 -135
  236. package/src/stories/molecules/Cards/sharedTypes.ts +67 -67
  237. package/src/stories/molecules/SquareAvatarWithName/SquareAvatarWithName.stories.tsx +77 -77
  238. package/src/stories/molecules/SquareAvatarWithName/SquareAvatarWithName.tsx +84 -84
  239. package/src/stories/organisms/Modals/FullPageModal.tsx +93 -93
  240. package/src/stories/organisms/Modals/Modals.stories.tsx +138 -138
  241. package/src/stories/organisms/Modals/sharedTypes.ts +15 -15
  242. package/src/stories/organisms/Tables/DrawCardTable.tsx +92 -92
  243. package/src/stories/organisms/Tables/SortableTable.tsx +112 -112
  244. package/src/stories/organisms/Tables/Tables.stories.tsx +104 -104
  245. package/src/stories/organisms/Tables/TeamDrawCardTable/DesktopTableRows.tsx +111 -102
  246. package/src/stories/organisms/Tables/TeamDrawCardTable/MobileTableRows.tsx +67 -67
  247. package/src/stories/organisms/Tables/TeamDrawCardTable/TeamDrawCardTable.tsx +24 -24
  248. package/src/stories/organisms/Tables/mockData.tsx +129 -129
  249. package/src/stories/organisms/Tables/sharedTypes.ts +17 -17
  250. package/src/stories/utils/constants.ts +3 -3
  251. package/src/stories/utils/useScreenSize.ts +28 -28
  252. package/src/types/tableDataTypes.ts +42 -42
  253. package/tsconfig.json +23 -23
  254. package/dist/stories/Button.d.ts +0 -27
  255. package/dist/stories/Button.js +0 -51
  256. package/dist/stories/Button.js.map +0 -1
  257. package/dist/stories/Button.stories.d.ts +0 -15
  258. package/dist/stories/Button.stories.js +0 -34
  259. package/dist/stories/Button.stories.js.map +0 -1
  260. package/dist/stories/Header.d.ts +0 -19
  261. package/dist/stories/Header.js +0 -31
  262. package/dist/stories/Header.js.map +0 -1
  263. package/dist/stories/Header.stories.d.ts +0 -11
  264. package/dist/stories/Header.stories.js +0 -20
  265. package/dist/stories/Header.stories.js.map +0 -1
  266. package/dist/stories/Page.d.ts +0 -1
  267. package/dist/stories/Page.js +0 -38
  268. package/dist/stories/Page.js.map +0 -1
  269. package/dist/stories/Page.stories.d.ts +0 -11
  270. package/dist/stories/Page.stories.js +0 -30
  271. package/dist/stories/Page.stories.js.map +0 -1
  272. package/dist/stories/assets/comments.svg +0 -1
  273. package/dist/stories/assets/direction.svg +0 -1
  274. package/dist/stories/atoms/Button/index.d.ts +0 -1
  275. package/dist/stories/atoms/Button/index.js +0 -2
  276. package/dist/stories/atoms/Button/index.js.map +0 -1
  277. package/dist/stories/atoms/Button.d.ts +0 -7
  278. package/dist/stories/atoms/Button.js +0 -20
  279. package/dist/stories/atoms/Button.js.map +0 -1
  280. package/dist/stories/atoms/Button.stories.d.ts +0 -13
  281. package/dist/stories/atoms/Button.stories.js +0 -22
  282. package/dist/stories/atoms/Button.stories.js.map +0 -1
  283. package/dist/stories/atoms/Typography/index.d.ts +0 -1
  284. package/dist/stories/atoms/Typography/index.js +0 -2
  285. package/dist/stories/atoms/Typography/index.js.map +0 -1
@@ -1,67 +1,67 @@
1
- import React from "react";
2
- import Box from "@mui/material/Box";
3
- import Button from "@mui/material/Button";
4
- import { styled } from "@mui/material/styles";
5
- import Grid from "@mui/material/Grid";
6
-
7
- import { TableRowProps } from '../sharedTypes';
8
- import RightChevronIcon from '../../../atoms/Icons/RightChevronIcon';
9
- import LeftChevronIcon from '../../../atoms/Icons/LeftChevronIcon';
10
- import Typography from "../../../atoms/Typography/Typography";
11
-
12
- const StyledHeader = styled(Grid)({
13
- alignItems: "center",
14
- justifyContent: "center",
15
- display: "flex"
16
- });
17
-
18
- const GridSections = styled(Box)({
19
- display: "flex",
20
- alignItems: "center",
21
- position: 'relative',
22
- });
23
-
24
- export default function MobileTableRows({
25
- totalColumns, headerRows, tableRows
26
- }: TableRowProps) {
27
- const [activeStep, setActiveStep] = React.useState(0);
28
-
29
- const handleNext = () => {
30
- setActiveStep((prevActiveStep) => prevActiveStep + 1);
31
- };
32
-
33
- const handleBack = () => {
34
- setActiveStep((prevActiveStep) => prevActiveStep - 1);
35
- };
36
-
37
- const disabledBackButton = activeStep === 0;
38
- const disabledForwardButton = activeStep === tableRows.length - 1;
39
-
40
- return (
41
- <Box>
42
- <Grid container justifyContent="space-between" mb={1}>
43
- <Button color="inherit" disabled={disabledBackButton} onClick={handleBack} sx={{ mr: 1, alignSelf: "flex-start" }}>
44
- <LeftChevronIcon size={16} color={disabledBackButton ? "transparent" : "var(--primary)"} />
45
- </Button>
46
- <StyledHeader xs={totalColumns}>
47
- <Typography category="secondary" size="small-medium-cap">
48
- {headerRows[activeStep].name}
49
- </Typography>
50
- </StyledHeader>
51
- <Button onClick={handleNext} disabled={disabledForwardButton}>
52
- <RightChevronIcon size={16} color={disabledForwardButton ? "transparent" : "var(--primary)"} />
53
- </Button>
54
- </Grid>
55
- <Grid flexDirection="column" container>
56
- <GridSections
57
- sx={{
58
- flexDirection: "column",
59
- gap: "10px",
60
- }}
61
- >
62
- {tableRows[activeStep]}
63
- </GridSections>
64
- </Grid>
65
- </Box>
66
- );
67
- }
1
+ import React from "react";
2
+ import Box from "@mui/material/Box";
3
+ import Button from "@mui/material/Button";
4
+ import { styled } from "@mui/material/styles";
5
+ import Grid from "@mui/material/Grid";
6
+
7
+ import { TableRowProps } from '../sharedTypes';
8
+ import RightChevronIcon from '../../../atoms/Icons/RightChevronIcon';
9
+ import LeftChevronIcon from '../../../atoms/Icons/LeftChevronIcon';
10
+ import Typography from "../../../atoms/Typography/Typography";
11
+
12
+ const StyledHeader = styled(Grid)({
13
+ alignItems: "center",
14
+ justifyContent: "center",
15
+ display: "flex"
16
+ });
17
+
18
+ const GridSections = styled(Box)({
19
+ display: "flex",
20
+ alignItems: "center",
21
+ position: 'relative',
22
+ });
23
+
24
+ export default function MobileTableRows({
25
+ totalColumns, headerRows, tableRows
26
+ }: TableRowProps) {
27
+ const [activeStep, setActiveStep] = React.useState(0);
28
+
29
+ const handleNext = () => {
30
+ setActiveStep((prevActiveStep) => prevActiveStep + 1);
31
+ };
32
+
33
+ const handleBack = () => {
34
+ setActiveStep((prevActiveStep) => prevActiveStep - 1);
35
+ };
36
+
37
+ const disabledBackButton = activeStep === 0;
38
+ const disabledForwardButton = activeStep === tableRows.length - 1;
39
+
40
+ return (
41
+ <Box>
42
+ <Grid container justifyContent="space-between" mb={1}>
43
+ <Button color="inherit" disabled={disabledBackButton} onClick={handleBack} sx={{ mr: 1, alignSelf: "flex-start" }}>
44
+ <LeftChevronIcon size={16} color={disabledBackButton ? "transparent" : "var(--primary)"} />
45
+ </Button>
46
+ <StyledHeader xs={totalColumns}>
47
+ <Typography category="secondary" size="small-medium-cap">
48
+ {headerRows[activeStep].name}
49
+ </Typography>
50
+ </StyledHeader>
51
+ <Button onClick={handleNext} disabled={disabledForwardButton}>
52
+ <RightChevronIcon size={16} color={disabledForwardButton ? "transparent" : "var(--primary)"} />
53
+ </Button>
54
+ </Grid>
55
+ <Grid flexDirection="column" container>
56
+ <GridSections
57
+ sx={{
58
+ flexDirection: "column",
59
+ gap: "10px",
60
+ }}
61
+ >
62
+ {tableRows[activeStep]}
63
+ </GridSections>
64
+ </Grid>
65
+ </Box>
66
+ );
67
+ }
@@ -1,24 +1,24 @@
1
- import React from "react";
2
- import Box from "@mui/material/Box";
3
-
4
- import DesktopTableRows from './DesktopTableRows';
5
- import MobileTableRow from './MobileTableRows';
6
- import { DrawCardTableProps } from "../sharedTypes";
7
-
8
- export default function TeamDrawCardTable({
9
- headerRows, tableRows, isMobile, ...props
10
- }: DrawCardTableProps) {
11
- if (!headerRows || !tableRows) return null;
12
-
13
- const totalColumns = Math.floor(12 / headerRows.length);
14
-
15
- return (
16
- <Box {...props} sx={{ flexGrow: 1 }} aria-label="draw table">
17
- {isMobile ? (
18
- <MobileTableRow totalColumns={totalColumns} tableRows={tableRows} headerRows={headerRows} />
19
- ) : (
20
- <DesktopTableRows totalColumns={totalColumns} tableRows={tableRows} headerRows={headerRows} />
21
- )}
22
- </Box>
23
- );
24
- }
1
+ import React from "react";
2
+ import Box from "@mui/material/Box";
3
+
4
+ import DesktopTableRows from './DesktopTableRows';
5
+ import MobileTableRows from './MobileTableRows';
6
+ import { DrawCardTableProps } from "../sharedTypes";
7
+
8
+ export default function TeamDrawCardTable({
9
+ headerRows, tableRows, isMobile, ...props
10
+ }: DrawCardTableProps) {
11
+ if (!headerRows || !tableRows) return null;
12
+
13
+ const totalColumns = Math.floor(12 / headerRows.length);
14
+
15
+ return (
16
+ <Box {...props} sx={{ flexGrow: 1 }} aria-label="draw table">
17
+ {isMobile ? (
18
+ <MobileTableRows totalColumns={totalColumns} tableRows={tableRows} headerRows={headerRows} />
19
+ ) : (
20
+ <DesktopTableRows totalColumns={totalColumns} tableRows={tableRows} headerRows={headerRows} />
21
+ )}
22
+ </Box>
23
+ );
24
+ }
@@ -1,129 +1,129 @@
1
- import React from 'react';
2
- import { TableRow, TableCell, Typography } from '@mui/material';
3
-
4
- interface RowData {
5
- player: string;
6
- team: string;
7
- session: string;
8
- }
9
-
10
- interface RowProps {
11
- rowData: RowData,
12
- labelId: string;
13
- }
14
-
15
- type OnChangeArgs = {
16
- position: number;
17
- id: string | null | undefined;
18
- }
19
-
20
- export const mockRowComponent = ({ rowData, labelId }: RowProps) => {
21
- const { player, session, team } = rowData;
22
- return (
23
- <TableRow>
24
- <TableCell
25
- component="th"
26
- id={labelId}
27
- scope="row"
28
- padding="normal"
29
- >
30
- <Typography>{player}</Typography>
31
- </TableCell>
32
- <TableCell align="left">
33
- <Typography>{team}</Typography>
34
- </TableCell>
35
- <TableCell align="left">
36
- <Typography>{session}</Typography>
37
- </TableCell>
38
- </TableRow>
39
-
40
- );
41
- };
42
-
43
- export const MOCK_HEAD_CELLS = [
44
- { id: 'player', label: 'Player Name', isSortingDisabled: false },
45
- { id: 'team', label: 'Team Name', isSortingDisabled: true },
46
- { id: 'session', label: 'Session', isSortingDisabled: false }];
47
-
48
- export const MOCK_TABLE_DATA = [
49
- {
50
- id: 1,
51
- player: 'John Smith',
52
- team: 'Mavericks',
53
- session: 'NorCal Adults',
54
- },
55
- {
56
- id: 2,
57
- player: 'Megan Brown',
58
- team: 'Mini Mavericks',
59
- session: 'SoCal Juniors',
60
- },
61
- {
62
- id: 3,
63
- player: 'George Fox',
64
- team: 'Grey Foxes',
65
- session: 'North Bay Junios',
66
- },
67
- {
68
- id: 4,
69
- player: 'Alison Green',
70
- team: 'Lions',
71
- session: 'Outer Bay UTR 2-5',
72
- },
73
- {
74
- id: 5,
75
- player: 'Linda Belinda',
76
- team: 'Green Hornets',
77
- session: 'Tri-State UTR 1-3',
78
- },
79
- ];
80
-
81
- export const SAMPLE_CARD_DATA = {
82
- options: [
83
- {
84
- id: 1,
85
- label: 'Team 1',
86
- },
87
- {
88
- id: 2,
89
- label: 'Team 2',
90
- }
91
- ],
92
- selectedOptions: {
93
- optionOne: 1,
94
- optionTwo: 2,
95
- },
96
- onChange: ({ position, id }: OnChangeArgs) => {},
97
- dateLabel: 'Dec 20 at 9:00am',
98
- locationLabel: `T`,
99
- isPosition1Winner: true,
100
- isPosition2Winner: false,
101
- position1Team: {
102
- name: 'Apples',
103
- points: 10,
104
- },
105
- position2Team: {
106
- name: 'Pears',
107
- points: 4,
108
- }
109
- };
110
-
111
- export const SAMPLE_TEAM_PAGE_CARD_DATA = {
112
- dateLabel: 'Dec 20',
113
- timeLabel: '9:00pm',
114
- locationLabel: 'Taube Tennis Center',
115
- isPosition1Winner: true,
116
- isPosition2Winner: false,
117
- position1Team: {
118
- name: 'Apples',
119
- points: 10,
120
- href: 'https://www.reddit.com',
121
- seed: 1
122
- },
123
- position2Team: {
124
- name: 'Pears',
125
- points: 4,
126
- href: 'https://www.reddit.com',
127
- seed: 2
128
- }
129
- };
1
+ import React from 'react';
2
+ import { TableRow, TableCell, Typography } from '@mui/material';
3
+
4
+ interface RowData {
5
+ player: string;
6
+ team: string;
7
+ session: string;
8
+ }
9
+
10
+ interface RowProps {
11
+ rowData: RowData,
12
+ labelId: string;
13
+ }
14
+
15
+ type OnChangeArgs = {
16
+ position: number;
17
+ id: string | null | undefined;
18
+ }
19
+
20
+ export const mockRowComponent = ({ rowData, labelId }: RowProps) => {
21
+ const { player, session, team } = rowData;
22
+ return (
23
+ <TableRow>
24
+ <TableCell
25
+ component="th"
26
+ id={labelId}
27
+ scope="row"
28
+ padding="normal"
29
+ >
30
+ <Typography>{player}</Typography>
31
+ </TableCell>
32
+ <TableCell align="left">
33
+ <Typography>{team}</Typography>
34
+ </TableCell>
35
+ <TableCell align="left">
36
+ <Typography>{session}</Typography>
37
+ </TableCell>
38
+ </TableRow>
39
+
40
+ );
41
+ };
42
+
43
+ export const MOCK_HEAD_CELLS = [
44
+ { id: 'player', label: 'Player Name', isSortingDisabled: false },
45
+ { id: 'team', label: 'Team Name', isSortingDisabled: true },
46
+ { id: 'session', label: 'Session', isSortingDisabled: false }];
47
+
48
+ export const MOCK_TABLE_DATA = [
49
+ {
50
+ id: 1,
51
+ player: 'John Smith',
52
+ team: 'Mavericks',
53
+ session: 'NorCal Adults',
54
+ },
55
+ {
56
+ id: 2,
57
+ player: 'Megan Brown',
58
+ team: 'Mini Mavericks',
59
+ session: 'SoCal Juniors',
60
+ },
61
+ {
62
+ id: 3,
63
+ player: 'George Fox',
64
+ team: 'Grey Foxes',
65
+ session: 'North Bay Junios',
66
+ },
67
+ {
68
+ id: 4,
69
+ player: 'Alison Green',
70
+ team: 'Lions',
71
+ session: 'Outer Bay UTR 2-5',
72
+ },
73
+ {
74
+ id: 5,
75
+ player: 'Linda Belinda',
76
+ team: 'Green Hornets',
77
+ session: 'Tri-State UTR 1-3',
78
+ },
79
+ ];
80
+
81
+ export const SAMPLE_CARD_DATA = {
82
+ options: [
83
+ {
84
+ id: 1,
85
+ label: 'Team 1',
86
+ },
87
+ {
88
+ id: 2,
89
+ label: 'Team 2',
90
+ }
91
+ ],
92
+ selectedOptions: {
93
+ optionOne: 1,
94
+ optionTwo: 2,
95
+ },
96
+ onChange: ({ position, id }: OnChangeArgs) => {},
97
+ dateLabel: 'Dec 20 at 9:00am',
98
+ locationLabel: `T`,
99
+ isPosition1Winner: true,
100
+ isPosition2Winner: false,
101
+ position1Team: {
102
+ name: 'Apples',
103
+ points: 10,
104
+ },
105
+ position2Team: {
106
+ name: 'Pears',
107
+ points: 4,
108
+ }
109
+ };
110
+
111
+ export const SAMPLE_TEAM_PAGE_CARD_DATA = {
112
+ dateLabel: 'Dec 20',
113
+ timeLabel: '9:00pm',
114
+ locationLabel: 'Taube Tennis Center',
115
+ isPosition1Winner: true,
116
+ isPosition2Winner: false,
117
+ position1Team: {
118
+ name: 'Apples',
119
+ points: 10,
120
+ href: 'https://www.reddit.com',
121
+ seed: 1
122
+ },
123
+ position2Team: {
124
+ name: 'Pears',
125
+ points: 4,
126
+ href: 'https://www.reddit.com',
127
+ seed: 2
128
+ }
129
+ };
@@ -1,17 +1,17 @@
1
- import { ReactNode } from 'react';
2
-
3
- export type DrawCardTableProps = {
4
- headerRows: {
5
- name: string;
6
- }[],
7
- tableRows: ReactNode[][];
8
- isMobile: boolean;
9
- }
10
-
11
- export interface TableRowProps {
12
- headerRows: {
13
- name: string;
14
- }[],
15
- tableRows: ReactNode[][];
16
- totalColumns: number;
17
- }
1
+ import { ReactNode } from 'react';
2
+
3
+ export type DrawCardTableProps = {
4
+ headerRows: {
5
+ name: string;
6
+ }[],
7
+ tableRows: ReactNode[][];
8
+ isMobile: boolean;
9
+ }
10
+
11
+ export interface TableRowProps {
12
+ headerRows: {
13
+ name: string;
14
+ }[],
15
+ tableRows: ReactNode[][];
16
+ totalColumns: number;
17
+ }
@@ -1,3 +1,3 @@
1
- export const teamDrawCardSideMargin = '24px';
2
- export const standardSideMargin = 24;
3
- export const teamDrawCardBottomMargin = '8px';
1
+ export const teamDrawCardSideMargin = '24px';
2
+ export const standardSideMargin = 24;
3
+ export const teamDrawCardBottomMargin = '8px';
@@ -1,28 +1,28 @@
1
- import { useState, useEffect } from "react";
2
-
3
- // Hook
4
- export default function useWindowSize() {
5
- // Initialize state with undefined width/height so server and client renders match
6
- // Learn more here: https://joshwcomeau.com/react/the-perils-of-rehydration/
7
- const [windowSize, setWindowSize] = useState({
8
- width: undefined || 0,
9
- height: undefined || 0,
10
- });
11
- useEffect(() => {
12
- // Handler to call on window resize
13
- function handleResize() {
14
- // Set window width/height to state
15
- setWindowSize({
16
- width: window.innerWidth,
17
- height: window.innerHeight,
18
- });
19
- }
20
- // Add event listener
21
- window.addEventListener("resize", handleResize);
22
- // Call handler right away so state gets updated with initial window size
23
- handleResize();
24
- // Remove event listener on cleanup
25
- return () => window.removeEventListener("resize", handleResize);
26
- }, []); // Empty array ensures that effect is only run on mount
27
- return windowSize;
28
- }
1
+ import { useState, useEffect } from "react";
2
+
3
+ // Hook
4
+ export default function useWindowSize() {
5
+ // Initialize state with undefined width/height so server and client renders match
6
+ // Learn more here: https://joshwcomeau.com/react/the-perils-of-rehydration/
7
+ const [windowSize, setWindowSize] = useState({
8
+ width: undefined || 0,
9
+ height: undefined || 0,
10
+ });
11
+ useEffect(() => {
12
+ // Handler to call on window resize
13
+ function handleResize() {
14
+ // Set window width/height to state
15
+ setWindowSize({
16
+ width: window.innerWidth,
17
+ height: window.innerHeight,
18
+ });
19
+ }
20
+ // Add event listener
21
+ window.addEventListener("resize", handleResize);
22
+ // Call handler right away so state gets updated with initial window size
23
+ handleResize();
24
+ // Remove event listener on cleanup
25
+ return () => window.removeEventListener("resize", handleResize);
26
+ }, []); // Empty array ensures that effect is only run on mount
27
+ return windowSize;
28
+ }
@@ -1,42 +1,42 @@
1
- export interface Location {
2
- placeId: string;
3
- formattedAddress: string;
4
- placeName: string;
5
- lat: number;
6
- lng: number
7
- }
8
-
9
- export interface Captain {
10
- id: number;
11
- teamId: number;
12
- memberId: number;
13
- playerId: number;
14
- gender?: string;
15
- firstName: string;
16
- lastName: string;
17
- email?: string;
18
- phone?: string;
19
- phoneCountryCode?: string;
20
- profileImage?: string;
21
- location?: Location
22
- }
23
-
24
- export interface AddTeamsData {
25
- id: number;
26
- name?: string;
27
- teamMemberCount?: number;
28
- captains?: Array<Captain>;
29
- sessionId?: number;
30
- sessionName?: string;
31
- sessionStartDateUtc?: string;
32
- sessionEndDateUtc?: string;
33
- wins?: number;
34
- losses?: number;
35
- rank?: number;
36
- isSelected?: boolean;
37
- record?: string;
38
- sessionDates?: string;
39
-
40
- }
41
-
42
- export type TableData = AddTeamsData
1
+ export interface Location {
2
+ placeId: string;
3
+ formattedAddress: string;
4
+ placeName: string;
5
+ lat: number;
6
+ lng: number
7
+ }
8
+
9
+ export interface Captain {
10
+ id: number;
11
+ teamId: number;
12
+ memberId: number;
13
+ playerId: number;
14
+ gender?: string;
15
+ firstName: string;
16
+ lastName: string;
17
+ email?: string;
18
+ phone?: string;
19
+ phoneCountryCode?: string;
20
+ profileImage?: string;
21
+ location?: Location
22
+ }
23
+
24
+ export interface AddTeamsData {
25
+ id: number;
26
+ name?: string;
27
+ teamMemberCount?: number;
28
+ captains?: Array<Captain>;
29
+ sessionId?: number;
30
+ sessionName?: string;
31
+ sessionStartDateUtc?: string;
32
+ sessionEndDateUtc?: string;
33
+ wins?: number;
34
+ losses?: number;
35
+ rank?: number;
36
+ isSelected?: boolean;
37
+ record?: string;
38
+ sessionDates?: string;
39
+
40
+ }
41
+
42
+ export type TableData = AddTeamsData
package/tsconfig.json CHANGED
@@ -1,23 +1,23 @@
1
- {
2
- "compilerOptions": {
3
- "noImplicitThis": true,
4
- "preserveConstEnums": true,
5
- "strictNullChecks": true,
6
- "sourceMap": true,
7
- "declaration": true,
8
- "esModuleInterop": true,
9
- "outDir": "dist",
10
- "target": "es6",
11
- "module": "es6",
12
- "allowJs": true,
13
- "moduleResolution": "node",
14
- "skipLibCheck": true,
15
- "jsx": "react",
16
- "lib": ["ES2017", "DOM"],
17
- "baseUrl": "src",
18
- "allowSyntheticDefaultImports": true,
19
- "noImplicitAny": true
20
- },
21
- "exclude": ["node_modules"],
22
- "include": ["src", "src/custom.d.ts"]
23
- }
1
+ {
2
+ "compilerOptions": {
3
+ "noImplicitThis": true,
4
+ "preserveConstEnums": true,
5
+ "strictNullChecks": true,
6
+ "sourceMap": true,
7
+ "declaration": true,
8
+ "esModuleInterop": true,
9
+ "outDir": "dist",
10
+ "target": "es6",
11
+ "module": "es6",
12
+ "allowJs": true,
13
+ "moduleResolution": "node",
14
+ "skipLibCheck": true,
15
+ "jsx": "react",
16
+ "lib": ["ES2017", "DOM"],
17
+ "baseUrl": "src",
18
+ "allowSyntheticDefaultImports": true,
19
+ "noImplicitAny": true
20
+ },
21
+ "exclude": ["node_modules"],
22
+ "include": ["src", "src/custom.d.ts"]
23
+ }