Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions src/apps/accounts/src/settings/tabs/AccountSettingsTabs.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { Dispatch, FC, SetStateAction, useMemo, useState } from 'react'
import { useLocation } from 'react-router-dom'
import { KeyedMutator } from 'swr'

import { useMemberTraits, UserProfile, UserTraits } from '~/libs/core'
import { PageTitle, TabsNavbar, TabsNavItem } from '~/libs/ui'
Expand All @@ -24,13 +25,15 @@ const AccountSettingsTabs: FC<AccountSettingsTabsProps> = (props: AccountSetting
const [activeTab, setActiveTab]: [string, Dispatch<SetStateAction<string>>]
= useState<string>(activeTabHash)

const { data: memberTraits }: {
data: UserTraits[] | undefined
const { data: memberTraits, mutate: mutateTraits }: {
data: UserTraits[] | undefined,
mutate: KeyedMutator<any>
} = useMemberTraits(props.profile.handle)

function handleTabChange(tabId: string): void {
setActiveTab(tabId)
window.location.hash = getHashFromTabId(tabId)
mutateTraits() // mutate member traits to refresh the data
}

return (
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,13 @@
/* eslint-disable complexity */
import { Dispatch, FC, MutableRefObject, SetStateAction, useEffect, useRef, useState } from 'react'
import { bind, compact, isEmpty, reject, uniqBy } from 'lodash'
import { KeyedMutator } from 'swr'
import { toast } from 'react-toastify'
import classNames from 'classnames'

import {
createMemberTraitsAsync,
updateMemberTraitsAsync,
useMemberDevicesLookup,
useMemberTraits,
UserProfile,
UserTrait,
} from '~/libs/core'
Expand Down Expand Up @@ -64,8 +62,6 @@ const Devices: FC<DevicesProps> = (props: DevicesProps) => {
const [itemToRemove, setItemToRemove]: [UserTrait | undefined, Dispatch<SetStateAction<UserTrait | undefined>>]
= useState<UserTrait | undefined>()

const { mutate: mutateTraits }: { mutate: KeyedMutator<any> } = useMemberTraits(props.profile.handle)

const [selectedDeviceType, setSelectedDeviceType]: [
string | undefined,
Dispatch<SetStateAction<string | undefined>>
Expand Down Expand Up @@ -150,6 +146,7 @@ const Devices: FC<DevicesProps> = (props: DevicesProps) => {
setSelectedDeviceManufacturerType(undefined)
formElRef.current.reset()
setIsEditMode(false)
setFormErrors({})
}

function onRemoveItemConfirm(): void {
Expand All @@ -174,7 +171,6 @@ const Devices: FC<DevicesProps> = (props: DevicesProps) => {
.then(() => {
toast.success('Device deleted successfully')
setDeviceTypesData(updatedDeviceTypesData)
mutateTraits()
})
.catch(() => {
toast.error('Error deleting Device')
Expand Down Expand Up @@ -280,7 +276,6 @@ const Devices: FC<DevicesProps> = (props: DevicesProps) => {
...updatedDeviceTypesData || [],
deviceUpdate,
])
mutateTraits()
})
.catch(() => {
toast.error('Error updating Device')
Expand Down Expand Up @@ -309,7 +304,6 @@ const Devices: FC<DevicesProps> = (props: DevicesProps) => {
...deviceTypesData || [],
deviceUpdate,
])
mutateTraits()
})
.catch(() => {
toast.error('Error adding new Device')
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
import { Dispatch, FC, MutableRefObject, SetStateAction, useEffect, useRef, useState } from 'react'
import { bind, isEmpty, reject, trim } from 'lodash'
import { toast } from 'react-toastify'
import { KeyedMutator } from 'swr'
import classNames from 'classnames'

import { createMemberTraitsAsync, updateMemberTraitsAsync, useMemberTraits, UserProfile, UserTrait } from '~/libs/core'
import { createMemberTraitsAsync, updateMemberTraitsAsync, UserProfile, UserTrait } from '~/libs/core'
import { Button, Collapsible, ConfirmModal, IconOutline, InputSelect, InputText } from '~/libs/ui'
import {
FinancialInstitutionIcon,
Expand Down Expand Up @@ -65,8 +64,6 @@ const ServiceProvider: FC<ServiceProviderProps> = (props: ServiceProviderProps)
const [itemToRemove, setItemToRemove]: [UserTrait | undefined, Dispatch<SetStateAction<UserTrait | undefined>>]
= useState<UserTrait | undefined>()

const { mutate: mutateTraits }: { mutate: KeyedMutator<any> } = useMemberTraits(props.profile.handle)

useEffect(() => {
setServiceProviderTypesData(props.serviceProviderTrait?.traits.data)
}, [props.serviceProviderTrait])
Expand Down Expand Up @@ -158,7 +155,6 @@ const ServiceProvider: FC<ServiceProviderProps> = (props: ServiceProviderProps)
...updatedServiceProviderTypesData || [],
serviceProviderTypeUpdate,
])
mutateTraits()
})
.catch(() => {
toast.error('Error updating Service Provider')
Expand Down Expand Up @@ -187,7 +183,6 @@ const ServiceProvider: FC<ServiceProviderProps> = (props: ServiceProviderProps)
...serviceProviderTypesData || [],
serviceProviderTypeUpdate,
])
mutateTraits()
})
.catch(() => {
toast.error('Error adding new Service Provider')
Expand Down Expand Up @@ -227,7 +222,6 @@ const ServiceProvider: FC<ServiceProviderProps> = (props: ServiceProviderProps)
.then(() => {
toast.success('Service Provider deleted successfully')
setServiceProviderTypesData(updatedServiceProviderTypesData)
mutateTraits()
})
.catch(() => {
toast.error('Error deleting Service Provider')
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
import { Dispatch, FC, MutableRefObject, SetStateAction, useEffect, useRef, useState } from 'react'
import { bind, isEmpty, reject, trim } from 'lodash'
import { toast } from 'react-toastify'
import { KeyedMutator } from 'swr'
import classNames from 'classnames'

import { createMemberTraitsAsync, updateMemberTraitsAsync, useMemberTraits, UserProfile, UserTrait } from '~/libs/core'
import { createMemberTraitsAsync, updateMemberTraitsAsync, UserProfile, UserTrait } from '~/libs/core'
import { Button, Collapsible, ConfirmModal, IconOutline, InputSelect, InputText } from '~/libs/ui'
import { SettingSection, SoftwareIcon } from '~/apps/accounts/src/lib'

Expand Down Expand Up @@ -58,8 +57,6 @@ const Software: FC<SoftwareProps> = (props: SoftwareProps) => {
const [itemToRemove, setItemToRemove]: [UserTrait | undefined, Dispatch<SetStateAction<UserTrait | undefined>>]
= useState<UserTrait | undefined>()

const { mutate: mutateTraits }: { mutate: KeyedMutator<any> } = useMemberTraits(props.profile.handle)

useEffect(() => {
setSoftwareTypesData(props.softwareTrait?.traits.data)
}, [props.softwareTrait])
Expand Down Expand Up @@ -147,7 +144,6 @@ const Software: FC<SoftwareProps> = (props: SoftwareProps) => {
...updatedSoftwareTypesData || [],
softwareTypeUpdate,
])
mutateTraits()
})
.catch(() => {
toast.error('Error updating software')
Expand Down Expand Up @@ -176,7 +172,6 @@ const Software: FC<SoftwareProps> = (props: SoftwareProps) => {
...softwareTypesData || [],
softwareTypeUpdate,
])
mutateTraits()
})
.catch(() => {
toast.error('Error adding new software')
Expand Down Expand Up @@ -216,7 +211,6 @@ const Software: FC<SoftwareProps> = (props: SoftwareProps) => {
.then(() => {
toast.success('Software deleted successfully')
setSoftwareTypesData(updatedSoftwareTypesData)
mutateTraits()
})
.catch(() => {
toast.error('Error deleting software')
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
import { Dispatch, FC, MutableRefObject, SetStateAction, useEffect, useRef, useState } from 'react'
import { bind, isEmpty, reject, trim } from 'lodash'
import { toast } from 'react-toastify'
import { KeyedMutator } from 'swr'
import classNames from 'classnames'

import { createMemberTraitsAsync, updateMemberTraitsAsync, useMemberTraits, UserProfile, UserTrait } from '~/libs/core'
import { createMemberTraitsAsync, updateMemberTraitsAsync, UserProfile, UserTrait } from '~/libs/core'
import { Button, Collapsible, ConfirmModal, IconOutline, InputText } from '~/libs/ui'
import { SettingSection, SubscriptionsIcon } from '~/apps/accounts/src/lib'

Expand Down Expand Up @@ -51,8 +50,6 @@ const Subscriptions: FC<SubscriptionsProps> = (props: SubscriptionsProps) => {
const [itemToRemove, setItemToRemove]: [UserTrait | undefined, Dispatch<SetStateAction<UserTrait | undefined>>]
= useState<UserTrait | undefined>()

const { mutate: mutateTraits }: { mutate: KeyedMutator<any> } = useMemberTraits(props.profile.handle)

useEffect(() => {
setSubscriptionsTypesData(props.subscriptionsTrait?.traits.data)
}, [props.subscriptionsTrait])
Expand Down Expand Up @@ -132,7 +129,6 @@ const Subscriptions: FC<SubscriptionsProps> = (props: SubscriptionsProps) => {
...updatedSubscriptionsTypesData || [],
softwareTypeUpdate,
])
mutateTraits()
})
.catch(() => {
toast.error('Error updating subscription')
Expand Down Expand Up @@ -161,7 +157,6 @@ const Subscriptions: FC<SubscriptionsProps> = (props: SubscriptionsProps) => {
...subscriptionsTypesData || [],
softwareTypeUpdate,
])
mutateTraits()
})
.catch(() => {
toast.error('Error adding new subscription')
Expand Down Expand Up @@ -201,7 +196,6 @@ const Subscriptions: FC<SubscriptionsProps> = (props: SubscriptionsProps) => {
.then(() => {
toast.success('Subscription deleted successfully')
setSubscriptionsTypesData(updatedSubscriptionsTypesData)
mutateTraits()
})
.catch(() => {
toast.error('Error deleting subscription')
Expand Down