@dcrackel/hematournamentui 1.0.706 → 1.0.707

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 (330) hide show
  1. package/.prettierignore +7 -1
  2. package/.storybook/main.js +5 -12
  3. package/.storybook/preview-head.html +10 -3
  4. package/.storybook/preview.js +5 -13
  5. package/AGENTS.md +31 -1
  6. package/README.md +29 -22
  7. package/dist/HemaTournamentUI-lib.es.js +7189 -7467
  8. package/dist/HemaTournamentUI-lib.umd.js +27 -27
  9. package/dist/hematournamentui-tailwind.css +0 -24
  10. package/dist/hematournamentui.css +1 -1
  11. package/eslint.config.js +49 -23
  12. package/package.json +6 -2
  13. package/postcss.config.js +3 -3
  14. package/prettier.config.js +16 -10
  15. package/src/config/boutScreenConfigurations.js +52 -50
  16. package/src/main.js +1 -1
  17. package/src/mocks/EventQuestionsMock.js +43 -55
  18. package/src/mocks/assignments.js +180 -181
  19. package/src/mocks/clubGetAllMock.js +8143 -8143
  20. package/src/mocks/eventMock.js +205 -205
  21. package/src/mocks/eventPersonGetInitalPoolAssignmentsLivePools.js +541 -542
  22. package/src/mocks/eventPersonGetInitalPoolAssignmentsPreparing.js +522 -523
  23. package/src/mocks/eventPersonGetInitialPoolAssignments.js +386 -387
  24. package/src/mocks/eventPersonGetInitialPoolAssignments2.js +2267 -2268
  25. package/src/mocks/eventPersonGetInitialStaff.js +94 -95
  26. package/src/mocks/eventPersonGetPoolAssignmentEvent.js +161 -162
  27. package/src/mocks/eventRules.js +87 -86
  28. package/src/mocks/eventpersonGetEventById.js +1737 -1737
  29. package/src/mocks/getAllClubs.js +8143 -8143
  30. package/src/mocks/getAllStaffByTournamentId.js +74 -75
  31. package/src/mocks/getAllWeapons.js +81 -82
  32. package/src/mocks/getAttendance.js +43 -44
  33. package/src/mocks/getClub.js +43 -44
  34. package/src/mocks/getClubDisplayByClubId.js +104 -105
  35. package/src/mocks/getDEBouts-128Fencers.js +3247 -3248
  36. package/src/mocks/getDEBouts-42Fencers.js +3736 -3737
  37. package/src/mocks/getDEBouts-67Fencers.js +6684 -6690
  38. package/src/mocks/getDEBouts-DoubleElim.js +4198 -4199
  39. package/src/mocks/getDEWithBouts.js +628 -629
  40. package/src/mocks/getDeBouts-12fencers.js +1255 -1256
  41. package/src/mocks/getDeBouts-15fencers.js +925 -927
  42. package/src/mocks/getDeBouts-22fencers.js +1683 -1685
  43. package/src/mocks/getDeBouts-6fencers.js +818 -818
  44. package/src/mocks/getEventByTournamentId.js +47 -48
  45. package/src/mocks/getFinalEventResult.js +304 -305
  46. package/src/mocks/getPenaltiesByEvent.js +655 -656
  47. package/src/mocks/getPoolResults.js +1533 -1534
  48. package/src/mocks/getPoolsWithBouts.js +662 -663
  49. package/src/mocks/getPoolsWithBouts6PoolId139.js +885 -886
  50. package/src/mocks/getPoolsWithBoutsByPoolId.js +841 -841
  51. package/src/mocks/getPoolsWithBoutsClubColors.js +4 -4
  52. package/src/mocks/getPoolsWithBoutsComplete.js +919 -921
  53. package/src/mocks/locationMock.js +3213 -3214
  54. package/src/mocks/mockRoutes.js +3 -3
  55. package/src/mocks/personGetAllMock.js +2536 -2537
  56. package/src/mocks/personsMock.js +17569 -17570
  57. package/src/mocks/singleEventMock.js +249 -250
  58. package/src/mocks/tournamentMock.js +1988 -1927
  59. package/src/stories/Atoms/CheckBox/BaseCheckbox.stories.js +25 -23
  60. package/src/stories/Atoms/CheckBox/BaseCheckbox.vue +30 -24
  61. package/src/stories/Atoms/Icon/BaseIcon.stories.js +63 -64
  62. package/src/stories/Atoms/Icon/BaseIcon.test.js +67 -69
  63. package/src/stories/Atoms/Icon/BaseIcon.vue +2 -3
  64. package/src/stories/Atoms/Input/BaseInput.stories.js +18 -18
  65. package/src/stories/Atoms/Input/BaseInput.test.js +65 -67
  66. package/src/stories/Atoms/Input/BaseInput.vue +36 -31
  67. package/src/stories/Atoms/RadioGroup/BaseRadioGroup.stories.js +21 -21
  68. package/src/stories/Atoms/RadioGroup/BaseRadioGroup.test.js +31 -31
  69. package/src/stories/Atoms/RadioGroup/BaseRadioGroup.vue +23 -18
  70. package/src/stories/Atoms/Tag/BaseTag.stories.js +21 -21
  71. package/src/stories/Atoms/Tag/BaseTag.test.js +26 -30
  72. package/src/stories/Atoms/Tag/BaseTag.vue +18 -19
  73. package/src/stories/Atoms/Text/BaseText.stories.js +54 -62
  74. package/src/stories/Atoms/Text/BaseText.test.js +152 -154
  75. package/src/stories/Atoms/Text/BaseText.vue +103 -81
  76. package/src/stories/Configure.mdx +5 -3
  77. package/src/stories/Molecules/Boxes/BoutBoxes/HandshotCounterBox/HandshotCounterBox.stories.js +24 -24
  78. package/src/stories/Molecules/Boxes/BoutBoxes/HandshotCounterBox/HandshotCounterBox.vue +33 -15
  79. package/src/stories/Molecules/Boxes/BoutBoxes/PassesBox/PassesBox.stories.js +46 -48
  80. package/src/stories/Molecules/Boxes/BoutBoxes/PassesBox/PassesBox.vue +38 -25
  81. package/src/stories/Molecules/Boxes/BoutBoxes/PenaltyConfirmationBox/PenaltyConfirmationBox.stories.js +4 -4
  82. package/src/stories/Molecules/Boxes/BoutBoxes/PenaltyConfirmationBox/PenaltyConfirmationBox.vue +9 -4
  83. package/src/stories/Molecules/Boxes/BoutBoxes/ScoreBox/ScoreBox.stories.js +90 -90
  84. package/src/stories/Molecules/Boxes/BoutBoxes/ScoreBox/ScoreBox.vue +51 -32
  85. package/src/stories/Molecules/Boxes/BoutBoxes/TimerBox/TimerBox.stories.js +25 -25
  86. package/src/stories/Molecules/Boxes/BoutBoxes/TimerBox/TimerBox.vue +47 -12
  87. package/src/stories/Molecules/Boxes/CounterBox/CounterBox.stories.js +19 -19
  88. package/src/stories/Molecules/Boxes/CounterBox/CounterBox.vue +25 -19
  89. package/src/stories/Molecules/Boxes/EventStatusBox/EventStatusBox.stories.js +25 -28
  90. package/src/stories/Molecules/Boxes/EventStatusBox/EventStatusBox.vue +7 -7
  91. package/src/stories/Molecules/Breadcrumb/Admin/Breadcrumb.stories.js +28 -29
  92. package/src/stories/Molecules/Breadcrumb/Admin/Breadcrumb.test.js +58 -58
  93. package/src/stories/Molecules/Breadcrumb/Admin/Breadcrumb.vue +15 -15
  94. package/src/stories/Molecules/Buttons/BaseButton/BaseButton.stories.js +86 -86
  95. package/src/stories/Molecules/Buttons/BaseButton/BaseButton.test.js +101 -103
  96. package/src/stories/Molecules/Buttons/BaseButton/BaseButton.vue +87 -24
  97. package/src/stories/Molecules/Buttons/ButtonBar/ButtonBar.stories.js +31 -31
  98. package/src/stories/Molecules/Buttons/ButtonBar/ButtonBar.vue +19 -21
  99. package/src/stories/Molecules/CombinationInputs/TitledInput/TitledInput.stories.js +57 -57
  100. package/src/stories/Molecules/CombinationInputs/TitledInput/TitledInput.test.js +64 -64
  101. package/src/stories/Molecules/CombinationInputs/TitledInput/TitledInput.vue +17 -16
  102. package/src/stories/Molecules/Filters/FilterAndSortBar/FilterAndSortBar.stories.js +19 -19
  103. package/src/stories/Molecules/Filters/FilterAndSortBar/FilterAndSortBar.vue +18 -7
  104. package/src/stories/Molecules/Filters/FilterUpcomingPast/FilterUpcomingPast.stories.js +16 -18
  105. package/src/stories/Molecules/Filters/FilterUpcomingPast/FilterUpcomingPast.vue +31 -13
  106. package/src/stories/Molecules/Indicators/ServerConnected/ServerConnected.stories.js +27 -27
  107. package/src/stories/Molecules/Indicators/ServerConnected/ServerConnected.vue +6 -5
  108. package/src/stories/Molecules/Inputs/MultiSelect/MultiSelect.stories.js +35 -35
  109. package/src/stories/Molecules/Inputs/MultiSelect/MultiSelect.vue +13 -8
  110. package/src/stories/Molecules/Inputs/Toggle/Toggle.stories.js +27 -27
  111. package/src/stories/Molecules/Inputs/Toggle/Toggle.vue +8 -5
  112. package/src/stories/Molecules/Menus/TabBar/TabBar.stories.js +18 -18
  113. package/src/stories/Molecules/Menus/TabBar/TabBar.vue +1 -2
  114. package/src/stories/Molecules/Modals/AddDisplayModal/AddDisplay.stories.js +36 -27
  115. package/src/stories/Molecules/Modals/AddDisplayModal/AddDisplayModal.vue +25 -15
  116. package/src/stories/Molecules/Modals/BaseModal/BaseModal.stories.js +66 -65
  117. package/src/stories/Molecules/Modals/BaseModal/BaseModal.vue +47 -9
  118. package/src/stories/Molecules/Modals/ConfirmModal/ConfirmModal.stories.js +23 -23
  119. package/src/stories/Molecules/Modals/ConfirmModal/ConfirmModal.vue +59 -11
  120. package/src/stories/Molecules/Modals/DirectorModal/DirectorModal.stories.js +37 -37
  121. package/src/stories/Molecules/Modals/DirectorModal/DirectorModal.vue +27 -22
  122. package/src/stories/Molecules/Modals/EditBoutModal/EditBoutModal.stories.js +41 -41
  123. package/src/stories/Molecules/Modals/EditBoutModal/EditBoutModal.vue +27 -15
  124. package/src/stories/Molecules/Modals/EventWizardModal/EventWizardModal.stories.js +29 -30
  125. package/src/stories/Molecules/Modals/EventWizardModal/EventWizardModal.vue +18 -16
  126. package/src/stories/Molecules/Modals/LoadingModal/LoadingModal.stories.js +21 -21
  127. package/src/stories/Molecules/Modals/LoadingModal/LoadingModal.vue +7 -7
  128. package/src/stories/Molecules/Modals/PenaltyModal/PenaltyModal.stories.js +24 -24
  129. package/src/stories/Molecules/Modals/PenaltyModal/PenaltyModal.vue +30 -25
  130. package/src/stories/Molecules/Reorder/ReorderableShell.stories.js +81 -77
  131. package/src/stories/Molecules/Reorder/ReorderableShell.vue +46 -43
  132. package/src/stories/Molecules/StepIndicator/BaseStepIndicator/StepIndicator.stories.js +40 -40
  133. package/src/stories/Molecules/StepIndicator/BaseStepIndicator/StepIndicator.vue +23 -25
  134. package/src/stories/Organisms/Cards/BoutCard/BoutCard.stories.js +34 -29
  135. package/src/stories/Organisms/Cards/BoutCard/BoutCard.vue +69 -66
  136. package/src/stories/Organisms/Cards/BoutCard/Variants/BoutCardActive/BoutCardActive.stories.js +24 -22
  137. package/src/stories/Organisms/Cards/BoutCard/Variants/BoutCardActive/BoutCardActive.vue +53 -41
  138. package/src/stories/Organisms/Cards/BoutCard/Variants/BoutCardInactive/BoutCardInactive.stories.js +24 -37
  139. package/src/stories/Organisms/Cards/BoutCard/Variants/BoutCardInactive/BoutCardInactive.vue +88 -103
  140. package/src/stories/Organisms/Cards/BoutCard/Variants/BoutCardReorder/BoutCardReorder.vue +13 -14
  141. package/src/stories/Organisms/Cards/BoutCard/Variants/BoutCardWaiting/BoutCardWaiting.stories.js +5 -5
  142. package/src/stories/Organisms/Cards/BoutCard/Variants/BoutCardWaiting/BoutCardWaiting.vue +22 -21
  143. package/src/stories/Organisms/Cards/ClubCard/ClubCard.stories.js +14 -17
  144. package/src/stories/Organisms/Cards/ClubCard/ClubCard.vue +25 -18
  145. package/src/stories/Organisms/Cards/Director/DirectorCard.stories.js +23 -23
  146. package/src/stories/Organisms/Cards/Director/DirectorCard.vue +159 -103
  147. package/src/stories/Organisms/Cards/EditBout/EditBout.stories.js +47 -47
  148. package/src/stories/Organisms/Cards/EditBout/EditBout.test.js +51 -0
  149. package/src/stories/Organisms/Cards/EditBout/EditBout.vue +82 -54
  150. package/src/stories/Organisms/Cards/EventCard/EventCard.stories.js +9 -10
  151. package/src/stories/Organisms/Cards/EventCard/EventCard.vue +83 -63
  152. package/src/stories/Organisms/Cards/FencerCard/FencerCard.stories.js +105 -105
  153. package/src/stories/Organisms/Cards/FencerCard/FencerCard.vue +142 -58
  154. package/src/stories/Organisms/Cards/FencerFinalResultCard/FencerFinalResultCard.stories.js +14 -14
  155. package/src/stories/Organisms/Cards/FencerFinalResultCard/FencerFinalResultCard.vue +37 -26
  156. package/src/stories/Organisms/Cards/FencerPoolResultsCard/FencerPoolResults.stories.js +24 -24
  157. package/src/stories/Organisms/Cards/FencerPoolResultsCard/FencerPoolResultsCard.vue +95 -28
  158. package/src/stories/Organisms/Cards/ImportFencerCard/ImportFencerCard.stories.js +59 -60
  159. package/src/stories/Organisms/Cards/ImportFencerCard/ImportFencerCard.vue +13 -7
  160. package/src/stories/Organisms/Cards/KioskCard/KioskCard.stories.js +34 -34
  161. package/src/stories/Organisms/Cards/KioskCard/KioskCard.vue +149 -104
  162. package/src/stories/Organisms/Cards/PenaltyCard/PenaltyCard.stories.js +19 -20
  163. package/src/stories/Organisms/Cards/PenaltyCard/PenaltyCard.vue +207 -163
  164. package/src/stories/Organisms/Cards/PenaltyFencerCard/PenaltyFencerCard.stories.js +17 -17
  165. package/src/stories/Organisms/Cards/PenaltyFencerCard/PenaltyFencerCard.vue +88 -46
  166. package/src/stories/Organisms/Cards/PoolBoutMatchCard/PoolBoutMatchCard.stories.js +182 -182
  167. package/src/stories/Organisms/Cards/PoolBoutMatchCard/PoolBoutMatchCard.vue +21 -12
  168. package/src/stories/Organisms/Cards/PoolFencerCard/PoolFencerCard.stories.js +25 -28
  169. package/src/stories/Organisms/Cards/PoolFencerCard/PoolFencerCard.vue +28 -22
  170. package/src/stories/Organisms/Cards/StaffCard/StaffCard.stories.js +62 -62
  171. package/src/stories/Organisms/Cards/StaffCard/StaffCard.vue +27 -22
  172. package/src/stories/Organisms/Cards/TableauBoutCard/SpacingConfig.js +103 -103
  173. package/src/stories/Organisms/Cards/TableauBoutCard/TableauBoutCard.stories.js +73 -73
  174. package/src/stories/Organisms/Cards/TableauBoutCard/TableauBoutCard.test.js +44 -0
  175. package/src/stories/Organisms/Cards/TableauBoutCard/TableauBoutCard.vue +69 -56
  176. package/src/stories/Organisms/Cards/TableauFencerCard/TableauFencerCard.stories.js +80 -81
  177. package/src/stories/Organisms/Cards/TableauFencerCard/TableauFencerCard.vue +39 -22
  178. package/src/stories/Organisms/Cards/TournamentAdminCard/TournamentAdmin.stories.js +20 -20
  179. package/src/stories/Organisms/Cards/TournamentAdminCard/TournamentAdminCard.vue +62 -33
  180. package/src/stories/Organisms/Cards/WaitlistFencerCard/WaitlistFencerCard.vue +44 -30
  181. package/src/stories/Organisms/ComplexInputs/AddressAutocomplete/AddressAutocomplete.stories.js +6 -7
  182. package/src/stories/Organisms/ComplexInputs/AddressAutocomplete/AddressAutocomplete.vue +7 -8
  183. package/src/stories/Organisms/ComplexInputs/ClubColorPicker/ClubColorPicker.stories.js +31 -31
  184. package/src/stories/Organisms/ComplexInputs/ClubColorPicker/ClubColorPicker.vue +30 -35
  185. package/src/stories/Organisms/ComplexInputs/DatePicker/DatePicker.stories.js +13 -16
  186. package/src/stories/Organisms/ComplexInputs/DatePicker/DatePicker.vue +68 -70
  187. package/src/stories/Organisms/ComplexInputs/DropDown/DropDownMenu.stories.js +32 -34
  188. package/src/stories/Organisms/ComplexInputs/DropDown/DropDownMenu.vue +48 -25
  189. package/src/stories/Organisms/ComplexInputs/FindLocation/FindLocation.stories.js +21 -21
  190. package/src/stories/Organisms/ComplexInputs/FindLocation/FindLocation.vue +65 -38
  191. package/src/stories/Organisms/ComplexInputs/FindOrAddPerson/FindOrAddPerson.stories.js +19 -20
  192. package/src/stories/Organisms/ComplexInputs/FindOrAddPerson/FindOrAddPerson.vue +46 -21
  193. package/src/stories/Organisms/ComplexInputs/FindPerson/FindPerson.stories.js +22 -22
  194. package/src/stories/Organisms/ComplexInputs/FindPerson/FindPerson.vue +68 -23
  195. package/src/stories/Organisms/ComplexInputs/ImageCropper/ImageCropper.stories.js +13 -13
  196. package/src/stories/Organisms/ComplexInputs/ImageCropper/ImageCropper.vue +25 -24
  197. package/src/stories/Organisms/ComplexInputs/TextBoxEditor/TextBoxEditor.stories.js +6 -10
  198. package/src/stories/Organisms/ComplexInputs/TextBoxEditor/TextBoxEditor.vue +112 -48
  199. package/src/stories/Organisms/Containers/BoutsSection/BoutsSection.stories.js +43 -44
  200. package/src/stories/Organisms/Containers/BoutsSection/BoutsSection.vue +30 -23
  201. package/src/stories/Organisms/Containers/FinalResults/FinalResultsTable.stories.js +20 -20
  202. package/src/stories/Organisms/Containers/FinalResults/FinalResultsTable.vue +12 -12
  203. package/src/stories/Organisms/Containers/KioskContainer/KioskContainer.stories.js +24 -25
  204. package/src/stories/Organisms/Containers/KioskContainer/KioskContainer.vue +112 -87
  205. package/src/stories/Organisms/Containers/Pool/Pool.stories.js +54 -54
  206. package/src/stories/Organisms/Containers/Pool/Pool.vue +64 -41
  207. package/src/stories/Organisms/Containers/PoolGrid/PoolGrid.stories.js +17 -19
  208. package/src/stories/Organisms/Containers/PoolGrid/PoolGrid.vue +189 -135
  209. package/src/stories/Organisms/Containers/PoolResults/PoolResultsTable.stories.js +53 -54
  210. package/src/stories/Organisms/Containers/PoolResults/PoolResultsTable.vue +107 -73
  211. package/src/stories/Organisms/Containers/Tableau/Tableau.stories.js +23 -24
  212. package/src/stories/Organisms/Containers/Tableau/Tableau.test.js +49 -10
  213. package/src/stories/Organisms/Containers/Tableau/Tableau.vue +96 -173
  214. package/src/stories/Organisms/Containers/TableauColumn/TabeauColumn.stories.js +26 -27
  215. package/src/stories/Organisms/Containers/TableauColumn/TableauColumn.vue +20 -17
  216. package/src/stories/Organisms/Containers/TableauLines/SpacingConfig.js +153 -103
  217. package/src/stories/Organisms/Containers/TableauLines/TableauLines.stories.js +13 -15
  218. package/src/stories/Organisms/Containers/TableauLines/TableauLines.vue +7 -8
  219. package/src/stories/Organisms/Form/AddDisplay/AddDisplay.stories.js +26 -26
  220. package/src/stories/Organisms/Form/AddDisplay/AddDisplay.vue +130 -118
  221. package/src/stories/Organisms/Form/AddNewPerson/AddNewPerson.stories.js +14 -15
  222. package/src/stories/Organisms/Form/AddNewPerson/AddNewPerson.vue +94 -88
  223. package/src/stories/Organisms/Grids/GridContainer.stories.js +101 -101
  224. package/src/stories/Organisms/Grids/GridContainer.vue +160 -136
  225. package/src/stories/Organisms/Headers/AttendanceSummary/AttendanceSummary.stories.js +47 -47
  226. package/src/stories/Organisms/Headers/AttendanceSummary/AttendanceSummary.vue +65 -54
  227. package/src/stories/Organisms/Headers/EventFinalResultsHeader/EventFinalResultsHeader.stories.js +27 -27
  228. package/src/stories/Organisms/Headers/EventFinalResultsHeader/EventFinalResultsHeader.vue +38 -22
  229. package/src/stories/Organisms/Headers/PenaltySummary/PenaltySummary.stories.js +80 -80
  230. package/src/stories/Organisms/Headers/PenaltySummary/PenaltySummary.vue +14 -6
  231. package/src/stories/Organisms/Headers/PoolResultsHeader/PoolResultsHeader.stories.js +34 -34
  232. package/src/stories/Organisms/Headers/PoolResultsHeader/PoolResultsHeader.vue +36 -36
  233. package/src/stories/Organisms/Headers/PoolSummary/PoolSummary.stories.js +21 -21
  234. package/src/stories/Organisms/Headers/PoolSummary/PoolSummary.vue +56 -29
  235. package/src/stories/Organisms/Headers/ToggleHeader/ToggleHeader.stories.js +38 -38
  236. package/src/stories/Organisms/Headers/ToggleHeader/ToggleHeader.vue +19 -20
  237. package/src/stories/Organisms/RankCalculator/ByLetter/RankCalculator.stories.js +12 -13
  238. package/src/stories/Organisms/RankCalculator/ByLetter/RankCalculator.vue +47 -41
  239. package/src/stories/Organisms/RankCalculator/ByPoints/RankCalculatorByPoints.stories.js +12 -13
  240. package/src/stories/Organisms/RankCalculator/ByPoints/RankCalculatorByPoints.vue +66 -37
  241. package/src/stories/Organisms/Skeletons/ClubManagement/ClubManagement.stories.js +6 -10
  242. package/src/stories/Organisms/Skeletons/ClubManagement/ClubMangementSkeleton.vue +2 -2
  243. package/src/stories/Organisms/Skeletons/EventCard/EventCardSkeleton.stories.js +6 -10
  244. package/src/stories/Organisms/Skeletons/EventCard/EventCardSkeleton.vue +2 -3
  245. package/src/stories/Organisms/Skeletons/FencerCard/FencerCardSkeleton.stories.js +6 -10
  246. package/src/stories/Organisms/Skeletons/FencerCard/FencerCardSkeleton.vue +1 -1
  247. package/src/stories/Organisms/Skeletons/PersonManagement/PersonManagementSkeleton.stories.js +6 -9
  248. package/src/stories/Organisms/Skeletons/PersonManagement/PersonManagementSkeleton.vue +2 -2
  249. package/src/stories/Organisms/Skeletons/PoolSkeleton/PoolSkeleton.stories.js +6 -10
  250. package/src/stories/Organisms/Skeletons/PoolSkeleton/PoolSkeleton.vue +10 -4
  251. package/src/stories/Organisms/Skeletons/TournamentCard/TournamentCardSkeleton.stories.js +6 -10
  252. package/src/stories/Organisms/Skeletons/TournamentCard/TournamentCardSkeleton.vue +2 -2
  253. package/src/stories/Organisms/Wizards/EditEventWizard/BasicEventInfo/BasicEventInfo.stories.js +34 -34
  254. package/src/stories/Organisms/Wizards/EditEventWizard/BasicEventInfo/BasicEventInfo.vue +106 -56
  255. package/src/stories/Organisms/Wizards/EditEventWizard/DirectElimination/DirectElimination.stories.js +95 -95
  256. package/src/stories/Organisms/Wizards/EditEventWizard/DirectElimination/DirectElimination.vue +129 -69
  257. package/src/stories/Organisms/Wizards/EditEventWizard/DirectEliminationPromotion/DirectEliminationPromotion.stories.js +87 -88
  258. package/src/stories/Organisms/Wizards/EditEventWizard/DirectEliminationPromotion/DirectEliminationPromotion.vue +105 -60
  259. package/src/stories/Organisms/Wizards/EditEventWizard/EditEventWizard.stories.js +82 -82
  260. package/src/stories/Organisms/Wizards/EditEventWizard/EditEventWizard.vue +150 -177
  261. package/src/stories/Organisms/Wizards/EditEventWizard/EventCustomization/EventCustomization.stories.js +28 -28
  262. package/src/stories/Organisms/Wizards/EditEventWizard/EventCustomization/EventCustomization.vue +96 -36
  263. package/src/stories/Organisms/Wizards/EditEventWizard/PoolConfiguration/PoolConfiguration.stories.js +99 -99
  264. package/src/stories/Organisms/Wizards/EditEventWizard/PoolConfiguration/PoolConfiguration.vue +115 -67
  265. package/src/stories/Templates/Assignment/Assignment.stories.js +22 -23
  266. package/src/stories/Templates/Assignment/Assignment.vue +210 -161
  267. package/src/stories/Templates/ClubManagement/ClubBasic/ClubBasic.stories.js +90 -90
  268. package/src/stories/Templates/ClubManagement/ClubBasic/ClubBasic.vue +68 -55
  269. package/src/stories/Templates/ClubManagement/ClubManagement.stories.js +87 -87
  270. package/src/stories/Templates/ClubManagement/ClubManagement.vue +167 -147
  271. package/src/stories/Templates/EventManagement/Bracket/Bracket.stories.js +82 -103
  272. package/src/stories/Templates/EventManagement/Bracket/Bracket.test.js +88 -43
  273. package/src/stories/Templates/EventManagement/Bracket/Bracket.vue +167 -200
  274. package/src/stories/Templates/EventManagement/EditEventInfo/EditEventInfo.stories.js +49 -50
  275. package/src/stories/Templates/EventManagement/EditEventInfo/EditEventInfo.vue +21 -21
  276. package/src/stories/Templates/EventManagement/EventAttendance/EventAttendance.stories.js +105 -103
  277. package/src/stories/Templates/EventManagement/EventAttendance/EventAttendance.vue +289 -226
  278. package/src/stories/Templates/EventManagement/EventFinalResults/EventFinalResults.stories.js +30 -30
  279. package/src/stories/Templates/EventManagement/EventFinalResults/EventFinalResults.vue +27 -22
  280. package/src/stories/Templates/EventManagement/KioskDisplay/KioskDisplay.stories.js +44 -45
  281. package/src/stories/Templates/EventManagement/KioskDisplay/KioskDisplay.vue +52 -43
  282. package/src/stories/Templates/EventManagement/Penalties/PenaltyReport.stories.js +28 -29
  283. package/src/stories/Templates/EventManagement/Penalties/PenaltyReport.vue +54 -39
  284. package/src/stories/Templates/EventManagement/PoolLive/PoolLive.stories.js +80 -111
  285. package/src/stories/Templates/EventManagement/PoolLive/PoolLive.test.js +121 -0
  286. package/src/stories/Templates/EventManagement/PoolLive/PoolLive.vue +290 -255
  287. package/src/stories/Templates/EventManagement/PoolManagement/PoolManagement.stories.js +109 -107
  288. package/src/stories/Templates/EventManagement/PoolManagement/PoolManagement.vue +144 -87
  289. package/src/stories/Templates/EventManagement/PoolResults/PoolResults.stories.js +56 -57
  290. package/src/stories/Templates/EventManagement/PoolResults/PoolResults.vue +132 -123
  291. package/src/stories/Templates/EventManagement/StaffList/StaffList.stories.js +56 -57
  292. package/src/stories/Templates/EventManagement/StaffList/StaffList.vue +84 -47
  293. package/src/stories/Templates/Menus/Admin/AdminLeftMenu.stories.js +29 -29
  294. package/src/stories/Templates/Menus/Admin/AdminLeftMenu.vue +71 -67
  295. package/src/stories/Templates/Menus/EditEventsTopMenu/EditEventsTopMenu.stories.js +39 -40
  296. package/src/stories/Templates/Menus/EditEventsTopMenu/EditEventsTopMenu.vue +79 -71
  297. package/src/stories/Templates/PersonManagement/Admin/Administration/Administration.stories.js +47 -47
  298. package/src/stories/Templates/PersonManagement/Admin/Administration/Administration.vue +39 -42
  299. package/src/stories/Templates/PersonManagement/Admin/FencerAdmin/FencerAdmin.stories.js +54 -54
  300. package/src/stories/Templates/PersonManagement/Admin/FencerAdmin/FencerAdmin.vue +27 -31
  301. package/src/stories/Templates/PersonManagement/Admin/MergeAccounts/MergeAccounts.stories.js +69 -69
  302. package/src/stories/Templates/PersonManagement/Admin/MergeAccounts/MergeAccounts.vue +78 -89
  303. package/src/stories/Templates/PersonManagement/Attendance/Attendance.stories.js +22 -22
  304. package/src/stories/Templates/PersonManagement/Attendance/Attendance.vue +61 -33
  305. package/src/stories/Templates/PersonManagement/Basic/BasicEdit.stories.js +29 -29
  306. package/src/stories/Templates/PersonManagement/Basic/BasicEdit.vue +80 -53
  307. package/src/stories/Templates/PersonManagement/PersonManagement.stories.js +84 -86
  308. package/src/stories/Templates/PersonManagement/PersonManagement.vue +107 -82
  309. package/src/stories/Templates/TournamentManagement/ListEvents/ListEvents.stories.js +31 -31
  310. package/src/stories/Templates/TournamentManagement/ListEvents/ListEvents.vue +70 -51
  311. package/src/stories/Templates/TournamentManagement/TournamentManagement.stories.js +79 -79
  312. package/src/stories/Templates/TournamentManagement/TournamentManagement.vue +275 -230
  313. package/src/stories/Templates/TournamentManagement/TournamentPageOne/TournamentPageOne.stories.js +113 -113
  314. package/src/stories/Templates/TournamentManagement/TournamentPageOne/TournamentPageOne.vue +175 -146
  315. package/src/stories/Templates/TournamentManagement/TournamentPageTwo/TournamentPageTwo.stories.js +77 -77
  316. package/src/stories/Templates/TournamentManagement/TournamentPageTwo/TournamentPageTwo.vue +208 -185
  317. package/src/stories/Util/Validations/AddNewPersonModalValidation.js +23 -19
  318. package/src/stories/Util/Validations/ClubManagementValidations.js +17 -21
  319. package/src/stories/Util/Validations/PersonManagementValidations.js +26 -22
  320. package/src/stories/Util/Validations/TournamentFieldsValidations.js +20 -18
  321. package/src/stories/Util/seeding.js +131 -131
  322. package/src/stories/Util/tabs.js +75 -75
  323. package/tailwind/tailwind.css +5 -7
  324. package/tailwind.config.js +12 -15
  325. package/vite.config.js +3 -3
  326. package/src/mocks/getDirectors.js +0 -18
  327. package/src/stories/Molecules/Modals/AssignDirectorModal/AssignDirectorModal.stories.js +0 -45
  328. package/src/stories/Molecules/Modals/AssignDirectorModal/AssignDirectorModal.vue +0 -111
  329. package/src/stories/Organisms/Cards/DirectorAssignmentCard/DirectorAssignmentCard.stories.js +0 -45
  330. package/src/stories/Organisms/Cards/DirectorAssignmentCard/DirectorAssignmentCard.vue +0 -83
@@ -2,35 +2,62 @@
2
2
  <section>
3
3
  <div v-if="!showNewLocation" class="relative" ref="showNewLocation">
4
4
  <BaseInput
5
- :addBorder="addBorder"
6
- :value="inputValue"
7
- :invalid="invalid"
8
- placeholder="Enter Location Name"
9
- @click="clearInput"
10
- @input="updateInput"
5
+ :addBorder="addBorder"
6
+ :value="inputValue"
7
+ :invalid="invalid"
8
+ placeholder="Enter Location Name"
9
+ @click="clearInput"
10
+ @input="updateInput"
11
11
  />
12
- <div v-if="showDropdown && showAddNew" class="absolute z-10 w-full bg-white border rounded-md mt-1 max-h-60 overflow-y-auto">
12
+ <div
13
+ v-if="showDropdown && showAddNew"
14
+ class="absolute z-10 w-full bg-white border rounded-md mt-1 max-h-60 overflow-y-auto"
15
+ >
13
16
  <ul>
14
- <li v-for="(item, index) in filteredLocations" :key="index" class="p-2 hover:bg-gray-100 cursor-pointer" @click="selectItem(item)">{{ item.Name }}</li>
17
+ <li
18
+ v-for="(item, index) in filteredLocations"
19
+ :key="index"
20
+ class="p-2 hover:bg-gray-100 cursor-pointer"
21
+ @click="selectItem(item)"
22
+ >
23
+ {{ item.Name }}
24
+ </li>
15
25
  </ul>
16
26
  <div class="p-2 hover:bg-gray-100 cursor-pointer" @click="addNewItem">
17
27
  <base-button
18
- iconName="fa-location-dot"
19
- label="Add New Location"
20
- type="secondary"
21
- v-on:click="showNewLocation = true"
28
+ iconName="fa-location-dot"
29
+ label="Add New Location"
30
+ type="secondary"
31
+ v-on:click="showNewLocation = true"
22
32
  />
23
33
  </div>
24
34
  </div>
25
35
  </div>
26
36
  <div v-if="showNewLocation">
27
- <BaseModal :show="showNewLocation" buttonText="Add Location" iconName="fa-location-plus"
28
- @submit-modal="handleSubmit" @update:show="showNewLocation = false">
37
+ <BaseModal
38
+ :show="showNewLocation"
39
+ buttonText="Add Location"
40
+ iconName="fa-location-plus"
41
+ @submit-modal="handleSubmit"
42
+ @update:show="showNewLocation = false"
43
+ >
29
44
  <template #modal-content>
30
- <BaseInput :addBorder="true" :invalid="false" :value="locationName" class="pb-2"
31
- placeholder="Enter Location Name" type="formInput" @focus="clearInput" @update:value="handleLocationName"/>
32
- <AddressAutocomplete v-model="formData.Address1" :invalid="validAddress" class="text-lg"
33
- @update:address="handleNewAddress"/>
45
+ <BaseInput
46
+ :addBorder="true"
47
+ :invalid="false"
48
+ :value="locationName"
49
+ class="pb-2"
50
+ placeholder="Enter Location Name"
51
+ type="formInput"
52
+ @focus="clearInput"
53
+ @update:value="handleLocationName"
54
+ />
55
+ <AddressAutocomplete
56
+ v-model="formData.Address1"
57
+ :invalid="validAddress"
58
+ class="text-lg"
59
+ @update:address="handleNewAddress"
60
+ />
34
61
  </template>
35
62
  </BaseModal>
36
63
  </div>
@@ -39,15 +66,15 @@
39
66
 
40
67
  <script>
41
68
  import BaseInput from '../../../Atoms/Input/BaseInput.vue';
42
- import BaseIcon from "../../../Atoms/Icon/BaseIcon.vue";
43
- import BaseButton from "../../../Molecules/Buttons/BaseButton/BaseButton.vue";
44
- import AddressAutocomplete from "../AddressAutocomplete/AddressAutocomplete.vue";
45
- import BaseModal from "../../../Molecules/Modals/BaseModal/BaseModal.vue";
46
- import BaseText from "../../../Atoms/Text/BaseText.vue";
69
+ import BaseIcon from '../../../Atoms/Icon/BaseIcon.vue';
70
+ import BaseButton from '../../../Molecules/Buttons/BaseButton/BaseButton.vue';
71
+ import AddressAutocomplete from '../AddressAutocomplete/AddressAutocomplete.vue';
72
+ import BaseModal from '../../../Molecules/Modals/BaseModal/BaseModal.vue';
73
+ import BaseText from '../../../Atoms/Text/BaseText.vue';
47
74
 
48
75
  export default {
49
76
  name: 'FindLocation',
50
- components: {BaseText, BaseModal, AddressAutocomplete, BaseButton, BaseIcon, BaseInput},
77
+ components: { BaseText, BaseModal, AddressAutocomplete, BaseButton, BaseIcon, BaseInput },
51
78
  emits: ['update:location', 'add-new', 'submit:addNewAddress', 'submit:location'],
52
79
  props: {
53
80
  placeholder: {
@@ -74,9 +101,9 @@ export default {
74
101
  data() {
75
102
  return {
76
103
  formData: {
77
- Name: "",
78
- Address1: "",
79
- Coordinates: ""
104
+ Name: '',
105
+ Address1: '',
106
+ Coordinates: ''
80
107
  },
81
108
  locationName: '',
82
109
  validAddress: false,
@@ -117,7 +144,7 @@ export default {
117
144
  this.showAddNew = true;
118
145
  this.inputValue = event.target.value;
119
146
 
120
- if (this.inputValue.trim() === "") {
147
+ if (this.inputValue.trim() === '') {
121
148
  this.$emit('update:location', null);
122
149
  } else {
123
150
  this.debounceSearch();
@@ -139,13 +166,13 @@ export default {
139
166
  if (!this.showDropdown) return;
140
167
  const searchValue = (value || '').toLowerCase();
141
168
  this.filteredLocations = this.locations.filter(item => {
142
- return ((item.Name || '').toLowerCase().includes(searchValue));
169
+ return (item.Name || '').toLowerCase().includes(searchValue);
143
170
  });
144
171
  },
145
172
  debounceSearch() {
146
173
  clearTimeout(this.debouncedTimeout);
147
174
  this.debouncedTimeout = setTimeout(() => {
148
- this.onInputChanged(this.inputValue)
175
+ this.onInputChanged(this.inputValue);
149
176
  }, 500);
150
177
  },
151
178
  handleLocationName(newName) {
@@ -158,12 +185,12 @@ export default {
158
185
  },
159
186
  handleNewAddress(newAddress) {
160
187
  const parts = newAddress.address.split(',');
161
- this.formData.Name = this.locationName
162
- this.formData.Address1 = parts[0].trim()
163
- this.formData.City = parts[1].trim()
164
- this.formData.State = parts[2].trim()
165
- this.formData.Coordinates = newAddress.coordinates
166
- this.inputValue = this.locationName
188
+ this.formData.Name = this.locationName;
189
+ this.formData.Address1 = parts[0].trim();
190
+ this.formData.City = parts[1].trim();
191
+ this.formData.State = parts[2].trim();
192
+ this.formData.Coordinates = newAddress.coordinates;
193
+ this.inputValue = this.locationName;
167
194
  this.$emit('submit:addNewAddress', this.formData);
168
195
  },
169
196
  handleSubmit() {
@@ -176,7 +203,7 @@ export default {
176
203
  if (this.$refs.showNewLocation && !this.$refs.showNewLocation.contains(event.target)) {
177
204
  this.restorePreviousValue();
178
205
  }
179
- },
206
+ }
180
207
  }
181
208
  };
182
- </script>
209
+ </script>
@@ -1,27 +1,26 @@
1
1
  import FindOrAddPerson from './FindOrAddPerson.vue';
2
2
  import mockPersons from '../../../../mocks/personGetAllMock.js';
3
- import clubGetAllMock from "../../../../mocks/clubGetAllMock.js";
3
+ import clubGetAllMock from '../../../../mocks/clubGetAllMock.js';
4
4
 
5
5
  export default {
6
- title: 'Organisms/ComplexInputs/FindOrAddPerson',
7
- component: FindOrAddPerson,
8
- tags: ['autodocs'],
9
- args: {
10
- persons: mockPersons,
11
- addBorder: true,
12
- },
13
- argTypes: {
14
- persons: { control: 'array' },
15
- addBorder: { control: 'boolean' },
16
- clubs: { control: 'array'}
17
- },
6
+ title: 'Organisms/ComplexInputs/FindOrAddPerson',
7
+ component: FindOrAddPerson,
8
+ tags: ['autodocs'],
9
+ args: {
10
+ persons: mockPersons,
11
+ addBorder: true
12
+ },
13
+ argTypes: {
14
+ persons: { control: 'array' },
15
+ addBorder: { control: 'boolean' },
16
+ clubs: { control: 'array' }
17
+ }
18
18
  };
19
19
 
20
-
21
20
  export const Default = {
22
- args: {
23
- addBorder:true,
24
- persons: mockPersons,
25
- clubs: clubGetAllMock
26
- }
27
- };
21
+ args: {
22
+ addBorder: true,
23
+ persons: mockPersons,
24
+ clubs: clubGetAllMock
25
+ }
26
+ };
@@ -1,21 +1,44 @@
1
1
  <template>
2
2
  <section>
3
- <BaseButton type="primary" :label="addNewText" size=" " class="text-xs md:text-md" iconName="fa-user-plus" @buttonClick="openSearchModal" />
3
+ <BaseButton
4
+ type="primary"
5
+ :label="addNewText"
6
+ size=" "
7
+ class="text-xs md:text-md"
8
+ iconName="fa-user-plus"
9
+ @buttonClick="openSearchModal"
10
+ />
4
11
 
5
- <BaseModal :show="showModal" :iconName="modalIcon" :buttonText="modalButtonText" :disableButton="!isSearchMode" @submit-modal="handleSubmit" @update:show="closeModal">
12
+ <BaseModal
13
+ :show="showModal"
14
+ :iconName="modalIcon"
15
+ :buttonText="modalButtonText"
16
+ :disableButton="!isSearchMode"
17
+ @submit-modal="handleSubmit"
18
+ @update:show="closeModal"
19
+ >
6
20
  <template #modal-content>
7
21
  <div v-if="isSearchMode">
8
22
  <BaseInput
9
- ref="searchInput"
10
- :addBorder="true"
11
- :value="inputValue"
12
- @input="updateInput"
13
- placeholder="Type to search person..."
14
- tabindex="0"
23
+ ref="searchInput"
24
+ :addBorder="true"
25
+ :value="inputValue"
26
+ @input="updateInput"
27
+ placeholder="Type to search person..."
28
+ tabindex="0"
15
29
  />
16
- <div v-if="showDropdown" class="absolute z-10 w-11/12 bg-eventBoxBlue rounded-md" :class="[filteredPersons.length > 0 ? 'border border-dropdownSelect mt-2 p-2' : 'mt-4']">
30
+ <div
31
+ v-if="showDropdown"
32
+ class="absolute z-10 w-11/12 bg-eventBoxBlue rounded-md"
33
+ :class="[filteredPersons.length > 0 ? 'border border-dropdownSelect mt-2 p-2' : 'mt-4']"
34
+ >
17
35
  <ul>
18
- <li v-for="(person, index) in filteredPersons" :key="index" @click="selectPerson(person)" class="p-2 my-2 hover:bg-dropdownSelect rounded-lg cursor-pointer">
36
+ <li
37
+ v-for="(person, index) in filteredPersons"
38
+ :key="index"
39
+ @click="selectPerson(person)"
40
+ class="p-2 my-2 hover:bg-dropdownSelect rounded-lg cursor-pointer"
41
+ >
19
42
  <p class="grid grid-cols-2 w-full">
20
43
  <BaseText :text="person.DisplayName" size="" class="text-xs md:text-md" />
21
44
  <BaseText :text="person.Club.ShortName" size=" " class="ml-4 text-xs md:text-md" />
@@ -37,16 +60,16 @@
37
60
 
38
61
  <script>
39
62
  import BaseInput from '../../../Atoms/Input/BaseInput.vue';
40
- import BaseButton from "../../../Molecules/Buttons/BaseButton/BaseButton.vue";
41
- import BaseText from "../../../Atoms/Text/BaseText.vue";
42
- import BaseModal from "../../../Molecules/Modals/BaseModal/BaseModal.vue";
43
- import DropDownMenu from "../DropDown/DropDownMenu.vue";
44
- import AddNewPerson from "../../../Organisms/Form/AddNewPerson/AddNewPerson.vue";
63
+ import BaseButton from '../../../Molecules/Buttons/BaseButton/BaseButton.vue';
64
+ import BaseText from '../../../Atoms/Text/BaseText.vue';
65
+ import BaseModal from '../../../Molecules/Modals/BaseModal/BaseModal.vue';
66
+ import DropDownMenu from '../DropDown/DropDownMenu.vue';
67
+ import AddNewPerson from '../../../Organisms/Form/AddNewPerson/AddNewPerson.vue';
45
68
 
46
69
  export default {
47
70
  name: 'FindOrAddPerson',
48
71
  emits: ['new-person-submitted', 'person-selected'],
49
- components: {AddNewPerson, DropDownMenu, BaseModal, BaseText, BaseButton, BaseInput },
72
+ components: { AddNewPerson, DropDownMenu, BaseModal, BaseText, BaseButton, BaseInput },
50
73
  props: {
51
74
  persons: {
52
75
  type: Array,
@@ -138,7 +161,9 @@ export default {
138
161
  },
139
162
  onInputChanged(value) {
140
163
  if (!this.showDropdown) return;
141
- this.filteredPersons = this.persons.filter(person => person.DisplayName.toLowerCase().includes(value.toLowerCase()));
164
+ this.filteredPersons = this.persons.filter(person =>
165
+ person.DisplayName.toLowerCase().includes(value.toLowerCase())
166
+ );
142
167
  },
143
168
  debounceSearch() {
144
169
  clearTimeout(this.debouncedTimeout);
@@ -149,20 +174,20 @@ export default {
149
174
  },
150
175
  closeModal(value) {
151
176
  this.showModal = value;
152
- this.inputValue = "";
177
+ this.inputValue = '';
153
178
  },
154
- clearFields(){
179
+ clearFields() {
155
180
  this.personName = '';
156
181
  this.personLegalName = '';
157
182
  this.personEmail = '';
158
183
  this.selectedPronouns = { text: '', link: '' };
159
- this.selectedClub = { text: '', link: '' };
184
+ this.selectedClub = { text: '', link: '' };
160
185
  },
161
186
  handleSubmit(newPerson) {
162
187
  this.$emit('new-person-submitted', newPerson);
163
188
  this.showModal = false;
164
189
  this.clearFields();
165
- },
190
+ }
166
191
  }
167
192
  };
168
193
  </script>
@@ -2,31 +2,31 @@ import FindPerson from './FindPerson.vue';
2
2
  import mockPersons from '../../../../mocks/personGetAllMock.js';
3
3
 
4
4
  export default {
5
- title: 'Organisms/ComplexInputs/FindPerson',
6
- component: FindPerson,
7
- tags: ['autodocs'],
8
- args: {
9
- persons: mockPersons,
10
- addNewText: "Add New Person"
5
+ title: 'Organisms/ComplexInputs/FindPerson',
6
+ component: FindPerson,
7
+ tags: ['autodocs'],
8
+ args: {
9
+ persons: mockPersons,
10
+ addNewText: 'Add New Person'
11
+ },
12
+ argTypes: {
13
+ locations: {
14
+ control: {
15
+ type: 'object'
16
+ }
11
17
  },
12
- argTypes: {
13
- locations: {
14
- control: {
15
- type: 'object'
16
- }
17
- },
18
- addNewText: {
19
- control: {
20
- type: 'text'
21
- }
22
- }
18
+ addNewText: {
19
+ control: {
20
+ type: 'text'
21
+ }
23
22
  }
23
+ }
24
24
  };
25
25
 
26
26
  export const Default = {
27
- args: {
28
- addBorder:true,
29
- locations: mockPersons,
30
- addNewText: "Add New Location"
31
- }
27
+ args: {
28
+ addBorder: true,
29
+ locations: mockPersons,
30
+ addNewText: 'Add New Location'
31
+ }
32
32
  };
@@ -2,15 +2,20 @@
2
2
  <section>
3
3
  <div v-if="!showNewPerson" class="relative">
4
4
  <BaseInput
5
- :addBorder="addBorder"
6
- :value="inputValue"
7
- @input="updateInput"
8
- placeholder="Type to search person..."
5
+ :addBorder="addBorder"
6
+ :value="inputValue"
7
+ @input="updateInput"
8
+ placeholder="Type to search person..."
9
9
  />
10
10
  <div v-if="showDropdown" class="absolute z-10 w-full bg-white border border-gray-300 rounded-md mt-1">
11
11
  <ul>
12
- <li v-for="(person, index) in filteredPersons" :key="index" @click="selectPerson(person)" class="p-2 hover:bg-gridBoxHeader cursor-pointer even:bg-eventBoxBlue">
13
- <div class="grid w-full" style="grid-template-columns: 1fr 2fr;">
12
+ <li
13
+ v-for="(person, index) in filteredPersons"
14
+ :key="index"
15
+ @click="selectPerson(person)"
16
+ class="p-2 hover:bg-gridBoxHeader cursor-pointer even:bg-eventBoxBlue"
17
+ >
18
+ <div class="grid w-full" style="grid-template-columns: 1fr 2fr">
14
19
  <BaseText :text="person.DisplayName" size="md" />
15
20
  <BaseText :text="person.Club.Name" size="md" class="ml-4" />
16
21
  </div>
@@ -18,22 +23,60 @@
18
23
  </ul>
19
24
  <div @click="addNewPerson" class="p-2 hover:bg-gray-100 cursor-pointer">
20
25
  <base-button
21
- type="secondary"
22
- label="Add New Person"
23
- iconName="fa-user-plus"
24
- v-on:click="showNewPerson = true"
26
+ type="secondary"
27
+ label="Add New Person"
28
+ iconName="fa-user-plus"
29
+ v-on:click="showNewPerson = true"
25
30
  />
26
31
  </div>
27
32
  </div>
28
33
  </div>
29
- <div v-if="showNewPerson" >
30
- <BaseModal :show="showNewPerson" iconName="fa-user" buttonText="Add Person" @submit-modal="handleSubmit" @update:show="showNewPerson = false">
34
+ <div v-if="showNewPerson">
35
+ <BaseModal
36
+ :show="showNewPerson"
37
+ iconName="fa-user"
38
+ buttonText="Add Person"
39
+ @submit-modal="handleSubmit"
40
+ @update:show="showNewPerson = false"
41
+ >
31
42
  <template #modal-content>
32
43
  <BaseText class="pb-2" text="Enter Primary Contacts Information" />
33
- <BaseInput :addBorder="true" :invalid="false" :value="personName" class="pb-2" placeholder="Display Name" type="formInput" @update:value="value => personName = value"/>
34
- <BaseInput :addBorder="true" :invalid="false" :value="personName" class="pb-2" placeholder="Legal Name" type="formInput" @update:value="value => personName = value"/>
35
- <BaseInput :addBorder="true" :invalid="false" :value="personEmail" class="pb-2" placeholder="Email" type="formInput" @update:value="value => personEmail = value"/>
36
- <BaseInput :addBorder="true" :invalid="false" :value="personPronouns" class="pb-2" placeholder="Pronouns" type="formInput" @update:value="value => personPronouns = value"/>
44
+ <BaseInput
45
+ :addBorder="true"
46
+ :invalid="false"
47
+ :value="personName"
48
+ class="pb-2"
49
+ placeholder="Display Name"
50
+ type="formInput"
51
+ @update:value="value => (personName = value)"
52
+ />
53
+ <BaseInput
54
+ :addBorder="true"
55
+ :invalid="false"
56
+ :value="personName"
57
+ class="pb-2"
58
+ placeholder="Legal Name"
59
+ type="formInput"
60
+ @update:value="value => (personName = value)"
61
+ />
62
+ <BaseInput
63
+ :addBorder="true"
64
+ :invalid="false"
65
+ :value="personEmail"
66
+ class="pb-2"
67
+ placeholder="Email"
68
+ type="formInput"
69
+ @update:value="value => (personEmail = value)"
70
+ />
71
+ <BaseInput
72
+ :addBorder="true"
73
+ :invalid="false"
74
+ :value="personPronouns"
75
+ class="pb-2"
76
+ placeholder="Pronouns"
77
+ type="formInput"
78
+ @update:value="value => (personPronouns = value)"
79
+ />
37
80
  </template>
38
81
  </BaseModal>
39
82
  </div>
@@ -42,14 +85,14 @@
42
85
 
43
86
  <script>
44
87
  import BaseInput from '../../../Atoms/Input/BaseInput.vue';
45
- import BaseButton from "../../../Molecules/Buttons/BaseButton/BaseButton.vue";
46
- import BaseText from "../../../Atoms/Text/BaseText.vue";
47
- import BaseModal from "../../../Molecules/Modals/BaseModal/BaseModal.vue";
88
+ import BaseButton from '../../../Molecules/Buttons/BaseButton/BaseButton.vue';
89
+ import BaseText from '../../../Atoms/Text/BaseText.vue';
90
+ import BaseModal from '../../../Molecules/Modals/BaseModal/BaseModal.vue';
48
91
 
49
92
  export default {
50
93
  name: 'FindPerson',
51
94
  emits: ['add-new-person', 'person-selected'],
52
- components: {BaseModal, BaseText, BaseButton, BaseInput},
95
+ components: { BaseModal, BaseText, BaseButton, BaseInput },
53
96
  props: {
54
97
  persons: {
55
98
  type: Array,
@@ -110,16 +153,18 @@ export default {
110
153
  },
111
154
  onInputChanged(value) {
112
155
  if (!this.showDropdown) return;
113
- this.filteredPersons = this.persons.filter(person => person.DisplayName.toLowerCase().includes(value.toLowerCase()));
156
+ this.filteredPersons = this.persons.filter(person =>
157
+ person.DisplayName.toLowerCase().includes(value.toLowerCase())
158
+ );
114
159
  },
115
160
  debounceSearch() {
116
161
  clearTimeout(this.debouncedTimeout);
117
162
  this.debouncedTimeout = setTimeout(() => {
118
- this.onInputChanged(this.inputValue)
163
+ this.onInputChanged(this.inputValue);
119
164
  }, 500);
120
165
  },
121
166
  handleSubmit() {
122
- console.log('submitting person')
167
+ console.log('submitting person');
123
168
  }
124
169
  }
125
170
  };
@@ -1,20 +1,20 @@
1
1
  import GenericImageCropper from './ImageCropper.vue';
2
2
 
3
3
  export default {
4
- title: 'Organisms/ComplexInputs/ImageCropper',
5
- component: GenericImageCropper,
6
- tags: ['autodocs'],
7
- args: {},
8
- argTypes: {
9
- personID: {
10
- control: 'number',
11
- description: 'The ID of the person for the image cropper'
12
- },
13
- },
4
+ title: 'Organisms/ComplexInputs/ImageCropper',
5
+ component: GenericImageCropper,
6
+ tags: ['autodocs'],
7
+ args: {},
8
+ argTypes: {
9
+ personID: {
10
+ control: 'number',
11
+ description: 'The ID of the person for the image cropper'
12
+ }
13
+ }
14
14
  };
15
15
 
16
16
  export const Default = {
17
- args: {
18
- personID: 1,
19
- }
17
+ args: {
18
+ personID: 1
19
+ }
20
20
  };
@@ -1,26 +1,23 @@
1
1
  <template>
2
2
  <section class="flex w-full justify-center">
3
- <img v-if="!uploading"
4
- :src="displayedUrl"
5
- :class="getClasses"
6
- :style="customStyle"
7
- :alt="displayedUrl"
8
- @error="onImageError"
9
- @click="setShowCropper()"
10
- />
11
- <div v-if="uploading"
12
- :class="getSkeletonClass"
13
- @error="onImageError"
14
- @click="setShowCropper()"
3
+ <img
4
+ v-if="!uploading"
5
+ :src="displayedUrl"
6
+ :class="getClasses"
7
+ :style="customStyle"
8
+ :alt="displayedUrl"
9
+ @error="onImageError"
10
+ @click="setShowCropper()"
15
11
  />
12
+ <div v-if="uploading" :class="getSkeletonClass" @error="onImageError" @click="setShowCropper()" />
16
13
  <avatar-cropper
17
- v-model="showCropper"
18
- :upload-url="`${uploadServer}${uploadImageName}`"
19
- :cropper-options="cropperOptions"
20
- @uploading="handleUploading"
21
- @uploaded="handleUploaded"
22
- @completed="handleCompleted"
23
- @error="handlerError"
14
+ v-model="showCropper"
15
+ :upload-url="`${uploadServer}${uploadImageName}`"
16
+ :cropper-options="cropperOptions"
17
+ @uploading="handleUploading"
18
+ @uploaded="handleUploaded"
19
+ @completed="handleCompleted"
20
+ @error="handlerError"
24
21
  />
25
22
  </section>
26
23
  </template>
@@ -29,7 +26,7 @@
29
26
  import AvatarCropper from 'vue-avatar-cropper';
30
27
  import SelectAnProfile from '../../../../assets/select-profile.png';
31
28
  import SelectAnImage from '../../../../assets/select-tournament.png';
32
- import loading from '../../../../assets/loading-spinner.gif'
29
+ import loading from '../../../../assets/loading-spinner.gif';
33
30
 
34
31
  export default {
35
32
  name: 'GenericImageCropper',
@@ -94,10 +91,14 @@ export default {
94
91
  return this.localImageUrl || (this.isProfile ? SelectAnProfile : SelectAnImage);
95
92
  },
96
93
  getClasses() {
97
- return this.customClass ? this.customClass : "h-52 w-80 border-2 border-dashed rounded-lg bg-contain bg-contain bg-center bg-no-repeat"
94
+ return this.customClass
95
+ ? this.customClass
96
+ : 'h-52 w-80 border-2 border-dashed rounded-lg bg-contain bg-contain bg-center bg-no-repeat';
98
97
  },
99
98
  getSkeletonClass() {
100
- return this.customSkeletonClass ? this.customSkeletonClass : "border-2 h-52 w-80 border-dashed rounded-lg bg-quaternaryHighlight animate-pulse"
99
+ return this.customSkeletonClass
100
+ ? this.customSkeletonClass
101
+ : 'border-2 h-52 w-80 border-dashed rounded-lg bg-quaternaryHighlight animate-pulse';
101
102
  }
102
103
  },
103
104
  methods: {
@@ -105,10 +106,10 @@ export default {
105
106
  this.showCropper = true;
106
107
  },
107
108
  handleUploading() {
108
- this.uploading = true
109
+ this.uploading = true;
109
110
  },
110
111
  handleUploaded(response) {
111
- this.uploading = false
112
+ this.uploading = false;
112
113
  if (response.response.status === 200) {
113
114
  this.localImageUrl = `${this.imageServer}${this.uploadImageName}.png`;
114
115
  this.$emit('update:url', `${this.imageServer}${this.uploadImageName}.png`);