Skip to content

Commit d34ad44

Browse files
committed
fix: added empty list on all pages
1 parent 403ed04 commit d34ad44

File tree

4 files changed

+55
-40
lines changed

4 files changed

+55
-40
lines changed

src/renderer/src/components/EmptyList.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ export const EmptyList = ({ icon, text }: EmptyListProps) => {
1313
<div className="text-emptyIconLight dark:text-emptyIconDark">
1414
<FontAwesomeIcon icon={icon} className="text-[28px] " />
1515
</div>
16-
<span className="text-emptyTextLight dark:text-emptyTextDark text-sm">{text}</span>
16+
<span className="text-center text-emptyTextLight dark:text-emptyTextDark text-sm">{text}</span>
1717
</div>
1818
)
1919
}

src/renderer/src/components/Modules/NethVoice/LastCalls/LastCallsBox.tsx

Lines changed: 33 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'
2-
import { faArrowUpRightFromSquare as ShowMissedCallIcon } from '@fortawesome/free-solid-svg-icons'
2+
import {
3+
faArrowUpRightFromSquare as ShowMissedCallIcon,
4+
faPhone as EmptyResultIcon
5+
} from '@fortawesome/free-solid-svg-icons'
36
import { LastCall } from './LastCall'
47
import { CallData, ContactType, LastCallData, OperatorData } from '@shared/types'
58
import { t } from 'i18next'
@@ -10,6 +13,7 @@ import { useEffect, useState } from 'react'
1013
import { log } from '@shared/utils/logger'
1114
import { Scrollable } from '@renderer/components/Scrollable'
1215
import { ModuleTitle } from '@renderer/components/ModuleTitle'
16+
import { EmptyList } from '@renderer/components/EmptyList'
1317

1418
export function LastCallsBox({ showContactForm }): JSX.Element {
1519

@@ -88,34 +92,38 @@ export function LastCallsBox({ showContactForm }): JSX.Element {
8892
/>
8993
<Scrollable className="">
9094
{
91-
preparedCalls ? preparedCalls.map((preparedCall, idx) => {
92-
return (
93-
<div
94-
className="dark:hover:bg-hoverDark hover:bg-hoverLight"
95-
key={idx}
96-
>
97-
<div className="px-5">
95+
preparedCalls ?
96+
preparedCalls.length > 0
97+
? preparedCalls.map((preparedCall, idx) => {
98+
return (
9899
<div
99-
className={`${idx === preparedCalls.length - 1 ? `` : `border-b dark:border-borderDark border-borderLight`}`}
100+
className="dark:hover:bg-hoverDark hover:bg-hoverLight"
101+
key={idx}
100102
>
101-
<LastCall
102-
call={preparedCall}
103-
showContactForm={showContactForm}
104-
clearNotification={handleClearNotification}
105-
className="dark:hover:bg-hoverDark hover:bg-hoverLight"
106-
/>
103+
<div className="px-5">
104+
<div
105+
className={`${idx === preparedCalls.length - 1 ? `` : `border-b dark:border-borderDark border-borderLight`}`}
106+
>
107+
<LastCall
108+
call={preparedCall}
109+
showContactForm={showContactForm}
110+
clearNotification={handleClearNotification}
111+
className="dark:hover:bg-hoverDark hover:bg-hoverLight"
112+
/>
113+
</div>
114+
</div>
107115
</div>
108-
</div>
116+
)
117+
})
118+
: <EmptyList icon={EmptyResultIcon} text={t('History.There are no calls in your history')} />
119+
: Array(3).fill('').map((_, idx) => {
120+
return <div
121+
className={`${idx === 2 ? `` : `border-b dark:border-borderDark border-borderLight`}`}
122+
key={idx}
123+
>
124+
<SkeletonRow />
109125
</div>
110-
)
111-
}) : Array(3).fill('').map((_, idx) => {
112-
return <div
113-
className={`${idx === 2 ? `` : `border-b dark:border-borderDark border-borderLight`}`}
114-
key={idx}
115-
>
116-
<SkeletonRow />
117-
</div>
118-
})
126+
})
119127
}
120128
</Scrollable >
121129
</>

src/renderer/src/components/Modules/NethVoice/Speeddials/SpeedDialsBox.tsx

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,17 @@
1-
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'
2-
import { faCirclePlus as AddSpeedDialIcon } from '@fortawesome/free-solid-svg-icons'
1+
import {
2+
faCirclePlus as AddSpeedDialIcon,
3+
faBolt as SpeedDialEmptyListIcon
4+
} from '@fortawesome/free-solid-svg-icons'
35
import { SpeedDialNumber } from './SpeedDialNumber'
4-
import { ContactType, NethLinkPageData } from '@shared/types'
6+
import { ContactType } from '@shared/types'
57
import { t } from 'i18next'
68
import { SkeletonRow } from '@renderer/components/SkeletonRow'
79
import { useStoreState } from '@renderer/store'
8-
import { Button } from '@renderer/components/Nethesis'
910
import { usePhoneIslandEventHandler } from '@renderer/hooks/usePhoneIslandEventHandler'
1011
import { useSpeedDialsModule } from './hook/useSpeedDialsModule'
11-
import { log } from '@shared/utils/logger'
1212
import { Scrollable } from '@renderer/components/Scrollable'
1313
import { ModuleTitle } from '@renderer/components/ModuleTitle'
14+
import { EmptyList } from '@renderer/components/EmptyList'
1415

1516
export function SpeedDialsBox({ showSpeedDialForm, showDeleteSpeedDialDialog }): JSX.Element {
1617
const [speeddials] = useStoreState<ContactType[]>('speeddials')
@@ -64,9 +65,7 @@ export function SpeedDialsBox({ showSpeedDialForm, showDeleteSpeedDialDialog }):
6465
)
6566
})
6667
) : (
67-
<div className="dark:text-titleDark text-titleLight dark:bg-bgDark bg-bgLight px-5 py-2">
68-
{t('SpeedDial.No speed dials')}
69-
</div>
68+
<EmptyList icon={SpeedDialEmptyListIcon} text={t('SpeedDial.No speed dials')} />
7069
)
7170
) : (
7271
Array(3)

src/renderer/src/components/Modules/SearchResults/SearchNumberBox.tsx

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
1-
import { faPhone as CallIcon, faUserPlus as AddUserIcon } from '@fortawesome/free-solid-svg-icons'
1+
import {
2+
faPhone as CallIcon,
3+
faUserPlus as AddUserIcon,
4+
faSearch as EmptySearchIcon
5+
} from '@fortawesome/free-solid-svg-icons'
26
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'
37
import { SearchNumber } from './SearchNumber'
4-
import { useInitialize } from '@renderer/hooks/useInitialize'
58
import { useEffect, useState } from 'react'
6-
import { NethLinkPageData, OperatorData, SearchCallData, SearchData } from '@shared/types'
9+
import { OperatorData, SearchData } from '@shared/types'
710
import { t } from 'i18next'
811
import { log } from '@shared/utils/logger'
912
import { useAccount } from '@renderer/hooks/useAccount'
@@ -13,6 +16,7 @@ import { useStoreState } from '@renderer/store'
1316
import { usePhonebookSearchModule } from './hook/usePhoneBookSearchModule'
1417
import { usePhoneIslandEventHandler } from '@renderer/hooks/usePhoneIslandEventHandler'
1518
import { Scrollable } from '@renderer/components/Scrollable'
19+
import { EmptyList } from '@renderer/components/EmptyList'
1620

1721
interface SearchNumberBoxProps {
1822
searchResult: SearchData[] | undefined
@@ -192,9 +196,13 @@ export function SearchNumberBox({ searchResult, showContactForm }: SearchNumberB
192196
</div>
193197
</div>
194198
<Scrollable>
195-
{filteredPhoneNumbers.map((user, index) => (
196-
<SearchNumber key={'SearchNumber_' + index} user={user} />
197-
))}
199+
{
200+
filteredPhoneNumbers.length > 0
201+
? filteredPhoneNumbers.map((user, index) => (
202+
<SearchNumber key={'SearchNumber_' + index} user={user} />
203+
))
204+
: <EmptyList icon={EmptySearchIcon} text={t('Devices.No results')} />
205+
}
198206
</Scrollable>
199207
</div>
200208
)

0 commit comments

Comments
 (0)