fix(ott-347): changed filter status logic (#116)

keep-around/af30b88d367751c9e05a735e4a0467a96238ef47
Armen 5 years ago committed by GitHub
parent 02084451df
commit 79d230d8f1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      src/features/HeaderFilters/store/helpers/isValidMatchStatus/index.tsx
  2. 19
      src/features/HeaderFilters/store/hooks/index.tsx
  3. 2
      src/requests/getMatches.tsx

@ -4,6 +4,6 @@ import values from 'lodash/values'
import { MatchStatuses } from '../../hooks'
export const isValidMatchStatus = (value: number) => (
export const isValidMatchStatus = (value: number | null) => (
isNumber(value) && includes(values(MatchStatuses), value)
)

@ -1,4 +1,4 @@
import { useMemo } from 'react'
import { useMemo, useCallback } from 'react'
import isNumber from 'lodash/isNumber'
import format from 'date-fns/format'
@ -30,13 +30,24 @@ export const useFilters = () => {
const [
selectedMatchStatus,
setSelectedMatchStatus,
] = useQueryParamStore({
defaultValue: MatchStatuses.Live,
setMatchStatus,
] = useQueryParamStore<MatchStatuses | null>({
defaultValue: null,
key: filterKeys.MATCH_STATUS,
validator: isValidMatchStatus,
})
const setSelectedMatchStatus = useCallback((status: MatchStatuses) => {
if (status === selectedMatchStatus) {
setMatchStatus(null)
} else {
setMatchStatus(status)
}
}, [
selectedMatchStatus,
setMatchStatus,
])
const [
selectedSportTypeId,
setSelectedSportTypeId,

@ -51,7 +51,7 @@ export type Team = {
type Args = {
date: string,
matchStatus: MatchStatuses,
matchStatus: MatchStatuses | null,
playerId?: number | null,
sportType: SportTypes | null,
teamId?: number | null,

Loading…
Cancel
Save