Skip to content

Commit 3df57c5

Browse files
WIP to fix: broaden wallets after persona deselect
1 parent 1bca6a4 commit 3df57c5

File tree

3 files changed

+29
-10
lines changed

3 files changed

+29
-10
lines changed

src/components/FindWallet/MobileFiltersMenu.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ export const MobileFiltersMenu = ({
8787
selectedPersona={selectedPersona}
8888
setSelectedPersona={setSelectedPersona}
8989
showMobileSidebar={showMobileSidebar}
90+
resetWalletFilter={resetWalletFilter}
9091
/>
9192
</Box>
9293

src/components/FindWallet/WalletFilterPersona.tsx

Lines changed: 27 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ type WalletFilterPersonaProps = {
2222
selectedPersona: number[]
2323
setSelectedPersona: React.Dispatch<React.SetStateAction<number[]>>
2424
showMobileSidebar: boolean
25+
resetWalletFilter: React.MutableRefObject<() => void>
2526
}
2627

2728
const computeFilters = (
@@ -52,6 +53,7 @@ const WalletFilterPersona = ({
5253
selectedPersona,
5354
setSelectedPersona,
5455
showMobileSidebar,
56+
resetWalletFilter,
5557
}: WalletFilterPersonaProps) => {
5658
const personas = useWalletPersonas()
5759
const handleSelectPersona = (idx: number, persona: WalletPersonas) => {
@@ -63,24 +65,39 @@ const WalletFilterPersona = ({
6365
eventAction: `${persona.title}`,
6466
eventName: `${persona.title} false`,
6567
})
68+
setSelectedPersona(newSelectedPersonas)
69+
if (newSelectedPersonas.length < 1) {
70+
resetFilters()
71+
resetWalletFilter.current()
72+
} else {
73+
const newFilters = computeFilters(newSelectedPersonas, personas)
74+
setFilters((prevFilters) => {
75+
const combinedFilters = Object.fromEntries(
76+
Object.entries(prevFilters).map(([key, value]) => {
77+
return [key, newFilters[key]]
78+
})
79+
)
80+
return combinedFilters as WalletFilter
81+
})
82+
}
6683
} else {
6784
newSelectedPersonas = [...selectedPersona, idx]
6885
trackCustomEvent({
6986
eventCategory: "UserPersona",
7087
eventAction: `${persona.title}`,
7188
eventName: `${persona.title} true`,
7289
})
90+
setSelectedPersona(newSelectedPersonas)
91+
const newFilters = computeFilters(newSelectedPersonas, personas)
92+
setFilters((prevFilters) => {
93+
const combinedFilters = Object.fromEntries(
94+
Object.entries(prevFilters).map(([key, value]) => {
95+
return [key, value || newFilters[key]]
96+
})
97+
)
98+
return combinedFilters as WalletFilter
99+
})
73100
}
74-
setSelectedPersona(newSelectedPersonas)
75-
const newFilters = computeFilters(newSelectedPersonas, personas)
76-
setFilters((prevFilters) => {
77-
const combinedFilters = Object.fromEntries(
78-
Object.entries(prevFilters).map(([key, value]) => {
79-
return [key, value || newFilters[key]]
80-
})
81-
)
82-
return combinedFilters as WalletFilter
83-
})
84101
}
85102

86103
return (

src/pages/wallets/find-wallet.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,6 +194,7 @@ const FindWalletPage = () => {
194194
selectedPersona={selectedPersona}
195195
setSelectedPersona={setSelectedPersona}
196196
showMobileSidebar={showMobileSidebar}
197+
resetWalletFilter={resetWalletFilter}
197198
/>
198199
</Box>
199200

0 commit comments

Comments
 (0)