fix(#2183): fix change cards

keep-around/4929c43b8b564f8eafd6d2fd6c303f8cdf4852b1
Andrei Dekterev 4 years ago
parent 690a6d1b8f
commit e0e42e3df5
  1. 5
      src/features/BuyMatchPopup/components/CardStep/index.tsx
  2. 15
      src/features/BuyMatchPopup/components/CardsList/index.tsx

@ -7,6 +7,7 @@ import {
CloseButton, CloseButton,
HeaderActions, HeaderActions,
} from 'features/PopupComponents' } from 'features/PopupComponents'
import { Arrow } from 'features/HeaderFilters/components/DateFilter/styled'
import { T9n } from 'features/T9n' import { T9n } from 'features/T9n'
import { CardsList } from '../CardsList' import { CardsList } from '../CardsList'
@ -17,6 +18,7 @@ import {
Header, Header,
HeaderTitle, HeaderTitle,
Button, Button,
ButtonPrevious,
} from '../../styled' } from '../../styled'
export const CardStep = () => { export const CardStep = () => {
@ -28,6 +30,9 @@ export const CardStep = () => {
return ( return (
<Wrapper width={642}> <Wrapper width={642}>
<Header> <Header>
<ButtonPrevious onClick={goBack}>
<Arrow direction='left' />
</ButtonPrevious>
<HeaderTitle> <HeaderTitle>
<T9n t='pay' /> <T9n t='pay' />
</HeaderTitle> </HeaderTitle>

@ -1,4 +1,8 @@
import { useState } from 'react'
import map from 'lodash/map' import map from 'lodash/map'
import sortBy from 'lodash/sortBy'
import styled, { css } from 'styled-components/macro' import styled, { css } from 'styled-components/macro'
import { isMobileDevice } from 'config/userAgent' import { isMobileDevice } from 'config/userAgent'
@ -64,15 +68,20 @@ export const CardsList = () => {
onSetDefaultCard, onSetDefaultCard,
} = useCardsStore() } = useCardsStore()
const [activeCard, setActiveCard] = useState(defaultCard?.id)
return ( return (
<List> <List>
{ {
map(cards, (card) => ( map(sortBy(cards, ['last4']), (card) => (
<Item key={card.id}> <Item key={card.id}>
<Radio <Radio
label={`${card.brand} •••• ${card.last4}`} label={`${card.brand} •••• ${card.last4}`}
checked={card.id === defaultCard?.id} checked={card.id === activeCard}
onChange={() => onSetDefaultCard(card.id)} onChange={() => {
setActiveCard(card.id)
onSetDefaultCard(card.id)
}}
/> />
</Item> </Item>
)) ))

Loading…
Cancel
Save