Skip to content

Commit 6b019e6

Browse files
authored
Merge pull request #147 from nada-deriv/nada/FEQ-2379/usedevice
nada/fix: removed usedevice component
2 parents 38602b6 + 7553756 commit 6b019e6

File tree

14 files changed

+49
-38
lines changed

14 files changed

+49
-38
lines changed

src/components/Checklist/Checklist.tsx

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
import { useDevice } from '@/hooks/custom-hooks';
21
import { LabelPairedArrowRightLgBoldIcon, LabelPairedCheckMdBoldIcon } from '@deriv/quill-icons';
3-
import { Button, Text } from '@deriv-com/ui';
2+
import { Button, Text, useDevice } from '@deriv-com/ui';
43
import './Checklist.scss';
54

65
type TChecklistItem = {

src/components/Input/Input.tsx

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import { forwardRef, ReactElement } from 'react';
22
import clsx from 'clsx';
3-
import { useDevice } from '@/hooks/custom-hooks';
4-
import { Text } from '@deriv-com/ui';
3+
import { Text, useDevice } from '@deriv-com/ui';
54
import './Input.scss';
65

76
type TInputProps = {

src/components/Table/Table.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { memo, useLayoutEffect, useRef, useState } from 'react';
22
import clsx from 'clsx';
3-
import { useDevice, useFetchMore } from '@/hooks/custom-hooks';
4-
import { Text } from '@deriv-com/ui';
3+
import { useFetchMore } from '@/hooks/custom-hooks';
4+
import { Text, useDevice } from '@deriv-com/ui';
55
import { ColumnDef, getCoreRowModel, getGroupedRowModel, GroupingState, useReactTable } from '@tanstack/react-table';
66
import './Table.scss';
77

src/components/Verification/Verification.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import { Checklist } from '@/components';
2-
import { useDevice, usePoiPoaStatus } from '@/hooks/custom-hooks';
2+
import { usePoiPoaStatus } from '@/hooks/custom-hooks';
33
import { DerivLightIcCashierSendEmailIcon } from '@deriv/quill-icons';
44
import { Localize, useTranslations } from '@deriv-com/translations';
5-
import { Loader, Text } from '@deriv-com/ui';
5+
import { Loader, Text, useDevice } from '@deriv-com/ui';
66
import { URLConstants } from '@deriv-com/utils';
77
import './Verification.scss';
88

src/components/Verification/__tests__/Verification.spec.tsx

+7
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,13 @@ jest.mock('@/hooks/custom-hooks', () => ({
2020
usePoiPoaStatus: jest.fn(() => mockUsePoiPoaStatusData),
2121
}));
2222

23+
jest.mock('@deriv-com/ui', () => ({
24+
...jest.requireActual('@deriv-com/ui'),
25+
useDevice: jest.fn(() => ({
26+
isMobile: false,
27+
})),
28+
}));
29+
2330
describe('<Verification />', () => {
2431
beforeAll(() => {
2532
Object.defineProperty(window, 'location', {

src/hooks/custom-hooks/index.ts

-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
export { default as useAdvertiserStats } from './useAdvertiserStats';
22
export { default as useCopyToClipboard } from './useCopyToClipboard';
3-
export { default as useDevice } from './useDevice';
43
export { default as useExtendedOrderDetails } from './useExtendedOrderDetails';
54
export { default as useFetchMore } from './useFetchMore';
65
export { default as useFloatingRate } from './useFloatingRate';

src/hooks/custom-hooks/useDevice.ts

-18
This file was deleted.

src/pages/advertiser/screens/AdvertiserAdvertsTable/__tests__/AdvertiserAdvertsTable.spec.tsx

+9
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { DeepPartial, THooks } from 'types';
22
import { api } from '@/hooks';
33
import { useIsAdvertiserBarred } from '@/hooks/custom-hooks';
4+
import { useDevice } from '@deriv-com/ui';
45
import { render, screen } from '@testing-library/react';
56
import userEvent from '@testing-library/user-event';
67
import AdvertiserAdvertsTable from '../AdvertiserAdvertsTable';
@@ -77,6 +78,13 @@ jest.mock('@/hooks', () => ({
7778
},
7879
}));
7980

81+
jest.mock('@deriv-com/ui', () => ({
82+
...jest.requireActual('@deriv-com/ui'),
83+
useDevice: jest.fn(),
84+
}));
85+
86+
const mockUseDevice = useDevice as jest.Mock;
87+
8088
const mockUseModalManager = {
8189
hideModal: jest.fn(),
8290
isModalOpenFor: jest.fn(),
@@ -118,6 +126,7 @@ describe('<AdvertiserAdvertsTable />', () => {
118126
});
119127

120128
it('should show the AdvertsTableRenderer component if data is not empty', () => {
129+
mockUseDevice.mockReturnValue({ isDesktop: true });
121130
mockUseGetAdvertList = {
122131
...mockUseGetAdvertList,
123132
data: [

src/pages/my-ads/screens/MyAds/MyAdsToggle/MyAdsToggle.tsx

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import clsx from 'clsx';
2-
import { useDevice } from '@/hooks/custom-hooks';
3-
import { Text, ToggleSwitch } from '@deriv-com/ui';
2+
import { Localize } from '@deriv-com/translations';
3+
import { Text, ToggleSwitch, useDevice } from '@deriv-com/ui';
44

55
type TMyAdsToggleProps = {
66
isPaused: boolean;
@@ -11,7 +11,7 @@ const MyAdsToggle = ({ isPaused, onClickToggle }: TMyAdsToggleProps) => {
1111
return (
1212
<div className={clsx('flex gap-[1.6rem] items-center', { 'justify-end w-full': isMobile })}>
1313
<Text color={isPaused ? 'success' : 'less-prominent'} size={isMobile ? 'md' : 'sm'}>
14-
Hide my ads
14+
<Localize i18n_default_text='Hide my ads' />
1515
</Text>
1616
<ToggleSwitch onChange={onClickToggle} value={isPaused} />
1717
</div>

src/pages/my-ads/screens/MyAds/MyAdsToggle/__tests__/MyAdsToggle.spec.tsx

+7
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,13 @@ import { render, screen } from '@testing-library/react';
22
import userEvent from '@testing-library/user-event';
33
import MyAdsToggle from '../MyAdsToggle';
44

5+
jest.mock('@deriv-com/ui', () => ({
6+
...jest.requireActual('@deriv-com/ui'),
7+
useDevice: jest.fn(() => ({
8+
isMobile: false,
9+
})),
10+
}));
11+
512
const mockProps = {
613
isPaused: false,
714
onClickToggle: jest.fn(),

src/pages/my-profile/screens/MyProfileCounterparties/MyProfileCounterparties.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ import { PropsWithChildren, useState } from 'react';
22
import { FullPageMobileWrapper } from '@/components';
33
import { RadioGroupFilterModal } from '@/components/Modals';
44
import { getCounterpartiesDropdownList } from '@/constants';
5-
import { useDevice, useQueryString } from '@/hooks/custom-hooks';
5+
import { useQueryString } from '@/hooks/custom-hooks';
66
import { Localize, useTranslations } from '@deriv-com/translations';
7-
import { Text } from '@deriv-com/ui';
7+
import { Text, useDevice } from '@deriv-com/ui';
88
import { MyProfileCounterpartiesHeader } from './MyProfileCounterpartiesHeader';
99
import { MyProfileCounterpartiesTable } from './MyProfileCounterpartiesTable';
1010
import './MyProfileCounterparties.scss';

src/pages/my-profile/screens/MyProfileCounterparties/MyProfileCounterpartiesHeader/MyProfileCounterpartiesHeader.tsx

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
import { MutableOption } from 'types';
22
import { Search } from '@/components';
33
import { getCounterpartiesDropdownList } from '@/constants';
4-
import { useDevice } from '@/hooks/custom-hooks';
54
import { LabelPairedChevronDownMdRegularIcon, LegacySort1pxIcon } from '@deriv/quill-icons';
65
import { Localize, useTranslations } from '@deriv-com/translations';
7-
import { Button, Dropdown, Text } from '@deriv-com/ui';
6+
import { Button, Dropdown, Text, useDevice } from '@deriv-com/ui';
87
import './MyProfileCounterpartiesHeader.scss';
98

109
type MyProfileCounterpartiesHeaderProps = {

src/pages/my-profile/screens/MyProfileCounterparties/MyProfileCounterpartiesHeader/__tests__/MyProfileCounterpartiesHeader.spec.tsx

+6
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,12 @@ import { render, screen } from '@testing-library/react';
22
import userEvent from '@testing-library/user-event';
33
import MyProfileCounterpartiesHeader from '../MyProfileCounterpartiesHeader';
44

5+
jest.mock('@deriv-com/ui', () => ({
6+
...jest.requireActual('@deriv-com/ui'),
7+
useDevice: jest.fn(() => ({
8+
isMobile: false,
9+
})),
10+
}));
511
const mockProps = {
612
dropdownValue: 'all',
713
onClickFilter: jest.fn(),

src/pages/my-profile/screens/MyProfileCounterparties/__tests__/MyProfileCounterparties.spec.tsx

+8-4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { useDevice } from '@/hooks/custom-hooks';
1+
import { useDevice } from '@deriv-com/ui';
22
import { render, screen } from '@testing-library/react';
33
import userEvent from '@testing-library/user-event';
44
import MyProfileCounterparties from '../MyProfileCounterparties';
@@ -18,14 +18,18 @@ jest.mock('@/components/Modals/RadioGroupFilterModal', () => ({
1818
const mockSetQueryString = jest.fn();
1919

2020
jest.mock('@/hooks/custom-hooks', () => ({
21-
useDevice: jest.fn(() => ({
22-
isMobile: false,
23-
})),
2421
useQueryString: jest.fn(() => ({
2522
setQueryString: mockSetQueryString,
2623
})),
2724
}));
2825

26+
jest.mock('@deriv-com/ui', () => ({
27+
...jest.requireActual('@deriv-com/ui'),
28+
useDevice: jest.fn(() => ({
29+
isMobile: false,
30+
})),
31+
}));
32+
2933
describe('MyProfileCounterparties', () => {
3034
it('should render the component as expected', () => {
3135
render(<MyProfileCounterparties />);

0 commit comments

Comments
 (0)