Skip to content

Commit 17d9f13

Browse files
committed
fix some error in browser console
1 parent 0d18e07 commit 17d9f13

File tree

3 files changed

+36
-12
lines changed

3 files changed

+36
-12
lines changed

src/apps/profiles/src/member-profile/links/ModifyMemberLinksModal/LinkForm/LinkForm.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ const LinkForm: ForwardRefExoticComponent<
147147
tabIndex={0}
148148
type='text'
149149
onChange={handleURLChange}
150-
value={selectedLinkURL}
150+
value={selectedLinkURL || ''}
151151
forceUpdateValue
152152
disabled={props.disabled}
153153
/>

src/apps/profiles/src/member-profile/links/ModifyMemberLinksModal/ModifyMemberLinksModal.tsx

Lines changed: 30 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { find, findIndex, reject, uniqBy } from 'lodash'
1+
import { find, findIndex, omit, reject, uniqBy } from 'lodash'
22
import { FC, useEffect, useRef, useState } from 'react'
33
import { toast } from 'react-toastify'
44
import classNames from 'classnames'
@@ -76,7 +76,11 @@ const ModifyMemberLinksModal: FC<ModifyMemberLinksModalProps> = (props: ModifyMe
7676
setDefaultInstagram(memberLinks.splice(firstInstagramIndex, 1)[0])
7777
}
7878

79-
setCurrentMemberLinks(memberLinks)
79+
setCurrentMemberLinks(memberLinks.map((item: UserTrait, index: number) => ({
80+
...item,
81+
id: `id-${index}-${(new Date())
82+
.getTime()}`,
83+
})))
8084

8185
}, [props.memberLinks])
8286

@@ -89,7 +93,11 @@ const ModifyMemberLinksModal: FC<ModifyMemberLinksModalProps> = (props: ModifyMe
8993
...currentMemberLinks,
9094
].filter(l => l.name && l.url), e => `${e.name}-${e.url}`)
9195
if (!find(updatedLinks, newLink)) {
92-
setCurrentMemberLinks(links => [...links, newLink])
96+
setCurrentMemberLinks(links => [...links, {
97+
...newLink,
98+
id: `id-${(new Date())
99+
.getTime()}`,
100+
}])
93101
}
94102

95103
addNewLinkRef.current?.resetForm()
@@ -127,12 +135,20 @@ const ModifyMemberLinksModal: FC<ModifyMemberLinksModalProps> = (props: ModifyMe
127135
const updatedPersonalizationTraits: UserTrait[]
128136
= reject(props.memberPersonalizationTraitsFullData, (trait: UserTrait) => trait.links)
129137

130-
const updatedLinks: UserTrait[] = uniqBy([
131-
defaultLinkedIn,
132-
defaultGitHub,
133-
defaultInstagram,
134-
...currentMemberLinks,
135-
].filter(l => l.name && l.url), e => `${e.name}-${e.url}`)
138+
const updatedLinks: UserTrait[] = uniqBy(
139+
[
140+
defaultLinkedIn,
141+
defaultGitHub,
142+
defaultInstagram,
143+
...currentMemberLinks,
144+
].filter(
145+
l => l.name && l.url,
146+
),
147+
e => `${e.name}-${e.url}`,
148+
)
149+
.map(
150+
item => omit(item, ['id']),
151+
)
136152

137153
updateOrCreateMemberTraitsAsync(props.profile.handle, [{
138154
categoryName: UserTraitCategoryNames.personalization,
@@ -273,14 +289,18 @@ const ModifyMemberLinksModal: FC<ModifyMemberLinksModalProps> = (props: ModifyMe
273289
<LinkForm
274290
link={trait as UserLink}
275291
onSave={function onSave(link: UserLink) {
276-
handleSaveLink(link, i)
292+
handleSaveLink({
293+
...trait,
294+
...link,
295+
}, i)
277296
}}
278297
onRemove={function onRemove() {
279298
handleRemoveLink(i)
280299
}}
281300
allowEditType
282301
placeholder='http://'
283302
disabled={isSaving}
303+
key={trait.id}
284304
/>
285305
))
286306
}

src/libs/ui/lib/components/form/form-groups/form-input/input-text/InputText.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,11 @@ const InputText: FC<InputTextProps> = (props: InputTextProps) => {
4545
autoComplete={props.autocomplete}
4646
checked={defaultValue === 'on'}
4747
className={cn(styles['form-input-text'], styles[props.type])}
48-
defaultValue={defaultValue}
48+
defaultValue={
49+
props.forceUpdateValue
50+
? undefined
51+
: defaultValue
52+
}
4953
value={
5054
props.forceUpdateValue
5155
? (props.value as string | ReadonlyArray<string> | number | undefined)

0 commit comments

Comments
 (0)