User page · Search params & storage
1 module · 2 exports · 1 repository · 14 e2e tests · 16 routes
The state User page keeps in the URL and in the browser's storage. Every param has a default and never fails to decode, see Search params, and each definition should have an assertRoundTrips test. The definitions of the whole app are listed in the reference.
Search params
URL userResultsSearchParams
app/features/user-page/user-page-search-params.ts:37
| Param | Value | Default | Loader | Description |
|---|---|---|---|---|
highlightsOnly | v.boolean() | true | true | Only applies to users who have highlighted results. Resets |
page | page | 1 | true | |
tournament | resultsFilterName | null | true | Resets |
team | resultsFilterName | null | true | Resets |
mate | v.nullable(v.pipe(v.number(), v.integer(), v.gtValue(0))) | null | true | Resets |
minTier | numericEnum(TIER_NUMBERS) | BEST_TIER_NUMBER | true | Resets |
maxTier | numericEnum(TIER_NUMBERS) | WORST_TIER_NUMBER | true | Resets |
maxPlacement | v.nullable(numericEnum(RESULT_PLACEMENT_FILTERS)) | null | true | Resets |
fromYear | v.nullable(resultYear) | null | true | Resets Time dependent |
toYear | v.nullable(resultYear) | null | true | Resets Time dependent |
source | v.picklist(RESULT_SOURCES) | "ALL" | true | Resets |
minParticipantCount | v.pipe(v.number(), v.integer(), v.minValue(0), v.maxValue(9999)) | 0 | true | Resets |
Used in ResultsFiltersBar.tsxu.$identifier.results.server.tsu.$identifier.results.tsx
URL userSeasonsSearchParams
app/features/user-page/user-page-search-params.ts:107
| Param | Value | Default | Loader | Description |
|---|---|---|---|---|
season | v.nullable(startedSeason) | null | true | Time dependent |
staffDialog | v.nullable(v.picklist(SEASONS_STAFF_DIALOGS)) | null | true |
Used in u.$identifier.seasons.server.tsu.$identifier.seasons.tsxuser-page-urls.ts
URL userSeasonResultsSearchParams
app/features/user-page/user-page-search-params.ts:114
| Param | Value | Default | Loader | Description |
|---|---|---|---|---|
page | page | 1 | true | |
source | v.picklist(SEASON_RESULT_SOURCES) | "ALL" | true | Resets |
season | v.nullable(startedSeason) | null | true | Time dependent |
Used in u.$identifier.seasons.index.server.tsu.$identifier.seasons.index.tsx
URL userSeasonsStatsSearchParams
app/features/user-page/user-page-search-params.ts:124
| Param | Value | Default | Loader | Description |
|---|---|---|---|---|
tab | v.picklist(SEASON_STATS_TABS) | "overview" | true | |
season | v.nullable(startedSeason) | null | true | Time dependent |
Used in u.$identifier.seasons.stats.server.tsu.$identifier.seasons.stats.tsxuser-page-urls.ts
URL userSeasonSummaryGraphicSearchParams
app/features/user-page/user-page-search-params.ts:132
| Param | Value | Default | Loader | Description |
|---|---|---|---|---|
season | v.nullable(startedSeason) | null | true | Time dependent |
Used in u.$identifier.seasons.summary-graphic.server.tsuser-page-urls.ts
URL userBuildsSearchParams
app/features/user-page/user-page-search-params.ts:136
| Param | Value | Default | Loader | Description |
|---|---|---|---|---|
weapon | v.nullable(numericEnum(mainWeaponIds)) | null | true | Resets |
visibility | v.nullable(v.picklist(BUILD_VISIBILITIES)) | null | true | Resets |
sorting | v.boolean() | false | false |
Used in u.$identifier.builds.server.tsu.$identifier.builds.tsx
URL userArtSearchParams
app/features/user-page/user-page-search-params.ts:149
| Param | Value | Default | Loader | Description |
|---|---|---|---|---|
source | v.picklist(ART_SOURCES) | "ALL" | false | |
tag | v.nullable(v.string()) | null | false |
Used in art-urls.tsu.$identifier.art.tsx
URL userBuildsNewSearchParams
app/features/user-page/user-page-search-params.ts:154No round-trip test
| Param | Value | Default | Loader | Description |
|---|---|---|---|---|
buildId | v.nullable(v.pipe(v.number(), v.integer(), v.gtValue(0))) | null | true | |
weapon | v.nullable(numericEnum(mainWeaponIds)) | null | true | |
build | custom serializedBuildCodec | EMPTY_BUILD | true |