diff --git a/apps/meteor/client/components/GenericNoResults/GenericNoResults.stories.tsx b/apps/meteor/client/components/GenericNoResults/GenericNoResults.stories.tsx new file mode 100644 index 0000000000000..e26a23cacf4b1 --- /dev/null +++ b/apps/meteor/client/components/GenericNoResults/GenericNoResults.stories.tsx @@ -0,0 +1,30 @@ +import { TextInput, Box, Icon } from '@rocket.chat/fuselage'; +import type { Meta, StoryFn } from '@storybook/react'; + +import GenericNoResults from './GenericNoResults'; + +export default { + component: GenericNoResults, + parameters: { + layout: 'padded', + actions: { argTypesRegex: '^on.*' }, + }, + decorators: [ + (fn) =>
{fn()}
, + ], +} satisfies Meta; + +const filter = ( + <> + + } /> + + +); + +export const NoResults: StoryFn = () => ( + <> + {filter} + + +); diff --git a/apps/meteor/client/components/deviceManagement/DeviceManagementTable/DeviceManagementTable.tsx b/apps/meteor/client/components/deviceManagement/DeviceManagementTable/DeviceManagementTable.tsx index b41e2dd9627ca..9041d9975b849 100644 --- a/apps/meteor/client/components/deviceManagement/DeviceManagementTable/DeviceManagementTable.tsx +++ b/apps/meteor/client/components/deviceManagement/DeviceManagementTable/DeviceManagementTable.tsx @@ -1,12 +1,12 @@ import type { DeviceManagementSession, DeviceManagementPopulatedSession, Serialized } from '@rocket.chat/core-typings'; import { Box, Pagination, States, StatesAction, StatesActions, StatesIcon, StatesSubtitle, StatesTitle } from '@rocket.chat/fuselage'; import type { PaginatedResult } from '@rocket.chat/rest-typings'; +import { GenericTable, GenericTableHeader, GenericTableBody, GenericTableLoadingTable } from '@rocket.chat/ui-client'; import type { UseQueryResult } from '@tanstack/react-query'; import type { ComponentProps, ReactElement } from 'react'; import { useTranslation } from 'react-i18next'; import GenericNoResults from '../../GenericNoResults/GenericNoResults'; -import { GenericTable, GenericTableHeader, GenericTableBody, GenericTableLoadingTable } from '../../GenericTable'; // FIXME: this tight coupling with the query result is not ideal; it indicates visual components should not be tightly // coupled with data fetching logic. diff --git a/apps/meteor/client/views/account/deviceManagement/DeviceManagementAccountTable/DeviceManagementAccountRow.tsx b/apps/meteor/client/views/account/deviceManagement/DeviceManagementAccountTable/DeviceManagementAccountRow.tsx index 6902cbe2b3dda..72561423c9431 100644 --- a/apps/meteor/client/views/account/deviceManagement/DeviceManagementAccountTable/DeviceManagementAccountRow.tsx +++ b/apps/meteor/client/views/account/deviceManagement/DeviceManagementAccountTable/DeviceManagementAccountRow.tsx @@ -1,9 +1,9 @@ import { Box, Button } from '@rocket.chat/fuselage'; import { useMediaQuery } from '@rocket.chat/fuselage-hooks'; +import { GenericTableCell, GenericTableRow } from '@rocket.chat/ui-client'; import type { ReactElement } from 'react'; import { useTranslation } from 'react-i18next'; -import { GenericTableCell, GenericTableRow } from '../../../../components/GenericTable'; import DeviceIcon from '../../../../components/deviceManagement/DeviceIcon'; import { useDeviceLogout } from '../../../../hooks/useDeviceLogout'; import { useFormatDateAndTime } from '../../../../hooks/useFormatDateAndTime'; diff --git a/apps/meteor/client/views/account/deviceManagement/DeviceManagementAccountTable/DeviceManagementAccountTable.tsx b/apps/meteor/client/views/account/deviceManagement/DeviceManagementAccountTable/DeviceManagementAccountTable.tsx index 6473b0101d528..a865e5511e686 100644 --- a/apps/meteor/client/views/account/deviceManagement/DeviceManagementAccountTable/DeviceManagementAccountTable.tsx +++ b/apps/meteor/client/views/account/deviceManagement/DeviceManagementAccountTable/DeviceManagementAccountTable.tsx @@ -1,4 +1,5 @@ import { useMediaQuery } from '@rocket.chat/fuselage-hooks'; +import { GenericTableHeaderCell, usePagination, useSort } from '@rocket.chat/ui-client'; import { useEndpoint } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import type { ReactElement } from 'react'; @@ -6,9 +7,6 @@ import { useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import DeviceManagementAccountRow from './DeviceManagementAccountRow'; -import { GenericTableHeaderCell } from '../../../../components/GenericTable'; -import { usePagination } from '../../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../../components/GenericTable/hooks/useSort'; import DeviceManagementTable from '../../../../components/deviceManagement/DeviceManagementTable'; import { deviceManagementQueryKeys } from '../../../../lib/queryKeys'; diff --git a/apps/meteor/client/views/account/tokens/AccountTokensTable/AccountTokensRow.tsx b/apps/meteor/client/views/account/tokens/AccountTokensTable/AccountTokensRow.tsx index 7602333287101..c257506a5b223 100644 --- a/apps/meteor/client/views/account/tokens/AccountTokensTable/AccountTokensRow.tsx +++ b/apps/meteor/client/views/account/tokens/AccountTokensTable/AccountTokensRow.tsx @@ -1,9 +1,9 @@ import type { IPersonalAccessToken, Serialized } from '@rocket.chat/core-typings'; import { ButtonGroup, IconButton } from '@rocket.chat/fuselage'; +import { GenericTableRow, GenericTableCell } from '@rocket.chat/ui-client'; import { useCallback } from 'react'; import { useTranslation } from 'react-i18next'; -import { GenericTableRow, GenericTableCell } from '../../../../components/GenericTable'; import { useFormatDateAndTime } from '../../../../hooks/useFormatDateAndTime'; type AccountTokensRowProps = { diff --git a/apps/meteor/client/views/account/tokens/AccountTokensTable/AccountTokensTable.tsx b/apps/meteor/client/views/account/tokens/AccountTokensTable/AccountTokensTable.tsx index 5c32f5346d0ee..3aa325e6f6865 100644 --- a/apps/meteor/client/views/account/tokens/AccountTokensTable/AccountTokensTable.tsx +++ b/apps/meteor/client/views/account/tokens/AccountTokensTable/AccountTokensTable.tsx @@ -1,5 +1,13 @@ import { Box, Pagination, States, StatesAction, StatesActions, StatesIcon, StatesSubtitle, StatesTitle } from '@rocket.chat/fuselage'; -import { GenericModal } from '@rocket.chat/ui-client'; +import { + GenericModal, + GenericTable, + GenericTableHeader, + GenericTableBody, + GenericTableLoadingTable, + GenericTableHeaderCell, + usePagination, +} from '@rocket.chat/ui-client'; import { useSetModal, useToastMessageDispatch, useUserId, useMethod, useEndpoint } from '@rocket.chat/ui-contexts'; import { useQuery, useQueryClient } from '@tanstack/react-query'; import DOMPurify from 'dompurify'; @@ -10,14 +18,6 @@ import { useTranslation } from 'react-i18next'; import AccountTokensRow from './AccountTokensRow'; import AddToken from './AddToken'; import GenericNoResults from '../../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableHeader, - GenericTableBody, - GenericTableLoadingTable, - GenericTableHeaderCell, -} from '../../../../components/GenericTable'; -import { usePagination } from '../../../../components/GenericTable/hooks/usePagination'; import { useResizeInlineBreakpoint } from '../../../../hooks/useResizeInlineBreakpoint'; import { miscQueryKeys } from '../../../../lib/queryKeys'; diff --git a/apps/meteor/client/views/admin/customEmoji/CustomEmoji.tsx b/apps/meteor/client/views/admin/customEmoji/CustomEmoji.tsx index e0476e26ff47d..b5a1273924588 100644 --- a/apps/meteor/client/views/admin/customEmoji/CustomEmoji.tsx +++ b/apps/meteor/client/views/admin/customEmoji/CustomEmoji.tsx @@ -1,12 +1,5 @@ import { Box, Pagination, States, StatesActions, StatesAction, StatesIcon, StatesTitle } from '@rocket.chat/fuselage'; import { useDebouncedValue } from '@rocket.chat/fuselage-hooks'; -import { useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; -import { useQuery } from '@tanstack/react-query'; -import type { MutableRefObject } from 'react'; -import { useEffect, useMemo, useState } from 'react'; - -import FilterByText from '../../../components/FilterByText'; -import GenericNoResults from '../../../components/GenericNoResults'; import { GenericTable, GenericTableBody, @@ -15,9 +8,16 @@ import { GenericTableHeaderCell, GenericTableLoadingTable, GenericTableRow, -} from '../../../components/GenericTable'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../components/GenericTable/hooks/useSort'; + usePagination, + useSort, +} from '@rocket.chat/ui-client'; +import { useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; +import { useQuery } from '@tanstack/react-query'; +import type { MutableRefObject } from 'react'; +import { useEffect, useMemo, useState } from 'react'; + +import FilterByText from '../../../components/FilterByText'; +import GenericNoResults from '../../../components/GenericNoResults'; type CustomEmojiProps = { reload: MutableRefObject<() => void>; diff --git a/apps/meteor/client/views/admin/customSounds/CustomSoundsTable/CustomSoundRow.tsx b/apps/meteor/client/views/admin/customSounds/CustomSoundsTable/CustomSoundRow.tsx index e7c9d0292b5b7..b8648b40935ac 100644 --- a/apps/meteor/client/views/admin/customSounds/CustomSoundsTable/CustomSoundRow.tsx +++ b/apps/meteor/client/views/admin/customSounds/CustomSoundsTable/CustomSoundRow.tsx @@ -1,12 +1,11 @@ import type { ICustomSound } from '@rocket.chat/core-typings'; import { Box, IconButton } from '@rocket.chat/fuselage'; +import { GenericTableCell, GenericTableRow } from '@rocket.chat/ui-client'; import { useCustomSound } from '@rocket.chat/ui-contexts'; import type { ReactElement } from 'react'; import { useCallback, useState } from 'react'; import { useTranslation } from 'react-i18next'; -import { GenericTableCell, GenericTableRow } from '../../../../components/GenericTable'; - type CustomSoundRowProps = { onClick: (soundId: ICustomSound['_id']) => () => void; sound: { diff --git a/apps/meteor/client/views/admin/customSounds/CustomSoundsTable/CustomSoundsTable.tsx b/apps/meteor/client/views/admin/customSounds/CustomSoundsTable/CustomSoundsTable.tsx index 7a70ec984815c..e200a994d174b 100644 --- a/apps/meteor/client/views/admin/customSounds/CustomSoundsTable/CustomSoundsTable.tsx +++ b/apps/meteor/client/views/admin/customSounds/CustomSoundsTable/CustomSoundsTable.tsx @@ -1,5 +1,14 @@ import { Pagination, States, StatesIcon, StatesActions, StatesAction, StatesTitle } from '@rocket.chat/fuselage'; import { useDebouncedValue } from '@rocket.chat/fuselage-hooks'; +import { + GenericTable, + GenericTableBody, + GenericTableHeader, + GenericTableHeaderCell, + GenericTableLoadingTable, + usePagination, + useSort, +} from '@rocket.chat/ui-client'; import { useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import type { MutableRefObject } from 'react'; @@ -8,15 +17,6 @@ import { useState, useMemo, useEffect } from 'react'; import CustomSoundRow from './CustomSoundRow'; import FilterByText from '../../../../components/FilterByText'; import GenericNoResults from '../../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableBody, - GenericTableHeader, - GenericTableHeaderCell, - GenericTableLoadingTable, -} from '../../../../components/GenericTable'; -import { usePagination } from '../../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../../components/GenericTable/hooks/useSort'; type CustomSoundsTableProps = { onClick: (soundId: string) => () => void; diff --git a/apps/meteor/client/views/admin/customUserStatus/CustomUserStatusTable/CustomUserStatusRow.tsx b/apps/meteor/client/views/admin/customUserStatus/CustomUserStatusTable/CustomUserStatusRow.tsx index 667c7d815c4b7..de550a7c05424 100644 --- a/apps/meteor/client/views/admin/customUserStatus/CustomUserStatusTable/CustomUserStatusRow.tsx +++ b/apps/meteor/client/views/admin/customUserStatus/CustomUserStatusTable/CustomUserStatusRow.tsx @@ -1,8 +1,8 @@ import type { IUserStatus } from '@rocket.chat/core-typings'; +import { GenericTableRow, GenericTableCell } from '@rocket.chat/ui-client'; import type { CSSProperties, ReactElement } from 'react'; import { useTranslation } from 'react-i18next'; -import { GenericTableRow, GenericTableCell } from '../../../../components/GenericTable'; import MarkdownText from '../../../../components/MarkdownText'; const style: CSSProperties = { whiteSpace: 'nowrap', textOverflow: 'ellipsis', overflow: 'hidden' }; diff --git a/apps/meteor/client/views/admin/customUserStatus/CustomUserStatusTable/CustomUserStatusTable.tsx b/apps/meteor/client/views/admin/customUserStatus/CustomUserStatusTable/CustomUserStatusTable.tsx index 0c7b3223902c2..d3791a6627cf2 100644 --- a/apps/meteor/client/views/admin/customUserStatus/CustomUserStatusTable/CustomUserStatusTable.tsx +++ b/apps/meteor/client/views/admin/customUserStatus/CustomUserStatusTable/CustomUserStatusTable.tsx @@ -1,6 +1,15 @@ import { Pagination } from '@rocket.chat/fuselage'; import { useDebouncedValue } from '@rocket.chat/fuselage-hooks'; import { escapeRegExp } from '@rocket.chat/string-helpers'; +import { + GenericTable, + GenericTableHeader, + GenericTableHeaderCell, + GenericTableBody, + GenericTableLoadingTable, + usePagination, + useSort, +} from '@rocket.chat/ui-client'; import { useEndpoint } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import type { ReactElement, MutableRefObject } from 'react'; @@ -10,15 +19,6 @@ import { useTranslation } from 'react-i18next'; import CustomUserStatusRow from './CustomUserStatusRow'; import FilterByText from '../../../../components/FilterByText'; import GenericNoResult from '../../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableHeader, - GenericTableHeaderCell, - GenericTableBody, - GenericTableLoadingTable, -} from '../../../../components/GenericTable'; -import { usePagination } from '../../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../../components/GenericTable/hooks/useSort'; type CustomUserStatusProps = { reload: MutableRefObject<() => void>; diff --git a/apps/meteor/client/views/admin/deviceManagement/DeviceManagementAdminTable/DeviceManagementAdminRow.tsx b/apps/meteor/client/views/admin/deviceManagement/DeviceManagementAdminTable/DeviceManagementAdminRow.tsx index a7593cd6706e6..53d5a8d93950b 100644 --- a/apps/meteor/client/views/admin/deviceManagement/DeviceManagementAdminTable/DeviceManagementAdminRow.tsx +++ b/apps/meteor/client/views/admin/deviceManagement/DeviceManagementAdminTable/DeviceManagementAdminRow.tsx @@ -1,13 +1,12 @@ import { Box } from '@rocket.chat/fuselage'; import { useMediaQuery, useEffectEvent } from '@rocket.chat/fuselage-hooks'; import type { GenericMenuItemProps } from '@rocket.chat/ui-client'; -import { GenericMenu } from '@rocket.chat/ui-client'; +import { GenericMenu, GenericTableRow, GenericTableCell } from '@rocket.chat/ui-client'; import { useRoute } from '@rocket.chat/ui-contexts'; import type { KeyboardEvent } from 'react'; import { useCallback } from 'react'; import { useTranslation } from 'react-i18next'; -import { GenericTableRow, GenericTableCell } from '../../../../components/GenericTable'; import DeviceIcon from '../../../../components/deviceManagement/DeviceIcon'; import { useDeviceLogout } from '../../../../hooks/useDeviceLogout'; import { useFormatDateAndTime } from '../../../../hooks/useFormatDateAndTime'; diff --git a/apps/meteor/client/views/admin/deviceManagement/DeviceManagementAdminTable/DeviceManagementAdminTable.tsx b/apps/meteor/client/views/admin/deviceManagement/DeviceManagementAdminTable/DeviceManagementAdminTable.tsx index 6861114b2f081..3037c63ce4395 100644 --- a/apps/meteor/client/views/admin/deviceManagement/DeviceManagementAdminTable/DeviceManagementAdminTable.tsx +++ b/apps/meteor/client/views/admin/deviceManagement/DeviceManagementAdminTable/DeviceManagementAdminTable.tsx @@ -1,5 +1,6 @@ import type { DeviceManagementPopulatedSession, DeviceManagementSession, Serialized } from '@rocket.chat/core-typings'; import { useDebouncedValue, useMediaQuery } from '@rocket.chat/fuselage-hooks'; +import { GenericTableHeaderCell, usePagination, useSort } from '@rocket.chat/ui-client'; import { useEndpoint } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import { useState, useMemo } from 'react'; @@ -7,9 +8,6 @@ import { useTranslation } from 'react-i18next'; import DeviceManagementAdminRow from './DeviceManagementAdminRow'; import FilterByText from '../../../../components/FilterByText'; -import { GenericTableHeaderCell } from '../../../../components/GenericTable'; -import { usePagination } from '../../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../../components/GenericTable/hooks/useSort'; import DeviceManagementTable from '../../../../components/deviceManagement/DeviceManagementTable'; import { deviceManagementQueryKeys } from '../../../../lib/queryKeys'; diff --git a/apps/meteor/client/views/admin/emailInbox/EmailInboxTable.tsx b/apps/meteor/client/views/admin/emailInbox/EmailInboxTable.tsx index 29cf66557e316..12aa90ecfb3e8 100644 --- a/apps/meteor/client/views/admin/emailInbox/EmailInboxTable.tsx +++ b/apps/meteor/client/views/admin/emailInbox/EmailInboxTable.tsx @@ -1,11 +1,4 @@ import { Pagination, States, StatesAction, StatesActions, StatesIcon, StatesTitle } from '@rocket.chat/fuselage'; -import { useRoute, useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; -import { useQuery } from '@tanstack/react-query'; -import type { ReactElement } from 'react'; -import { useMemo, useCallback } from 'react'; - -import SendTestButton from './SendTestButton'; -import GenericNoResults from '../../../components/GenericNoResults'; import { GenericTable, GenericTableBody, @@ -14,9 +7,16 @@ import { GenericTableHeaderCell, GenericTableLoadingTable, GenericTableRow, -} from '../../../components/GenericTable'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../components/GenericTable/hooks/useSort'; + usePagination, + useSort, +} from '@rocket.chat/ui-client'; +import { useRoute, useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; +import { useQuery } from '@tanstack/react-query'; +import type { ReactElement } from 'react'; +import { useMemo, useCallback } from 'react'; + +import SendTestButton from './SendTestButton'; +import GenericNoResults from '../../../components/GenericNoResults'; const EmailInboxTable = (): ReactElement => { const t = useTranslation(); diff --git a/apps/meteor/client/views/admin/emailInbox/SendTestButton.tsx b/apps/meteor/client/views/admin/emailInbox/SendTestButton.tsx index fa4fa2bb1bdc3..4a99a461d4b7f 100644 --- a/apps/meteor/client/views/admin/emailInbox/SendTestButton.tsx +++ b/apps/meteor/client/views/admin/emailInbox/SendTestButton.tsx @@ -1,11 +1,10 @@ import type { IEmailInboxPayload } from '@rocket.chat/core-typings'; import { Button } from '@rocket.chat/fuselage'; +import { GenericTableCell } from '@rocket.chat/ui-client'; import { useToastMessageDispatch, useEndpoint } from '@rocket.chat/ui-contexts'; import type { MouseEvent, ReactElement } from 'react'; import { useTranslation } from 'react-i18next'; -import { GenericTableCell } from '../../../components/GenericTable'; - const SendTestButton = ({ id }: { id: IEmailInboxPayload['_id'] }): ReactElement => { const { t } = useTranslation(); const dispatchToastMessage = useToastMessageDispatch(); diff --git a/apps/meteor/client/views/admin/import/PrepareContacts.tsx b/apps/meteor/client/views/admin/import/PrepareContacts.tsx index 54a6df2d4e0c3..6582ab76fef65 100644 --- a/apps/meteor/client/views/admin/import/PrepareContacts.tsx +++ b/apps/meteor/client/views/admin/import/PrepareContacts.tsx @@ -1,10 +1,9 @@ import type { IImporterSelectionContact } from '@rocket.chat/core-typings'; import { CheckBox, Table, Pagination, TableHead, TableRow, TableCell, TableBody } from '@rocket.chat/fuselage'; +import { usePagination } from '@rocket.chat/ui-client'; import type { Dispatch, SetStateAction, ChangeEvent } from 'react'; import { useTranslation } from 'react-i18next'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; - type PrepareContactsProps = { contactsCount: number; contacts: IImporterSelectionContact[]; diff --git a/apps/meteor/client/views/admin/integrations/IntegrationRow.tsx b/apps/meteor/client/views/admin/integrations/IntegrationRow.tsx index 2b63f9caceeb4..51f6097b523df 100644 --- a/apps/meteor/client/views/admin/integrations/IntegrationRow.tsx +++ b/apps/meteor/client/views/admin/integrations/IntegrationRow.tsx @@ -1,7 +1,7 @@ import type { IIntegration, Serialized } from '@rocket.chat/core-typings'; import { Box } from '@rocket.chat/fuselage'; +import { GenericTableCell, GenericTableRow } from '@rocket.chat/ui-client'; -import { GenericTableCell, GenericTableRow } from '../../../components/GenericTable'; import { useFormatDateAndTime } from '../../../hooks/useFormatDateAndTime'; type IntegrationRowProps = { diff --git a/apps/meteor/client/views/admin/integrations/IntegrationsTable.tsx b/apps/meteor/client/views/admin/integrations/IntegrationsTable.tsx index db932f488dab1..f80ec353cc056 100644 --- a/apps/meteor/client/views/admin/integrations/IntegrationsTable.tsx +++ b/apps/meteor/client/views/admin/integrations/IntegrationsTable.tsx @@ -1,6 +1,15 @@ import { Pagination, States, StatesActions, StatesAction, StatesIcon, StatesTitle } from '@rocket.chat/fuselage'; import { useDebouncedValue } from '@rocket.chat/fuselage-hooks'; import { escapeRegExp } from '@rocket.chat/string-helpers'; +import { + GenericTable, + GenericTableBody, + GenericTableHeader, + GenericTableHeaderCell, + GenericTableLoadingTable, + usePagination, + useSort, +} from '@rocket.chat/ui-client'; import { useEndpoint, useRoute, useTranslation, useLayout } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import { useMemo, useCallback, useState } from 'react'; @@ -8,15 +17,6 @@ import { useMemo, useCallback, useState } from 'react'; import IntegrationRow from './IntegrationRow'; import FilterByText from '../../../components/FilterByText'; import GenericNoResults from '../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableBody, - GenericTableHeader, - GenericTableHeaderCell, - GenericTableLoadingTable, -} from '../../../components/GenericTable'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../components/GenericTable/hooks/useSort'; const IntegrationsTable = ({ type }: { type?: string }) => { const t = useTranslation(); diff --git a/apps/meteor/client/views/admin/integrations/outgoing/history/OutgoingWebhookHistoryPage.tsx b/apps/meteor/client/views/admin/integrations/outgoing/history/OutgoingWebhookHistoryPage.tsx index 06e1de7b64c15..8f8ea6ec1f543 100644 --- a/apps/meteor/client/views/admin/integrations/outgoing/history/OutgoingWebhookHistoryPage.tsx +++ b/apps/meteor/client/views/admin/integrations/outgoing/history/OutgoingWebhookHistoryPage.tsx @@ -1,5 +1,5 @@ import { Button, ButtonGroup, Pagination } from '@rocket.chat/fuselage'; -import { CustomScrollbars } from '@rocket.chat/ui-client'; +import { CustomScrollbars, usePagination } from '@rocket.chat/ui-client'; import { useToastMessageDispatch, useRouteParameter, useMethod, useTranslation, useEndpoint, useRouter } from '@rocket.chat/ui-contexts'; import { useQuery, useQueryClient } from '@tanstack/react-query'; import type { ComponentProps } from 'react'; @@ -7,7 +7,6 @@ import { useMemo, useState, useEffect } from 'react'; import HistoryContent from './HistoryContent'; import { sdk } from '../../../../../../app/utils/client/lib/SDKClient'; -import { usePagination } from '../../../../../components/GenericTable/hooks/usePagination'; import { Page, PageHeader, PageContent } from '../../../../../components/Page'; const OutgoingWebhookHistoryPage = (props: ComponentProps) => { diff --git a/apps/meteor/client/views/admin/invites/InviteRow.tsx b/apps/meteor/client/views/admin/invites/InviteRow.tsx index b585cac8a92f9..31fe9f1f0166f 100644 --- a/apps/meteor/client/views/admin/invites/InviteRow.tsx +++ b/apps/meteor/client/views/admin/invites/InviteRow.tsx @@ -1,11 +1,11 @@ import type { IInvite } from '@rocket.chat/core-typings'; import { Box, IconButton } from '@rocket.chat/fuselage'; import { useMediaQuery } from '@rocket.chat/fuselage-hooks'; +import { GenericTableCell, GenericTableRow } from '@rocket.chat/ui-client'; import { useEndpoint } from '@rocket.chat/ui-contexts'; import type { ReactElement, MouseEvent } from 'react'; import { useTranslation } from 'react-i18next'; -import { GenericTableCell, GenericTableRow } from '../../../components/GenericTable'; import { useFormatDateAndTime } from '../../../hooks/useFormatDateAndTime'; import { useTimeFromNow } from '../../../hooks/useTimeFromNow'; diff --git a/apps/meteor/client/views/admin/invites/InvitesPage.tsx b/apps/meteor/client/views/admin/invites/InvitesPage.tsx index ab5f0076589e0..db708c2d1c06f 100644 --- a/apps/meteor/client/views/admin/invites/InvitesPage.tsx +++ b/apps/meteor/client/views/admin/invites/InvitesPage.tsx @@ -1,6 +1,13 @@ import { States, StatesIcon, StatesTitle, StatesActions, StatesAction } from '@rocket.chat/fuselage'; import { useMediaQuery } from '@rocket.chat/fuselage-hooks'; -import { GenericModal } from '@rocket.chat/ui-client'; +import { + GenericModal, + GenericTable, + GenericTableBody, + GenericTableHeader, + GenericTableHeaderCell, + GenericTableLoadingTable, +} from '@rocket.chat/ui-client'; import { useSetModal, useToastMessageDispatch, useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import type { ReactElement } from 'react'; @@ -8,13 +15,6 @@ import { useMemo } from 'react'; import InviteRow from './InviteRow'; import GenericNoResults from '../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableBody, - GenericTableHeader, - GenericTableHeaderCell, - GenericTableLoadingTable, -} from '../../../components/GenericTable'; import { Page, PageHeader, PageContent } from '../../../components/Page'; const InvitesPage = (): ReactElement => { diff --git a/apps/meteor/client/views/admin/moderation/ModerationConsoleTable.tsx b/apps/meteor/client/views/admin/moderation/ModerationConsoleTable.tsx index 816bec605bcea..61e2af1211690 100644 --- a/apps/meteor/client/views/admin/moderation/ModerationConsoleTable.tsx +++ b/apps/meteor/client/views/admin/moderation/ModerationConsoleTable.tsx @@ -1,6 +1,15 @@ import type { IUser } from '@rocket.chat/core-typings'; import { Pagination } from '@rocket.chat/fuselage'; import { useDebouncedValue, useMediaQuery, useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { + GenericTable, + GenericTableLoadingTable, + GenericTableHeaderCell, + GenericTableBody, + GenericTableHeader, + usePagination, + useSort, +} from '@rocket.chat/ui-client'; import { useEndpoint, useRouter } from '@rocket.chat/ui-contexts'; import { keepPreviousData, useQuery } from '@tanstack/react-query'; import { useMemo, useState } from 'react'; @@ -9,15 +18,6 @@ import { useTranslation } from 'react-i18next'; import ModerationConsoleTableRow from './ModerationConsoleTableRow'; import ModerationFilter from './helpers/ModerationFilter'; import GenericNoResults from '../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableLoadingTable, - GenericTableHeaderCell, - GenericTableBody, - GenericTableHeader, -} from '../../../components/GenericTable'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../components/GenericTable/hooks/useSort'; // TODO: Missing error state const ModerationConsoleTable = () => { diff --git a/apps/meteor/client/views/admin/moderation/ModerationConsoleTableRow.tsx b/apps/meteor/client/views/admin/moderation/ModerationConsoleTableRow.tsx index 46e25da4c7abc..5b3d6484306f8 100644 --- a/apps/meteor/client/views/admin/moderation/ModerationConsoleTableRow.tsx +++ b/apps/meteor/client/views/admin/moderation/ModerationConsoleTableRow.tsx @@ -1,8 +1,8 @@ import type { IModerationAudit, IUser } from '@rocket.chat/core-typings'; +import { GenericTableCell, GenericTableRow } from '@rocket.chat/ui-client'; import ModerationConsoleActions from './ModerationConsoleActions'; import UserColumn from './helpers/UserColumn'; -import { GenericTableCell, GenericTableRow } from '../../../components/GenericTable'; import { useFormatDateAndTime } from '../../../hooks/useFormatDateAndTime'; export type ModerationConsoleRowProps = { diff --git a/apps/meteor/client/views/admin/moderation/UserReports/ModConsoleUserTableRow.tsx b/apps/meteor/client/views/admin/moderation/UserReports/ModConsoleUserTableRow.tsx index 3e543b5f9d63a..b70fdfc49ab35 100644 --- a/apps/meteor/client/views/admin/moderation/UserReports/ModConsoleUserTableRow.tsx +++ b/apps/meteor/client/views/admin/moderation/UserReports/ModConsoleUserTableRow.tsx @@ -1,7 +1,7 @@ import type { IUser, UserReport, Serialized } from '@rocket.chat/core-typings'; +import { GenericTableCell, GenericTableRow } from '@rocket.chat/ui-client'; import ModConsoleUserActions from './ModConsoleUserActions'; -import { GenericTableCell, GenericTableRow } from '../../../../components/GenericTable'; import { useFormatDateAndTime } from '../../../../hooks/useFormatDateAndTime'; import UserColumn from '../helpers/UserColumn'; diff --git a/apps/meteor/client/views/admin/moderation/UserReports/ModConsoleUsersTable.tsx b/apps/meteor/client/views/admin/moderation/UserReports/ModConsoleUsersTable.tsx index 87af70d210449..6a21d7d1ed85c 100644 --- a/apps/meteor/client/views/admin/moderation/UserReports/ModConsoleUsersTable.tsx +++ b/apps/meteor/client/views/admin/moderation/UserReports/ModConsoleUsersTable.tsx @@ -1,6 +1,15 @@ import type { IUser } from '@rocket.chat/core-typings'; import { Pagination, States, StatesAction, StatesActions, StatesIcon, StatesTitle } from '@rocket.chat/fuselage'; import { useDebouncedValue, useMediaQuery, useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { + GenericTable, + GenericTableLoadingTable, + GenericTableHeaderCell, + GenericTableBody, + GenericTableHeader, + usePagination, + useSort, +} from '@rocket.chat/ui-client'; import { useEndpoint, useRouter } from '@rocket.chat/ui-contexts'; import { keepPreviousData, useQuery } from '@tanstack/react-query'; import { useMemo, useState } from 'react'; @@ -8,15 +17,6 @@ import { useTranslation } from 'react-i18next'; import ModConsoleUserTableRow from './ModConsoleUserTableRow'; import GenericNoResults from '../../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableLoadingTable, - GenericTableHeaderCell, - GenericTableBody, - GenericTableHeader, -} from '../../../../components/GenericTable'; -import { usePagination } from '../../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../../components/GenericTable/hooks/useSort'; import ModerationFilter from '../helpers/ModerationFilter'; const ModConsoleUsersTable = () => { diff --git a/apps/meteor/client/views/admin/oauthApps/OAuthAppsTable.tsx b/apps/meteor/client/views/admin/oauthApps/OAuthAppsTable.tsx index 01398427eb180..b30ecfccd9d83 100644 --- a/apps/meteor/client/views/admin/oauthApps/OAuthAppsTable.tsx +++ b/apps/meteor/client/views/admin/oauthApps/OAuthAppsTable.tsx @@ -1,9 +1,3 @@ -import { useEndpoint, useRoute, useTranslation, useUserId } from '@rocket.chat/ui-contexts'; -import { useQuery } from '@tanstack/react-query'; -import type { ReactElement } from 'react'; -import { useCallback } from 'react'; - -import GenericNoResults from '../../../components/GenericNoResults'; import { GenericTableHeaderCell, GenericTable, @@ -12,7 +6,13 @@ import { GenericTableCell, GenericTableBody, GenericTableLoadingRow, -} from '../../../components/GenericTable'; +} from '@rocket.chat/ui-client'; +import { useEndpoint, useRoute, useTranslation, useUserId } from '@rocket.chat/ui-contexts'; +import { useQuery } from '@tanstack/react-query'; +import type { ReactElement } from 'react'; +import { useCallback } from 'react'; + +import GenericNoResults from '../../../components/GenericNoResults'; import { useFormatDateAndTime } from '../../../hooks/useFormatDateAndTime'; const OAuthAppsTable = (): ReactElement => { diff --git a/apps/meteor/client/views/admin/permissions/PermissionsPage.tsx b/apps/meteor/client/views/admin/permissions/PermissionsPage.tsx index 19f7fbc343206..01d98867dce71 100644 --- a/apps/meteor/client/views/admin/permissions/PermissionsPage.tsx +++ b/apps/meteor/client/views/admin/permissions/PermissionsPage.tsx @@ -1,5 +1,6 @@ import { Margins, Tabs, Button } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { usePagination } from '@rocket.chat/ui-client'; import { useRoute, usePermission, useSetModal } from '@rocket.chat/ui-contexts'; import type { ReactElement } from 'react'; import { useState } from 'react'; @@ -9,7 +10,6 @@ import CustomRoleUpsellModal from './CustomRoleUpsellModal'; import PermissionsContextBar from './PermissionsContextBar'; import PermissionsTable from './PermissionsTable'; import { usePermissionsAndRoles } from './hooks/usePermissionsAndRoles'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; import { Page, PageHeader, PageContent } from '../../../components/Page'; const PermissionsPage = ({ isEnterprise }: { isEnterprise: boolean }): ReactElement => { diff --git a/apps/meteor/client/views/admin/permissions/PermissionsTable/PermissionRow.tsx b/apps/meteor/client/views/admin/permissions/PermissionsTable/PermissionRow.tsx index 2c0392e7f761b..7706a5ea861f6 100644 --- a/apps/meteor/client/views/admin/permissions/PermissionsTable/PermissionRow.tsx +++ b/apps/meteor/client/views/admin/permissions/PermissionsTable/PermissionRow.tsx @@ -1,4 +1,5 @@ import type { IRole, IPermission } from '@rocket.chat/core-typings'; +import { GenericTableRow, GenericTableCell } from '@rocket.chat/ui-client'; import type { TranslationKey } from '@rocket.chat/ui-contexts'; import type { TFunction } from 'i18next'; import type { ReactElement } from 'react'; @@ -7,7 +8,6 @@ import { useTranslation } from 'react-i18next'; import RoleCell from './RoleCell'; import { CONSTANTS } from '../../../../../app/authorization/lib'; -import { GenericTableRow, GenericTableCell } from '../../../../components/GenericTable'; import { useChangeRole } from '../hooks/useChangeRole'; const getName = (t: TFunction, permission: IPermission): string => { diff --git a/apps/meteor/client/views/admin/permissions/PermissionsTable/PermissionsTable.tsx b/apps/meteor/client/views/admin/permissions/PermissionsTable/PermissionsTable.tsx index b2aede0e32d9f..64171fb39e39a 100644 --- a/apps/meteor/client/views/admin/permissions/PermissionsTable/PermissionsTable.tsx +++ b/apps/meteor/client/views/admin/permissions/PermissionsTable/PermissionsTable.tsx @@ -1,6 +1,8 @@ import type { IPermission, IRole } from '@rocket.chat/core-typings'; import { css } from '@rocket.chat/css-in-js'; import { Pagination, Palette } from '@rocket.chat/fuselage'; +import { GenericTable, GenericTableHeader, GenericTableHeaderCell, GenericTableBody } from '@rocket.chat/ui-client'; +import type { usePagination } from '@rocket.chat/ui-client'; import { useMethod } from '@rocket.chat/ui-contexts'; import { useTranslation } from 'react-i18next'; @@ -8,8 +10,6 @@ import PermissionRow from './PermissionRow'; import PermissionsTableFilter from './PermissionsTableFilter'; import RoleHeader from './RoleHeader'; import GenericNoResults from '../../../../components/GenericNoResults'; -import { GenericTable, GenericTableHeader, GenericTableHeaderCell, GenericTableBody } from '../../../../components/GenericTable'; -import type { usePagination } from '../../../../components/GenericTable/hooks/usePagination'; type PermissionsTableProps = { roleList: IRole[]; diff --git a/apps/meteor/client/views/admin/permissions/PermissionsTable/RoleCell.tsx b/apps/meteor/client/views/admin/permissions/PermissionsTable/RoleCell.tsx index 70eddbafcc098..fa4590caae204 100644 --- a/apps/meteor/client/views/admin/permissions/PermissionsTable/RoleCell.tsx +++ b/apps/meteor/client/views/admin/permissions/PermissionsTable/RoleCell.tsx @@ -1,14 +1,13 @@ import type { IRole } from '@rocket.chat/core-typings'; import { Margins, Box, CheckBox, Throbber } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; -import { GenericModal } from '@rocket.chat/ui-client'; +import { GenericModal, GenericTableCell } from '@rocket.chat/ui-client'; import { useSetModal } from '@rocket.chat/ui-contexts'; import type { ReactElement } from 'react'; import { useState, memo } from 'react'; import { useTranslation } from 'react-i18next'; import { AuthorizationUtils, confirmationRequiredPermissions } from '../../../../../app/authorization/lib'; -import { GenericTableCell } from '../../../../components/GenericTable'; type RoleCellProps = { _id: IRole['_id']; diff --git a/apps/meteor/client/views/admin/permissions/PermissionsTable/RoleHeader.tsx b/apps/meteor/client/views/admin/permissions/PermissionsTable/RoleHeader.tsx index 06c5d34f12c5b..13802704a14a3 100644 --- a/apps/meteor/client/views/admin/permissions/PermissionsTable/RoleHeader.tsx +++ b/apps/meteor/client/views/admin/permissions/PermissionsTable/RoleHeader.tsx @@ -1,12 +1,11 @@ import type { IRole } from '@rocket.chat/core-typings'; import { Button } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { GenericTableHeaderCell } from '@rocket.chat/ui-client'; import { useRoute } from '@rocket.chat/ui-contexts'; import type { ReactElement } from 'react'; import { memo } from 'react'; -import { GenericTableHeaderCell } from '../../../../components/GenericTable'; - type RoleHeaderProps = { _id: IRole['_id']; name: IRole['name']; diff --git a/apps/meteor/client/views/admin/permissions/UsersInRole/UsersInRolePage.tsx b/apps/meteor/client/views/admin/permissions/UsersInRole/UsersInRolePage.tsx index f65cd0a092f16..b54a22124cb63 100644 --- a/apps/meteor/client/views/admin/permissions/UsersInRole/UsersInRolePage.tsx +++ b/apps/meteor/client/views/admin/permissions/UsersInRole/UsersInRolePage.tsx @@ -1,6 +1,7 @@ import type { IRole, IRoom } from '@rocket.chat/core-typings'; import { Box, Field, FieldLabel, FieldRow, Margins, ButtonGroup, Button, Callout, FieldError } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { usePagination } from '@rocket.chat/ui-client'; import { useToastMessageDispatch, useEndpoint, useRouter } from '@rocket.chat/ui-contexts'; import { useQuery, useQueryClient } from '@tanstack/react-query'; import { useId, useMemo, type ReactElement } from 'react'; @@ -9,7 +10,6 @@ import { useTranslation } from 'react-i18next'; import UsersInRoleTable from './UsersInRoleTable'; import { useRemoveUserFromRole } from './hooks/useRemoveUserFromRole'; -import { usePagination } from '../../../../components/GenericTable/hooks/usePagination'; import { Page, PageHeader, PageContent } from '../../../../components/Page'; import RoomAutoComplete from '../../../../components/RoomAutoComplete'; import UserAutoCompleteMultiple from '../../../../components/UserAutoCompleteMultiple'; diff --git a/apps/meteor/client/views/admin/permissions/UsersInRole/UsersInRoleTable/UsersInRoleTable.tsx b/apps/meteor/client/views/admin/permissions/UsersInRole/UsersInRoleTable/UsersInRoleTable.tsx index 974120d00e67f..ca033e8117b54 100644 --- a/apps/meteor/client/views/admin/permissions/UsersInRole/UsersInRoleTable/UsersInRoleTable.tsx +++ b/apps/meteor/client/views/admin/permissions/UsersInRole/UsersInRoleTable/UsersInRoleTable.tsx @@ -1,18 +1,18 @@ import type { IUserInRole, Serialized } from '@rocket.chat/core-typings'; import { Pagination } from '@rocket.chat/fuselage'; -import { useTranslation } from 'react-i18next'; - -import UsersInRoleTableRow from './UsersInRoleTableRow'; -import GenericError from '../../../../../components/GenericError'; -import GenericNoResults from '../../../../../components/GenericNoResults'; import { GenericTable, GenericTableHeader, GenericTableHeaderCell, GenericTableBody, GenericTableLoadingTable, -} from '../../../../../components/GenericTable'; -import type { usePagination } from '../../../../../components/GenericTable/hooks/usePagination'; +} from '@rocket.chat/ui-client'; +import type { usePagination } from '@rocket.chat/ui-client'; +import { useTranslation } from 'react-i18next'; + +import UsersInRoleTableRow from './UsersInRoleTableRow'; +import GenericError from '../../../../../components/GenericError'; +import GenericNoResults from '../../../../../components/GenericNoResults'; type UsersInRoleTableProps = { isLoading: boolean; diff --git a/apps/meteor/client/views/admin/permissions/UsersInRole/UsersInRoleTable/UsersInRoleTableRow.tsx b/apps/meteor/client/views/admin/permissions/UsersInRole/UsersInRoleTable/UsersInRoleTableRow.tsx index 00e24d820893f..b37c7a1ae93dc 100644 --- a/apps/meteor/client/views/admin/permissions/UsersInRole/UsersInRoleTable/UsersInRoleTableRow.tsx +++ b/apps/meteor/client/views/admin/permissions/UsersInRole/UsersInRoleTable/UsersInRoleTableRow.tsx @@ -2,12 +2,12 @@ import type { IUserInRole, Serialized } from '@rocket.chat/core-typings'; import { Box, IconButton } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; import { UserAvatar } from '@rocket.chat/ui-avatar'; +import { GenericTableRow, GenericTableCell } from '@rocket.chat/ui-client'; import type { ReactElement } from 'react'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; import { getUserEmailAddress } from '../../../../../../lib/getUserEmailAddress'; -import { GenericTableRow, GenericTableCell } from '../../../../../components/GenericTable'; type UsersInRoleTableRowProps = { user: Serialized; diff --git a/apps/meteor/client/views/admin/rooms/RoomRow.tsx b/apps/meteor/client/views/admin/rooms/RoomRow.tsx index 7bca8ae8c72cd..76aec806c0699 100644 --- a/apps/meteor/client/views/admin/rooms/RoomRow.tsx +++ b/apps/meteor/client/views/admin/rooms/RoomRow.tsx @@ -3,11 +3,11 @@ import type { IRoom, RoomAdminFieldsType, Serialized } from '@rocket.chat/core-t import { Box, Icon } from '@rocket.chat/fuselage'; import { useMediaQuery } from '@rocket.chat/fuselage-hooks'; import { RoomAvatar } from '@rocket.chat/ui-avatar'; +import { GenericTableCell, GenericTableRow } from '@rocket.chat/ui-client'; import { useRouter } from '@rocket.chat/ui-contexts'; import { useCallback } from 'react'; import { useTranslation } from 'react-i18next'; -import { GenericTableCell, GenericTableRow } from '../../../components/GenericTable'; import { useFormatDate } from '../../../hooks/useFormatDate'; import { roomCoordinator } from '../../../lib/rooms/roomCoordinator'; diff --git a/apps/meteor/client/views/admin/rooms/RoomsTable.tsx b/apps/meteor/client/views/admin/rooms/RoomsTable.tsx index c75a108f60dde..40ef5ecff8ca9 100644 --- a/apps/meteor/client/views/admin/rooms/RoomsTable.tsx +++ b/apps/meteor/client/views/admin/rooms/RoomsTable.tsx @@ -1,6 +1,15 @@ import { Pagination, States, StatesIcon, StatesTitle, StatesActions, StatesAction } from '@rocket.chat/fuselage'; import { useMediaQuery, useDebouncedValue } from '@rocket.chat/fuselage-hooks'; import type { OptionProp } from '@rocket.chat/ui-client'; +import { + GenericTable, + GenericTableBody, + GenericTableHeader, + GenericTableHeaderCell, + GenericTableLoadingTable, + usePagination, + useSort, +} from '@rocket.chat/ui-client'; import { useEndpoint } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import type { ReactElement, MutableRefObject } from 'react'; @@ -10,15 +19,6 @@ import { useTranslation } from 'react-i18next'; import RoomRow from './RoomRow'; import RoomsTableFilters from './RoomsTableFilters'; import GenericNoResults from '../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableBody, - GenericTableHeader, - GenericTableHeaderCell, - GenericTableLoadingTable, -} from '../../../components/GenericTable'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../components/GenericTable/hooks/useSort'; type RoomFilters = { searchText: string; diff --git a/apps/meteor/client/views/admin/settings/groups/VoipGroupPage/AssignAgentButton.tsx b/apps/meteor/client/views/admin/settings/groups/VoipGroupPage/AssignAgentButton.tsx index 29d2acb685cc1..f537d81451ca2 100644 --- a/apps/meteor/client/views/admin/settings/groups/VoipGroupPage/AssignAgentButton.tsx +++ b/apps/meteor/client/views/admin/settings/groups/VoipGroupPage/AssignAgentButton.tsx @@ -1,11 +1,11 @@ import { IconButton } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { GenericTableCell } from '@rocket.chat/ui-client'; import { useSetModal } from '@rocket.chat/ui-contexts'; import type { MouseEvent } from 'react'; import { useTranslation } from 'react-i18next'; import AssignAgentModal from './AssignAgentModal'; -import { GenericTableCell } from '../../../../../components/GenericTable'; type AssignAgentButtonProps = { extension: string; reload: () => void }; diff --git a/apps/meteor/client/views/admin/settings/groups/VoipGroupPage/RemoveAgentButton.tsx b/apps/meteor/client/views/admin/settings/groups/VoipGroupPage/RemoveAgentButton.tsx index 2f8ad82cec382..9bb6d8e8ec2fa 100644 --- a/apps/meteor/client/views/admin/settings/groups/VoipGroupPage/RemoveAgentButton.tsx +++ b/apps/meteor/client/views/admin/settings/groups/VoipGroupPage/RemoveAgentButton.tsx @@ -1,12 +1,10 @@ import { IconButton } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; -import { GenericModal } from '@rocket.chat/ui-client'; +import { GenericModal, GenericTableCell } from '@rocket.chat/ui-client'; import { useSetModal, useToastMessageDispatch, useEndpoint } from '@rocket.chat/ui-contexts'; import type { MouseEvent } from 'react'; import { useTranslation } from 'react-i18next'; -import { GenericTableCell } from '../../../../../components/GenericTable'; - type RemoveAgentButtonProps = { username: string; reload: () => void }; const RemoveAgentButton = ({ username, reload }: RemoveAgentButtonProps) => { diff --git a/apps/meteor/client/views/admin/settings/groups/VoipGroupPage/VoipExtensionsPage.tsx b/apps/meteor/client/views/admin/settings/groups/VoipGroupPage/VoipExtensionsPage.tsx index bb6e297ef0df4..92f3097a2314a 100644 --- a/apps/meteor/client/views/admin/settings/groups/VoipGroupPage/VoipExtensionsPage.tsx +++ b/apps/meteor/client/views/admin/settings/groups/VoipGroupPage/VoipExtensionsPage.tsx @@ -1,13 +1,5 @@ import { Box, Chip, Button, Pagination } from '@rocket.chat/fuselage'; import { UserAvatar } from '@rocket.chat/ui-avatar'; -import { useSetModal, useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; -import { useQuery } from '@tanstack/react-query'; -import { useMemo } from 'react'; - -import AssignAgentButton from './AssignAgentButton'; -import AssignAgentModal from './AssignAgentModal'; -import RemoveAgentButton from './RemoveAgentButton'; -import GenericNoResults from '../../../../../components/GenericNoResults'; import { GenericTable, GenericTableHeaderCell, @@ -16,8 +8,16 @@ import { GenericTableHeader, GenericTableBody, GenericTableLoadingRow, -} from '../../../../../components/GenericTable'; -import { usePagination } from '../../../../../components/GenericTable/hooks/usePagination'; + usePagination, +} from '@rocket.chat/ui-client'; +import { useSetModal, useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; +import { useQuery } from '@tanstack/react-query'; +import { useMemo } from 'react'; + +import AssignAgentButton from './AssignAgentButton'; +import AssignAgentModal from './AssignAgentModal'; +import RemoveAgentButton from './RemoveAgentButton'; +import GenericNoResults from '../../../../../components/GenericNoResults'; import { PageContent } from '../../../../../components/Page'; const VoipExtensionsPage = () => { diff --git a/apps/meteor/client/views/admin/users/AdminUsersPage.tsx b/apps/meteor/client/views/admin/users/AdminUsersPage.tsx index 4081f41879e9e..4e2b7fc5e116c 100644 --- a/apps/meteor/client/views/admin/users/AdminUsersPage.tsx +++ b/apps/meteor/client/views/admin/users/AdminUsersPage.tsx @@ -2,7 +2,15 @@ import type { LicenseInfo } from '@rocket.chat/core-typings'; import { Callout, ContextualbarIcon, Skeleton, Tabs, TabsItem } from '@rocket.chat/fuselage'; import { useDebouncedValue, useEffectEvent } from '@rocket.chat/fuselage-hooks'; import type { OptionProp } from '@rocket.chat/ui-client'; -import { ExternalLink, ContextualbarHeader, ContextualbarTitle, ContextualbarClose, ContextualbarDialog } from '@rocket.chat/ui-client'; +import { + ExternalLink, + ContextualbarHeader, + ContextualbarTitle, + ContextualbarClose, + ContextualbarDialog, + usePagination, + useSort, +} from '@rocket.chat/ui-client'; import { useRouteParameter, useTranslation, useRouter, useEndpoint } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import type { ReactElement } from 'react'; @@ -20,8 +28,6 @@ import UsersTable from './UsersTable'; import useFilteredUsers from './hooks/useFilteredUsers'; import usePendingUsersCount from './hooks/usePendingUsersCount'; import { useSeatsCap } from './useSeatsCap'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../components/GenericTable/hooks/useSort'; import { Page, PageHeader, PageContent } from '../../../components/Page'; import { useLicenseLimitsByBehavior } from '../../../hooks/useLicenseLimitsByBehavior'; import { useShouldPreventAction } from '../../../hooks/useShouldPreventAction'; diff --git a/apps/meteor/client/views/admin/users/UsersTable/UsersTable.tsx b/apps/meteor/client/views/admin/users/UsersTable/UsersTable.tsx index 6d1a4751c5b95..549539ebbfe49 100644 --- a/apps/meteor/client/views/admin/users/UsersTable/UsersTable.tsx +++ b/apps/meteor/client/views/admin/users/UsersTable/UsersTable.tsx @@ -2,6 +2,14 @@ import type { IRole, IUser, Serialized } from '@rocket.chat/core-typings'; import { Pagination } from '@rocket.chat/fuselage'; import { useEffectEvent, useBreakpoints } from '@rocket.chat/fuselage-hooks'; import type { DefaultUserInfo } from '@rocket.chat/rest-typings'; +import { + GenericTable, + GenericTableHeader, + GenericTableHeaderCell, + GenericTableBody, + GenericTableLoadingTable, +} from '@rocket.chat/ui-client'; +import type { usePagination, useSort } from '@rocket.chat/ui-client'; import type { TranslationKey } from '@rocket.chat/ui-contexts'; import { useRouter } from '@rocket.chat/ui-contexts'; import type { ReactElement, Dispatch, SetStateAction, MouseEvent, KeyboardEvent } from 'react'; @@ -11,15 +19,6 @@ import { useTranslation } from 'react-i18next'; import UsersTableFilters from './UsersTableFilters'; import UsersTableRow from './UsersTableRow'; import GenericNoResults from '../../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableHeader, - GenericTableHeaderCell, - GenericTableBody, - GenericTableLoadingTable, -} from '../../../../components/GenericTable'; -import type { usePagination } from '../../../../components/GenericTable/hooks/usePagination'; -import type { useSort } from '../../../../components/GenericTable/hooks/useSort'; import type { AdminUsersTab, UsersFilters, UsersTableSortingOption } from '../AdminUsersPage'; import { useVoipExtensionPermission } from '../useVoipExtensionPermission'; diff --git a/apps/meteor/client/views/admin/users/UsersTable/UsersTableRow.tsx b/apps/meteor/client/views/admin/users/UsersTable/UsersTableRow.tsx index adc79d35e1de7..987baee3bdb7c 100644 --- a/apps/meteor/client/views/admin/users/UsersTable/UsersTableRow.tsx +++ b/apps/meteor/client/views/admin/users/UsersTable/UsersTableRow.tsx @@ -3,12 +3,11 @@ import type { IUser, Serialized } from '@rocket.chat/core-typings'; import { Box, Button } from '@rocket.chat/fuselage'; import type { DefaultUserInfo } from '@rocket.chat/rest-typings'; import { UserAvatar } from '@rocket.chat/ui-avatar'; -import { GenericMenu } from '@rocket.chat/ui-client'; +import { GenericMenu, GenericTableRow, GenericTableCell } from '@rocket.chat/ui-client'; import type { KeyboardEvent, MouseEvent, ReactElement } from 'react'; import { useMemo } from 'react'; import { useTranslation } from 'react-i18next'; -import { GenericTableRow, GenericTableCell } from '../../../../components/GenericTable'; import { UserStatus } from '../../../../components/UserStatus'; import { Roles } from '../../../../stores'; import type { AdminUsersTab } from '../AdminUsersPage'; diff --git a/apps/meteor/client/views/admin/users/hooks/useFilteredUsers.ts b/apps/meteor/client/views/admin/users/hooks/useFilteredUsers.ts index 7fd57f34dbdad..ebb13a1c9bcc3 100644 --- a/apps/meteor/client/views/admin/users/hooks/useFilteredUsers.ts +++ b/apps/meteor/client/views/admin/users/hooks/useFilteredUsers.ts @@ -1,11 +1,10 @@ import type { UsersListStatusParamsGET } from '@rocket.chat/rest-typings'; +import type { usePagination, useSort } from '@rocket.chat/ui-client'; import { useEndpoint } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import type { MutableRefObject } from 'react'; import { useMemo } from 'react'; -import type { usePagination } from '../../../../components/GenericTable/hooks/usePagination'; -import type { useSort } from '../../../../components/GenericTable/hooks/useSort'; import type { AdminUsersTab, UsersTableSortingOption } from '../AdminUsersPage'; type UseFilteredUsersOptions = { diff --git a/apps/meteor/client/views/audit/components/AuditLogEntry.tsx b/apps/meteor/client/views/audit/components/AuditLogEntry.tsx index 23fc66567686c..92bab0535073e 100644 --- a/apps/meteor/client/views/audit/components/AuditLogEntry.tsx +++ b/apps/meteor/client/views/audit/components/AuditLogEntry.tsx @@ -2,12 +2,12 @@ import type { IAuditLog } from '@rocket.chat/core-typings'; import { Box } from '@rocket.chat/fuselage'; import { useMediaQuery } from '@rocket.chat/fuselage-hooks'; import { UserAvatar } from '@rocket.chat/ui-avatar'; +import { GenericTableRow, GenericTableCell } from '@rocket.chat/ui-client'; import type { ReactElement } from 'react'; import { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import AuditFiltersDisplay from './AuditFiltersDisplay'; -import { GenericTableRow, GenericTableCell } from '../../../components/GenericTable'; import { useFormatDateAndTime } from '../../../hooks/useFormatDateAndTime'; type AuditLogEntryProps = { value: IAuditLog }; diff --git a/apps/meteor/client/views/audit/components/AuditLogTable.tsx b/apps/meteor/client/views/audit/components/AuditLogTable.tsx index 06b61963ec6d1..38a49e0b01976 100644 --- a/apps/meteor/client/views/audit/components/AuditLogTable.tsx +++ b/apps/meteor/client/views/audit/components/AuditLogTable.tsx @@ -1,4 +1,5 @@ import { Field, FieldLabel, FieldRow } from '@rocket.chat/fuselage'; +import { GenericTable, GenericTableHeaderCell, GenericTableBody, GenericTableLoadingRow, GenericTableHeader } from '@rocket.chat/ui-client'; import { useTranslation, useMethod } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import type { ReactElement } from 'react'; @@ -6,13 +7,6 @@ import { useState } from 'react'; import AuditLogEntry from './AuditLogEntry'; import GenericNoResults from '../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableHeaderCell, - GenericTableBody, - GenericTableLoadingRow, - GenericTableHeader, -} from '../../../components/GenericTable'; import { createEndOfToday, createStartOfToday } from '../utils/dateRange'; import type { DateRange } from '../utils/dateRange'; import DateRangePicker from './forms/DateRangePicker'; diff --git a/apps/meteor/client/views/audit/components/SecurityLogsTable.tsx b/apps/meteor/client/views/audit/components/SecurityLogsTable.tsx index 2286bd81cf6f5..f57cead3b005a 100644 --- a/apps/meteor/client/views/audit/components/SecurityLogsTable.tsx +++ b/apps/meteor/client/views/audit/components/SecurityLogsTable.tsx @@ -1,6 +1,16 @@ import type { IAuditServerAppActor, IAuditServerSystemActor, IAuditServerUserActor } from '@rocket.chat/core-typings'; import { Box, Button, ButtonGroup, Field, FieldLabel, Margins, Pagination } from '@rocket.chat/fuselage'; import { UserAvatar } from '@rocket.chat/ui-avatar'; +import { + GenericTable, + GenericTableBody, + GenericTableCell, + GenericTableHeader, + GenericTableHeaderCell, + GenericTableLoadingRow, + GenericTableRow, + usePagination, +} from '@rocket.chat/ui-client'; import { useEndpoint, useSetModal } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import { format } from 'date-fns'; @@ -11,16 +21,6 @@ import SecurityLogDisplayModal from './SecurityLogDisplayModal'; import { SettingSelect } from './SettingSelect'; import DateRangePicker from './forms/DateRangePicker'; import GenericNoResults from '../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableBody, - GenericTableCell, - GenericTableHeader, - GenericTableHeaderCell, - GenericTableLoadingRow, - GenericTableRow, -} from '../../../components/GenericTable'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; import type { DateRange } from '../utils/dateRange'; import { getTypeTranslation } from '../utils/getAppTypeTranslation'; diff --git a/apps/meteor/client/views/directory/tabs/channels/ChannelsTable/ChannelsTable.tsx b/apps/meteor/client/views/directory/tabs/channels/ChannelsTable/ChannelsTable.tsx index bceb9f248e94f..ae8933c385867 100644 --- a/apps/meteor/client/views/directory/tabs/channels/ChannelsTable/ChannelsTable.tsx +++ b/apps/meteor/client/views/directory/tabs/channels/ChannelsTable/ChannelsTable.tsx @@ -1,6 +1,15 @@ import type { IRoom, Serialized } from '@rocket.chat/core-typings'; import { Pagination, States, StatesIcon, StatesTitle, StatesActions, StatesAction } from '@rocket.chat/fuselage'; import { useMediaQuery } from '@rocket.chat/fuselage-hooks'; +import { + GenericTable, + GenericTableHeader, + GenericTableHeaderCell, + GenericTableBody, + GenericTableLoadingTable, + usePagination, + useSort, +} from '@rocket.chat/ui-client'; import { useRoute, useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import type { KeyboardEvent, MouseEvent } from 'react'; @@ -9,15 +18,6 @@ import { useMemo, useState } from 'react'; import ChannelsTableRow from './ChannelsTableRow'; import FilterByText from '../../../../../components/FilterByText'; import GenericNoResults from '../../../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableHeader, - GenericTableHeaderCell, - GenericTableBody, - GenericTableLoadingTable, -} from '../../../../../components/GenericTable'; -import { usePagination } from '../../../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../../../components/GenericTable/hooks/useSort'; import { useDirectoryQuery } from '../../../hooks/useDirectoryQuery'; const ChannelsTable = () => { diff --git a/apps/meteor/client/views/directory/tabs/channels/ChannelsTable/ChannelsTableRow.tsx b/apps/meteor/client/views/directory/tabs/channels/ChannelsTable/ChannelsTableRow.tsx index e149531988f36..a86d2b11f7bc1 100644 --- a/apps/meteor/client/views/directory/tabs/channels/ChannelsTable/ChannelsTableRow.tsx +++ b/apps/meteor/client/views/directory/tabs/channels/ChannelsTable/ChannelsTableRow.tsx @@ -1,8 +1,8 @@ import type { IRoom, Serialized } from '@rocket.chat/core-typings'; import { Box, Avatar } from '@rocket.chat/fuselage'; +import { GenericTableRow, GenericTableCell } from '@rocket.chat/ui-client'; import type { KeyboardEvent, MouseEvent } from 'react'; -import { GenericTableRow, GenericTableCell } from '../../../../../components/GenericTable'; import MarkdownText from '../../../../../components/MarkdownText'; import { RoomIcon } from '../../../../../components/RoomIcon'; import { useFormatDate } from '../../../../../hooks/useFormatDate'; diff --git a/apps/meteor/client/views/directory/tabs/teams/TeamsTable/TeamsTable.tsx b/apps/meteor/client/views/directory/tabs/teams/TeamsTable/TeamsTable.tsx index 131319991db37..2162656556823 100644 --- a/apps/meteor/client/views/directory/tabs/teams/TeamsTable/TeamsTable.tsx +++ b/apps/meteor/client/views/directory/tabs/teams/TeamsTable/TeamsTable.tsx @@ -1,6 +1,15 @@ import type { IRoom, Serialized } from '@rocket.chat/core-typings'; import { Pagination, States, StatesIcon, StatesTitle, StatesActions, StatesAction } from '@rocket.chat/fuselage'; import { useMediaQuery } from '@rocket.chat/fuselage-hooks'; +import { + GenericTable, + GenericTableHeader, + GenericTableHeaderCell, + GenericTableBody, + GenericTableLoadingTable, + usePagination, + useSort, +} from '@rocket.chat/ui-client'; import { useRoute, useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import type { KeyboardEvent, MouseEvent } from 'react'; @@ -9,15 +18,6 @@ import { useMemo, useState } from 'react'; import TeamsTableRow from './TeamsTableRow'; import FilterByText from '../../../../../components/FilterByText'; import GenericNoResults from '../../../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableHeader, - GenericTableHeaderCell, - GenericTableBody, - GenericTableLoadingTable, -} from '../../../../../components/GenericTable'; -import { usePagination } from '../../../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../../../components/GenericTable/hooks/useSort'; import { useDirectoryQuery } from '../../../hooks/useDirectoryQuery'; const TeamsTable = () => { diff --git a/apps/meteor/client/views/directory/tabs/teams/TeamsTable/TeamsTableRow.tsx b/apps/meteor/client/views/directory/tabs/teams/TeamsTable/TeamsTableRow.tsx index 86f8ab99b0a6e..bca79383feb2d 100644 --- a/apps/meteor/client/views/directory/tabs/teams/TeamsTable/TeamsTableRow.tsx +++ b/apps/meteor/client/views/directory/tabs/teams/TeamsTable/TeamsTableRow.tsx @@ -1,8 +1,8 @@ import type { IRoom, Serialized } from '@rocket.chat/core-typings'; import { Box, Avatar } from '@rocket.chat/fuselage'; +import { GenericTableRow, GenericTableCell } from '@rocket.chat/ui-client'; import type { KeyboardEvent, MouseEvent } from 'react'; -import { GenericTableRow, GenericTableCell } from '../../../../../components/GenericTable'; import MarkdownText from '../../../../../components/MarkdownText'; import { RoomIcon } from '../../../../../components/RoomIcon'; import { useFormatDate } from '../../../../../hooks/useFormatDate'; diff --git a/apps/meteor/client/views/directory/tabs/users/UsersTable/UsersTable.tsx b/apps/meteor/client/views/directory/tabs/users/UsersTable/UsersTable.tsx index 1365233671dae..1121b73c5438e 100644 --- a/apps/meteor/client/views/directory/tabs/users/UsersTable/UsersTable.tsx +++ b/apps/meteor/client/views/directory/tabs/users/UsersTable/UsersTable.tsx @@ -1,6 +1,15 @@ import type { IUser, Serialized } from '@rocket.chat/core-typings'; import { Pagination, States, StatesIcon, StatesTitle, StatesActions, StatesAction } from '@rocket.chat/fuselage'; import { useMediaQuery } from '@rocket.chat/fuselage-hooks'; +import { + GenericTable, + GenericTableHeader, + GenericTableHeaderCell, + GenericTableBody, + GenericTableLoadingTable, + usePagination, + useSort, +} from '@rocket.chat/ui-client'; import { usePermission, useRoute, useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import type { KeyboardEvent, MouseEvent, ReactElement } from 'react'; @@ -9,15 +18,6 @@ import { useCallback, useMemo, useState } from 'react'; import UsersTableRow from './UsersTableRow'; import FilterByText from '../../../../../components/FilterByText'; import GenericNoResults from '../../../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableHeader, - GenericTableHeaderCell, - GenericTableBody, - GenericTableLoadingTable, -} from '../../../../../components/GenericTable'; -import { usePagination } from '../../../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../../../components/GenericTable/hooks/useSort'; import { useDirectoryQuery } from '../../../hooks/useDirectoryQuery'; const UsersTable = ({ workspace = 'local' }): ReactElement => { diff --git a/apps/meteor/client/views/directory/tabs/users/UsersTable/UsersTableRow.tsx b/apps/meteor/client/views/directory/tabs/users/UsersTable/UsersTableRow.tsx index e1eac524f4d1d..cd4ef9ea8d193 100644 --- a/apps/meteor/client/views/directory/tabs/users/UsersTable/UsersTableRow.tsx +++ b/apps/meteor/client/views/directory/tabs/users/UsersTable/UsersTableRow.tsx @@ -1,9 +1,9 @@ import type { IUser, Serialized } from '@rocket.chat/core-typings'; import { Box, Flex } from '@rocket.chat/fuselage'; import { UserAvatar } from '@rocket.chat/ui-avatar'; +import { GenericTableRow, GenericTableCell } from '@rocket.chat/ui-client'; import type { KeyboardEvent, MouseEvent } from 'react'; -import { GenericTableRow, GenericTableCell } from '../../../../../components/GenericTable'; import MarkdownText from '../../../../../components/MarkdownText'; import { useFormatDate } from '../../../../../hooks/useFormatDate'; diff --git a/apps/meteor/client/views/marketplace/AppDetailsPage/tabs/AppInstances/AppInstances.tsx b/apps/meteor/client/views/marketplace/AppDetailsPage/tabs/AppInstances/AppInstances.tsx index 98c77b4b9f2a8..ac2ca5a37dea9 100644 --- a/apps/meteor/client/views/marketplace/AppDetailsPage/tabs/AppInstances/AppInstances.tsx +++ b/apps/meteor/client/views/marketplace/AppDetailsPage/tabs/AppInstances/AppInstances.tsx @@ -1,20 +1,21 @@ import type { AppStatus } from '@rocket.chat/apps'; import { AppStatusUtils } from '@rocket.chat/apps-engine/definition/AppStatus'; import { Box, Palette, Tag } from '@rocket.chat/fuselage'; -import { GenericMenu, CustomScrollbars } from '@rocket.chat/ui-client'; -import { useRouter } from '@rocket.chat/ui-contexts'; -import type { ReactElement } from 'react'; -import { useTranslation } from 'react-i18next'; - -import GenericNoResults from '../../../../../components/GenericNoResults'; import { + GenericMenu, + CustomScrollbars, GenericTable, GenericTableBody, GenericTableCell, GenericTableHeader, GenericTableHeaderCell, GenericTableRow, -} from '../../../../../components/GenericTable'; +} from '@rocket.chat/ui-client'; +import { useRouter } from '@rocket.chat/ui-contexts'; +import type { ReactElement } from 'react'; +import { useTranslation } from 'react-i18next'; + +import GenericNoResults from '../../../../../components/GenericNoResults'; import AccordionLoading from '../../../components/AccordionLoading'; import { useAppInstances } from '../../../hooks/useAppInstances'; diff --git a/apps/meteor/client/views/marketplace/AppDetailsPage/tabs/AppLogs/AppLogs.tsx b/apps/meteor/client/views/marketplace/AppDetailsPage/tabs/AppLogs/AppLogs.tsx index 3407f4589b98b..2a051cf6f2044 100644 --- a/apps/meteor/client/views/marketplace/AppDetailsPage/tabs/AppLogs/AppLogs.tsx +++ b/apps/meteor/client/views/marketplace/AppDetailsPage/tabs/AppLogs/AppLogs.tsx @@ -1,6 +1,6 @@ import type { ILogItem } from '@rocket.chat/core-typings'; import { Box, Pagination } from '@rocket.chat/fuselage'; -import { CustomScrollbars } from '@rocket.chat/ui-client'; +import { CustomScrollbars, usePagination } from '@rocket.chat/ui-client'; import { useRouter } from '@rocket.chat/ui-contexts'; import { useEffect, useMemo, useReducer, type ReactElement } from 'react'; import { useTranslation } from 'react-i18next'; @@ -11,7 +11,6 @@ import { AppLogsFilter } from './Filters/AppLogsFilter'; import { useAppLogsFilterFormContext } from './useAppLogsFilterForm'; import GenericError from '../../../../../components/GenericError'; import GenericNoResults from '../../../../../components/GenericNoResults'; -import { usePagination } from '../../../../../components/GenericTable/hooks/usePagination'; import AccordionLoading from '../../../components/AccordionLoading'; import { useLogs } from '../../../hooks/useLogs'; diff --git a/apps/meteor/client/views/marketplace/AppsPage/AppsPageContent.tsx b/apps/meteor/client/views/marketplace/AppsPage/AppsPageContent.tsx index 3905157739022..b7e8bbdc76c7c 100644 --- a/apps/meteor/client/views/marketplace/AppsPage/AppsPageContent.tsx +++ b/apps/meteor/client/views/marketplace/AppsPage/AppsPageContent.tsx @@ -1,4 +1,5 @@ import { useDebouncedValue } from '@rocket.chat/fuselage-hooks'; +import { usePagination } from '@rocket.chat/ui-client'; import { useRouteParameter, useRouter } from '@rocket.chat/ui-contexts'; import type { ReactElement } from 'react'; import { useEffect, useMemo, useState, useCallback } from 'react'; @@ -14,7 +15,6 @@ import NoInstalledAppsEmptyState from './NoInstalledAppsEmptyState'; import NoMarketplaceOrInstalledAppMatchesEmptyState from './NoMarketplaceOrInstalledAppMatchesEmptyState'; import PrivateEmptyState from './PrivateEmptyState'; import UnsupportedEmptyState from './UnsupportedEmptyState'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; import { useAppsResult } from '../../../contexts/hooks/useAppsResult'; import { AsyncStatePhase } from '../../../lib/asyncState'; import MarketplaceHeader from '../components/MarketplaceHeader'; diff --git a/apps/meteor/client/views/omnichannel/agents/AgentsTable/AgentsTable.tsx b/apps/meteor/client/views/omnichannel/agents/AgentsTable/AgentsTable.tsx index e74d1a313834e..e8bd1faff7e08 100644 --- a/apps/meteor/client/views/omnichannel/agents/AgentsTable/AgentsTable.tsx +++ b/apps/meteor/client/views/omnichannel/agents/AgentsTable/AgentsTable.tsx @@ -1,5 +1,14 @@ import { Pagination } from '@rocket.chat/fuselage'; import { useDebouncedValue, useMediaQuery, useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { + GenericTable, + GenericTableBody, + GenericTableHeader, + GenericTableHeaderCell, + GenericTableLoadingTable, + usePagination, + useSort, +} from '@rocket.chat/ui-client'; import { hashKey } from '@tanstack/react-query'; import { useMemo, useState } from 'react'; import { useTranslation } from 'react-i18next'; @@ -8,15 +17,6 @@ import AddAgent from './AddAgent'; import AgentsTableRow from './AgentsTableRow'; import FilterByText from '../../../../components/FilterByText'; import GenericNoResults from '../../../../components/GenericNoResults/GenericNoResults'; -import { - GenericTable, - GenericTableBody, - GenericTableHeader, - GenericTableHeaderCell, - GenericTableLoadingTable, -} from '../../../../components/GenericTable'; -import { usePagination } from '../../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../../components/GenericTable/hooks/useSort'; import { links } from '../../../../lib/links'; import { useAgentsQuery } from '../hooks/useAgentsQuery'; import { useQuery } from '../hooks/useQuery'; diff --git a/apps/meteor/client/views/omnichannel/agents/AgentsTable/AgentsTableRow.tsx b/apps/meteor/client/views/omnichannel/agents/AgentsTable/AgentsTableRow.tsx index 5c7bd0e4f9070..e4381f1aab523 100644 --- a/apps/meteor/client/views/omnichannel/agents/AgentsTable/AgentsTableRow.tsx +++ b/apps/meteor/client/views/omnichannel/agents/AgentsTable/AgentsTableRow.tsx @@ -1,10 +1,10 @@ import { Box, IconButton } from '@rocket.chat/fuselage'; import { UserAvatar } from '@rocket.chat/ui-avatar'; +import { GenericTableRow, GenericTableCell } from '@rocket.chat/ui-client'; import { useRouter } from '@rocket.chat/ui-contexts'; import type { ReactElement } from 'react'; import { useTranslation } from 'react-i18next'; -import { GenericTableRow, GenericTableCell } from '../../../../components/GenericTable'; import { useRemoveAgent } from '../hooks/useRemoveAgent'; const AgentsTableRow = ({ diff --git a/apps/meteor/client/views/omnichannel/businessHours/BusinessHoursRow.tsx b/apps/meteor/client/views/omnichannel/businessHours/BusinessHoursRow.tsx index 5b9781a2969b5..836acdcaaa6ce 100644 --- a/apps/meteor/client/views/omnichannel/businessHours/BusinessHoursRow.tsx +++ b/apps/meteor/client/views/omnichannel/businessHours/BusinessHoursRow.tsx @@ -1,5 +1,6 @@ import type { ILivechatBusinessHour, Serialized } from '@rocket.chat/core-typings'; import { IconButton } from '@rocket.chat/fuselage'; +import { GenericTableRow, GenericTableCell } from '@rocket.chat/ui-client'; import type { TranslationKey } from '@rocket.chat/ui-contexts'; import { useRouter } from '@rocket.chat/ui-contexts'; import type { KeyboardEvent } from 'react'; @@ -7,7 +8,6 @@ import { memo, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { useRemoveBusinessHour } from './useRemoveBusinessHour'; -import { GenericTableRow, GenericTableCell } from '../../../components/GenericTable'; const BusinessHoursRow = ({ _id, name, timezone, workHours, active, type }: Serialized) => { const { t } = useTranslation(); diff --git a/apps/meteor/client/views/omnichannel/businessHours/BusinessHoursTable.tsx b/apps/meteor/client/views/omnichannel/businessHours/BusinessHoursTable.tsx index 5f8d01c01ef3c..8d25bbce31142 100644 --- a/apps/meteor/client/views/omnichannel/businessHours/BusinessHoursTable.tsx +++ b/apps/meteor/client/views/omnichannel/businessHours/BusinessHoursTable.tsx @@ -1,5 +1,13 @@ import { Pagination, States, StatesIcon, StatesActions, StatesAction, StatesTitle } from '@rocket.chat/fuselage'; import { useDebouncedValue } from '@rocket.chat/fuselage-hooks'; +import { + GenericTable, + GenericTableBody, + GenericTableHeaderCell, + GenericTableHeader, + GenericTableLoadingRow, + usePagination, +} from '@rocket.chat/ui-client'; import { useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import { useMemo, useState } from 'react'; @@ -7,14 +15,6 @@ import { useMemo, useState } from 'react'; import BusinessHoursRow from './BusinessHoursRow'; import FilterByText from '../../../components/FilterByText'; import GenericNoResults from '../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableBody, - GenericTableHeaderCell, - GenericTableHeader, - GenericTableLoadingRow, -} from '../../../components/GenericTable'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; const BusinessHoursTable = () => { const t = useTranslation(); diff --git a/apps/meteor/client/views/omnichannel/cannedResponses/RemoveCannedResponseButton.tsx b/apps/meteor/client/views/omnichannel/cannedResponses/RemoveCannedResponseButton.tsx index a11f21c1600c6..1c61a6bbd5a43 100644 --- a/apps/meteor/client/views/omnichannel/cannedResponses/RemoveCannedResponseButton.tsx +++ b/apps/meteor/client/views/omnichannel/cannedResponses/RemoveCannedResponseButton.tsx @@ -1,9 +1,9 @@ import type { IOmnichannelCannedResponse } from '@rocket.chat/core-typings'; import { IconButton } from '@rocket.chat/fuselage'; +import { GenericTableCell } from '@rocket.chat/ui-client'; import { useTranslation } from 'react-i18next'; import { useRemoveCannedResponse } from './modals/useRemoveCannedResponse'; -import { GenericTableCell } from '../../../components/GenericTable'; const RemoveCannedResponseButton = ({ id }: { id: IOmnichannelCannedResponse['_id'] }) => { const { t } = useTranslation(); diff --git a/apps/meteor/client/views/omnichannel/cannedResponses/modals/CannedResponsesTable.tsx b/apps/meteor/client/views/omnichannel/cannedResponses/modals/CannedResponsesTable.tsx index b66d9758f0653..32dc9728572a5 100644 --- a/apps/meteor/client/views/omnichannel/cannedResponses/modals/CannedResponsesTable.tsx +++ b/apps/meteor/client/views/omnichannel/cannedResponses/modals/CannedResponsesTable.tsx @@ -1,12 +1,6 @@ import { Box, Pagination } from '@rocket.chat/fuselage'; import { useDebouncedValue, useEffectEvent } from '@rocket.chat/fuselage-hooks'; import { UserAvatar } from '@rocket.chat/ui-avatar'; -import { useTranslation, usePermission, useToastMessageDispatch, useEndpoint, useRouter } from '@rocket.chat/ui-contexts'; -import { hashKey, useQuery } from '@tanstack/react-query'; -import { useMemo, useState } from 'react'; - -import CannedResponseFilter from './CannedResponseFilter'; -import GenericNoResults from '../../../../components/GenericNoResults'; import { GenericTable, GenericTableBody, @@ -15,9 +9,15 @@ import { GenericTableLoadingRow, GenericTableRow, GenericTableCell, -} from '../../../../components/GenericTable'; -import { usePagination } from '../../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../../components/GenericTable/hooks/useSort'; + usePagination, + useSort, +} from '@rocket.chat/ui-client'; +import { useTranslation, usePermission, useToastMessageDispatch, useEndpoint, useRouter } from '@rocket.chat/ui-contexts'; +import { hashKey, useQuery } from '@tanstack/react-query'; +import { useMemo, useState } from 'react'; + +import CannedResponseFilter from './CannedResponseFilter'; +import GenericNoResults from '../../../../components/GenericNoResults'; import { useFormatDateAndTime } from '../../../../hooks/useFormatDateAndTime'; import { links } from '../../../../lib/links'; import RemoveCannedResponseButton from '../RemoveCannedResponseButton'; diff --git a/apps/meteor/client/views/omnichannel/currentChats/CurrentChatsPage.tsx b/apps/meteor/client/views/omnichannel/currentChats/CurrentChatsPage.tsx index 2105051a79323..6b5b729e282c8 100644 --- a/apps/meteor/client/views/omnichannel/currentChats/CurrentChatsPage.tsx +++ b/apps/meteor/client/views/omnichannel/currentChats/CurrentChatsPage.tsx @@ -2,6 +2,17 @@ import type { IOmnichannelRoomWithDepartment } from '@rocket.chat/core-typings'; import { Callout, Pagination } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; import type { GETLivechatRoomsParams } from '@rocket.chat/rest-typings'; +import { + GenericTable, + GenericTableBody, + GenericTableCell, + GenericTableHeader, + GenericTableHeaderCell, + GenericTableLoadingTable, + GenericTableRow, + usePagination, + useSort, +} from '@rocket.chat/ui-client'; import { usePermission, useRouter } from '@rocket.chat/ui-contexts'; import { hashKey } from '@tanstack/react-query'; import moment from 'moment'; @@ -14,17 +25,6 @@ import FilterByText from './FilterByText'; import RemoveChatButton from './RemoveChatButton'; import { useCurrentChats } from './hooks/useCurrentChats'; import GenericNoResults from '../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableBody, - GenericTableCell, - GenericTableHeader, - GenericTableHeaderCell, - GenericTableLoadingTable, - GenericTableRow, -} from '../../../components/GenericTable'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../components/GenericTable/hooks/useSort'; import { Page, PageHeader, PageContent } from '../../../components/Page'; import { links } from '../../../lib/links'; import RoomActivityIcon from '../components/RoomActivityIcon'; diff --git a/apps/meteor/client/views/omnichannel/customFields/CustomFieldsTable.tsx b/apps/meteor/client/views/omnichannel/customFields/CustomFieldsTable.tsx index 8e48807e66250..a78990a523901 100644 --- a/apps/meteor/client/views/omnichannel/customFields/CustomFieldsTable.tsx +++ b/apps/meteor/client/views/omnichannel/customFields/CustomFieldsTable.tsx @@ -1,12 +1,5 @@ import { IconButton, Pagination } from '@rocket.chat/fuselage'; import { useDebouncedValue, useEffectEvent } from '@rocket.chat/fuselage-hooks'; -import { useTranslation, useRouter } from '@rocket.chat/ui-contexts'; -import { hashKey } from '@tanstack/react-query'; -import { useMemo, useState } from 'react'; - -import { useRemoveCustomField } from './useRemoveCustomField'; -import FilterByText from '../../../components/FilterByText'; -import GenericNoResults from '../../../components/GenericNoResults'; import { GenericTable, GenericTableHeader, @@ -15,9 +8,16 @@ import { GenericTableCell, GenericTableBody, GenericTableLoadingTable, -} from '../../../components/GenericTable'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../components/GenericTable/hooks/useSort'; + usePagination, + useSort, +} from '@rocket.chat/ui-client'; +import { useTranslation, useRouter } from '@rocket.chat/ui-contexts'; +import { hashKey } from '@tanstack/react-query'; +import { useMemo, useState } from 'react'; + +import { useRemoveCustomField } from './useRemoveCustomField'; +import FilterByText from '../../../components/FilterByText'; +import GenericNoResults from '../../../components/GenericNoResults'; import { links } from '../../../lib/links'; import { useCustomFieldsQuery } from '../hooks/useCustomFieldsQuery'; diff --git a/apps/meteor/client/views/omnichannel/departments/DepartmentAgentsTable/AgentRow.tsx b/apps/meteor/client/views/omnichannel/departments/DepartmentAgentsTable/AgentRow.tsx index bd429b163d8d6..bfc14fc58b889 100644 --- a/apps/meteor/client/views/omnichannel/departments/DepartmentAgentsTable/AgentRow.tsx +++ b/apps/meteor/client/views/omnichannel/departments/DepartmentAgentsTable/AgentRow.tsx @@ -1,9 +1,9 @@ import { NumberInput } from '@rocket.chat/fuselage'; +import { GenericTableRow, GenericTableCell } from '@rocket.chat/ui-client'; import { memo } from 'react'; import type { UseFormRegister } from 'react-hook-form'; import { useTranslation } from 'react-i18next'; -import { GenericTableRow, GenericTableCell } from '../../../../components/GenericTable'; import type { EditDepartmentFormData, IDepartmentAgent } from '../definitions'; import AgentAvatar from './AgentAvatar'; import RemoveAgentButton from './RemoveAgentButton'; diff --git a/apps/meteor/client/views/omnichannel/departments/DepartmentAgentsTable/DepartmentAgentsTable.tsx b/apps/meteor/client/views/omnichannel/departments/DepartmentAgentsTable/DepartmentAgentsTable.tsx index 1830769d08ec1..1ace56dd02ca2 100644 --- a/apps/meteor/client/views/omnichannel/departments/DepartmentAgentsTable/DepartmentAgentsTable.tsx +++ b/apps/meteor/client/views/omnichannel/departments/DepartmentAgentsTable/DepartmentAgentsTable.tsx @@ -1,12 +1,11 @@ import { Pagination } from '@rocket.chat/fuselage'; +import { GenericTable, GenericTableBody, GenericTableHeader, GenericTableHeaderCell, usePagination } from '@rocket.chat/ui-client'; import type { AriaAttributes } from 'react'; import { useMemo } from 'react'; import type { Control, UseFormRegister } from 'react-hook-form'; import { useWatch, useFieldArray } from 'react-hook-form'; import { useTranslation } from 'react-i18next'; -import { GenericTable, GenericTableBody, GenericTableHeader, GenericTableHeaderCell } from '../../../../components/GenericTable'; -import { usePagination } from '../../../../components/GenericTable/hooks/usePagination'; import type { EditDepartmentFormData } from '../definitions'; import AddAgent from './AddAgent'; import AgentRow from './AgentRow'; diff --git a/apps/meteor/client/views/omnichannel/departments/DepartmentsTable/DepartmentsTable.tsx b/apps/meteor/client/views/omnichannel/departments/DepartmentsTable/DepartmentsTable.tsx index 781f4ac80b979..a6cafe6dcfa4c 100644 --- a/apps/meteor/client/views/omnichannel/departments/DepartmentsTable/DepartmentsTable.tsx +++ b/apps/meteor/client/views/omnichannel/departments/DepartmentsTable/DepartmentsTable.tsx @@ -1,13 +1,6 @@ import type { ILivechatDepartment } from '@rocket.chat/core-typings'; import { Pagination } from '@rocket.chat/fuselage'; import { useDebouncedValue, useEffectEvent } from '@rocket.chat/fuselage-hooks'; -import { useTranslation, useEndpoint, useRouter } from '@rocket.chat/ui-contexts'; -import { useQuery, hashKey, keepPreviousData } from '@tanstack/react-query'; -import { useState, useMemo } from 'react'; - -import DepartmentItemMenu from './DepartmentItemMenu'; -import FilterByText from '../../../../components/FilterByText'; -import GenericNoResults from '../../../../components/GenericNoResults/GenericNoResults'; import { GenericTable, GenericTableBody, @@ -16,9 +9,16 @@ import { GenericTableHeaderCell, GenericTableLoadingTable, GenericTableRow, -} from '../../../../components/GenericTable'; -import { usePagination } from '../../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../../components/GenericTable/hooks/useSort'; + usePagination, + useSort, +} from '@rocket.chat/ui-client'; +import { useTranslation, useEndpoint, useRouter } from '@rocket.chat/ui-contexts'; +import { useQuery, hashKey, keepPreviousData } from '@tanstack/react-query'; +import { useState, useMemo } from 'react'; + +import DepartmentItemMenu from './DepartmentItemMenu'; +import FilterByText from '../../../../components/FilterByText'; +import GenericNoResults from '../../../../components/GenericNoResults/GenericNoResults'; import { links } from '../../../../lib/links'; const DEPARTMENTS_ENDPOINTS = { diff --git a/apps/meteor/client/views/omnichannel/directory/calls/CallTable.tsx b/apps/meteor/client/views/omnichannel/directory/calls/CallTable.tsx index 5e0da10ca0044..d4bc6bc84ae27 100644 --- a/apps/meteor/client/views/omnichannel/directory/calls/CallTable.tsx +++ b/apps/meteor/client/views/omnichannel/directory/calls/CallTable.tsx @@ -1,5 +1,14 @@ import { Pagination } from '@rocket.chat/fuselage'; import { useDebouncedValue, useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { + GenericTable, + GenericTableBody, + GenericTableHeader, + GenericTableHeaderCell, + GenericTableLoadingTable, + usePagination, + useSort, +} from '@rocket.chat/ui-client'; import { useRoute, useTranslation, useEndpoint, useUserId } from '@rocket.chat/ui-contexts'; import { useQuery, hashKey } from '@tanstack/react-query'; import { useState, useMemo } from 'react'; @@ -7,15 +16,6 @@ import { useState, useMemo } from 'react'; import { CallTableRow } from './CallTableRow'; import FilterByText from '../../../../components/FilterByText'; import GenericNoResults from '../../../../components/GenericNoResults/GenericNoResults'; -import { - GenericTable, - GenericTableBody, - GenericTableHeader, - GenericTableHeaderCell, - GenericTableLoadingTable, -} from '../../../../components/GenericTable'; -import { usePagination } from '../../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../../components/GenericTable/hooks/useSort'; import { links } from '../../../../lib/links'; const CallTable = () => { diff --git a/apps/meteor/client/views/omnichannel/directory/calls/CallTableRow.tsx b/apps/meteor/client/views/omnichannel/directory/calls/CallTableRow.tsx index ce5a7f08d2a07..bafac59f9ad39 100644 --- a/apps/meteor/client/views/omnichannel/directory/calls/CallTableRow.tsx +++ b/apps/meteor/client/views/omnichannel/directory/calls/CallTableRow.tsx @@ -1,10 +1,10 @@ import type { IVoipRoom, Serialized } from '@rocket.chat/core-typings'; +import { GenericTableRow, GenericTableCell } from '@rocket.chat/ui-client'; import moment from 'moment'; import type { ReactElement } from 'react'; import { useCallback } from 'react'; import { useTranslation } from 'react-i18next'; -import { GenericTableRow, GenericTableCell } from '../../../../components/GenericTable'; import { useIsCallReady } from '../../../../contexts/CallContext'; import { parseOutboundPhoneNumber } from '../../../../lib/voip/parseOutboundPhoneNumber'; import { CallDialpadButton } from '../components/CallDialpadButton'; diff --git a/apps/meteor/client/views/omnichannel/directory/chats/ChatsTable/ChatsTable.tsx b/apps/meteor/client/views/omnichannel/directory/chats/ChatsTable/ChatsTable.tsx index 7189a3463ed38..e95cccbf2e0d6 100644 --- a/apps/meteor/client/views/omnichannel/directory/chats/ChatsTable/ChatsTable.tsx +++ b/apps/meteor/client/views/omnichannel/directory/chats/ChatsTable/ChatsTable.tsx @@ -1,4 +1,13 @@ import { Pagination, States, StatesIcon, StatesTitle, StatesActions, StatesAction } from '@rocket.chat/fuselage'; +import { + GenericTable, + GenericTableBody, + GenericTableHeader, + GenericTableHeaderCell, + GenericTableLoadingTable, + usePagination, + useSort, +} from '@rocket.chat/ui-client'; import { usePermission } from '@rocket.chat/ui-contexts'; import { hashKey } from '@tanstack/react-query'; import { useState, useMemo } from 'react'; @@ -8,15 +17,6 @@ import ChatFilterByText from './ChatsTableFilter'; import ChatsTableRow from './ChatsTableRow'; import { useChatsQuery } from './useChatsQuery'; import GenericNoResults from '../../../../../components/GenericNoResults/GenericNoResults'; -import { - GenericTable, - GenericTableBody, - GenericTableHeader, - GenericTableHeaderCell, - GenericTableLoadingTable, -} from '../../../../../components/GenericTable'; -import { usePagination } from '../../../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../../../components/GenericTable/hooks/useSort'; import { links } from '../../../../../lib/links'; import { useCurrentChats } from '../../../currentChats/hooks/useCurrentChats'; import { useOmnichannelPriorities } from '../../../hooks/useOmnichannelPriorities'; diff --git a/apps/meteor/client/views/omnichannel/directory/chats/ChatsTable/ChatsTableRow.tsx b/apps/meteor/client/views/omnichannel/directory/chats/ChatsTable/ChatsTableRow.tsx index df5e999ace2f4..2191ed12344a2 100644 --- a/apps/meteor/client/views/omnichannel/directory/chats/ChatsTable/ChatsTableRow.tsx +++ b/apps/meteor/client/views/omnichannel/directory/chats/ChatsTable/ChatsTableRow.tsx @@ -1,10 +1,10 @@ import type { IOmnichannelRoomWithDepartment } from '@rocket.chat/core-typings'; import { Tag, Box } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { GenericTableCell, GenericTableRow } from '@rocket.chat/ui-client'; import { usePermission, useRoute } from '@rocket.chat/ui-contexts'; import { useTranslation } from 'react-i18next'; -import { GenericTableCell, GenericTableRow } from '../../../../../components/GenericTable'; import { OmnichannelRoomIcon } from '../../../../../components/RoomIcon/OmnichannelRoomIcon'; import { useTimeFromNow } from '../../../../../hooks/useTimeFromNow'; import OmnichannelVerificationTag from '../../../components/OmnichannelVerificationTag'; diff --git a/apps/meteor/client/views/omnichannel/directory/contacts/ContactTable.tsx b/apps/meteor/client/views/omnichannel/directory/contacts/ContactTable.tsx index 5e0ba0f6ab6c4..8d40fb8676229 100644 --- a/apps/meteor/client/views/omnichannel/directory/contacts/ContactTable.tsx +++ b/apps/meteor/client/views/omnichannel/directory/contacts/ContactTable.tsx @@ -1,5 +1,14 @@ import { Pagination, States, StatesAction, StatesActions, StatesIcon, StatesTitle, Box, Button } from '@rocket.chat/fuselage'; import { useDebouncedValue, useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { + GenericTable, + GenericTableHeader, + GenericTableBody, + GenericTableHeaderCell, + GenericTableLoadingTable, + usePagination, + useSort, +} from '@rocket.chat/ui-client'; import { useRoute } from '@rocket.chat/ui-contexts'; import { hashKey } from '@tanstack/react-query'; import { useMemo, useState } from 'react'; @@ -9,15 +18,6 @@ import ContactTableRow from './ContactTableRow'; import { useCurrentContacts } from './hooks/useCurrentContacts'; import FilterByText from '../../../../components/FilterByText'; import GenericNoResults from '../../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableHeader, - GenericTableBody, - GenericTableHeaderCell, - GenericTableLoadingTable, -} from '../../../../components/GenericTable'; -import { usePagination } from '../../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../../components/GenericTable/hooks/useSort'; import { useIsCallReady } from '../../../../contexts/CallContext'; import { links } from '../../../../lib/links'; diff --git a/apps/meteor/client/views/omnichannel/directory/contacts/ContactTableRow.tsx b/apps/meteor/client/views/omnichannel/directory/contacts/ContactTableRow.tsx index fa5e898207a9a..4d4f61c2c0f85 100644 --- a/apps/meteor/client/views/omnichannel/directory/contacts/ContactTableRow.tsx +++ b/apps/meteor/client/views/omnichannel/directory/contacts/ContactTableRow.tsx @@ -1,10 +1,10 @@ import { Box } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; import type { ILivechatContactWithManagerData } from '@rocket.chat/rest-typings'; +import { GenericTableCell, GenericTableRow } from '@rocket.chat/ui-client'; import { useRoute } from '@rocket.chat/ui-contexts'; import ContactItemMenu from './ContactItemMenu'; -import { GenericTableCell, GenericTableRow } from '../../../../components/GenericTable'; import { OmnichannelRoomIcon } from '../../../../components/RoomIcon/OmnichannelRoomIcon'; import { useIsCallReady } from '../../../../contexts/CallContext'; import { useTimeFromNow } from '../../../../hooks/useTimeFromNow'; diff --git a/apps/meteor/client/views/omnichannel/managers/ManagersTable.tsx b/apps/meteor/client/views/omnichannel/managers/ManagersTable.tsx index 427dffbcc0ceb..3830008cfa4d3 100644 --- a/apps/meteor/client/views/omnichannel/managers/ManagersTable.tsx +++ b/apps/meteor/client/views/omnichannel/managers/ManagersTable.tsx @@ -1,14 +1,6 @@ import { Box, Pagination } from '@rocket.chat/fuselage'; import { useDebouncedValue } from '@rocket.chat/fuselage-hooks'; import { UserAvatar } from '@rocket.chat/ui-avatar'; -import { useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; -import { hashKey, useQuery } from '@tanstack/react-query'; -import { useMemo, useState } from 'react'; - -import AddManager from './AddManager'; -import RemoveManagerButton from './RemoveManagerButton'; -import FilterByText from '../../../components/FilterByText'; -import GenericNoResults from '../../../components/GenericNoResults/GenericNoResults'; import { GenericTable, GenericTableBody, @@ -17,9 +9,17 @@ import { GenericTableHeaderCell, GenericTableLoadingTable, GenericTableRow, -} from '../../../components/GenericTable'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../components/GenericTable/hooks/useSort'; + usePagination, + useSort, +} from '@rocket.chat/ui-client'; +import { useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; +import { hashKey, useQuery } from '@tanstack/react-query'; +import { useMemo, useState } from 'react'; + +import AddManager from './AddManager'; +import RemoveManagerButton from './RemoveManagerButton'; +import FilterByText from '../../../components/FilterByText'; +import GenericNoResults from '../../../components/GenericNoResults/GenericNoResults'; import { links } from '../../../lib/links'; import { omnichannelQueryKeys } from '../../../lib/queryKeys'; diff --git a/apps/meteor/client/views/omnichannel/managers/RemoveManagerButton.tsx b/apps/meteor/client/views/omnichannel/managers/RemoveManagerButton.tsx index b26b5f3c037e2..452d4ff9ad7e1 100644 --- a/apps/meteor/client/views/omnichannel/managers/RemoveManagerButton.tsx +++ b/apps/meteor/client/views/omnichannel/managers/RemoveManagerButton.tsx @@ -1,12 +1,11 @@ import { IconButton } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; -import { GenericModal } from '@rocket.chat/ui-client'; +import { GenericModal, GenericTableCell } from '@rocket.chat/ui-client'; import { useSetModal, useToastMessageDispatch } from '@rocket.chat/ui-contexts'; import { useQueryClient } from '@tanstack/react-query'; import type { MouseEvent, ReactElement } from 'react'; import { useTranslation } from 'react-i18next'; -import { GenericTableCell } from '../../../components/GenericTable'; import { useEndpointMutation } from '../../../hooks/useEndpointMutation'; import { omnichannelQueryKeys } from '../../../lib/queryKeys'; diff --git a/apps/meteor/client/views/omnichannel/monitors/MonitorsTable.tsx b/apps/meteor/client/views/omnichannel/monitors/MonitorsTable.tsx index b62a143a8eab6..d632feef52627 100644 --- a/apps/meteor/client/views/omnichannel/monitors/MonitorsTable.tsx +++ b/apps/meteor/client/views/omnichannel/monitors/MonitorsTable.tsx @@ -13,14 +13,9 @@ import { StatesAction, } from '@rocket.chat/fuselage'; import { useDebouncedValue } from '@rocket.chat/fuselage-hooks'; -import { UserAutoComplete, GenericModal } from '@rocket.chat/ui-client'; -import { useTranslation, useToastMessageDispatch, useEndpoint, useSetModal } from '@rocket.chat/ui-contexts'; -import { useMutation, useQuery, hashKey, useQueryClient } from '@tanstack/react-query'; -import { useMemo, useState } from 'react'; - -import FilterByText from '../../../components/FilterByText'; -import GenericNoResults from '../../../components/GenericNoResults'; import { + UserAutoComplete, + GenericModal, GenericTable, GenericTableBody, GenericTableCell, @@ -28,9 +23,15 @@ import { GenericTableHeaderCell, GenericTableLoadingTable, GenericTableRow, -} from '../../../components/GenericTable'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../components/GenericTable/hooks/useSort'; + usePagination, + useSort, +} from '@rocket.chat/ui-client'; +import { useTranslation, useToastMessageDispatch, useEndpoint, useSetModal } from '@rocket.chat/ui-contexts'; +import { useMutation, useQuery, hashKey, useQueryClient } from '@tanstack/react-query'; +import { useMemo, useState } from 'react'; + +import FilterByText from '../../../components/FilterByText'; +import GenericNoResults from '../../../components/GenericNoResults'; import { links } from '../../../lib/links'; const MonitorsTable = () => { diff --git a/apps/meteor/client/views/omnichannel/priorities/PrioritiesTable.tsx b/apps/meteor/client/views/omnichannel/priorities/PrioritiesTable.tsx index d537b8d2444ee..010ea55e31496 100644 --- a/apps/meteor/client/views/omnichannel/priorities/PrioritiesTable.tsx +++ b/apps/meteor/client/views/omnichannel/priorities/PrioritiesTable.tsx @@ -1,16 +1,16 @@ import type { ILivechatPriority, Serialized } from '@rocket.chat/core-typings'; -import type { ReactElement } from 'react'; -import { useTranslation } from 'react-i18next'; - -import PrioritiesTableRow from './PrioritiesTableRow'; -import GenericNoResults from '../../../components/GenericNoResults'; import { GenericTable, GenericTableHeaderCell, GenericTableHeader, GenericTableBody, GenericTableLoadingTable, -} from '../../../components/GenericTable'; +} from '@rocket.chat/ui-client'; +import type { ReactElement } from 'react'; +import { useTranslation } from 'react-i18next'; + +import PrioritiesTableRow from './PrioritiesTableRow'; +import GenericNoResults from '../../../components/GenericNoResults'; type PrioritiesTableProps = { priorities?: Serialized[]; diff --git a/apps/meteor/client/views/omnichannel/priorities/PrioritiesTableRow.tsx b/apps/meteor/client/views/omnichannel/priorities/PrioritiesTableRow.tsx index 2d042bd5b9794..19ad5262ac24f 100644 --- a/apps/meteor/client/views/omnichannel/priorities/PrioritiesTableRow.tsx +++ b/apps/meteor/client/views/omnichannel/priorities/PrioritiesTableRow.tsx @@ -1,8 +1,8 @@ import type { LivechatPriorityWeight } from '@rocket.chat/core-typings'; +import { GenericTableCell, GenericTableRow } from '@rocket.chat/ui-client'; import { useTranslation } from 'react-i18next'; import { PriorityIcon } from './PriorityIcon'; -import { GenericTableCell, GenericTableRow } from '../../../components/GenericTable'; type PrioritiesTableRowProps = { id: string; diff --git a/apps/meteor/client/views/omnichannel/queueList/QueueListTable.tsx b/apps/meteor/client/views/omnichannel/queueList/QueueListTable.tsx index e57fa1612cecd..8cb58d0e26a2c 100644 --- a/apps/meteor/client/views/omnichannel/queueList/QueueListTable.tsx +++ b/apps/meteor/client/views/omnichannel/queueList/QueueListTable.tsx @@ -2,13 +2,6 @@ import { UserStatus } from '@rocket.chat/core-typings'; import { Box, Pagination } from '@rocket.chat/fuselage'; import { useMediaQuery } from '@rocket.chat/fuselage-hooks'; import { UserAvatar } from '@rocket.chat/ui-avatar'; -import { useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; -import { useQuery } from '@tanstack/react-query'; -import type { ReactElement } from 'react'; -import { useMemo, useState } from 'react'; - -import { QueueListFilter } from './QueueListFilter'; -import GenericNoResults from '../../../components/GenericNoResults'; import { GenericTable, GenericTableHeader, @@ -17,9 +10,16 @@ import { GenericTableRow, GenericTableCell, GenericTableLoadingRow, -} from '../../../components/GenericTable'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../components/GenericTable/hooks/useSort'; + usePagination, + useSort, +} from '@rocket.chat/ui-client'; +import { useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; +import { useQuery } from '@tanstack/react-query'; +import type { ReactElement } from 'react'; +import { useMemo, useState } from 'react'; + +import { QueueListFilter } from './QueueListFilter'; +import GenericNoResults from '../../../components/GenericNoResults'; const QueueListTable = (): ReactElement => { const t = useTranslation(); diff --git a/apps/meteor/client/views/omnichannel/reports/components/AgentsTable.tsx b/apps/meteor/client/views/omnichannel/reports/components/AgentsTable.tsx index 1cc997a8c4ca6..1b89a8777b100 100644 --- a/apps/meteor/client/views/omnichannel/reports/components/AgentsTable.tsx +++ b/apps/meteor/client/views/omnichannel/reports/components/AgentsTable.tsx @@ -1,7 +1,4 @@ import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; -import { memo } from 'react'; -import { useTranslation } from 'react-i18next'; - import { GenericTable, GenericTableBody, @@ -9,7 +6,9 @@ import { GenericTableHeader, GenericTableHeaderCell, GenericTableRow, -} from '../../../../components/GenericTable'; +} from '@rocket.chat/ui-client'; +import { memo } from 'react'; +import { useTranslation } from 'react-i18next'; type AgentsTableProps = { data: { diff --git a/apps/meteor/client/views/omnichannel/reports/hooks/useAgentsSection.tsx b/apps/meteor/client/views/omnichannel/reports/hooks/useAgentsSection.tsx index 11d9bd7152327..1f77423271a7d 100644 --- a/apps/meteor/client/views/omnichannel/reports/hooks/useAgentsSection.tsx +++ b/apps/meteor/client/views/omnichannel/reports/hooks/useAgentsSection.tsx @@ -1,10 +1,10 @@ +import { useSort } from '@rocket.chat/ui-client'; import { useEndpoint } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import { useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { useDefaultDownload } from './useDefaultDownload'; -import { useSort } from '../../../../components/GenericTable/hooks/useSort'; import { getPeriodRange } from '../../../../components/dashboards/periods'; import { usePeriodSelectorStorage } from '../../../../components/dashboards/usePeriodSelectorStorage'; import { COLORS, PERIOD_OPTIONS } from '../components/constants'; diff --git a/apps/meteor/client/views/omnichannel/slaPolicies/RemoveSlaButton.tsx b/apps/meteor/client/views/omnichannel/slaPolicies/RemoveSlaButton.tsx index 1f392f0c322c1..ae74f28585b63 100644 --- a/apps/meteor/client/views/omnichannel/slaPolicies/RemoveSlaButton.tsx +++ b/apps/meteor/client/views/omnichannel/slaPolicies/RemoveSlaButton.tsx @@ -1,12 +1,10 @@ import { IconButton } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; -import { GenericModal } from '@rocket.chat/ui-client'; +import { GenericModal, GenericTableCell } from '@rocket.chat/ui-client'; import { useRoute, useEndpoint, useSetModal, useToastMessageDispatch } from '@rocket.chat/ui-contexts'; import type { MouseEvent } from 'react'; import { useTranslation } from 'react-i18next'; -import { GenericTableCell } from '../../../components/GenericTable'; - const RemoveSlaButton = ({ _id, reload }: { _id: string; reload: () => void }) => { const { t } = useTranslation(); const setModal = useSetModal(); diff --git a/apps/meteor/client/views/omnichannel/slaPolicies/SlaTable.tsx b/apps/meteor/client/views/omnichannel/slaPolicies/SlaTable.tsx index 18aedbdc4f63c..217c927b11632 100644 --- a/apps/meteor/client/views/omnichannel/slaPolicies/SlaTable.tsx +++ b/apps/meteor/client/views/omnichannel/slaPolicies/SlaTable.tsx @@ -1,13 +1,5 @@ import { Pagination } from '@rocket.chat/fuselage'; import { useDebouncedValue, useEffectEvent } from '@rocket.chat/fuselage-hooks'; -import { useTranslation, useEndpoint, useRouter } from '@rocket.chat/ui-contexts'; -import { useQuery, hashKey } from '@tanstack/react-query'; -import type { MutableRefObject } from 'react'; -import { useMemo, useState, useEffect } from 'react'; - -import RemoveSlaButton from './RemoveSlaButton'; -import FilterByText from '../../../components/FilterByText'; -import GenericNoResults from '../../../components/GenericNoResults/GenericNoResults'; import { GenericTable, GenericTableHeaderCell, @@ -16,9 +8,17 @@ import { GenericTableBody, GenericTableRow, GenericTableCell, -} from '../../../components/GenericTable'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../components/GenericTable/hooks/useSort'; + usePagination, + useSort, +} from '@rocket.chat/ui-client'; +import { useTranslation, useEndpoint, useRouter } from '@rocket.chat/ui-contexts'; +import { useQuery, hashKey } from '@tanstack/react-query'; +import type { MutableRefObject } from 'react'; +import { useMemo, useState, useEffect } from 'react'; + +import RemoveSlaButton from './RemoveSlaButton'; +import FilterByText from '../../../components/FilterByText'; +import GenericNoResults from '../../../components/GenericNoResults/GenericNoResults'; import { links } from '../../../lib/links'; const SlaTable = ({ reload }: { reload: MutableRefObject<() => void> }) => { diff --git a/apps/meteor/client/views/omnichannel/tags/TagsTable.tsx b/apps/meteor/client/views/omnichannel/tags/TagsTable.tsx index a5f944adb9495..00ea16484f7c6 100644 --- a/apps/meteor/client/views/omnichannel/tags/TagsTable.tsx +++ b/apps/meteor/client/views/omnichannel/tags/TagsTable.tsx @@ -1,12 +1,5 @@ import { IconButton, Pagination } from '@rocket.chat/fuselage'; import { useDebouncedValue, useEffectEvent } from '@rocket.chat/fuselage-hooks'; -import { useTranslation, useEndpoint, useRouter } from '@rocket.chat/ui-contexts'; -import { useQuery, hashKey } from '@tanstack/react-query'; -import { useMemo, useState } from 'react'; - -import { useRemoveTag } from './useRemoveTag'; -import FilterByText from '../../../components/FilterByText'; -import GenericNoResults from '../../../components/GenericNoResults'; import { GenericTable, GenericTableRow, @@ -15,9 +8,16 @@ import { GenericTableHeaderCell, GenericTableBody, GenericTableLoadingRow, -} from '../../../components/GenericTable'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../components/GenericTable/hooks/useSort'; + usePagination, + useSort, +} from '@rocket.chat/ui-client'; +import { useTranslation, useEndpoint, useRouter } from '@rocket.chat/ui-contexts'; +import { useQuery, hashKey } from '@tanstack/react-query'; +import { useMemo, useState } from 'react'; + +import { useRemoveTag } from './useRemoveTag'; +import FilterByText from '../../../components/FilterByText'; +import GenericNoResults from '../../../components/GenericNoResults'; import { links } from '../../../lib/links'; const TagsTable = () => { diff --git a/apps/meteor/client/views/omnichannel/triggers/TriggersRow.tsx b/apps/meteor/client/views/omnichannel/triggers/TriggersRow.tsx index a974109fd9487..ca381f25e02d2 100644 --- a/apps/meteor/client/views/omnichannel/triggers/TriggersRow.tsx +++ b/apps/meteor/client/views/omnichannel/triggers/TriggersRow.tsx @@ -1,13 +1,11 @@ import type { ILivechatTrigger } from '@rocket.chat/core-typings'; import { IconButton } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; -import { GenericModal } from '@rocket.chat/ui-client'; +import { GenericModal, GenericTableCell, GenericTableRow } from '@rocket.chat/ui-client'; import { useSetModal, useToastMessageDispatch, useRoute, useTranslation, useEndpoint } from '@rocket.chat/ui-contexts'; import type { KeyboardEvent, MouseEvent } from 'react'; import { memo } from 'react'; -import { GenericTableCell, GenericTableRow } from '../../../components/GenericTable'; - type TriggersRowProps = Pick & { reload: () => void }; const TriggersRow = ({ _id, name, description, enabled, reload }: TriggersRowProps) => { diff --git a/apps/meteor/client/views/omnichannel/triggers/TriggersTable.tsx b/apps/meteor/client/views/omnichannel/triggers/TriggersTable.tsx index bdc67090e0ca3..081c27e472a73 100644 --- a/apps/meteor/client/views/omnichannel/triggers/TriggersTable.tsx +++ b/apps/meteor/client/views/omnichannel/triggers/TriggersTable.tsx @@ -1,5 +1,13 @@ import { Pagination } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { + GenericTable, + GenericTableHeader, + GenericTableBody, + GenericTableHeaderCell, + GenericTableLoadingRow, + usePagination, +} from '@rocket.chat/ui-client'; import { useTranslation, useEndpoint, useRouter } from '@rocket.chat/ui-contexts'; import { useQuery, hashKey } from '@tanstack/react-query'; import { useMemo, useState } from 'react'; @@ -7,14 +15,6 @@ import { useMemo, useState } from 'react'; import TriggersRow from './TriggersRow'; import GenericError from '../../../components/GenericError'; import GenericNoResults from '../../../components/GenericNoResults'; -import { - GenericTable, - GenericTableHeader, - GenericTableBody, - GenericTableHeaderCell, - GenericTableLoadingRow, -} from '../../../components/GenericTable'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; import { links } from '../../../lib/links'; const TriggersTable = () => { diff --git a/apps/meteor/client/views/omnichannel/units/UnitTableRow.tsx b/apps/meteor/client/views/omnichannel/units/UnitTableRow.tsx index d7a5f1dd09479..2b546024b268a 100644 --- a/apps/meteor/client/views/omnichannel/units/UnitTableRow.tsx +++ b/apps/meteor/client/views/omnichannel/units/UnitTableRow.tsx @@ -1,10 +1,10 @@ import { IconButton } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { GenericTableCell, GenericTableRow } from '@rocket.chat/ui-client'; import { useRouter } from '@rocket.chat/ui-contexts'; import { useTranslation } from 'react-i18next'; import { useRemoveUnit } from './useRemoveUnit'; -import { GenericTableCell, GenericTableRow } from '../../../components/GenericTable'; const UnitsTableRow = ({ _id, name, visibility }: { _id: string; name: string; visibility: string }) => { const { t } = useTranslation(); diff --git a/apps/meteor/client/views/omnichannel/units/UnitsTable.tsx b/apps/meteor/client/views/omnichannel/units/UnitsTable.tsx index 1d0d194da7f26..ed4a0f88c8e36 100644 --- a/apps/meteor/client/views/omnichannel/units/UnitsTable.tsx +++ b/apps/meteor/client/views/omnichannel/units/UnitsTable.tsx @@ -1,5 +1,14 @@ import { Pagination } from '@rocket.chat/fuselage'; import { useDebouncedValue, useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { + GenericTable, + GenericTableHeader, + GenericTableHeaderCell, + GenericTableBody, + GenericTableLoadingRow, + usePagination, + useSort, +} from '@rocket.chat/ui-client'; import { useEndpoint, useRouter } from '@rocket.chat/ui-contexts'; import { useQuery, hashKey } from '@tanstack/react-query'; import { useMemo, useState } from 'react'; @@ -8,15 +17,6 @@ import { useTranslation } from 'react-i18next'; import UnitTableRow from './UnitTableRow'; import FilterByText from '../../../components/FilterByText'; import GenericNoResults from '../../../components/GenericNoResults/GenericNoResults'; -import { - GenericTable, - GenericTableHeader, - GenericTableHeaderCell, - GenericTableBody, - GenericTableLoadingRow, -} from '../../../components/GenericTable'; -import { usePagination } from '../../../components/GenericTable/hooks/usePagination'; -import { useSort } from '../../../components/GenericTable/hooks/useSort'; import { links } from '../../../lib/links'; const UnitsTable = () => { diff --git a/apps/meteor/client/views/room/webdav/WebdavFilePickerModal/WebdavFilePickerModal.tsx b/apps/meteor/client/views/room/webdav/WebdavFilePickerModal/WebdavFilePickerModal.tsx index 87829a054011e..51ca961b6f41c 100644 --- a/apps/meteor/client/views/room/webdav/WebdavFilePickerModal/WebdavFilePickerModal.tsx +++ b/apps/meteor/client/views/room/webdav/WebdavFilePickerModal/WebdavFilePickerModal.tsx @@ -2,6 +2,7 @@ import type { IWebdavNode, IWebdavAccountIntegration } from '@rocket.chat/core-t import type { SelectOption } from '@rocket.chat/fuselage'; import { Modal, Box, IconButton, Select, ModalHeader, ModalTitle, ModalClose, ModalContent, ModalFooter } from '@rocket.chat/fuselage'; import { useEffectEvent, useDebouncedValue } from '@rocket.chat/fuselage-hooks'; +import { useSort } from '@rocket.chat/ui-client'; import { useMethod, useToastMessageDispatch, useTranslation, useSetModal } from '@rocket.chat/ui-contexts'; import type { ReactElement, MouseEvent } from 'react'; import { useState, useEffect, useCallback } from 'react'; @@ -12,7 +13,6 @@ import WebdavFilePickerTable from './WebdavFilePickerTable'; import { sortWebdavNodes } from './lib/sortWebdavNodes'; import { fileUploadIsValidContentType } from '../../../../../app/utils/client'; import FilterByText from '../../../../components/FilterByText'; -import { useSort } from '../../../../components/GenericTable/hooks/useSort'; import FileUploadModal from '../../modals/FileUploadModal'; export type WebdavSortOptions = 'name' | 'size' | 'dataModified'; diff --git a/apps/meteor/client/views/room/webdav/WebdavFilePickerModal/WebdavFilePickerTable.tsx b/apps/meteor/client/views/room/webdav/WebdavFilePickerModal/WebdavFilePickerTable.tsx index 1dded92bcc2c5..94fde8881321b 100644 --- a/apps/meteor/client/views/room/webdav/WebdavFilePickerModal/WebdavFilePickerTable.tsx +++ b/apps/meteor/client/views/room/webdav/WebdavFilePickerModal/WebdavFilePickerTable.tsx @@ -1,12 +1,5 @@ import type { IWebdavNode } from '@rocket.chat/core-typings'; import { Box, Icon } from '@rocket.chat/fuselage'; -import type { ReactElement } from 'react'; -import { useTranslation } from 'react-i18next'; - -import type { WebdavSortOptions } from './WebdavFilePickerModal'; -import { getNodeFileSize } from './lib/getNodeFileSize'; -import { getNodeIconType } from './lib/getNodeIconType'; -import GenericNoResults from '../../../../components/GenericNoResults'; import { GenericTable, GenericTableBody, @@ -15,7 +8,14 @@ import { GenericTableHeaderCell, GenericTableLoadingRow, GenericTableRow, -} from '../../../../components/GenericTable'; +} from '@rocket.chat/ui-client'; +import type { ReactElement } from 'react'; +import { useTranslation } from 'react-i18next'; + +import type { WebdavSortOptions } from './WebdavFilePickerModal'; +import { getNodeFileSize } from './lib/getNodeFileSize'; +import { getNodeIconType } from './lib/getNodeIconType'; +import GenericNoResults from '../../../../components/GenericNoResults'; import { timeAgo } from '../../../../lib/utils/timeAgo'; type WebdavFilePickerTableProps = { diff --git a/apps/meteor/client/views/teams/ChannelDesertionTable/ChannelDesertionTable.tsx b/apps/meteor/client/views/teams/ChannelDesertionTable/ChannelDesertionTable.tsx index 97a7c6192c0d3..7df0d6f7ac710 100644 --- a/apps/meteor/client/views/teams/ChannelDesertionTable/ChannelDesertionTable.tsx +++ b/apps/meteor/client/views/teams/ChannelDesertionTable/ChannelDesertionTable.tsx @@ -1,12 +1,11 @@ import type { IRoom, Serialized } from '@rocket.chat/core-typings'; import { Box, CheckBox } from '@rocket.chat/fuselage'; +import { GenericTable, GenericTableHeaderCell, GenericTableHeader, GenericTableBody, useSort } from '@rocket.chat/ui-client'; import type { ReactElement } from 'react'; import { useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import ChannelDesertionTableRow from './ChannelDesertionTableRow'; -import { GenericTable, GenericTableHeaderCell, GenericTableHeader, GenericTableBody } from '../../../components/GenericTable'; -import { useSort } from '../../../components/GenericTable/hooks/useSort'; type ChannelDesertionTableProps = { lastOwnerWarning?: string; diff --git a/apps/meteor/client/views/teams/ChannelDesertionTable/ChannelDesertionTableRow.tsx b/apps/meteor/client/views/teams/ChannelDesertionTable/ChannelDesertionTableRow.tsx index 7cb5a4bbc21b1..6cd0512eed69e 100644 --- a/apps/meteor/client/views/teams/ChannelDesertionTable/ChannelDesertionTableRow.tsx +++ b/apps/meteor/client/views/teams/ChannelDesertionTable/ChannelDesertionTableRow.tsx @@ -1,9 +1,9 @@ import type { IRoom, Serialized } from '@rocket.chat/core-typings'; import { CheckBox, Icon, Margins } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { GenericTableRow, GenericTableCell } from '@rocket.chat/ui-client'; import type { ReactElement } from 'react'; -import { GenericTableRow, GenericTableCell } from '../../../components/GenericTable'; import { useFormatDateAndTime } from '../../../hooks/useFormatDateAndTime'; type ChannelDesertionTableRowProps = { diff --git a/apps/meteor/client/views/teams/contextualBar/info/DeleteTeam/ChannelDeletionTable/ChannelDeletionTable.tsx b/apps/meteor/client/views/teams/contextualBar/info/DeleteTeam/ChannelDeletionTable/ChannelDeletionTable.tsx index 55b8f3f133034..110acce1f99d4 100644 --- a/apps/meteor/client/views/teams/contextualBar/info/DeleteTeam/ChannelDeletionTable/ChannelDeletionTable.tsx +++ b/apps/meteor/client/views/teams/contextualBar/info/DeleteTeam/ChannelDeletionTable/ChannelDeletionTable.tsx @@ -1,10 +1,9 @@ import type { IRoom, Serialized } from '@rocket.chat/core-typings'; import { Box, CheckBox } from '@rocket.chat/fuselage'; +import { GenericTable, GenericTableHeaderCell, GenericTableBody, GenericTableHeader, useSort } from '@rocket.chat/ui-client'; import { useTranslation } from 'react-i18next'; import ChannelDeletionTableRow from './ChannelDeletionTableRow'; -import { GenericTable, GenericTableHeaderCell, GenericTableBody, GenericTableHeader } from '../../../../../../components/GenericTable'; -import { useSort } from '../../../../../../components/GenericTable/hooks/useSort'; type ChannelDeletionTableProps = { rooms: Serialized[]; diff --git a/apps/meteor/client/views/teams/contextualBar/info/DeleteTeam/ChannelDeletionTable/ChannelDeletionTableRow.tsx b/apps/meteor/client/views/teams/contextualBar/info/DeleteTeam/ChannelDeletionTable/ChannelDeletionTableRow.tsx index f348d2d26fe6b..827dad67f9877 100644 --- a/apps/meteor/client/views/teams/contextualBar/info/DeleteTeam/ChannelDeletionTable/ChannelDeletionTableRow.tsx +++ b/apps/meteor/client/views/teams/contextualBar/info/DeleteTeam/ChannelDeletionTable/ChannelDeletionTableRow.tsx @@ -1,8 +1,8 @@ import type { IRoom, Serialized } from '@rocket.chat/core-typings'; import { CheckBox, Margins } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { GenericTableRow, GenericTableCell } from '@rocket.chat/ui-client'; -import { GenericTableRow, GenericTableCell } from '../../../../../../components/GenericTable'; import { RoomIcon } from '../../../../../../components/RoomIcon'; type ChannelDeletionTableRowProps = { diff --git a/apps/meteor/client/components/GenericTable/GenericTable.stories.tsx b/packages/ui-client/src/components/GenericTable/GenericTable.stories.tsx similarity index 90% rename from apps/meteor/client/components/GenericTable/GenericTable.stories.tsx rename to packages/ui-client/src/components/GenericTable/GenericTable.stories.tsx index 36a53b918a37d..57a1ed1c4a991 100644 --- a/apps/meteor/client/components/GenericTable/GenericTable.stories.tsx +++ b/packages/ui-client/src/components/GenericTable/GenericTable.stories.tsx @@ -10,7 +10,6 @@ import { GenericTableBody, GenericTableLoadingTable, } from '.'; -import GenericNoResults from '../GenericNoResults/GenericNoResults'; export default { component: GenericTable, @@ -72,10 +71,3 @@ export const Loading: StoryFn = () => ( ); - -export const NoResults: StoryFn = () => ( - <> - {filter} - - -); diff --git a/apps/meteor/client/components/GenericTable/GenericTable.tsx b/packages/ui-client/src/components/GenericTable/GenericTable.tsx similarity index 91% rename from apps/meteor/client/components/GenericTable/GenericTable.tsx rename to packages/ui-client/src/components/GenericTable/GenericTable.tsx index e53bc97d75fe7..1f2e52f893442 100644 --- a/apps/meteor/client/components/GenericTable/GenericTable.tsx +++ b/packages/ui-client/src/components/GenericTable/GenericTable.tsx @@ -1,8 +1,9 @@ import { Box, Table } from '@rocket.chat/fuselage'; -import { CustomScrollbars } from '@rocket.chat/ui-client'; import type { ComponentProps, ForwardedRef, ReactNode } from 'react'; import { forwardRef } from 'react'; +import { CustomScrollbars } from '../CustomScrollbars'; + type GenericTableProps = { fixed?: boolean; children: ReactNode; diff --git a/apps/meteor/client/components/GenericTable/GenericTableBody.tsx b/packages/ui-client/src/components/GenericTable/GenericTableBody.tsx similarity index 100% rename from apps/meteor/client/components/GenericTable/GenericTableBody.tsx rename to packages/ui-client/src/components/GenericTable/GenericTableBody.tsx diff --git a/apps/meteor/client/components/GenericTable/GenericTableCell.tsx b/packages/ui-client/src/components/GenericTable/GenericTableCell.tsx similarity index 100% rename from apps/meteor/client/components/GenericTable/GenericTableCell.tsx rename to packages/ui-client/src/components/GenericTable/GenericTableCell.tsx diff --git a/apps/meteor/client/components/GenericTable/GenericTableHeader.tsx b/packages/ui-client/src/components/GenericTable/GenericTableHeader.tsx similarity index 100% rename from apps/meteor/client/components/GenericTable/GenericTableHeader.tsx rename to packages/ui-client/src/components/GenericTable/GenericTableHeader.tsx diff --git a/apps/meteor/client/components/GenericTable/GenericTableHeaderCell.tsx b/packages/ui-client/src/components/GenericTable/GenericTableHeaderCell.tsx similarity index 100% rename from apps/meteor/client/components/GenericTable/GenericTableHeaderCell.tsx rename to packages/ui-client/src/components/GenericTable/GenericTableHeaderCell.tsx diff --git a/apps/meteor/client/components/GenericTable/GenericTableLoadingRow.tsx b/packages/ui-client/src/components/GenericTable/GenericTableLoadingRow.tsx similarity index 100% rename from apps/meteor/client/components/GenericTable/GenericTableLoadingRow.tsx rename to packages/ui-client/src/components/GenericTable/GenericTableLoadingRow.tsx diff --git a/apps/meteor/client/components/GenericTable/GenericTableLoadingTable.tsx b/packages/ui-client/src/components/GenericTable/GenericTableLoadingTable.tsx similarity index 100% rename from apps/meteor/client/components/GenericTable/GenericTableLoadingTable.tsx rename to packages/ui-client/src/components/GenericTable/GenericTableLoadingTable.tsx diff --git a/apps/meteor/client/components/GenericTable/GenericTableRow.tsx b/packages/ui-client/src/components/GenericTable/GenericTableRow.tsx similarity index 100% rename from apps/meteor/client/components/GenericTable/GenericTableRow.tsx rename to packages/ui-client/src/components/GenericTable/GenericTableRow.tsx diff --git a/apps/meteor/client/components/GenericTable/SortIcon.tsx b/packages/ui-client/src/components/GenericTable/SortIcon.tsx similarity index 100% rename from apps/meteor/client/components/GenericTable/SortIcon.tsx rename to packages/ui-client/src/components/GenericTable/SortIcon.tsx diff --git a/packages/ui-client/src/components/GenericTable/hooks/index.ts b/packages/ui-client/src/components/GenericTable/hooks/index.ts new file mode 100644 index 0000000000000..9c6d2d8338a87 --- /dev/null +++ b/packages/ui-client/src/components/GenericTable/hooks/index.ts @@ -0,0 +1,6 @@ +export * from './useCurrent'; +export * from './useItemsPerPage'; +export * from './useItemsPerPageLabel'; +export * from './usePagination'; +export * from './useShowingResultsLabel'; +export * from './useSort'; diff --git a/apps/meteor/client/components/GenericTable/hooks/useCurrent.ts b/packages/ui-client/src/components/GenericTable/hooks/useCurrent.ts similarity index 100% rename from apps/meteor/client/components/GenericTable/hooks/useCurrent.ts rename to packages/ui-client/src/components/GenericTable/hooks/useCurrent.ts diff --git a/apps/meteor/client/components/GenericTable/hooks/useItemsPerPage.ts b/packages/ui-client/src/components/GenericTable/hooks/useItemsPerPage.ts similarity index 100% rename from apps/meteor/client/components/GenericTable/hooks/useItemsPerPage.ts rename to packages/ui-client/src/components/GenericTable/hooks/useItemsPerPage.ts diff --git a/apps/meteor/client/components/GenericTable/hooks/useItemsPerPageLabel.ts b/packages/ui-client/src/components/GenericTable/hooks/useItemsPerPageLabel.ts similarity index 100% rename from apps/meteor/client/components/GenericTable/hooks/useItemsPerPageLabel.ts rename to packages/ui-client/src/components/GenericTable/hooks/useItemsPerPageLabel.ts diff --git a/apps/meteor/client/components/GenericTable/hooks/usePagination.ts b/packages/ui-client/src/components/GenericTable/hooks/usePagination.ts similarity index 100% rename from apps/meteor/client/components/GenericTable/hooks/usePagination.ts rename to packages/ui-client/src/components/GenericTable/hooks/usePagination.ts diff --git a/apps/meteor/client/components/GenericTable/hooks/useShowingResultsLabel.ts b/packages/ui-client/src/components/GenericTable/hooks/useShowingResultsLabel.ts similarity index 100% rename from apps/meteor/client/components/GenericTable/hooks/useShowingResultsLabel.ts rename to packages/ui-client/src/components/GenericTable/hooks/useShowingResultsLabel.ts diff --git a/apps/meteor/client/components/GenericTable/hooks/useSort.ts b/packages/ui-client/src/components/GenericTable/hooks/useSort.ts similarity index 100% rename from apps/meteor/client/components/GenericTable/hooks/useSort.ts rename to packages/ui-client/src/components/GenericTable/hooks/useSort.ts diff --git a/apps/meteor/client/components/GenericTable/index.ts b/packages/ui-client/src/components/GenericTable/index.ts similarity index 92% rename from apps/meteor/client/components/GenericTable/index.ts rename to packages/ui-client/src/components/GenericTable/index.ts index 29855bb106e33..cfd25011de043 100644 --- a/apps/meteor/client/components/GenericTable/index.ts +++ b/packages/ui-client/src/components/GenericTable/index.ts @@ -6,3 +6,4 @@ export * from './GenericTableHeaderCell'; export * from './GenericTableLoadingRow'; export * from './GenericTableLoadingTable'; export * from './GenericTableRow'; +export * from './hooks'; diff --git a/packages/ui-client/src/components/index.ts b/packages/ui-client/src/components/index.ts index 8f4b428f15512..e275cda4125a5 100644 --- a/packages/ui-client/src/components/index.ts +++ b/packages/ui-client/src/components/index.ts @@ -21,3 +21,4 @@ export * from './Wizard'; export * from './CustomScrollbars'; export * from './Page'; export * from './InfoPanel'; +export * from './GenericTable';