Skip to content

Commit e014c69

Browse files
authored
Merge pull request #861 from topcoder-platform/release-hotfixes
MP-141 fix trait exists errors -> dev
2 parents 997b134 + 8e26ba3 commit e014c69

File tree

18 files changed

+40
-158
lines changed

18 files changed

+40
-158
lines changed

src/apps/accounts/src/settings/tabs/account/user-and-pass/UserAndPassword.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import {
1111
} from '~/libs/ui'
1212
import {
1313
updateMemberPasswordAsync,
14-
updateMemberTraitsAsync,
14+
updateOrCreateMemberTraitsAsync,
1515
useMemberTraits,
1616
UserProfile,
1717
UserTrait,
@@ -69,7 +69,7 @@ const UserAndPassword: FC<UserAndPasswordProps> = (props: UserAndPasswordProps)
6969
}
7070

7171
function handleUserConsentChange(): void {
72-
updateMemberTraitsAsync(props.profile.handle, [{
72+
updateOrCreateMemberTraitsAsync(props.profile.handle, [{
7373
categoryName: 'Personalization',
7474
traitId: 'personalization',
7575
traits: {

src/apps/accounts/src/settings/tabs/tcandyou/communities/Communities.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { bind } from 'lodash'
33
import { KeyedMutator } from 'swr'
44
import { toast } from 'react-toastify'
55

6-
import { updateMemberTraitsAsync, useMemberTraits, UserProfile, UserTraits } from '~/libs/core'
6+
import { updateOrCreateMemberTraitsAsync, useMemberTraits, UserProfile, UserTraits } from '~/libs/core'
77
import { Button, Collapsible, FormToggleSwitch } from '~/libs/ui'
88
import { triggerSprigSurvey } from '~/apps/accounts/src/lib'
99

@@ -38,7 +38,7 @@ const Communities: FC<CommunitiesProps> = (props: CommunitiesProps) => {
3838
[communityId]: !memberCommunities?.[communityId],
3939
}
4040

41-
updateMemberTraitsAsync(props.profile.handle, [{
41+
updateOrCreateMemberTraitsAsync(props.profile.handle, [{
4242
categoryName: 'Communities',
4343
traitId: 'communities',
4444
traits: {

src/apps/accounts/src/settings/tabs/tools/devices/Devices.tsx

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ import { toast } from 'react-toastify'
55
import classNames from 'classnames'
66

77
import {
8-
createMemberTraitsAsync,
98
updateMemberTraitsAsync,
9+
updateOrCreateMemberTraitsAsync,
1010
useMemberDevicesLookup,
1111
UserProfile,
1212
UserTrait,
@@ -31,11 +31,6 @@ interface DevicesProps {
3131
profile: UserProfile
3232
}
3333

34-
const methodsMap: { [key: string]: any } = {
35-
create: createMemberTraitsAsync,
36-
update: updateMemberTraitsAsync,
37-
}
38-
3934
const Devices: FC<DevicesProps> = (props: DevicesProps) => {
4035
const formElRef: MutableRefObject<HTMLDivElement | any> = useRef()
4136

@@ -293,7 +288,7 @@ const Devices: FC<DevicesProps> = (props: DevicesProps) => {
293288
setIsEditMode(false)
294289
})
295290
} else {
296-
methodsMap[!deviceTypesData || !deviceTypesData.length ? 'create' : 'update'](
291+
updateOrCreateMemberTraitsAsync(
297292
props.profile.handle,
298293
[{
299294
categoryName: 'Device',

src/apps/accounts/src/settings/tabs/tools/service-provider/ServiceProvider.tsx

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { bind, isEmpty, reject, trim } from 'lodash'
33
import { toast } from 'react-toastify'
44
import classNames from 'classnames'
55

6-
import { createMemberTraitsAsync, updateMemberTraitsAsync, UserProfile, UserTrait } from '~/libs/core'
6+
import { updateMemberTraitsAsync, updateOrCreateMemberTraitsAsync, UserProfile, UserTrait } from '~/libs/core'
77
import { Button, Collapsible, ConfirmModal, IconOutline, InputSelect, InputText } from '~/libs/ui'
88
import {
99
FinancialInstitutionIcon,
@@ -23,11 +23,6 @@ interface ServiceProviderProps {
2323
profile: UserProfile
2424
}
2525

26-
const methodsMap: { [key: string]: any } = {
27-
create: createMemberTraitsAsync,
28-
update: updateMemberTraitsAsync,
29-
}
30-
3126
const ServiceProvider: FC<ServiceProviderProps> = (props: ServiceProviderProps) => {
3227
const formElRef: MutableRefObject<HTMLDivElement | any> = useRef()
3328

@@ -166,7 +161,7 @@ const ServiceProvider: FC<ServiceProviderProps> = (props: ServiceProviderProps)
166161
setIsEditMode(false)
167162
})
168163
} else {
169-
methodsMap[!serviceProviderTypesData || !serviceProviderTypesData.length ? 'create' : 'update'](
164+
updateOrCreateMemberTraitsAsync(
170165
props.profile.handle,
171166
[{
172167
categoryName: 'Service Provider',

src/apps/accounts/src/settings/tabs/tools/software/Software.tsx

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { bind, isEmpty, reject, trim } from 'lodash'
33
import { toast } from 'react-toastify'
44
import classNames from 'classnames'
55

6-
import { createMemberTraitsAsync, updateMemberTraitsAsync, UserProfile, UserTrait } from '~/libs/core'
6+
import { updateMemberTraitsAsync, updateOrCreateMemberTraitsAsync, UserProfile, UserTrait } from '~/libs/core'
77
import { Button, Collapsible, ConfirmModal, IconOutline, InputSelect, InputText } from '~/libs/ui'
88
import { SettingSection, SoftwareIcon, triggerSprigSurvey } from '~/apps/accounts/src/lib'
99

@@ -15,11 +15,6 @@ interface SoftwareProps {
1515
profile: UserProfile
1616
}
1717

18-
const methodsMap: { [key: string]: any } = {
19-
create: createMemberTraitsAsync,
20-
update: updateMemberTraitsAsync,
21-
}
22-
2318
const Software: FC<SoftwareProps> = (props: SoftwareProps) => {
2419
const formElRef: MutableRefObject<HTMLDivElement | any> = useRef()
2520

@@ -154,7 +149,7 @@ const Software: FC<SoftwareProps> = (props: SoftwareProps) => {
154149
setIsEditMode(false)
155150
})
156151
} else {
157-
methodsMap[!softwareTypesData || !softwareTypesData.length ? 'create' : 'update'](
152+
updateOrCreateMemberTraitsAsync(
158153
props.profile.handle,
159154
[{
160155
categoryName: 'Software',

src/apps/accounts/src/settings/tabs/tools/subscriptions/Subscriptions.tsx

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { bind, isEmpty, reject, trim } from 'lodash'
33
import { toast } from 'react-toastify'
44
import classNames from 'classnames'
55

6-
import { createMemberTraitsAsync, updateMemberTraitsAsync, UserProfile, UserTrait } from '~/libs/core'
6+
import { updateMemberTraitsAsync, updateOrCreateMemberTraitsAsync, UserProfile, UserTrait } from '~/libs/core'
77
import { Button, Collapsible, ConfirmModal, IconOutline, InputText } from '~/libs/ui'
88
import { SettingSection, SubscriptionsIcon, triggerSprigSurvey } from '~/apps/accounts/src/lib'
99

@@ -14,11 +14,6 @@ interface SubscriptionsProps {
1414
profile: UserProfile
1515
}
1616

17-
const methodsMap: { [key: string]: any } = {
18-
create: createMemberTraitsAsync,
19-
update: updateMemberTraitsAsync,
20-
}
21-
2217
const Subscriptions: FC<SubscriptionsProps> = (props: SubscriptionsProps) => {
2318
const formElRef: MutableRefObject<HTMLDivElement | any> = useRef()
2419

@@ -139,7 +134,7 @@ const Subscriptions: FC<SubscriptionsProps> = (props: SubscriptionsProps) => {
139134
setIsEditMode(false)
140135
})
141136
} else {
142-
methodsMap[!subscriptionsTypesData || !subscriptionsTypesData.length ? 'create' : 'update'](
137+
updateOrCreateMemberTraitsAsync(
143138
props.profile.handle,
144139
[{
145140
categoryName: 'Subscription',

src/apps/profiles/src/member-profile/about-me/ModifyAboutMeModal/ModifyAboutMeModal.tsx

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,8 @@ import { toast } from 'react-toastify'
44

55
import { BaseModal, Button, InputText, InputTextarea } from '~/libs/ui'
66
import {
7-
createMemberTraitsAsync,
87
updateMemberProfileAsync,
9-
updateMemberTraitsAsync,
8+
updateOrCreateMemberTraitsAsync,
109
UserProfile,
1110
UserTrait,
1211
UserTraitCategoryNames,
@@ -22,11 +21,6 @@ interface ModifyAboutMeModalProps {
2221
memberPersonalizationTraitsData: UserTrait[] | undefined
2322
}
2423

25-
const methodsMap: { [key: string]: any } = {
26-
create: createMemberTraitsAsync,
27-
update: updateMemberTraitsAsync,
28-
}
29-
3024
const ModifyAboutMeModal: FC<ModifyAboutMeModalProps> = (props: ModifyAboutMeModalProps) => {
3125
const [memberTitle, setMemberTitle]: [
3226
string | undefined,
@@ -79,7 +73,7 @@ const ModifyAboutMeModal: FC<ModifyAboutMeModalProps> = (props: ModifyAboutMeMod
7973
props.profile.handle,
8074
{ description: updatedDescription },
8175
),
82-
methodsMap[!!props.memberPersonalizationTraitsData ? 'update' : 'create'](props.profile.handle, [{
76+
updateOrCreateMemberTraitsAsync(props.profile.handle, [{
8377
categoryName: UserTraitCategoryNames.personalization,
8478
traitId: UserTraitIds.personalization,
8579
traits: {

src/apps/profiles/src/member-profile/education-and-certifications/ModifyEducationModal/ModifyEducationModal.tsx

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,7 @@ import classNames from 'classnames'
66

77
import { BaseModal, Button, IconOutline, InputSelect, InputText } from '~/libs/ui'
88
import {
9-
createMemberTraitsAsync,
10-
updateMemberTraitsAsync,
9+
updateOrCreateMemberTraitsAsync,
1110
UserProfile,
1211
UserTrait,
1312
UserTraitCategoryNames,
@@ -25,11 +24,6 @@ interface ModifyEducationModalProps {
2524
education: UserTrait[] | undefined
2625
}
2726

28-
const methodsMap: { [key: string]: any } = {
29-
create: createMemberTraitsAsync,
30-
update: updateMemberTraitsAsync,
31-
}
32-
3327
const years: number[] = range(1979, getYear(new Date()) + 10)
3428
const yearOptions: any = years
3529
.map(v => ({
@@ -78,7 +72,7 @@ const ModifyEducationModal: FC<ModifyEducationModalProps> = (props: ModifyEducat
7872

7973
setIsSaving(true)
8074

81-
methodsMap[!!props.education ? 'update' : 'create'](props.profile.handle, [{
75+
updateOrCreateMemberTraitsAsync(props.profile.handle, [{
8276
categoryName: UserTraitCategoryNames.education,
8377
traitId: UserTraitIds.education,
8478
traits: {

src/apps/profiles/src/member-profile/languages/ModifyLanguagesModal/ModifyLanguagesModal.tsx

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@ import classNames from 'classnames'
55

66
import { BaseModal, Button, IconOutline, InputSelect } from '~/libs/ui'
77
import {
8-
createMemberTraitsAsync,
9-
updateMemberTraitsAsync,
8+
updateOrCreateMemberTraitsAsync,
109
UserProfile,
1110
UserTrait,
1211
UserTraitCategoryNames,
@@ -25,11 +24,6 @@ interface ModifyLanguagesModalProps {
2524
memberLanguages: UserTrait[] | undefined
2625
}
2726

28-
const methodsMap: { [key: string]: any } = {
29-
create: createMemberTraitsAsync,
30-
update: updateMemberTraitsAsync,
31-
}
32-
3327
const ModifyLanguagesModal: FC<ModifyLanguagesModalProps> = (props: ModifyLanguagesModalProps) => {
3428
const formElRef: MutableRefObject<HTMLDivElement | any> = useRef()
3529

@@ -88,7 +82,7 @@ const ModifyLanguagesModal: FC<ModifyLanguagesModalProps> = (props: ModifyLangua
8882

8983
setIsSaving(true)
9084

91-
methodsMap[!!props.memberLanguages ? 'update' : 'create'](props.profile.handle, [{
85+
updateOrCreateMemberTraitsAsync(props.profile.handle, [{
9286
categoryName: UserTraitCategoryNames.languages,
9387
traitId: UserTraitIds.languages,
9488
traits: {

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

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@ import classNames from 'classnames'
55

66
import { BaseModal, Button, IconOutline, InputSelect, InputText } from '~/libs/ui'
77
import {
8-
createMemberTraitsAsync,
9-
updateMemberTraitsAsync,
8+
updateOrCreateMemberTraitsAsync,
109
UserProfile,
1110
UserTrait,
1211
UserTraitCategoryNames,
@@ -27,11 +26,6 @@ interface ModifyMemberLinksModalProps {
2726
memberPersonalizationTraitsFullData: UserTrait[] | undefined
2827
}
2928

30-
const methodsMap: { [key: string]: any } = {
31-
create: createMemberTraitsAsync,
32-
update: updateMemberTraitsAsync,
33-
}
34-
3529
const ModifyMemberLinksModal: FC<ModifyMemberLinksModalProps> = (props: ModifyMemberLinksModalProps) => {
3630
const formElRef: MutableRefObject<HTMLDivElement | any> = useRef()
3731

@@ -95,7 +89,7 @@ const ModifyMemberLinksModal: FC<ModifyMemberLinksModalProps> = (props: ModifyMe
9589
})
9690
}
9791

98-
methodsMap[!!props.memberPersonalizationTraitsFullData ? 'update' : 'create'](props.profile.handle, [{
92+
updateOrCreateMemberTraitsAsync(props.profile.handle, [{
9993
categoryName: UserTraitCategoryNames.personalization,
10094
traitId: UserTraitIds.personalization,
10195
traits: {

src/apps/profiles/src/member-profile/profile-header/ModifyMemberNameModal/ModifyMemberNameModal.tsx

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,8 @@ import { reject, trim } from 'lodash'
33
import { toast } from 'react-toastify'
44

55
import {
6-
createMemberTraitsAsync,
76
updateMemberProfileAsync,
8-
updateMemberTraitsAsync,
7+
updateOrCreateMemberTraitsAsync,
98
UserProfile,
109
UserTrait,
1110
UserTraitCategoryNames,
@@ -25,11 +24,6 @@ interface ModifyMemberNameModalProps {
2524
namesAndHandleAppearance: NamesAndHandleAppearance | undefined
2625
}
2726

28-
const methodsMap: { [key: string]: any } = {
29-
create: createMemberTraitsAsync,
30-
update: updateMemberTraitsAsync,
31-
}
32-
3327
const ModifyMemberNameModal: FC<ModifyMemberNameModalProps> = (props: ModifyMemberNameModalProps) => {
3428
const [isSaving, setIsSaving]: [boolean, Dispatch<SetStateAction<boolean>>]
3529
= useState<boolean>(false)
@@ -96,7 +90,7 @@ const ModifyMemberNameModal: FC<ModifyMemberNameModalProps> = (props: ModifyMemb
9690
props.profile.handle,
9791
{ firstName: updatedFirstName, lastName: updatedLastName },
9892
),
99-
methodsMap[!!props.memberPersonalizationTraitsData ? 'update' : 'create'](props.profile.handle, [{
93+
updateOrCreateMemberTraitsAsync(props.profile.handle, [{
10094
categoryName: UserTraitCategoryNames.personalization,
10195
traitId: UserTraitIds.personalization,
10296
traits: {

src/apps/profiles/src/member-profile/profile-header/OpenForGigsModifyModal/OpenForGigsModifyModal.tsx

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@ import { reject } from 'lodash'
44

55
import { BaseModal, Button, InputText } from '~/libs/ui'
66
import {
7-
createMemberTraitsAsync,
8-
updateMemberTraitsAsync,
7+
updateOrCreateMemberTraitsAsync,
98
UserProfile,
109
UserTrait,
1110
UserTraitCategoryNames,
@@ -22,11 +21,6 @@ interface OpenForGigsModifyModalProps {
2221
profile: UserProfile
2322
}
2423

25-
const methodsMap: { [key: string]: any } = {
26-
create: createMemberTraitsAsync,
27-
update: updateMemberTraitsAsync,
28-
}
29-
3024
const OpenForGigsModifyModal: FC<OpenForGigsModifyModalProps> = (props: OpenForGigsModifyModalProps) => {
3125
const [isSaving, setIsSaving]: [boolean, Dispatch<SetStateAction<boolean>>]
3226
= useState<boolean>(false)
@@ -47,7 +41,7 @@ const OpenForGigsModifyModal: FC<OpenForGigsModifyModalProps> = (props: OpenForG
4741
(trait: UserTrait) => trait.availableForGigs !== undefined,
4842
)
4943

50-
methodsMap[!!props.memberPersonalizationTraitsFullData ? 'update' : 'create'](props.profile.handle, [{
44+
updateOrCreateMemberTraitsAsync(props.profile.handle, [{
5145
categoryName: UserTraitCategoryNames.personalization,
5246
traitId: UserTraitIds.personalization,
5347
traits: {

src/apps/profiles/src/member-profile/tracks/MemberTracksInfo.module.scss

Lines changed: 0 additions & 36 deletions
This file was deleted.

0 commit comments

Comments
 (0)