Commit Graph

290 Commits

Author SHA1 Message Date
Kalle
7f9c9f25fb
Homemade badges (#1894)
* Initial

* Author info

* Add docs
2024-09-29 13:49:27 +03:00
Kalle
59d77642e5
Bluesky for user & team pages (#1891)
* Migrations

* Bluesky for team page

* Unify interfaces

* For user page

* To org social links
2024-09-28 10:43:49 +03:00
Kalle
687b7f5126 Upgrade deps 2024-09-14 15:01:09 +03:00
Kalle
8405be6f26 Migrate to vitest, unskip suites Closes #1846 2024-09-14 14:34:41 +03:00
Kalle
1c9dcacbf2
Join many teams & front page changelog (#1880)
* Initial

* Progress

* Changelog initial

* Progress

* E2E test
2024-09-14 12:31:05 +03:00
Kalle
20a0615900 Add "listen only" vc option for tournament subs 2024-09-01 13:31:40 +03:00
Kalle
ba12a61ba9 Add TO permissions via UI 2024-08-25 11:29:35 +03:00
Kalle
56b245d586 Back to Node.js from Bun (for runtime) 2024-08-24 12:46:21 +03:00
Kalle
19435dd75f
Prepare maps for brackets ahead of time (#1845)
* Prepared maps works for RR

* Refactor generateMatchesData

* Refactor rounds

* Initial prepare for SE/DE

* Share maps between brackets

* Todos

* resetPreparedMaps

* Bias SZ & reset prepared maps

* Trimming initial + tests initial

* Elimination trimming basic case

* Include group id

* Implemented all tests

* TODOs

* Better prepared maps submitted UX

* Small CSS tweaks

* Done

* Remove TODO
2024-08-24 12:10:36 +03:00
Kalle
700a309e7f
Migrate Node -> Bun (#1827)
* Initial

* Faster user page

* Remove redundant function

* Favorite badge sorting

* Upgrade deps

* Simplify entry.server

* Bun tests initial

* Update package.json npm -> bun

* Update README

* Type safe translations again

* Don't load streams info for finalized tournaments

* Translations as an object

* More unit test work

* Convert match.server.test

* test

* test

* test

* test

* test

* test

* test

* test

* test

* test

* test

* test

* test

* test

* test

* test

* test

* Test & all done

* Working cf

* Bun GA try

* No cache

* spacing

* spacing 2

* Add SQL logging

* Remove NR

* Hmm

* Hmm 2

* Interesting

* SKALOP_SYSTEM_MESSAGE_URL

* .

* .

* ?

* .

* ?

* Server.ts adjust

* Downgrade Tldraw

* E2E test fix

* Fix lint
2024-08-11 16:09:41 +03:00
Kalle
f6da215c4a Improve functionalities when next season not in the system yet (prevent crashes etc.) 2024-08-04 17:19:37 +03:00
David Rackerby
b08031d6e0
Add an option to sort by public or private builds on a user's own builds page (#1814)
* Revise weapon pool sorting:  alternate kits compare equal

* Fix linting errors

* Added public/private build sorting option to user builds page
2024-08-04 11:25:21 +03:00
Kalle
9312fad90f
Tournament organization page (#1811)
* Initial

* Calendar initial

* Extract EventCalendar

* Events list initial

* Winners

* SQL fixes

* List events by series

* Leaderboards

* Series leaderboard

* Own entry peek

* Edit page skeleton

* RHF initial test

* RHF stuff

* Form etc. progress

* Fix tournament series description

* Fix tabs layout

* Fix socials insert

* Check for not removing admin

* Adding series

* TODOs

* Allow updating org with no series

* FormFieldset

* Allow series without events

* TextAreaFormfield accepting array syntax

* Input form array field

* ToggleFormField

* SelectFormField

* UserSearchFormField

* Fetch badgeOptions

* Badge editing

* Progress

* Use native preventScrollReset

* Rename func

* Fix sticky scroll

* Fix translation

* i18n errors

* handle,meta in edit

* Add ref to user search

* TODOs

* Done
2024-07-25 23:06:29 +03:00
xi
51731d79e2
Add "looking for individual coaching" and "looking for scrim partners" options (#1775)
* Add looking for individual coaching

* Fix LFGType table, remove unnecessary constant

* Fix LFGType table, amend unnecessary constant

* Resolve Type Errors (#1)

TypeScript is interpreting LFG_TYPES as an arbitrary length array of LFGType, rather than a string enum.

* Add "looking for scrim partner" option

---------

Co-authored-by: cysabi <47790183+cysabi@users.noreply.github.com>
2024-06-26 16:28:24 +03:00
Kalle
093e4d2e66 Sort user profile builds Closes #1233 2024-06-26 15:58:46 +03:00
Kalle
fd48bced91
Migrate Prettier/Eslint/Stylelint setup to Biome (#1772)
* Initial

* CSS lint

* Test CI

* Add 1v1, 2v2, and 3v3 Tags (#1771)

* Initial

* CSS lint

* Test CI

* Rename step

---------

Co-authored-by: xi <104683822+ximk@users.noreply.github.com>
2024-06-24 13:07:17 +03:00
Kalle
c5a051a1e1 Support for 1v1, 2v2 & 3v3 tournaments 2024-06-23 14:45:14 +03:00
Kalle
af60cf3457 Battlefy account 2024-06-23 11:26:53 +03:00
Kalle
2c5004f623
Logos for tournament pickups (#1768)
* Progress

* Adjust when elements show up etc.

* Reorganize

* Can upload

* Delete logo admin action

* Filter out avas pre-start

* Util func

* Remove old code

* Fixes
2024-06-22 14:35:04 +03:00
Kalle
e952093eaa Add tournament data caching 2024-06-13 23:07:53 +03:00
Kalle
f9e45fbdaa Sub counts clean up 2024-06-10 19:21:18 +03:00
Kalle
5452a30c63 Remove redundant "inProgressStages" 2024-06-10 18:49:01 +03:00
Kalle
89a50ca24f Remove legacy tournament map list generator 2024-06-09 11:42:06 +03:00
Kalle
890b73f7a1
Tournament require IGNs option (#1760)
* Initial

* Edit IGN from profile

* Admin action

* Show IGN

* Toggle visibility
2024-06-09 11:23:00 +03:00
Kalle
bfce8d9646
Custom name (#1754)
* Migration and edit

* Migrate from discordName

* discordDiscriminator
2024-06-03 22:20:21 +03:00
Kalle
2b53c348e6 Switch to own invariant that logs errors in prod 2024-06-02 14:34:01 +03:00
Kalle
518e521e09
Active rosters & organizer revise rosters/score (#1743)
* Initial

* Fix migration order

* Edit score initial

* Can edit points

* Fix failing test

* Rename var

* Remove done TODO

* Rename organizerEditing

* Inactive style for score label

* E2E tests
2024-06-02 11:51:19 +03:00
Andres Villagra
57a0dd7e62
Added support for sharing a filter set using the URL (#1739) 2024-06-01 10:21:03 +03:00
Kalle
a4a8af94dc
User submitted tournament logos (#1742)
* Can upload

* Remove avif tournament logos

* Progress

* TODOs

* Update logic

* Approval

* Fix e2e test
2024-05-26 10:55:34 +03:00
Kalle
4beb2bdfdd
LFG (#1732)
* Initial

* Can post new

* Load team

* seed + loader posts

* LFGPost render initial

* More UI work

* Tiers

* sticky left

* Mobile

* new.tsx work

* TeamLFGPost component initial

* Full team member list

* Add TODO

* Delete post action

* Edit post etc.

* Delete team posts when team disbands

* Prevent adding same post type twice in UI

* Post expiry logic

* Fix layout shift

* Filters initial

* Progress

* Weapon filtered implemented

* Weapon alt kits in filtering

* + visibility

* i18n

* E2E test

* Team = null
2024-05-19 13:43:59 +03:00
Kalle
bf3073c1fc Invite only events + strict deadlines Closes #1709 2024-04-28 12:11:24 +03:00
Kalle
f19ec211d8
Swiss bracket format (#1723)
* Initial

* Swiss UI initial

* Start Swiss bracket

* Match up generation skeleton

* Bracket advancing

* Misc

* Progress

* Remove unneeded script

* Timed bans feature

* Add badge

* Add tournament logo

* Add Heavy Splatling MoveSpeed_Charge Closes #1461

* Require verified email for new account registration

* Weapon stats/builds use absolute URL

* Allow mod to ban users

* Prevent app from crashing on unhandled rejection

Context: https://github.com/remix-run/remix/issues/9178#issuecomment-2032102431

* Try changing authenticate call to match docs example

* Limit fresh account queue joining

* Fix tournament avatar not showing

* Limit when weapon shown on leaderboard

* Nuke reported weapons script

* FC scripts

* Increase tournament rules max length

* Add Discord URL to tournament page

* Hotfix reopen

* Fix matchAffectsAnotherBracket logic better

* Switch to Patreon API v2 Closes #1389

Also fixes problem with people who canceled not
getting access.

* Fix reset showing for first round

* Dropping out

* Progress

* Range inputs

* better way to create rounds

* Fix TODO

* E2E test

* Small round count info text

* Fix lint
2024-04-21 22:45:33 +03:00
Kalle
7f25bbcd78 Timed bans feature 2024-04-11 20:59:05 +03:00
Kalle
b98b4af1ea
Ban/pick etc. (#1716)
* To BracketMapListDialog

* Working map list dialog + UI work

* Rename components

* Working version

* Counterpick info text

* PickBan

* Rearrange loader

* Working BAN_2

* Show error msg if pick/ban style selected but no rounds have it enabled

* OrganizerMatchMapListDialog

* Prepicked BAN_2

* Starter finder structure

* Prepicked + counterpick

* PLAY_ALL & visible chat to TO's after finalize

* Tweaks and handling edge cases

* Play all e2e test

* Allow viewing tournament info when it has started

* Desc markdown support

* Rules

* calendar.new loader refactor

* baseEvent refactor

* w/ staff

* Add 1h30min reg closes time

* As team

* Fix E2E test

* E2E tests

* MiniCheckinInfoBanner
2024-03-31 10:36:22 +03:00
Kalle
5078df30af Autonomous subs + reg closes feature 2024-03-18 22:28:43 +02:00
Kalle
8c3e78c2ba Screen toggle option for tournaments Closes #1686 2024-03-16 14:11:37 +02:00
Kalle
9c645fbad2 Fix everyone showing as subs in seed 2024-03-16 11:50:45 +02:00
Kalle
29d99c258b
TO maplist/best of picking.& bracket start dialog (#1696)
* Initial

* Seed with to set map pool

* BracketStarter frontend

* First working

* Changing best of

* Fix roundMaps can be null

* Working for DE

* Start SE bracket

* Best of selection by round

* Move function

* updateRoundMaps to transaction

* Check in many in trx

* Show warning if no map pool set

* E2E tests

* After review

* Resolve TODO & adjust imports

* Tweak round sorting
2024-03-15 00:00:37 +02:00
Kalle
97b97dc815 Auto check in all feature Closes #1687 2024-03-10 14:42:27 +02:00
Kalle
be87a88544 Reset bracket feature Closes #1574 2024-03-07 17:45:53 +02:00
Kalle
0a82554530 Host tournaments as unranked Closes #1681 2024-03-04 21:36:00 +02:00
Kalle
ba0715152d 3rd place match Closes #1680 2024-03-03 23:56:17 +02:00
Kalle
93ebb6e369 Migrate to Vite 2024-02-24 21:12:54 +02:00
Kalle
72fa1f68c8
Season 3 SendouQ changes (#1674)
* Mode Map Pool picker component initial

* Component in settings

* Lottery initial

* Fix tests

* useTrusters as perf optimization

* unionAll -> union

* Fancy picker for tournaments

* Map pools memento

* FC's initial

* Friend code when registering for tournament

* FC in flows

* SHow FC in places

* Add catch in case

* Fix disabling

* Show ELO changed

* Wiggle MapPool button if already selected

* CSS vars typing

* Rechallenging

* Team (all) leaderboard

* Preview groups

* Fix chat width changing

* Solid reported weapons

* Clearer cancel requested header

* Dynamic revalidates

* spDiff from memento

* (Partly) Revert "Remove screen banning"

This reverts commit 076cabfbfa.

* Screen indicators in looking view

* FC i18n

* noscreen = 0

* E2E test

* E2E 2
2024-02-24 12:07:17 +02:00
Kalle
eae3d529e2
Bracket component rewrite (#1653)
* Remove old code

* Add prefetching

* Elim bracket initial

* Hide rounds with only byes

* Round hiding logic

* Align stuff

* Add TODO

* Adjustments

* Deadline

* Compactify button

* Simulations

* Round robin bracket initial

* eventId -> tournamentId

* seedByTeamId removed

* Couple more TODOs

* RR placements table

* Locking matches

* Extract TournamentStream component

* Bracket streams

* Remove extras for tournament-manager, misc

* Fix E2E tests

* Fix SKALOP_SYSTEM_MESSAGE_URL in env.example

* TODOs

* TODO moved to GitHub

* Handle team changing in match cache invalidation

* Fix streamer seeing undo last score button

* Show "Sub" badge on team roster page

* Show who didn't play yet on match teams preview

* Ranked/unranked badge

* Bracket hover show roster

* Add lock/unlock match test

* Fix score reporting
2024-02-11 10:49:12 +02:00
Kalle
c43d48f930 Upgrade deps 2024-02-03 10:20:21 +02:00
Kalle
f969e86ea0 Better UX when trying to pick a tiebreaker map + misc things 2024-02-01 20:49:51 +02:00
Kalle
144da5d158
Tournament groups->SE, underground bracket etc. (#1628)
* Renders groups

* Bracket data refactoring

* Starting bracket working (first bracket only)

* TODOs + crash fix

* Source bracket logic initial

* Bracket progression (DE underground bracket)

* Preview working for second bracket

* Bracket nav initial

* Check-in to bracket feature

* Start Underground bracket

* Team/teams pages tweaks to support underground bracket

* Underground bracket finalization progress

* Tournament class

* id -> userId + more useOutletContext removed

* Bracket loader refactored out

* Migrate admin to useTournament

* Bracket.settings

* Slim tournament loader

* Fix useEffect infinite loop

* Adjust waiting for teams text

* Refactor old tournament DB call from to admin

* Admin action: check in/out from specific bracket

* Standings work

* Back button from match page -> correct bracket

* Standings logic for DE grand finals

* Standings + finalize bracket

* Dev log

* Unit tests utils etc.

* Adjust TODOs

* Fix round robin issues

* Add RR tests

* Round robin standings initial

* Wins against tied + points tiebreaker progress

* Fix losing state when switching between tabs

* Add check-in indications to seeding page

* Link to user page on seed tool

* Submit points

* Total points from bracket manager

* findById gonezino

* Ahead of time check-in

* Couple todos

* Reopen logic refactor

* Tournament format settings

* RR->SE placements, skipping underground bracket

* Fix tournament team page round names

* More teams to UG bracket if first round of DE only byes

* Fix graphics bug

* Fixes

* Fix some E2E tests

* Fix E2E tests
2024-01-30 00:32:13 +02:00
Kalle
b2c16f4999 Add SendouQ as a VoD type Closes #1624 2024-01-27 10:29:46 +02:00
Kalle
2699d1460e Public API (user/tournaments) 2024-01-13 17:52:46 +02:00