Commit Graph

444 Commits

Author SHA1 Message Date
Kalle
3634b85422 Team: Manage roster tests + fixes 2023-01-12 20:57:22 +02:00
Kalle
e83943abb1 Team page: Initial tests 2023-01-12 00:57:37 +02:00
Kalle
65bd4561e3 Teams: Add to nav 2023-01-11 09:59:23 +02:00
Kalle
9fecc35839 Upload image page 2023-01-10 00:06:24 +02:00
Kalle
b922b54d5b Team: Leave feature 2023-01-06 16:33:37 +02:00
Kalle
77de97a406 User page: Team info 2023-01-06 16:33:37 +02:00
Kalle
9d9ffac6e9 Teams: Edit page 2023-01-04 23:03:46 +02:00
Kalle
2538801333 Upgrade deps 2022-12-28 23:34:31 +02:00
Kalle
eed5c0646f User page: Use image for flag 2022-12-27 22:28:28 +02:00
Kalle
fd28e382ec Team: Flags from data 2022-12-27 22:23:41 +02:00
Kalle
1a8c2fc892 Use SubmitButton in various places 2022-12-25 12:00:17 +02:00
Kalle
f81451b0c0 Map planner to feature folder 2022-12-22 21:33:02 +02:00
Kalle
6feb269193
Full tournament feature WIP (#1196)
* Layout initial

* Add FillRosterSection component

* Move tournaments to feature folder

* Refactor Button props

* SubmitButton

* Register action

* Identifier -> Id

* Invite link via nanoid

* Team info submit

* Enter tiebreaker map list UI

* Invite members to tournament team initial

* Show banner if joined a team not captain of

* Add back teams page

* Change team roster size color when good

* Delete tournament team member
2022-12-21 23:24:59 +02:00
Kalle
d8136f3262 Fix Combobox full widthness 2022-12-15 18:22:43 +02:00
Kalle
7945e1ecc7 User page: weapon pool 2022-12-13 18:51:06 +02:00
Kalle
23e78f7033 Initial user page e2e tests 2022-12-13 18:51:06 +02:00
Kalle
c3963223b6
Add initial Playwright tests (#1191) 2022-12-11 17:18:33 +02:00
Kalle
5b1da140df Fix React warning with combobox 2022-12-10 21:06:35 +02:00
Kalle
0fd1bc0e2b Map Planner: TC Blueprint backgrounds 2022-12-10 20:44:19 +02:00
Kalle
714fa0585f BuildCard: Show Plus Status when showing user 2022-12-08 22:35:51 +02:00
Kalle
7d44cc1b44 BuildCard: Modes from popup to top right 2022-12-08 22:24:23 +02:00
Kalle
26e43b2ead Restore light mode 2022-12-08 21:29:51 +02:00
Kalle
06c43e8f0a User search page
Closes #1032
2022-12-05 21:58:12 +02:00
Kalle
8c6a5e67a0 Make "sendou.ink" never show ellipsis 2022-12-05 18:49:27 +02:00
Kalle
34ca290bdd
Redesign (#1179)
* Remove light mode

* Trim header

* New front page initial

* Get rid of build layout

* Breadcrumbs

* Desktop side nav

* Overhaul colors

* Add breadcrumbs

* New sub nav style

* Front page action buttons

* Add back add new build button

* Add articles page with icon

* Minor Object damage page layout tweaks

* Remove one unnecessary render from object damage

* Fix wrong link in article page

* Profile -> My Page in header

* Log in/out buttons in front

* Add drawings to front page

* Remove unnecessary comment
2022-12-05 16:05:51 +02:00
William Lam
fe65b42d9f
BuildCard: Link to weapon builds page (#1167)
* Feature Implementation: Weapon icon on build card now links to the builds page that contains all builds corresponding to said weapon

* Refactor to an actual React hook

* Refactored the URL construction for the Weapon Builds page to urls.ts

* Changes

Co-authored-by: Kalle <38327916+Sendouc@users.noreply.github.com>
2022-11-27 17:46:10 +02:00
Kalle
47899b5bf2 Calendar: Add feature to delete an event
Closes #1121
2022-11-26 18:17:57 +02:00
Kalle
1648e28ba9 BuildCard: Better title wrapping and alignment
Closes #1163
2022-11-26 17:08:00 +02:00
Kalle
bbf0e9a034 BuildCard: Move mode icons inside popup 2022-11-26 16:42:20 +02:00
Kalle
bb722b225f Move all immutable assets to one folder
Closes #918
2022-11-26 16:33:43 +02:00
Kalle
3b418be3fb Planner: Add link to go back to home page
Closes #1153
2022-11-23 22:12:40 +02:00
Kalle
6061c9672a Fix nanoid warning by replacing it with own function
Closes #1160
2022-11-23 21:15:42 +02:00
Kalle
aea7406586
Map Planner (#1145)
* Initial

* Add images

* Tweaks

* Proper sized bg image and weapons

* Stage bg picker

* Outlined weapon images for planner

* First version

* Lint

* Add alt and title to weapon
2022-11-23 17:38:38 +02:00
Remmy Cat Stock
0bfa16eb3f Re-enable bulk edit controls for map pools when logged out 2022-11-19 16:29:55 +01:00
William Lam
f704f97be3
External links are now opened in a new tab (#1136)
- Reference: https://bobbyhadz.com/blog/react-open-link-in-new-tab#open-a-link-in-a-new-tab-in-react
2022-11-19 16:12:42 +02:00
Kalle
ecd5a2a2f7
TO Tools (#1077)
* Add DB tables

* Toggle TO Tools in new calendar event page

* TO tools page initial

* Add counter pick map pool UI

* Save tie breaker map pool

* Save team name

* Layout initial

* Load users own team

* Make team name input required

* Rename team

* Divide to sections

* Submit team map pool

* New style for counter pick map pool section expand

* Fix tiebreaker map pool not saved when new event made

* Split to many forms

* According for team name

* Small UI consistency tweaks

* Add explanation to tie breaker maps

* Remove redundant prop

* Fix new calendar event todos

* Use required hidden input component in new build page

* Fix to tools page showing even when toToolsEnabled = 0

* Delete team

* Map list generation tests initial

* Add tournament map list generation tests

* First version of map list generation

* Add seeded RNG

* Rearrange files

* Generation with strats initial

* Default map pool + allow one team not to have any maps

* Implement map generation via backtracking

* Make order of stages irrelevant

* Add one more TODO

* Seed

* Fixes

* Tournament map list generator initial

* More functional maplist

* Fix any

* Persist in search params initial

* Add date to calendar seed

* Revert "Persist in search params initial"

This reverts commit f01a9e6982.

* Allow admin to start tournament

* Rate maplist instead of optimal / suboptimal

* Add fallback if map list generation errors out

* Hide TO Tools if not admin

* Submit team roster and delete members

* Teams page

* Give roster s p a c e

* Clear user combobox on sent + layout tweaks

* Gracefully handle updating after tournament has started

* Add title

* Persist map list in search params

* Add i18n
2022-11-13 14:41:13 +02:00
Kalle
ffe5839635 Add copyright note
Closes #1103
2022-11-09 00:24:50 +02:00
Remmy Cat Stock
a73be2e742
Add placement ordinal translation (#1102) 2022-11-06 11:18:03 +01:00
Remmy Cat Stock
222529b454 Make LanguageChanger respect existing search params 2022-11-05 14:51:22 +01:00
Remmy Cat Stock
2fa18547b0 Wrap useTranslation to detect missing translations on the route 2022-11-05 14:45:12 +01:00
Remmy Cat Stock
b4f8e4402e Make date input more reliable by handling invalid dates and different browser behaviours 2022-11-05 14:44:08 +01:00
Remmy Cat Stock
19fbd85f8f
Add auto theme option for detecting the theme from system/browser preferences (#1083)
* Add "auto" option to theme switcher

* Add labels to language and user menu buttons

* Update translation-progress.md
2022-11-03 01:44:56 +01:00
Remmy Cat Stock
1888168115
Fix potential bug from mutating matches state 2022-11-01 00:54:53 +01:00
William Lam
09851faf83
New Date entry on the new Calendar page is now based off the previous one (#1070)
* Issue 858: On the new calendar page adding a new Date entry with the "Add" button will now insert a new date with an offset of +24 hours of the previous row's date value.

* Added comment to ignore the TSLint "object can be null" error

* Changed `var` to `const`

* Fixed Prettier checks in CI pipeline

* Fixed Typecheck CI pipeline error

* Moved getDateWithHoursOffset() function to app/utils/dates.ts

* Added new line at end of file

* Added getValidNewDateIfInvalid() function. This retrieves a valid date. If invalid, get a new Date object.
- So now, if we intentionally/accidentally delete the data in the Calendar's DateInput element, it will be reset to the current Date/Time

* Refactored DateInput component's update state mechanism to be handled by an onChange() function defined in the parent component that is passed to the child

* Prettier formatting so that the new CI pipeline won't output errors at me

* Removed unused imported types

* Removed the datesCount React Hook & refactored accordingly

* Removed unused loader-related variables

* DateInput onChange prop is now optional

* Instead of generating a new Array, iterate over DateInput's inputState's array instead

* Fix potential undefined error

* DatesInputState: refactored to remove index & access the index during iteration with map() 2nd arg

* Properly initialized state for pre-existing events =)
- Also added TODO comments for improving date input handling (1082)

* Prettier formatting

* Uncommented console.warn()

* Touched up comment
2022-10-31 03:59:51 +01:00
William Lam
d9689694b4
UserComboBox only one result if exact discord ID match (#1075)
* Passed a FUSE_OPTIONS object to the Fuse() object.
- We can now adjust how "strict" the search is.

* Refactored Combobox to accept an optional fuseOptions object as a prop

* Fixed fuseOptions prop data type & added a default initialized value of {}
- Moved the USER_COMBOBOX_FUSE_OPTIONS outside of the function
2022-10-30 16:34:18 +02:00
William Lam
924ae8bfff
Fix abilities appearing clickable when they aren't (#1057)
* Issue 1036: non-draggable ability icons will no longer have its cursor morphed to a pointing hand icon

* Revert "Issue 1036: non-draggable ability icons will no longer have its cursor morphed to a pointing hand icon"

This reverts commit a0de4e0047.

* Issue 1036: Non-draggable ability icons will no longer have its cursor morphed to a pointing hand icon.
- Done correctly by conditionally choosing to render a <button /> or <div /> HTML element for ability icons everywhere Ability() was invoked by passing in readonly

* Removed stray console.warn() line, added a brief comment

* Removed unnecessary tabIndex adjustment for AbilityTag element if it is readonly (since it is no longer rendered as a button if it is readonly)
- We now also condtionally give type="button" to AbilityTag only if it is actually a button

* Conditionally set AbilitiesSelector's Ability JSX elements to readonly if the ability is "UNKNOWN"

* Fixed failed check for Prettier in CI pipeline

* Ability component now only chooses the readonly class if no onClick function is passed into it
- Exception: if the ability is "UNKNOWN", it will be forced to readonly

* Fixed Prettier error in CI pipeline

* Fixed Typecheck error in BuildCard.tsx

* Fixed Prettier CI pipeline error again

* Was checking for an undefined type incorrectly. Now the logic works properly

* Fixed Prettier error

* Cleaned up classname declaration syntax to React's shorthand
2022-10-30 10:38:03 +02:00
Kalle
e97fcd4e99 Remove Cypress tests
Planned to be replaced with Playwright maybe?
Just removing in the meanwhile so they don't confuse people.
Or that people won't accidentally develop new.
2022-10-30 02:15:15 +03:00
Kalle
b407127b36 Build card gear name title on hover 2022-10-29 21:46:39 +03:00
Kalle
0af5f262f5 Fix wpn in build card not showing title on hover 2022-10-29 21:07:06 +03:00
Kalle
6019b0f906 Perf optimization: prefetch pages without loader 2022-10-28 09:26:45 +03:00