Skip to content

Commit 9a31cfa

Browse files
committed
Fixes
1 parent cdbc9c3 commit 9a31cfa

File tree

8 files changed

+15
-30
lines changed

8 files changed

+15
-30
lines changed

common/src/filters.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,4 +82,4 @@ export const initialFilters: Partial<FilterFields> = {
8282

8383
export const FilterKeys = Object.keys(initialFilters) as (keyof FilterFields)[]
8484

85-
export type OriginLocation = { id: string; name: string, lat: number, lon: number }
85+
export type OriginLocation = { id: string; name: string | null, lat: number, lon: number }

web/components/filters/mobile-filters.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,8 @@ function MobileFilters(props: {
4949

5050
const [openFilter, setOpenFilter] = useState<string | undefined>(undefined)
5151

52-
function hasAny(filterArray: any[] | undefined) {
53-
return filterArray && filterArray.length > 0
52+
function hasAny(filterArray: any[] | undefined | null): boolean {
53+
return !!filterArray && filterArray.length > 0
5454
}
5555

5656
const [noMinAge, noMaxAge] = getNoMinMaxAge(

web/components/filters/use-filters.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ export const useFilters = (you: Profile | undefined) => {
6969
education_levels: you?.education_level ? [you.education_level] : undefined,
7070
pref_age_max: (you?.pref_age_max ?? MAX_INT) < 100 ? you?.pref_age_max : undefined,
7171
pref_age_min: (you?.pref_age_min ?? MIN_INT) > 18 ? you?.pref_age_min : undefined,
72-
pref_relation_styles: you?.pref_relation_styles.length ? you.pref_relation_styles : undefined,
72+
pref_relation_styles: you?.pref_relation_styles?.length ? you.pref_relation_styles : undefined,
7373
pref_romantic_styles: you?.pref_romantic_styles?.length ? you.pref_romantic_styles : undefined,
7474
diet: you?.diet?.length ? you.diet : undefined,
7575
political_beliefs: you?.political_beliefs?.length ? you.political_beliefs : undefined,

web/components/optional-profile-form.tsx

Lines changed: 4 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {Fragment, useEffect, useRef, useState} from 'react'
1+
import {Fragment, useRef, useState} from 'react'
22
import {Title} from 'web/components/widgets/title'
33
import {Col} from 'web/components/layout/col'
44
import clsx from 'clsx'
@@ -112,10 +112,6 @@ export const OptionalProfileUserForm = (props: {
112112
}
113113
}
114114

115-
const [trans, setTrans] = useState<boolean | undefined>(
116-
profile['gender'].includes('trans')
117-
)
118-
119115
function setProfileCity(inputCity: City | undefined) {
120116
if (!inputCity) {
121117
setProfile('geodb_city_id', null)
@@ -142,17 +138,6 @@ export const OptionalProfileUserForm = (props: {
142138
}
143139
}
144140

145-
useEffect(() => {
146-
const currentState = profile['gender']
147-
if (currentState === 'non-binary') {
148-
setTrans(undefined)
149-
} else if (trans && !currentState.includes('trans-')) {
150-
setProfile('gender', 'trans-' + currentState.replace('trans-', ''))
151-
} else if (!trans && currentState.includes('trans-')) {
152-
setProfile('gender', currentState.replace('trans-', ''))
153-
}
154-
}, [trans, profile['gender']])
155-
156141
return (
157142
<>
158143
{/*<Row className={'justify-end'}>*/}
@@ -214,7 +199,7 @@ export const OptionalProfileUserForm = (props: {
214199
<Col className={'gap-1'}>
215200
<label className={clsx(labelClassName)}>Gender</label>
216201
<ChoicesToggleGroup
217-
currentChoice={profile['gender'].replace('trans-', '')}
202+
currentChoice={profile['gender']}
218203
choicesMap={{
219204
Woman: 'female',
220205
Man: 'male',
@@ -233,7 +218,7 @@ export const OptionalProfileUserForm = (props: {
233218
Men: 'male',
234219
Other: 'other',
235220
}}
236-
selected={profile['pref_gender']}
221+
selected={profile['pref_gender'] || []}
237222
onChange={(selected) => setProfile('pref_gender', selected)}
238223
/>
239224
</Col>
@@ -282,7 +267,7 @@ export const OptionalProfileUserForm = (props: {
282267
<label className={clsx(labelClassName)}>Connection type</label>
283268
<MultiCheckbox
284269
choices={RELATIONSHIP_CHOICES}
285-
selected={profile['pref_relation_styles']}
270+
selected={profile['pref_relation_styles'] || []}
286271
onChange={(selected) => {
287272
setProfile('pref_relation_styles', selected)
288273
setLookingRelationship((selected || []).includes('relationship'))

web/components/profile-about.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -113,9 +113,9 @@ function Seeking(props: { profile: Profile }) {
113113
const max = profile.pref_age_max
114114
const seekingGenderText = stringOrStringArrayToText({
115115
text:
116-
prefGender.length == 5
116+
prefGender?.length == 5
117117
? ['people']
118-
: prefGender.map((gender) => convertGenderPlural(gender as Gender)),
118+
: prefGender?.map((gender) => convertGenderPlural(gender as Gender)),
119119
preText: 'Interested in',
120120
asSentence: true,
121121
capitalizeFirstLetterOption: false,
@@ -150,7 +150,7 @@ function RelationshipType(props: { profile: Profile }) {
150150
const {profile} = props
151151
const relationshipTypes = profile.pref_relation_styles
152152
let seekingGenderText = stringOrStringArrayToText({
153-
text: relationshipTypes.map((rel) =>
153+
text: relationshipTypes?.map((rel) =>
154154
convertRelationshipType(rel as RelationshipType).toLowerCase()
155155
).sort(),
156156
preText: 'Seeking',
@@ -161,7 +161,7 @@ function RelationshipType(props: { profile: Profile }) {
161161
asSentence: true,
162162
capitalizeFirstLetterOption: false,
163163
})
164-
if (relationshipTypes.includes('relationship')) {
164+
if (relationshipTypes?.includes('relationship')) {
165165
const romanticStyles = profile.pref_romantic_styles
166166
?.map((style) => REVERTED_ROMANTIC_CHOICES[style].toLowerCase())
167167
.filter(Boolean)

web/components/search-location.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ function isDigitString(value: string): boolean {
1111

1212
export type City = {
1313
geodb_city_id: string
14-
city: string
14+
city: string | null
1515
region_code: string
1616
country: string
1717
country_code: string

web/components/widgets/choices-toggle-group.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export type ColorType = keyof typeof colorClasses
1515

1616
export function ChoicesToggleGroup<T extends Record<string, string | number | boolean>>(
1717
props: {
18-
currentChoice: T[keyof T] | undefined
18+
currentChoice: T[keyof T] | undefined | null
1919
choicesMap: T
2020
disabled?: boolean
2121
disabledOptions?: Array<T[keyof T]>

web/lib/util/string-or-string-array-to-text.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { filterDefined } from 'common/util/array'
22

33
export default function stringOrStringArrayToText(fields: {
4-
text: string[] | string
4+
text: string[] | string | null | undefined
55
preText?: string
66
postText?: string
77
asSentence?: boolean

0 commit comments

Comments
 (0)