diff --git a/apps/meteor/client/apps/gameCenter/GameCenter.tsx b/apps/meteor/client/apps/gameCenter/GameCenter.tsx index 2fc771d781100..058cc7dfdcd49 100644 --- a/apps/meteor/client/apps/gameCenter/GameCenter.tsx +++ b/apps/meteor/client/apps/gameCenter/GameCenter.tsx @@ -1,5 +1,6 @@ import type { IExternalComponent } from '@rocket.chat/apps-engine/definition/externalComponent'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { useRoomToolbox } from '@rocket.chat/ui-contexts'; import { useState } from 'react'; import type { MouseEvent, ReactElement } from 'react'; @@ -7,7 +8,6 @@ import GameCenterContainer from './GameCenterContainer'; import GameCenterList from './GameCenterList'; import { useExternalComponentsQuery } from './hooks/useExternalComponentsQuery'; import { preventSyntheticEvent } from '../../lib/utils/preventSyntheticEvent'; -import { useRoomToolbox } from '../../views/room/contexts/RoomToolboxContext'; export type IGame = IExternalComponent; diff --git a/apps/meteor/client/components/Contextualbar/ContextualbarDialog.tsx b/apps/meteor/client/components/Contextualbar/ContextualbarDialog.tsx index 26afa86a22acd..d3b0554f4147f 100644 --- a/apps/meteor/client/components/Contextualbar/ContextualbarDialog.tsx +++ b/apps/meteor/client/components/Contextualbar/ContextualbarDialog.tsx @@ -1,5 +1,5 @@ import { FeaturePreview, FeaturePreviewOff, FeaturePreviewOn } from '@rocket.chat/ui-client'; -import { useLayoutSizes, useLayoutContextualBarPosition } from '@rocket.chat/ui-contexts'; +import { useLayoutSizes, useLayoutContextualBarPosition, useRoomToolbox } from '@rocket.chat/ui-contexts'; import type { ComponentProps } from 'react'; import { useCallback, useRef } from 'react'; import type { AriaDialogProps } from 'react-aria'; @@ -7,7 +7,6 @@ import { FocusScope, useDialog } from 'react-aria'; import Contextualbar from './Contextualbar'; import ContextualbarResizable from './ContextualbarResizable'; -import { useRoomToolbox } from '../../views/room/contexts/RoomToolboxContext'; type ContextualbarDialogProps = AriaDialogProps & ComponentProps & { onClose?: () => void }; diff --git a/apps/meteor/client/hooks/roomActions/useAppsRoomStarActions.tsx b/apps/meteor/client/hooks/roomActions/useAppsRoomStarActions.tsx index e687ec901a86c..2f9c45fa39b12 100644 --- a/apps/meteor/client/hooks/roomActions/useAppsRoomStarActions.tsx +++ b/apps/meteor/client/hooks/roomActions/useAppsRoomStarActions.tsx @@ -1,6 +1,7 @@ import { Box } from '@rocket.chat/fuselage'; import { GenericMenu, HeaderToolbarAction } from '@rocket.chat/ui-client'; import { useToastMessageDispatch } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { useMemo } from 'react'; import { useTranslation } from 'react-i18next'; @@ -8,7 +9,6 @@ import { UiKitTriggerTimeoutError } from '../../../app/ui-message/client/UiKitTr import { Utilities } from '../../../ee/lib/misc/Utilities'; import { useUiKitActionManager } from '../../uikit/hooks/useUiKitActionManager'; import { useRoom } from '../../views/room/contexts/RoomContext'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; import { useAppActionButtons } from '../useAppActionButtons'; import { useApplyButtonFilters } from '../useApplyButtonFilters'; diff --git a/apps/meteor/client/hooks/roomActions/useAutotranslateRoomAction.ts b/apps/meteor/client/hooks/roomActions/useAutotranslateRoomAction.ts index ba285d4116eb7..c1f64443d64d1 100644 --- a/apps/meteor/client/hooks/roomActions/useAutotranslateRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useAutotranslateRoomAction.ts @@ -1,8 +1,7 @@ import { useSetting, usePermission } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; - const AutoTranslate = lazy(() => import('../../views/room/contextualBar/AutoTranslate')); export const useAutotranslateRoomAction = () => { diff --git a/apps/meteor/client/hooks/roomActions/useCallsRoomAction.ts b/apps/meteor/client/hooks/roomActions/useCallsRoomAction.ts index c5d86460b47c6..440628e722a1f 100644 --- a/apps/meteor/client/hooks/roomActions/useCallsRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useCallsRoomAction.ts @@ -1,9 +1,9 @@ import { isRoomFederated } from '@rocket.chat/core-typings'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useContext, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { RoomContext } from '../../views/room/contexts/RoomContext'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; import { useHasLicenseModule } from '../useHasLicenseModule'; const VideoConfList = lazy(() => import('../../views/room/contextualBar/VideoConference/VideoConfList')); diff --git a/apps/meteor/client/hooks/roomActions/useChannelSettingsRoomAction.ts b/apps/meteor/client/hooks/roomActions/useChannelSettingsRoomAction.ts index dc5c895736e3e..98cbfa17306d0 100644 --- a/apps/meteor/client/hooks/roomActions/useChannelSettingsRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useChannelSettingsRoomAction.ts @@ -1,7 +1,6 @@ +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; - const Info = lazy(() => import('../../views/room/contextualBar/Info')); export const useChannelSettingsRoomAction = () => { diff --git a/apps/meteor/client/hooks/roomActions/useCleanHistoryRoomAction.ts b/apps/meteor/client/hooks/roomActions/useCleanHistoryRoomAction.ts index 4aa3942f8b285..0b9d3a7e50c43 100644 --- a/apps/meteor/client/hooks/roomActions/useCleanHistoryRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useCleanHistoryRoomAction.ts @@ -1,10 +1,10 @@ import { isRoomFederated } from '@rocket.chat/core-typings'; import { usePermission } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { useRoom } from '../../views/room/contexts/RoomContext'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; const PruneMessages = lazy(() => import('../../views/room/contextualBar/PruneMessages')); diff --git a/apps/meteor/client/hooks/roomActions/useDiscussionsRoomAction.ts b/apps/meteor/client/hooks/roomActions/useDiscussionsRoomAction.ts index 2f2a6f92cf95f..f4cd4026d8547 100644 --- a/apps/meteor/client/hooks/roomActions/useDiscussionsRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useDiscussionsRoomAction.ts @@ -1,10 +1,10 @@ import { isRoomFederated } from '@rocket.chat/core-typings'; import { useSetting } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { useRoom } from '../../views/room/contexts/RoomContext'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; const Discussions = lazy(() => import('../../views/room/contextualBar/Discussions')); diff --git a/apps/meteor/client/hooks/roomActions/useE2EERoomAction.ts b/apps/meteor/client/hooks/roomActions/useE2EERoomAction.ts index 42d154347372a..a0b92a288188a 100644 --- a/apps/meteor/client/hooks/roomActions/useE2EERoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useE2EERoomAction.ts @@ -2,13 +2,13 @@ import { isRoomFederated } from '@rocket.chat/core-typings'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; import { imperativeModal } from '@rocket.chat/ui-client'; import { useSetting, usePermission, useEndpoint, useToastMessageDispatch } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { OtrRoomState } from '../../../app/otr/lib/OtrRoomState'; import { getRoomTypeTranslation } from '../../lib/getRoomTypeTranslation'; import { useRoom, useRoomSubscription } from '../../views/room/contexts/RoomContext'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; import { useE2EERoomState } from '../../views/room/hooks/useE2EERoomState'; import { useE2EEState } from '../../views/room/hooks/useE2EEState'; import BaseDisableE2EEModal from '../../views/room/modals/E2EEModals/BaseDisableE2EEModal'; diff --git a/apps/meteor/client/hooks/roomActions/useExportMessagesRoomAction.ts b/apps/meteor/client/hooks/roomActions/useExportMessagesRoomAction.ts index 21d1da3a68438..0688525b91dc8 100644 --- a/apps/meteor/client/hooks/roomActions/useExportMessagesRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useExportMessagesRoomAction.ts @@ -1,8 +1,8 @@ import { usePermission } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; import { useRoom } from '../../views/room/contexts/RoomContext'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; const ExportMessages = lazy(() => import('../../views/room/contextualBar/ExportMessages')); diff --git a/apps/meteor/client/hooks/roomActions/useGameCenterRoomAction.ts b/apps/meteor/client/hooks/roomActions/useGameCenterRoomAction.ts index f08e0fe03d0b9..29c644c6ddd47 100644 --- a/apps/meteor/client/hooks/roomActions/useGameCenterRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useGameCenterRoomAction.ts @@ -1,7 +1,7 @@ +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; import { useExternalComponentsQuery } from '../../apps/gameCenter/hooks/useExternalComponentsQuery'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; const GameCenter = lazy(() => import('../../apps/gameCenter/GameCenter')); diff --git a/apps/meteor/client/hooks/roomActions/useKeyboardShortcutListRoomAction.ts b/apps/meteor/client/hooks/roomActions/useKeyboardShortcutListRoomAction.ts index 08ee4663c8325..103170c7f4626 100644 --- a/apps/meteor/client/hooks/roomActions/useKeyboardShortcutListRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useKeyboardShortcutListRoomAction.ts @@ -1,7 +1,6 @@ +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; - const KeyboardShortcuts = lazy(() => import('../../views/room/contextualBar/KeyboardShortcuts')); export const useKeyboardShortcutListRoomAction = () => { diff --git a/apps/meteor/client/hooks/roomActions/useMediaCallRoomAction.ts b/apps/meteor/client/hooks/roomActions/useMediaCallRoomAction.ts index 85eb9651ea9be..d0e458662251c 100644 --- a/apps/meteor/client/hooks/roomActions/useMediaCallRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useMediaCallRoomAction.ts @@ -1,11 +1,10 @@ -import type { TranslationKey } from '@rocket.chat/ui-contexts'; import { useUserAvatarPath, useUserId } from '@rocket.chat/ui-contexts'; +import type { TranslationKey, RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import type { PeerInfo } from '@rocket.chat/ui-voip'; import { useMediaCallAction } from '@rocket.chat/ui-voip'; import { useMemo } from 'react'; import { useRoom, useRoomSubscription } from '../../views/room/contexts/RoomContext'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; import { useUserInfoQuery } from '../useUserInfoQuery'; const getPeerId = (uids: string[], ownUserId: string | undefined) => { diff --git a/apps/meteor/client/hooks/roomActions/useMembersListRoomAction.ts b/apps/meteor/client/hooks/roomActions/useMembersListRoomAction.ts index 5ad659ec5d263..c2bf9ef5925bc 100644 --- a/apps/meteor/client/hooks/roomActions/useMembersListRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useMembersListRoomAction.ts @@ -1,10 +1,10 @@ import { isRoomFederated, isRoomNativeFederated } from '@rocket.chat/core-typings'; import { usePermission } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { useMemo } from 'react'; import { MemberListRouter } from '../../views/room'; import { useRoom } from '../../views/room/contexts/RoomContext'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; export const useMembersListRoomAction = () => { const room = useRoom(); diff --git a/apps/meteor/client/hooks/roomActions/useMentionsRoomAction.ts b/apps/meteor/client/hooks/roomActions/useMentionsRoomAction.ts index 0dc4a6f5508c5..eb780e8f7e4d3 100644 --- a/apps/meteor/client/hooks/roomActions/useMentionsRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useMentionsRoomAction.ts @@ -1,7 +1,6 @@ +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; - const MentionsTab = lazy(() => import('../../views/room/contextualBar/MentionsTab')); export const useMentionsRoomAction = () => { diff --git a/apps/meteor/client/hooks/roomActions/useOTRRoomAction.ts b/apps/meteor/client/hooks/roomActions/useOTRRoomAction.ts index 1a50283c74755..89aae25bad23a 100644 --- a/apps/meteor/client/hooks/roomActions/useOTRRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useOTRRoomAction.ts @@ -1,10 +1,10 @@ import { isRoomFederated } from '@rocket.chat/core-typings'; import { useSetting } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { useRoom } from '../../views/room/contexts/RoomContext'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; const OTR = lazy(() => import('../../views/room/contextualBar/OTR')); diff --git a/apps/meteor/client/hooks/roomActions/useOutlookCalenderRoomAction.ts b/apps/meteor/client/hooks/roomActions/useOutlookCalenderRoomAction.ts index 3f6485d25a6fc..52e3e31dcf59a 100644 --- a/apps/meteor/client/hooks/roomActions/useOutlookCalenderRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useOutlookCalenderRoomAction.ts @@ -1,8 +1,7 @@ import { useUser } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; - const OutlookEventsRoute = lazy(() => import('../../views/outlookCalendar/OutlookEventsRoute')); export const useOutlookCalenderRoomAction = () => { diff --git a/apps/meteor/client/hooks/roomActions/usePinnedMessagesRoomAction.ts b/apps/meteor/client/hooks/roomActions/usePinnedMessagesRoomAction.ts index 8a2fc47fcc95b..c4279fe60d4c8 100644 --- a/apps/meteor/client/hooks/roomActions/usePinnedMessagesRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/usePinnedMessagesRoomAction.ts @@ -1,10 +1,10 @@ import { isRoomFederated } from '@rocket.chat/core-typings'; import { useSetting } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { useRoom } from '../../views/room/contexts/RoomContext'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; const PinnedMessagesTab = lazy(() => import('../../views/room/contextualBar/PinnedMessagesTab')); diff --git a/apps/meteor/client/hooks/roomActions/usePushNotificationsRoomAction.ts b/apps/meteor/client/hooks/roomActions/usePushNotificationsRoomAction.ts index cb8e3a41843f3..3e0a25ddac10f 100644 --- a/apps/meteor/client/hooks/roomActions/usePushNotificationsRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/usePushNotificationsRoomAction.ts @@ -1,7 +1,7 @@ +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; import { useRoomSubscription } from '../../views/room/contexts/RoomContext'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; const NotificationPreferences = lazy(() => import('../../views/room/contextualBar/NotificationPreferences')); diff --git a/apps/meteor/client/hooks/roomActions/useRocketSearchRoomAction.ts b/apps/meteor/client/hooks/roomActions/useRocketSearchRoomAction.ts index 22645154cb393..d28fdcd8fd000 100644 --- a/apps/meteor/client/hooks/roomActions/useRocketSearchRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useRocketSearchRoomAction.ts @@ -1,7 +1,6 @@ +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; - const MessageSearchTab = lazy(() => import('../../views/room/contextualBar/MessageSearchTab')); export const useRocketSearchRoomAction = () => { diff --git a/apps/meteor/client/hooks/roomActions/useStarredMessagesRoomAction.ts b/apps/meteor/client/hooks/roomActions/useStarredMessagesRoomAction.ts index a5b6eb3f47ca8..1eba79139ccf4 100644 --- a/apps/meteor/client/hooks/roomActions/useStarredMessagesRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useStarredMessagesRoomAction.ts @@ -1,7 +1,6 @@ +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; - const StarredMessagesTab = lazy(() => import('../../views/room/contextualBar/StarredMessagesTab')); export const useStarredMessagesRoomAction = () => { diff --git a/apps/meteor/client/hooks/roomActions/useTeamChannelsRoomAction.ts b/apps/meteor/client/hooks/roomActions/useTeamChannelsRoomAction.ts index 6fddd89f2dce1..dacd7f10cb49e 100644 --- a/apps/meteor/client/hooks/roomActions/useTeamChannelsRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useTeamChannelsRoomAction.ts @@ -1,7 +1,6 @@ +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; - const TeamsChannels = lazy(() => import('../../views/teams/contextualBar/channels')); export const useTeamChannelsRoomAction = () => { diff --git a/apps/meteor/client/hooks/roomActions/useTeamInfoRoomAction.ts b/apps/meteor/client/hooks/roomActions/useTeamInfoRoomAction.ts index 7d43f2985d122..72f8bf3024533 100644 --- a/apps/meteor/client/hooks/roomActions/useTeamInfoRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useTeamInfoRoomAction.ts @@ -1,7 +1,6 @@ +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; - const TeamsInfoWithData = lazy(() => import('../../views/teams/contextualBar/info/TeamsInfoWithData')); export const useTeamInfoRoomAction = () => { diff --git a/apps/meteor/client/hooks/roomActions/useThreadRoomAction.tsx b/apps/meteor/client/hooks/roomActions/useThreadRoomAction.tsx index cababed1b3582..1f42c94fd31c8 100644 --- a/apps/meteor/client/hooks/roomActions/useThreadRoomAction.tsx +++ b/apps/meteor/client/hooks/roomActions/useThreadRoomAction.tsx @@ -1,11 +1,11 @@ import type { BadgeProps } from '@rocket.chat/fuselage'; import { useSetting } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { HeaderToolbarAction, HeaderToolbarActionBadge } from '../../components/Header'; import { useRoomSubscription } from '../../views/room/contexts/RoomContext'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; const getVariant = (tunreadUser: number, tunreadGroup: number): BadgeProps['variant'] => { if (tunreadUser > 0) { diff --git a/apps/meteor/client/hooks/roomActions/useUploadedFilesListRoomAction.ts b/apps/meteor/client/hooks/roomActions/useUploadedFilesListRoomAction.ts index 65d762ce06c42..e4551194a6640 100644 --- a/apps/meteor/client/hooks/roomActions/useUploadedFilesListRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useUploadedFilesListRoomAction.ts @@ -1,7 +1,6 @@ +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; - const RoomFiles = lazy(() => import('../../views/room/contextualBar/RoomFiles')); export const useUploadedFilesListRoomAction = () => { diff --git a/apps/meteor/client/hooks/roomActions/useUserInfoGroupRoomAction.ts b/apps/meteor/client/hooks/roomActions/useUserInfoGroupRoomAction.ts index 81e82f462d3d2..69ea553a99798 100644 --- a/apps/meteor/client/hooks/roomActions/useUserInfoGroupRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useUserInfoGroupRoomAction.ts @@ -1,7 +1,7 @@ +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { useMemo } from 'react'; import { MemberListRouter } from '../../views/room'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; export const useUserInfoGroupRoomAction = () => { return useMemo( diff --git a/apps/meteor/client/hooks/roomActions/useUserInfoRoomAction.ts b/apps/meteor/client/hooks/roomActions/useUserInfoRoomAction.ts index a74be2a33d234..a914051f2057d 100644 --- a/apps/meteor/client/hooks/roomActions/useUserInfoRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useUserInfoRoomAction.ts @@ -1,7 +1,7 @@ +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { useMemo } from 'react'; import { MemberListRouter } from '../../views/room'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; export const useUserInfoRoomAction = () => { return useMemo( diff --git a/apps/meteor/client/hooks/roomActions/useVideoCallRoomAction.tsx b/apps/meteor/client/hooks/roomActions/useVideoCallRoomAction.tsx index c3431f6168e8b..7a0f456d68a73 100644 --- a/apps/meteor/client/hooks/roomActions/useVideoCallRoomAction.tsx +++ b/apps/meteor/client/hooks/roomActions/useVideoCallRoomAction.tsx @@ -1,6 +1,7 @@ import { isRoomFederated } from '@rocket.chat/core-typings'; import { useEffectEvent, useStableArray } from '@rocket.chat/fuselage-hooks'; import { usePermission, useSetting, useUser } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { useVideoConfDispatchOutgoing, useVideoConfIsCalling, @@ -11,7 +12,6 @@ import { useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { useRoom } from '../../views/room/contexts/RoomContext'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; import { useVideoConfWarning } from '../../views/room/contextualBar/VideoConference/hooks/useVideoConfWarning'; export const useVideoCallRoomAction = () => { diff --git a/apps/meteor/client/hooks/roomActions/useWebRTCVideoRoomAction.ts b/apps/meteor/client/hooks/roomActions/useWebRTCVideoRoomAction.ts index 41b078429498a..2a3bd26256f06 100644 --- a/apps/meteor/client/hooks/roomActions/useWebRTCVideoRoomAction.ts +++ b/apps/meteor/client/hooks/roomActions/useWebRTCVideoRoomAction.ts @@ -1,11 +1,11 @@ import { isRoomFederated } from '@rocket.chat/core-typings'; import { useSetting } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { useCallback, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; import { sdk } from '../../../app/utils/client/lib/SDKClient'; import { useRoom } from '../../views/room/contexts/RoomContext'; -import type { RoomToolboxActionConfig } from '../../views/room/contexts/RoomToolboxContext'; export const useWebRTCVideoRoomAction = () => { const enabled = useSetting('WebRTC_Enabled', false); diff --git a/apps/meteor/client/ui.ts b/apps/meteor/client/ui.ts index b7fc53ac64e2b..3d0175fd74f37 100644 --- a/apps/meteor/client/ui.ts +++ b/apps/meteor/client/ui.ts @@ -1,3 +1,5 @@ +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; + import { useChatForwardQuickAction } from './hooks/quickActions/useChatForwardQuickAction'; import { useCloseChatQuickAction } from './hooks/quickActions/useCloseChatQuickAction'; import { useMoveQueueQuickAction } from './hooks/quickActions/useMoveQueueQuickAction'; @@ -35,7 +37,6 @@ import { useContactProfileRoomAction } from './views/omnichannel/hooks/useContac import { useOmnichannelExternalFrameRoomAction } from './views/omnichannel/hooks/useOmnichannelExternalFrameRoomAction'; import { useRoomInfoRoomAction } from './views/omnichannel/hooks/useRoomInfoRoomAction'; import { useVoIPRoomInfoRoomAction } from './views/omnichannel/hooks/useVoIPRoomInfoRoomAction'; -import type { RoomToolboxActionConfig } from './views/room/contexts/RoomToolboxContext'; import type { QuickActionsActionConfig } from './views/room/lib/quickActions'; export const roomActionHooks = [ diff --git a/apps/meteor/client/views/omnichannel/cannedResponses/contextualBar/CannedResponse/CannedResponseList.spec.tsx b/apps/meteor/client/views/omnichannel/cannedResponses/contextualBar/CannedResponse/CannedResponseList.spec.tsx index ee43aad1984ea..55267acdf7cf4 100644 --- a/apps/meteor/client/views/omnichannel/cannedResponses/contextualBar/CannedResponse/CannedResponseList.spec.tsx +++ b/apps/meteor/client/views/omnichannel/cannedResponses/contextualBar/CannedResponse/CannedResponseList.spec.tsx @@ -9,7 +9,8 @@ import * as stories from './CannedResponseList.stories'; const testCases = Object.values(composeStories(stories)).map((Story) => [Story.storyName || 'Story', Story]); // Mock the useRoomToolbox hook -jest.mock('../../../../room/contexts/RoomToolboxContext', () => ({ +jest.mock('@rocket.chat/ui-contexts', () => ({ + ...jest.requireActual('@rocket.chat/ui-contexts'), useRoomToolbox: () => ({ context: undefined, }), diff --git a/apps/meteor/client/views/omnichannel/cannedResponses/contextualBar/CannedResponse/CannedResponseList.tsx b/apps/meteor/client/views/omnichannel/cannedResponses/contextualBar/CannedResponse/CannedResponseList.tsx index 9e106f065a4fe..383438e17f0ea 100644 --- a/apps/meteor/client/views/omnichannel/cannedResponses/contextualBar/CannedResponse/CannedResponseList.tsx +++ b/apps/meteor/client/views/omnichannel/cannedResponses/contextualBar/CannedResponse/CannedResponseList.tsx @@ -1,6 +1,7 @@ import type { ILivechatDepartment, IOmnichannelCannedResponse } from '@rocket.chat/core-typings'; import { Box, Button, ButtonGroup, ContextualbarEmptyContent, Icon, Margins, Select, TextInput } from '@rocket.chat/fuselage'; import { useAutoFocus, useResizeObserver } from '@rocket.chat/fuselage-hooks'; +import { useRoomToolbox } from '@rocket.chat/ui-contexts'; import type { Dispatch, FormEventHandler, MouseEvent, ReactElement, SetStateAction } from 'react'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; @@ -17,7 +18,6 @@ import { ContextualbarDialog, } from '../../../../../components/Contextualbar'; import { VirtualizedScrollbars } from '../../../../../components/CustomScrollbars'; -import { useRoomToolbox } from '../../../../room/contexts/RoomToolboxContext'; import { useCanCreateCannedResponse } from '../../hooks/useCanCreateCannedResponse'; type CannedResponseListProps = { diff --git a/apps/meteor/client/views/omnichannel/cannedResponses/contextualBar/CannedResponse/WrapCannedResponseList.tsx b/apps/meteor/client/views/omnichannel/cannedResponses/contextualBar/CannedResponse/WrapCannedResponseList.tsx index 42a1792152cdb..395fa692442cf 100644 --- a/apps/meteor/client/views/omnichannel/cannedResponses/contextualBar/CannedResponse/WrapCannedResponseList.tsx +++ b/apps/meteor/client/views/omnichannel/cannedResponses/contextualBar/CannedResponse/WrapCannedResponseList.tsx @@ -1,6 +1,6 @@ import type { IOmnichannelCannedResponse, ILivechatDepartment } from '@rocket.chat/core-typings'; import { useDebouncedValue, useLocalStorage, useEffectEvent } from '@rocket.chat/fuselage-hooks'; -import { useSetModal, useRouter } from '@rocket.chat/ui-contexts'; +import { useSetModal, useRouter, useRoomToolbox } from '@rocket.chat/ui-contexts'; import type { ChangeEvent, MouseEvent } from 'react'; import { memo, useCallback, useMemo, useState } from 'react'; @@ -9,7 +9,6 @@ import { useRecordList } from '../../../../../hooks/lists/useRecordList'; import { AsyncStatePhase } from '../../../../../lib/asyncState'; import { useChat } from '../../../../room/contexts/ChatContext'; import { useRoom } from '../../../../room/contexts/RoomContext'; -import { useRoomToolbox } from '../../../../room/contexts/RoomToolboxContext'; import { useCannedResponseFilterOptions } from '../../../hooks/useCannedResponseFilterOptions'; import { useCannedResponseList } from '../../../hooks/useCannedResponseList'; import { useIsRoomOverMacLimit } from '../../../hooks/useIsRoomOverMacLimit'; diff --git a/apps/meteor/client/views/omnichannel/contactInfo/ContactInfoRouter.tsx b/apps/meteor/client/views/omnichannel/contactInfo/ContactInfoRouter.tsx index 5d5f598b56d87..b9a83db57f737 100644 --- a/apps/meteor/client/views/omnichannel/contactInfo/ContactInfoRouter.tsx +++ b/apps/meteor/client/views/omnichannel/contactInfo/ContactInfoRouter.tsx @@ -1,10 +1,9 @@ -import { useRoute, useRouteParameter } from '@rocket.chat/ui-contexts'; +import { useRoute, useRouteParameter, useRoomToolbox } from '@rocket.chat/ui-contexts'; import ContactInfo from './ContactInfo'; import ContactInfoError from './ContactInfoError'; import EditContactInfoWithData from './EditContactInfoWithData'; import { useOmnichannelRoom } from '../../room/contexts/RoomContext'; -import { useRoomToolbox } from '../../room/contexts/RoomToolboxContext'; const ContactInfoRouter = () => { const room = useOmnichannelRoom(); diff --git a/apps/meteor/client/views/omnichannel/directory/calls/contextualBar/CallsContextualBarRoom.tsx b/apps/meteor/client/views/omnichannel/directory/calls/contextualBar/CallsContextualBarRoom.tsx index 0e007c354ca3a..0af1d6eb2f9cc 100644 --- a/apps/meteor/client/views/omnichannel/directory/calls/contextualBar/CallsContextualBarRoom.tsx +++ b/apps/meteor/client/views/omnichannel/directory/calls/contextualBar/CallsContextualBarRoom.tsx @@ -1,6 +1,7 @@ +import { useRoomToolbox } from '@rocket.chat/ui-contexts'; + import { VoipInfo } from './VoipInfo'; import { useVoipRoom } from '../../../../room/contexts/RoomContext'; -import { useRoomToolbox } from '../../../../room/contexts/RoomToolboxContext'; const VoipInfoWithData = () => { const room = useVoipRoom(); diff --git a/apps/meteor/client/views/omnichannel/directory/chats/ChatInfo/ChatsContextualBar.tsx b/apps/meteor/client/views/omnichannel/directory/chats/ChatInfo/ChatsContextualBar.tsx index 99a8fffce48aa..4cf51237c5740 100644 --- a/apps/meteor/client/views/omnichannel/directory/chats/ChatInfo/ChatsContextualBar.tsx +++ b/apps/meteor/client/views/omnichannel/directory/chats/ChatInfo/ChatsContextualBar.tsx @@ -1,4 +1,4 @@ -import { useRoute, useRouteParameter } from '@rocket.chat/ui-contexts'; +import { useRoute, useRouteParameter, useRoomToolbox } from '@rocket.chat/ui-contexts'; import { useMemo } from 'react'; import { useTranslation } from 'react-i18next'; @@ -12,7 +12,6 @@ import { ContextualbarDialog, } from '../../../../../components/Contextualbar'; import { useRoom } from '../../../../room/contexts/RoomContext'; -import { useRoomToolbox } from '../../../../room/contexts/RoomToolboxContext'; const PATH = 'live'; diff --git a/apps/meteor/client/views/omnichannel/hooks/useCannedResponsesRoomAction.ts b/apps/meteor/client/views/omnichannel/hooks/useCannedResponsesRoomAction.ts index 20d6f8e353921..21f54b714a5a3 100644 --- a/apps/meteor/client/views/omnichannel/hooks/useCannedResponsesRoomAction.ts +++ b/apps/meteor/client/views/omnichannel/hooks/useCannedResponsesRoomAction.ts @@ -1,8 +1,8 @@ import { useSetting } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; import { useHasLicenseModule } from '../../../hooks/useHasLicenseModule'; -import type { RoomToolboxActionConfig } from '../../room/contexts/RoomToolboxContext'; const CannedResponse = lazy(() => import('../cannedResponses/contextualBar/CannedResponse/WrapCannedResponseList')); diff --git a/apps/meteor/client/views/omnichannel/hooks/useContactProfileRoomAction.ts b/apps/meteor/client/views/omnichannel/hooks/useContactProfileRoomAction.ts index d2bd06161e84d..9f6b0a5736201 100644 --- a/apps/meteor/client/views/omnichannel/hooks/useContactProfileRoomAction.ts +++ b/apps/meteor/client/views/omnichannel/hooks/useContactProfileRoomAction.ts @@ -1,7 +1,6 @@ +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; -import type { RoomToolboxActionConfig } from '../../room/contexts/RoomToolboxContext'; - const ContactInfoRouter = lazy(() => import('../contactInfo/ContactInfoRouter')); export const useContactProfileRoomAction = () => { diff --git a/apps/meteor/client/views/omnichannel/hooks/useOmnichannelExternalFrameRoomAction.ts b/apps/meteor/client/views/omnichannel/hooks/useOmnichannelExternalFrameRoomAction.ts index 2a092eb720bac..e6b2a75fdad6c 100644 --- a/apps/meteor/client/views/omnichannel/hooks/useOmnichannelExternalFrameRoomAction.ts +++ b/apps/meteor/client/views/omnichannel/hooks/useOmnichannelExternalFrameRoomAction.ts @@ -1,8 +1,7 @@ import { useSetting } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; -import type { RoomToolboxActionConfig } from '../../room/contexts/RoomToolboxContext'; - const ExternalFrameContainer = lazy(() => import('../ExternalFrameContainer')); export const useOmnichannelExternalFrameRoomAction = () => { diff --git a/apps/meteor/client/views/omnichannel/hooks/useRoomInfoRoomAction.ts b/apps/meteor/client/views/omnichannel/hooks/useRoomInfoRoomAction.ts index 22cae4a40fd91..29df31ee46be8 100644 --- a/apps/meteor/client/views/omnichannel/hooks/useRoomInfoRoomAction.ts +++ b/apps/meteor/client/views/omnichannel/hooks/useRoomInfoRoomAction.ts @@ -1,7 +1,6 @@ +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; -import type { RoomToolboxActionConfig } from '../../room/contexts/RoomToolboxContext'; - const ChatsContextualBar = lazy(() => import('../directory/chats/ChatInfo/ChatsContextualBar')); export const useRoomInfoRoomAction = () => diff --git a/apps/meteor/client/views/omnichannel/hooks/useVoIPRoomInfoRoomAction.ts b/apps/meteor/client/views/omnichannel/hooks/useVoIPRoomInfoRoomAction.ts index e3bf37f1f7bb2..d1bdf043011c2 100644 --- a/apps/meteor/client/views/omnichannel/hooks/useVoIPRoomInfoRoomAction.ts +++ b/apps/meteor/client/views/omnichannel/hooks/useVoIPRoomInfoRoomAction.ts @@ -1,7 +1,6 @@ +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { lazy, useMemo } from 'react'; -import type { RoomToolboxActionConfig } from '../../room/contexts/RoomToolboxContext'; - const CallsContextualBarRoom = lazy(() => import('../directory/calls/contextualBar/CallsContextualBarRoom')); export const useVoIPRoomInfoRoomAction = () => { diff --git a/apps/meteor/client/views/outlookCalendar/OutlookEventsRoute.tsx b/apps/meteor/client/views/outlookCalendar/OutlookEventsRoute.tsx index 28c7b34cadef6..4df0c379be61a 100644 --- a/apps/meteor/client/views/outlookCalendar/OutlookEventsRoute.tsx +++ b/apps/meteor/client/views/outlookCalendar/OutlookEventsRoute.tsx @@ -1,8 +1,8 @@ +import { useRoomToolbox } from '@rocket.chat/ui-contexts'; import { useState } from 'react'; import OutlookEventsList from './OutlookEventsList'; import OutlookSettingsList from './OutlookSettingsList'; -import { useRoomToolbox } from '../room/contexts/RoomToolboxContext'; type OutlookCalendarRoutes = 'list' | 'settings'; diff --git a/apps/meteor/client/views/room/Header/RoomTitle.tsx b/apps/meteor/client/views/room/Header/RoomTitle.tsx index 7251ab55fed22..bd287a2c69814 100644 --- a/apps/meteor/client/views/room/Header/RoomTitle.tsx +++ b/apps/meteor/client/views/room/Header/RoomTitle.tsx @@ -1,11 +1,11 @@ import { isTeamRoom, type IRoom } from '@rocket.chat/core-typings'; import { useButtonPattern, useEffectEvent } from '@rocket.chat/fuselage-hooks'; import { useDocumentTitle } from '@rocket.chat/ui-client'; +import { useRoomToolbox } from '@rocket.chat/ui-contexts'; import type { ReactElement } from 'react'; import HeaderIconWithRoom from './HeaderIconWithRoom'; import { HeaderTitle, HeaderTitleButton } from '../../../components/Header'; -import { useRoomToolbox } from '../contexts/RoomToolboxContext'; const RoomTitle = ({ room }: { room: IRoom }): ReactElement => { useDocumentTitle(room.name, false); diff --git a/apps/meteor/client/views/room/Header/RoomToolbox/RoomToolbox.tsx b/apps/meteor/client/views/room/Header/RoomToolbox/RoomToolbox.tsx index d3825284203f6..36be4915a65b4 100644 --- a/apps/meteor/client/views/room/Header/RoomToolbox/RoomToolbox.tsx +++ b/apps/meteor/client/views/room/Header/RoomToolbox/RoomToolbox.tsx @@ -1,14 +1,13 @@ import type { Box } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; import { GenericMenu } from '@rocket.chat/ui-client'; +import { useRoomToolbox, type RenderToolboxItemParams, type RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import type { ComponentProps } from 'react'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; import { useRoomToolboxActions } from './hooks/useRoomToolboxActions'; import { HeaderToolbarAction, HeaderToolbarDivider } from '../../../../components/Header'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; -import type { RenderToolboxItemParams, RoomToolboxActionConfig } from '../../contexts/RoomToolboxContext'; type RoomToolboxProps = { className?: ComponentProps['className']; diff --git a/apps/meteor/client/views/room/Header/RoomToolbox/RoomToolboxE2EESetup.tsx b/apps/meteor/client/views/room/Header/RoomToolbox/RoomToolboxE2EESetup.tsx index 8bee82d8206fc..6522ba91f9f7e 100644 --- a/apps/meteor/client/views/room/Header/RoomToolbox/RoomToolboxE2EESetup.tsx +++ b/apps/meteor/client/views/room/Header/RoomToolbox/RoomToolboxE2EESetup.tsx @@ -1,13 +1,12 @@ import type { Box } from '@rocket.chat/fuselage'; import { useStableArray } from '@rocket.chat/fuselage-hooks'; +import { useRoomToolbox, type RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import type { ComponentProps } from 'react'; import { useTranslation } from 'react-i18next'; import { HeaderToolbarAction } from '../../../../components/Header'; import { roomActionHooksForE2EESetup } from '../../../../ui'; import { useRoom } from '../../contexts/RoomContext'; -import type { RoomToolboxActionConfig } from '../../contexts/RoomToolboxContext'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; import { getRoomGroup } from '../../lib/getRoomGroup'; type RoomToolboxE2EESetupProps = { diff --git a/apps/meteor/client/views/room/Header/RoomToolbox/hooks/useRoomToolboxActions.spec.ts b/apps/meteor/client/views/room/Header/RoomToolbox/hooks/useRoomToolboxActions.spec.ts index 45ad6bd356d77..91d31162de668 100644 --- a/apps/meteor/client/views/room/Header/RoomToolbox/hooks/useRoomToolboxActions.spec.ts +++ b/apps/meteor/client/views/room/Header/RoomToolbox/hooks/useRoomToolboxActions.spec.ts @@ -1,8 +1,8 @@ import { mockAppRoot } from '@rocket.chat/mock-providers'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { renderHook } from '@testing-library/react'; import { useRoomToolboxActions } from './useRoomToolboxActions'; -import type { RoomToolboxActionConfig } from '../../../contexts/RoomToolboxContext'; describe('useRoomToolboxActions', () => { it('should return an empty array if there are no actions', () => { diff --git a/apps/meteor/client/views/room/Header/RoomToolbox/hooks/useRoomToolboxActions.ts b/apps/meteor/client/views/room/Header/RoomToolbox/hooks/useRoomToolboxActions.ts index d8865296c32ab..f9e3cbc325017 100644 --- a/apps/meteor/client/views/room/Header/RoomToolbox/hooks/useRoomToolboxActions.ts +++ b/apps/meteor/client/views/room/Header/RoomToolbox/hooks/useRoomToolboxActions.ts @@ -1,9 +1,8 @@ import type { GenericMenuItemProps } from '@rocket.chat/ui-client'; import { useLayout } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxContextValue } from '@rocket.chat/ui-contexts'; import { useTranslation } from 'react-i18next'; -import type { RoomToolboxContextValue } from '../../../contexts/RoomToolboxContext'; - type MenuActionsProps = { id: string; items: GenericMenuItemProps[]; diff --git a/apps/meteor/client/views/room/HeaderV2/RoomTitle.tsx b/apps/meteor/client/views/room/HeaderV2/RoomTitle.tsx index 86f5c4fe52327..6b688006b71a4 100644 --- a/apps/meteor/client/views/room/HeaderV2/RoomTitle.tsx +++ b/apps/meteor/client/views/room/HeaderV2/RoomTitle.tsx @@ -1,10 +1,10 @@ import { isTeamRoom, type IRoom } from '@rocket.chat/core-typings'; import { useButtonPattern, useEffectEvent } from '@rocket.chat/fuselage-hooks'; import { useDocumentTitle } from '@rocket.chat/ui-client'; +import { useRoomToolbox } from '@rocket.chat/ui-contexts'; import HeaderIconWithRoom from './HeaderIconWithRoom'; import { HeaderTitle, HeaderTitleButton } from '../../../components/Header'; -import { useRoomToolbox } from '../contexts/RoomToolboxContext'; type RoomTitleProps = { room: IRoom }; diff --git a/apps/meteor/client/views/room/HeaderV2/RoomToolbox/RoomToolbox.tsx b/apps/meteor/client/views/room/HeaderV2/RoomToolbox/RoomToolbox.tsx index d3825284203f6..36be4915a65b4 100644 --- a/apps/meteor/client/views/room/HeaderV2/RoomToolbox/RoomToolbox.tsx +++ b/apps/meteor/client/views/room/HeaderV2/RoomToolbox/RoomToolbox.tsx @@ -1,14 +1,13 @@ import type { Box } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; import { GenericMenu } from '@rocket.chat/ui-client'; +import { useRoomToolbox, type RenderToolboxItemParams, type RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import type { ComponentProps } from 'react'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; import { useRoomToolboxActions } from './hooks/useRoomToolboxActions'; import { HeaderToolbarAction, HeaderToolbarDivider } from '../../../../components/Header'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; -import type { RenderToolboxItemParams, RoomToolboxActionConfig } from '../../contexts/RoomToolboxContext'; type RoomToolboxProps = { className?: ComponentProps['className']; diff --git a/apps/meteor/client/views/room/HeaderV2/RoomToolbox/RoomToolboxE2EESetup.tsx b/apps/meteor/client/views/room/HeaderV2/RoomToolbox/RoomToolboxE2EESetup.tsx index d7dfd7ecdb75d..de924f1ebf3d0 100644 --- a/apps/meteor/client/views/room/HeaderV2/RoomToolbox/RoomToolboxE2EESetup.tsx +++ b/apps/meteor/client/views/room/HeaderV2/RoomToolbox/RoomToolboxE2EESetup.tsx @@ -1,12 +1,11 @@ import type { Box } from '@rocket.chat/fuselage'; import { useStableArray } from '@rocket.chat/fuselage-hooks'; +import { useRoomToolbox, type RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import type { ComponentProps } from 'react'; import { useTranslation } from 'react-i18next'; import { HeaderToolbarAction } from '../../../../components/Header'; import { roomActionHooksForE2EESetup } from '../../../../ui'; -import type { RoomToolboxActionConfig } from '../../contexts/RoomToolboxContext'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; type RoomToolboxE2EESetupProps = { className?: ComponentProps['className']; diff --git a/apps/meteor/client/views/room/HeaderV2/RoomToolbox/hooks/useRoomToolboxActions.spec.ts b/apps/meteor/client/views/room/HeaderV2/RoomToolbox/hooks/useRoomToolboxActions.spec.ts index 45ad6bd356d77..91d31162de668 100644 --- a/apps/meteor/client/views/room/HeaderV2/RoomToolbox/hooks/useRoomToolboxActions.spec.ts +++ b/apps/meteor/client/views/room/HeaderV2/RoomToolbox/hooks/useRoomToolboxActions.spec.ts @@ -1,8 +1,8 @@ import { mockAppRoot } from '@rocket.chat/mock-providers'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { renderHook } from '@testing-library/react'; import { useRoomToolboxActions } from './useRoomToolboxActions'; -import type { RoomToolboxActionConfig } from '../../../contexts/RoomToolboxContext'; describe('useRoomToolboxActions', () => { it('should return an empty array if there are no actions', () => { diff --git a/apps/meteor/client/views/room/HeaderV2/RoomToolbox/hooks/useRoomToolboxActions.ts b/apps/meteor/client/views/room/HeaderV2/RoomToolbox/hooks/useRoomToolboxActions.ts index d8865296c32ab..f9e3cbc325017 100644 --- a/apps/meteor/client/views/room/HeaderV2/RoomToolbox/hooks/useRoomToolboxActions.ts +++ b/apps/meteor/client/views/room/HeaderV2/RoomToolbox/hooks/useRoomToolboxActions.ts @@ -1,9 +1,8 @@ import type { GenericMenuItemProps } from '@rocket.chat/ui-client'; import { useLayout } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxContextValue } from '@rocket.chat/ui-contexts'; import { useTranslation } from 'react-i18next'; -import type { RoomToolboxContextValue } from '../../../contexts/RoomToolboxContext'; - type MenuActionsProps = { id: string; items: GenericMenuItemProps[]; diff --git a/apps/meteor/client/views/room/MemberListRouter.tsx b/apps/meteor/client/views/room/MemberListRouter.tsx index 74b45c0c00529..ec9040add77aa 100644 --- a/apps/meteor/client/views/room/MemberListRouter.tsx +++ b/apps/meteor/client/views/room/MemberListRouter.tsx @@ -1,8 +1,7 @@ import type { IRoom, IUser } from '@rocket.chat/core-typings'; -import { useUserId } from '@rocket.chat/ui-contexts'; +import { useUserId, useRoomToolbox } from '@rocket.chat/ui-contexts'; import { useRoom } from './contexts/RoomContext'; -import { useRoomToolbox } from './contexts/RoomToolboxContext'; import RoomMembers from './contextualBar/RoomMembers'; import UserInfo from './contextualBar/UserInfo'; diff --git a/apps/meteor/client/views/room/Room.tsx b/apps/meteor/client/views/room/Room.tsx index 9ec9aa8fb0e57..0bdb971b8b1c8 100644 --- a/apps/meteor/client/views/room/Room.tsx +++ b/apps/meteor/client/views/room/Room.tsx @@ -1,5 +1,5 @@ import { FeaturePreview, FeaturePreviewOff, FeaturePreviewOn } from '@rocket.chat/ui-client'; -import { useTranslation, useSetting } from '@rocket.chat/ui-contexts'; +import { useTranslation, useSetting, useRoomToolbox } from '@rocket.chat/ui-contexts'; import type { ReactElement } from 'react'; import { createElement, lazy, memo, Suspense } from 'react'; import { FocusScope } from 'react-aria'; @@ -12,7 +12,6 @@ import MessageHighlightProvider from './MessageList/providers/MessageHighlightPr import RoomBody from './body/RoomBody'; import RoomBodyV2 from './body/RoomBodyV2'; import { useRoom } from './contexts/RoomContext'; -import { useRoomToolbox } from './contexts/RoomToolboxContext'; import { useAppsContextualBar } from './hooks/useAppsContextualBar'; import RoomLayout from './layout/RoomLayout'; import ChatProvider from './providers/ChatProvider'; diff --git a/apps/meteor/client/views/room/body/RoomBody.tsx b/apps/meteor/client/views/room/body/RoomBody.tsx index 54aee2f2c1578..b39d98841e65a 100644 --- a/apps/meteor/client/views/room/body/RoomBody.tsx +++ b/apps/meteor/client/views/room/body/RoomBody.tsx @@ -1,5 +1,5 @@ import { Box } from '@rocket.chat/fuselage'; -import { usePermission, useRole, useSetting, useTranslation, useUser, useUserPreference } from '@rocket.chat/ui-contexts'; +import { usePermission, useRole, useSetting, useTranslation, useUser, useUserPreference, useRoomToolbox } from '@rocket.chat/ui-contexts'; import type { MouseEvent, ReactElement } from 'react'; import { memo, useCallback, useMemo } from 'react'; @@ -24,7 +24,6 @@ import { useSelectAllAndScrollToTop } from './hooks/useSelectAllAndScrollToTop'; import RoomComposer from '../composer/RoomComposer/RoomComposer'; import { useChat } from '../contexts/ChatContext'; import { useRoom, useRoomSubscription, useRoomMessages } from '../contexts/RoomContext'; -import { useRoomToolbox } from '../contexts/RoomToolboxContext'; import { useDateScroll } from '../hooks/useDateScroll'; import { useMessageListNavigation } from '../hooks/useMessageListNavigation'; import { useRetentionPolicy } from '../hooks/useRetentionPolicy'; diff --git a/apps/meteor/client/views/room/body/RoomBodyV2.tsx b/apps/meteor/client/views/room/body/RoomBodyV2.tsx index b8d5246ecf543..dc2edb43d8c09 100644 --- a/apps/meteor/client/views/room/body/RoomBodyV2.tsx +++ b/apps/meteor/client/views/room/body/RoomBodyV2.tsx @@ -1,5 +1,5 @@ import { Box } from '@rocket.chat/fuselage'; -import { usePermission, useRole, useSetting, useTranslation, useUser, useUserPreference } from '@rocket.chat/ui-contexts'; +import { usePermission, useRole, useSetting, useTranslation, useUser, useUserPreference, useRoomToolbox } from '@rocket.chat/ui-contexts'; import type { MouseEvent, ReactElement } from 'react'; import { memo, useCallback, useMemo } from 'react'; @@ -21,7 +21,6 @@ import { useReadMessageWindowEvents } from './hooks/useReadMessageWindowEvents'; import RoomComposer from '../composer/RoomComposer/RoomComposer'; import { useChat } from '../contexts/ChatContext'; import { useRoom, useRoomSubscription, useRoomMessages } from '../contexts/RoomContext'; -import { useRoomToolbox } from '../contexts/RoomToolboxContext'; import { useDateScroll } from '../hooks/useDateScroll'; import { useMessageListNavigation } from '../hooks/useMessageListNavigation'; import { useRetentionPolicy } from '../hooks/useRetentionPolicy'; diff --git a/apps/meteor/client/views/room/contextualBar/AutoTranslate/AutoTranslateWithData.tsx b/apps/meteor/client/views/room/contextualBar/AutoTranslate/AutoTranslateWithData.tsx index 567dd02acac9d..e6e8fae24424e 100644 --- a/apps/meteor/client/views/room/contextualBar/AutoTranslate/AutoTranslateWithData.tsx +++ b/apps/meteor/client/views/room/contextualBar/AutoTranslate/AutoTranslateWithData.tsx @@ -1,5 +1,5 @@ import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; -import { useEndpoint, useLanguage, useToastMessageDispatch } from '@rocket.chat/ui-contexts'; +import { useEndpoint, useLanguage, useToastMessageDispatch, useRoomToolbox } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import type { ChangeEvent, ReactElement } from 'react'; import { useEffect, useState, memo } from 'react'; @@ -9,7 +9,6 @@ import AutoTranslate from './AutoTranslate'; import { useEndpointMutation } from '../../../../hooks/useEndpointMutation'; import { miscQueryKeys } from '../../../../lib/queryKeys'; import { useRoom, useRoomSubscription } from '../../contexts/RoomContext'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; const AutoTranslateWithData = (): ReactElement => { const room = useRoom(); diff --git a/apps/meteor/client/views/room/contextualBar/Discussions/DiscussionsListContextBar.tsx b/apps/meteor/client/views/room/contextualBar/Discussions/DiscussionsListContextBar.tsx index d74d5d3c7cdcd..c8af9f719ada1 100644 --- a/apps/meteor/client/views/room/contextualBar/Discussions/DiscussionsListContextBar.tsx +++ b/apps/meteor/client/views/room/contextualBar/Discussions/DiscussionsListContextBar.tsx @@ -1,6 +1,6 @@ import type { IDiscussionMessage } from '@rocket.chat/core-typings'; import { useDebouncedValue } from '@rocket.chat/fuselage-hooks'; -import { useUserId } from '@rocket.chat/ui-contexts'; +import { useUserId, useRoomToolbox } from '@rocket.chat/ui-contexts'; import type { ChangeEvent, ReactElement } from 'react'; import { useCallback, useMemo, useState } from 'react'; @@ -9,7 +9,6 @@ import { useDiscussionsList } from './useDiscussionsList'; import { useRecordList } from '../../../../hooks/lists/useRecordList'; import { AsyncStatePhase } from '../../../../hooks/useAsyncState'; import { useRoom } from '../../contexts/RoomContext'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; const DiscussionListContextBar = (): ReactElement | null => { const userId = useUserId(); diff --git a/apps/meteor/client/views/room/contextualBar/ExportMessages/ExportMessages.tsx b/apps/meteor/client/views/room/contextualBar/ExportMessages/ExportMessages.tsx index f03e0956b20df..dd5e9a82c60ee 100644 --- a/apps/meteor/client/views/room/contextualBar/ExportMessages/ExportMessages.tsx +++ b/apps/meteor/client/views/room/contextualBar/ExportMessages/ExportMessages.tsx @@ -15,7 +15,7 @@ import { Callout, } from '@rocket.chat/fuselage'; import { useAutoFocus } from '@rocket.chat/fuselage-hooks'; -import { usePermission } from '@rocket.chat/ui-contexts'; +import { usePermission, useRoomToolbox } from '@rocket.chat/ui-contexts'; import { useContext, useEffect, useId, useMemo } from 'react'; import { Controller, useForm } from 'react-hook-form'; import { useTranslation } from 'react-i18next'; @@ -37,7 +37,6 @@ import UserAutoCompleteMultiple from '../../../../components/UserAutoCompleteMul import { roomCoordinator } from '../../../../lib/rooms/roomCoordinator'; import { SelectedMessageContext, useCountSelected } from '../../MessageList/contexts/SelectedMessagesContext'; import { useRoom } from '../../contexts/RoomContext'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; export type ExportMessagesFormValues = { type: 'email' | 'file' | 'download'; diff --git a/apps/meteor/client/views/room/contextualBar/Info/EditRoomInfo/EditRoomInfoWithData.tsx b/apps/meteor/client/views/room/contextualBar/Info/EditRoomInfo/EditRoomInfoWithData.tsx index 43c4e55b97a60..5892893685b42 100644 --- a/apps/meteor/client/views/room/contextualBar/Info/EditRoomInfo/EditRoomInfoWithData.tsx +++ b/apps/meteor/client/views/room/contextualBar/Info/EditRoomInfo/EditRoomInfoWithData.tsx @@ -1,8 +1,8 @@ import type { IRoomWithRetentionPolicy } from '@rocket.chat/core-typings'; +import { useRoomToolbox } from '@rocket.chat/ui-contexts'; import EditRoomInfo from './EditRoomInfo'; import { useRoom } from '../../../contexts/RoomContext'; -import { useRoomToolbox } from '../../../contexts/RoomToolboxContext'; const EditRoomInfoWithData = ({ onClickBack }: { onClickBack: () => void }) => { const room = useRoom() as IRoomWithRetentionPolicy; diff --git a/apps/meteor/client/views/room/contextualBar/Info/RoomInfoRouter.tsx b/apps/meteor/client/views/room/contextualBar/Info/RoomInfoRouter.tsx index 718aaae451816..543a08a672507 100644 --- a/apps/meteor/client/views/room/contextualBar/Info/RoomInfoRouter.tsx +++ b/apps/meteor/client/views/room/contextualBar/Info/RoomInfoRouter.tsx @@ -1,12 +1,12 @@ import type { IRoom } from '@rocket.chat/core-typings'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { useRoomToolbox } from '@rocket.chat/ui-contexts'; import { useState } from 'react'; import EditRoomInfoWithData from './EditRoomInfo'; import RoomInfo from './RoomInfo'; import { useCanEditRoom } from './hooks/useCanEditRoom'; import { useRoom } from '../../contexts/RoomContext'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; type RoomInfoRouterProps = { onClickBack?: () => void; diff --git a/apps/meteor/client/views/room/contextualBar/KeyboardShortcuts/KeyboardShortcutsWithData.tsx b/apps/meteor/client/views/room/contextualBar/KeyboardShortcuts/KeyboardShortcutsWithData.tsx index fe968f952335a..a6b9b0ae2e435 100644 --- a/apps/meteor/client/views/room/contextualBar/KeyboardShortcuts/KeyboardShortcutsWithData.tsx +++ b/apps/meteor/client/views/room/contextualBar/KeyboardShortcuts/KeyboardShortcutsWithData.tsx @@ -1,7 +1,7 @@ +import { useRoomToolbox } from '@rocket.chat/ui-contexts'; import type { ReactElement } from 'react'; import KeyboardShortcuts from './KeyboardShortcuts'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; const KeyboardShortcutsWithData = (): ReactElement => { const { closeTab } = useRoomToolbox(); diff --git a/apps/meteor/client/views/room/contextualBar/MessageListTab.tsx b/apps/meteor/client/views/room/contextualBar/MessageListTab.tsx index 62adc1d74902c..9ec92dbd49641 100644 --- a/apps/meteor/client/views/room/contextualBar/MessageListTab.tsx +++ b/apps/meteor/client/views/room/contextualBar/MessageListTab.tsx @@ -2,7 +2,7 @@ import type { IMessage } from '@rocket.chat/core-typings'; import { Box, MessageDivider, Throbber } from '@rocket.chat/fuselage'; import type { Keys as IconName } from '@rocket.chat/icons'; import { MessageTypes } from '@rocket.chat/message-types'; -import { useUserPreference } from '@rocket.chat/ui-contexts'; +import { useUserPreference, useRoomToolbox } from '@rocket.chat/ui-contexts'; import type { UseQueryResult } from '@tanstack/react-query'; import type { ReactElement, ReactNode } from 'react'; import { useCallback } from 'react'; @@ -26,7 +26,6 @@ import MessageListErrorBoundary from '../MessageList/MessageListErrorBoundary'; import { isMessageNewDay } from '../MessageList/lib/isMessageNewDay'; import MessageListProvider from '../MessageList/providers/MessageListProvider'; import { useRoomSubscription } from '../contexts/RoomContext'; -import { useRoomToolbox } from '../contexts/RoomToolboxContext'; type MessageListTabProps = { iconName: IconName; diff --git a/apps/meteor/client/views/room/contextualBar/MessageSearchTab/MessageSearchTab.tsx b/apps/meteor/client/views/room/contextualBar/MessageSearchTab/MessageSearchTab.tsx index a3a391f3bdd0d..3dfcd5a2c318b 100644 --- a/apps/meteor/client/views/room/contextualBar/MessageSearchTab/MessageSearchTab.tsx +++ b/apps/meteor/client/views/room/contextualBar/MessageSearchTab/MessageSearchTab.tsx @@ -1,4 +1,5 @@ import { Callout } from '@rocket.chat/fuselage'; +import { useRoomToolbox } from '@rocket.chat/ui-contexts'; import { useState } from 'react'; import { useTranslation } from 'react-i18next'; @@ -14,7 +15,6 @@ import { ContextualbarSection, ContextualbarDialog, } from '../../../../components/Contextualbar'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; const MessageSearchTab = () => { const providerQuery = useMessageSearchProviderQuery(); diff --git a/apps/meteor/client/views/room/contextualBar/NotificationPreferences/NotificationPreferencesWithData.tsx b/apps/meteor/client/views/room/contextualBar/NotificationPreferences/NotificationPreferencesWithData.tsx index 85ebe88ccd4e4..171c7906f5245 100644 --- a/apps/meteor/client/views/room/contextualBar/NotificationPreferences/NotificationPreferencesWithData.tsx +++ b/apps/meteor/client/views/room/contextualBar/NotificationPreferences/NotificationPreferencesWithData.tsx @@ -1,5 +1,5 @@ import type { SelectOption } from '@rocket.chat/fuselage'; -import { useCustomSound, useToastMessageDispatch } from '@rocket.chat/ui-contexts'; +import { useCustomSound, useToastMessageDispatch, useRoomToolbox } from '@rocket.chat/ui-contexts'; import type { ReactElement } from 'react'; import { memo } from 'react'; import { useForm, FormProvider } from 'react-hook-form'; @@ -8,7 +8,6 @@ import { useTranslation } from 'react-i18next'; import NotificationPreferences from './NotificationPreferences'; import { useEndpointMutation } from '../../../../hooks/useEndpointMutation'; import { useRoom, useRoomSubscription } from '../../contexts/RoomContext'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; const NotificationPreferencesWithData = (): ReactElement => { const { t } = useTranslation(); diff --git a/apps/meteor/client/views/room/contextualBar/OTR/OTRWithData.tsx b/apps/meteor/client/views/room/contextualBar/OTR/OTRWithData.tsx index 270483ec5e4f0..a832267c3b491 100644 --- a/apps/meteor/client/views/room/contextualBar/OTR/OTRWithData.tsx +++ b/apps/meteor/client/views/room/contextualBar/OTR/OTRWithData.tsx @@ -1,11 +1,10 @@ -import { useUserPresence } from '@rocket.chat/ui-contexts'; +import { useUserPresence, useRoomToolbox } from '@rocket.chat/ui-contexts'; import type { ReactElement } from 'react'; import { useEffect } from 'react'; import OTRComponent from './OTR'; import { OtrRoomState } from '../../../../../app/otr/lib/OtrRoomState'; import { useOTR } from '../../../../hooks/useOTR'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; const OTRWithData = (): ReactElement => { const { otr, otrState } = useOTR(); diff --git a/apps/meteor/client/views/room/contextualBar/PruneMessages/PruneMessagesWithData.tsx b/apps/meteor/client/views/room/contextualBar/PruneMessages/PruneMessagesWithData.tsx index 2905ba195110d..a6461d97b2eb1 100644 --- a/apps/meteor/client/views/room/contextualBar/PruneMessages/PruneMessagesWithData.tsx +++ b/apps/meteor/client/views/room/contextualBar/PruneMessages/PruneMessagesWithData.tsx @@ -1,7 +1,7 @@ import { isDirectMessageRoom } from '@rocket.chat/core-typings'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; import { GenericModal } from '@rocket.chat/ui-client'; -import { useSetModal, useToastMessageDispatch, useEndpoint } from '@rocket.chat/ui-contexts'; +import { useSetModal, useToastMessageDispatch, useEndpoint, useRoomToolbox } from '@rocket.chat/ui-contexts'; import moment from 'moment'; import type { ReactElement } from 'react'; import { useCallback, useMemo, useState } from 'react'; @@ -10,7 +10,6 @@ import { useTranslation } from 'react-i18next'; import PruneMessages from './PruneMessages'; import { useRoom } from '../../contexts/RoomContext'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; const getTimeZoneOffset = (): string => { const offset = new Date().getTimezoneOffset(); diff --git a/apps/meteor/client/views/room/contextualBar/RoomFiles/RoomFilesWithData.tsx b/apps/meteor/client/views/room/contextualBar/RoomFiles/RoomFilesWithData.tsx index 85e0c7e238060..80c864b431ffd 100644 --- a/apps/meteor/client/views/room/contextualBar/RoomFiles/RoomFilesWithData.tsx +++ b/apps/meteor/client/views/room/contextualBar/RoomFiles/RoomFilesWithData.tsx @@ -1,4 +1,5 @@ import { useLocalStorage } from '@rocket.chat/fuselage-hooks'; +import { useRoomToolbox } from '@rocket.chat/ui-contexts'; import type { ChangeEvent } from 'react'; import { useState, useCallback, useMemo } from 'react'; @@ -8,7 +9,6 @@ import { useFilesList } from './hooks/useFilesList'; import { useRecordList } from '../../../../hooks/lists/useRecordList'; import { AsyncStatePhase } from '../../../../hooks/useAsyncState'; import { useRoom } from '../../contexts/RoomContext'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; const RoomFilesWithData = () => { const room = useRoom(); diff --git a/apps/meteor/client/views/room/contextualBar/RoomMembers/AddUsers/AddUsers.tsx b/apps/meteor/client/views/room/contextualBar/RoomMembers/AddUsers/AddUsers.tsx index fffd2da210a69..1d48abd75a962 100644 --- a/apps/meteor/client/views/room/contextualBar/RoomMembers/AddUsers/AddUsers.tsx +++ b/apps/meteor/client/views/room/contextualBar/RoomMembers/AddUsers/AddUsers.tsx @@ -2,7 +2,7 @@ import type { IRoom } from '@rocket.chat/core-typings'; import { isRoomFederated, isRoomNativeFederated } from '@rocket.chat/core-typings'; import { Field, FieldError, FieldLabel, Button, ButtonGroup, FieldGroup } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; -import { useToastMessageDispatch, useMethod } from '@rocket.chat/ui-contexts'; +import { useToastMessageDispatch, useMethod, useRoomToolbox } from '@rocket.chat/ui-contexts'; import { useId } from 'react'; import type { ReactElement } from 'react'; import { Controller, useForm } from 'react-hook-form'; @@ -21,7 +21,6 @@ import { import UserAutoCompleteMultiple from '../../../../../components/UserAutoCompleteMultiple'; import UserAutoCompleteMultipleFederated from '../../../../../components/UserAutoCompleteMultiple/UserAutoCompleteMultipleFederated'; import { useRoom } from '../../../contexts/RoomContext'; -import { useRoomToolbox } from '../../../contexts/RoomToolboxContext'; const hasExternalUsers = (users: string[]): boolean => users.some((user) => user.startsWith('@')); diff --git a/apps/meteor/client/views/room/contextualBar/RoomMembers/InviteUsers/InviteUsersWithData.tsx b/apps/meteor/client/views/room/contextualBar/RoomMembers/InviteUsers/InviteUsersWithData.tsx index f514b3b3fc4fd..6bcb06c0a4b95 100644 --- a/apps/meteor/client/views/room/contextualBar/RoomMembers/InviteUsers/InviteUsersWithData.tsx +++ b/apps/meteor/client/views/room/contextualBar/RoomMembers/InviteUsers/InviteUsersWithData.tsx @@ -1,6 +1,6 @@ import type { IRoom } from '@rocket.chat/core-typings'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; -import { useEndpoint, useTranslation, useToastMessageDispatch } from '@rocket.chat/ui-contexts'; +import { useEndpoint, useTranslation, useToastMessageDispatch, useRoomToolbox } from '@rocket.chat/ui-contexts'; import { useQuery } from '@tanstack/react-query'; import type { ReactElement } from 'react'; import { useState, useEffect } from 'react'; @@ -10,7 +10,6 @@ import InviteUsersEdit from './InviteUsersEdit'; import InviteUsersError from './InviteUsersError'; import InviteUsersLoading from './InviteUsersLoading'; import { useFormatDateAndTime } from '../../../../../hooks/useFormatDateAndTime'; -import { useRoomToolbox } from '../../../contexts/RoomToolboxContext'; type InviteUsersWithDataProps = { rid: IRoom['_id']; diff --git a/apps/meteor/client/views/room/contextualBar/RoomMembers/RoomMembersWithData.tsx b/apps/meteor/client/views/room/contextualBar/RoomMembers/RoomMembersWithData.tsx index 1abda763611f8..ee4b01689babd 100644 --- a/apps/meteor/client/views/room/contextualBar/RoomMembers/RoomMembersWithData.tsx +++ b/apps/meteor/client/views/room/contextualBar/RoomMembers/RoomMembersWithData.tsx @@ -1,13 +1,19 @@ import type { IRoom, IUser } from '@rocket.chat/core-typings'; import { isRoomFederated, isDirectMessageRoom, isTeamRoom, isRoomNativeFederated } from '@rocket.chat/core-typings'; import { useEffectEvent, useDebouncedValue, useLocalStorage } from '@rocket.chat/fuselage-hooks'; -import { useUserRoom, useAtLeastOnePermission, useUser, usePermission, useUserSubscription } from '@rocket.chat/ui-contexts'; +import { + useUserRoom, + useAtLeastOnePermission, + useUser, + usePermission, + useUserSubscription, + useRoomToolbox, +} from '@rocket.chat/ui-contexts'; import type { ChangeEvent, MouseEvent, ReactElement } from 'react'; import { useCallback, useMemo, useState } from 'react'; import * as Federation from '../../../../lib/federation/Federation'; import { useMembersList } from '../../../hooks/useMembersList'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; import UserInfoWithData from '../UserInfo'; import AddUsers from './AddUsers'; import InviteUsers from './InviteUsers'; diff --git a/apps/meteor/client/views/room/contextualBar/Threads/Thread.tsx b/apps/meteor/client/views/room/contextualBar/Threads/Thread.tsx index 7439ec0311bc4..1cc2bf08cd2c1 100644 --- a/apps/meteor/client/views/room/contextualBar/Threads/Thread.tsx +++ b/apps/meteor/client/views/room/contextualBar/Threads/Thread.tsx @@ -2,7 +2,13 @@ import type { IMessage } from '@rocket.chat/core-typings'; import { css } from '@rocket.chat/css-in-js'; import { Box, ModalBackdrop, Skeleton } from '@rocket.chat/fuselage'; import { useLocalStorage } from '@rocket.chat/fuselage-hooks'; -import { useLayoutContextualBarExpanded, useToastMessageDispatch, useTranslation, useUserId } from '@rocket.chat/ui-contexts'; +import { + useLayoutContextualBarExpanded, + useToastMessageDispatch, + useTranslation, + useUserId, + useRoomToolbox, +} from '@rocket.chat/ui-contexts'; import ThreadChat from './components/ThreadChat'; import ThreadSkeleton from './components/ThreadSkeleton'; @@ -19,7 +25,6 @@ import { ContextualbarInnerContent, ContextualbarDialog, } from '../../../../components/Contextualbar'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; import { useGoToThreadList } from '../../hooks/useGoToThreadList'; import ChatProvider from '../../providers/ChatProvider'; diff --git a/apps/meteor/client/views/room/contextualBar/Threads/ThreadList.tsx b/apps/meteor/client/views/room/contextualBar/Threads/ThreadList.tsx index 9a6077c5617eb..86296174c9a3a 100644 --- a/apps/meteor/client/views/room/contextualBar/Threads/ThreadList.tsx +++ b/apps/meteor/client/views/room/contextualBar/Threads/ThreadList.tsx @@ -1,7 +1,7 @@ import type { IMessage, IThreadMainMessage } from '@rocket.chat/core-typings'; import { Box, Icon, TextInput, Select, Callout, Throbber } from '@rocket.chat/fuselage'; import { useResizeObserver, useAutoFocus, useLocalStorage, useDebouncedValue } from '@rocket.chat/fuselage-hooks'; -import { useTranslation, useUserId } from '@rocket.chat/ui-contexts'; +import { useTranslation, useUserId, useRoomToolbox } from '@rocket.chat/ui-contexts'; import type { FormEvent, ReactElement } from 'react'; import { useMemo, useState, useCallback } from 'react'; import { Virtuoso } from 'react-virtuoso'; @@ -24,7 +24,6 @@ import { AsyncStatePhase } from '../../../../lib/asyncState'; import { getErrorMessage } from '../../../../lib/errorHandling'; import type { ThreadsListOptions } from '../../../../lib/lists/ThreadsList'; import { useRoom, useRoomSubscription } from '../../contexts/RoomContext'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; import { useGoToThread } from '../../hooks/useGoToThread'; type ThreadType = 'all' | 'following' | 'unread'; diff --git a/apps/meteor/client/views/room/contextualBar/Threads/Threads.tsx b/apps/meteor/client/views/room/contextualBar/Threads/Threads.tsx index aa22e3560e5db..083b6de6d78d5 100644 --- a/apps/meteor/client/views/room/contextualBar/Threads/Threads.tsx +++ b/apps/meteor/client/views/room/contextualBar/Threads/Threads.tsx @@ -1,6 +1,7 @@ +import { useRoomToolbox } from '@rocket.chat/ui-contexts'; + import Thread from './Thread'; import ThreadList from './ThreadList'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; const Threads = () => { const { context: tmid } = useRoomToolbox(); diff --git a/apps/meteor/client/views/room/contextualBar/Threads/components/ThreadChat.tsx b/apps/meteor/client/views/room/contextualBar/Threads/components/ThreadChat.tsx index f5f766df6aa1b..ab792eef7e28a 100644 --- a/apps/meteor/client/views/room/contextualBar/Threads/components/ThreadChat.tsx +++ b/apps/meteor/client/views/room/contextualBar/Threads/components/ThreadChat.tsx @@ -1,7 +1,7 @@ import type { IMessage, IThreadMainMessage } from '@rocket.chat/core-typings'; import { isEditedMessage } from '@rocket.chat/core-typings'; import { Box, CheckBox, Field, FieldLabel, FieldRow } from '@rocket.chat/fuselage'; -import { useMethod, useTranslation, useUserPreference } from '@rocket.chat/ui-contexts'; +import { useMethod, useTranslation, useUserPreference, useRoomToolbox } from '@rocket.chat/ui-contexts'; import { useState, useEffect, useCallback, useId } from 'react'; import ThreadMessageList from './ThreadMessageList'; @@ -14,7 +14,6 @@ import ComposerContainer from '../../../composer/ComposerContainer'; import RoomComposer from '../../../composer/RoomComposer/RoomComposer'; import { useChat } from '../../../contexts/ChatContext'; import { useRoom, useRoomSubscription } from '../../../contexts/RoomContext'; -import { useRoomToolbox } from '../../../contexts/RoomToolboxContext'; import { DateListProvider } from '../../../providers/DateListProvider'; type ThreadChatProps = { diff --git a/apps/meteor/client/views/room/contextualBar/VideoConference/VideoConfList/VideoConfListWithData.tsx b/apps/meteor/client/views/room/contextualBar/VideoConference/VideoConfList/VideoConfListWithData.tsx index bfb2dfc9dc4a8..a5be773321593 100644 --- a/apps/meteor/client/views/room/contextualBar/VideoConference/VideoConfList/VideoConfListWithData.tsx +++ b/apps/meteor/client/views/room/contextualBar/VideoConference/VideoConfList/VideoConfListWithData.tsx @@ -1,3 +1,4 @@ +import { useRoomToolbox } from '@rocket.chat/ui-contexts'; import { useMemo } from 'react'; import VideoConfList from './VideoConfList'; @@ -5,7 +6,6 @@ import { useVideoConfList } from './useVideoConfList'; import { useRecordList } from '../../../../../hooks/lists/useRecordList'; import { AsyncStatePhase } from '../../../../../hooks/useAsyncState'; import { useRoom } from '../../../contexts/RoomContext'; -import { useRoomToolbox } from '../../../contexts/RoomToolboxContext'; const VideoConfListWithData = () => { const room = useRoom(); diff --git a/apps/meteor/client/views/room/contextualBar/uikit/UiKitContextualBar.tsx b/apps/meteor/client/views/room/contextualBar/uikit/UiKitContextualBar.tsx index e47c62895c640..4236e735c782d 100644 --- a/apps/meteor/client/views/room/contextualBar/uikit/UiKitContextualBar.tsx +++ b/apps/meteor/client/views/room/contextualBar/uikit/UiKitContextualBar.tsx @@ -6,6 +6,7 @@ import { contextualBarParser, UiKitContext, } from '@rocket.chat/fuselage-ui-kit'; +import { useRoomToolbox } from '@rocket.chat/ui-contexts'; import type * as UiKit from '@rocket.chat/ui-kit'; import { BlockContext } from '@rocket.chat/ui-kit'; import type { FormEvent, UIEvent } from 'react'; @@ -25,7 +26,6 @@ import { useContextualBarContextValue } from '../../../../uikit/hooks/useContext import { useUiKitActionManager } from '../../../../uikit/hooks/useUiKitActionManager'; import { useUiKitView } from '../../../../uikit/hooks/useUiKitView'; import { getButtonStyle } from '../../../modal/uikit/getButtonStyle'; -import { useRoomToolbox } from '../../contexts/RoomToolboxContext'; type UiKitContextualBarProps = { key: UiKit.ContextualBarView['id']; // force re-mount when viewId changes diff --git a/apps/meteor/client/views/room/hooks/useAppsContextualBar.spec.ts b/apps/meteor/client/views/room/hooks/useAppsContextualBar.spec.ts index ad5bcb799b674..d8e0df7bd3086 100644 --- a/apps/meteor/client/views/room/hooks/useAppsContextualBar.spec.ts +++ b/apps/meteor/client/views/room/hooks/useAppsContextualBar.spec.ts @@ -1,8 +1,8 @@ +import { useRoomToolbox } from '@rocket.chat/ui-contexts'; import { renderHook } from '@testing-library/react'; import { useAppsContextualBar } from './useAppsContextualBar'; import { useUiKitActionManager } from '../../../uikit/hooks/useUiKitActionManager'; -import { useRoomToolbox } from '../contexts/RoomToolboxContext'; jest.mock('@rocket.chat/ui-contexts', () => ({ useRouteParameter: jest.fn((param: string) => { @@ -10,14 +10,12 @@ jest.mock('@rocket.chat/ui-contexts', () => ({ if (param === 'tab') return 'app'; return undefined; }), + useRoomToolbox: jest.fn(), })); jest.mock('../../../uikit/hooks/useUiKitActionManager', () => ({ useUiKitActionManager: jest.fn(), })); -jest.mock('../contexts/RoomToolboxContext', () => ({ - useRoomToolbox: jest.fn(), -})); const mockGetInteractionPayloadByViewId = jest.fn(); const mockOn = jest.fn(); diff --git a/apps/meteor/client/views/room/hooks/useAppsContextualBar.ts b/apps/meteor/client/views/room/hooks/useAppsContextualBar.ts index 94f684727eb75..f1321561942ac 100644 --- a/apps/meteor/client/views/room/hooks/useAppsContextualBar.ts +++ b/apps/meteor/client/views/room/hooks/useAppsContextualBar.ts @@ -1,8 +1,7 @@ -import { useRouteParameter } from '@rocket.chat/ui-contexts'; +import { useRouteParameter, useRoomToolbox } from '@rocket.chat/ui-contexts'; import { useCallback, useSyncExternalStore } from 'react'; import { useUiKitActionManager } from '../../../uikit/hooks/useUiKitActionManager'; -import { useRoomToolbox } from '../contexts/RoomToolboxContext'; export const useAppsContextualBar = () => { const context = useRouteParameter('context'); diff --git a/apps/meteor/client/views/room/lib/getRoomGroup.ts b/apps/meteor/client/views/room/lib/getRoomGroup.ts index 69d86d6922e96..20c1dda4983f5 100644 --- a/apps/meteor/client/views/room/lib/getRoomGroup.ts +++ b/apps/meteor/client/views/room/lib/getRoomGroup.ts @@ -1,6 +1,5 @@ import type { RoomType, IRoom } from '@rocket.chat/core-typings'; - -import type { RoomToolboxActionConfig } from '../contexts/RoomToolboxContext'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; const groupsDict = { l: 'live', diff --git a/apps/meteor/client/views/room/providers/RoomToolboxProvider.tsx b/apps/meteor/client/views/room/providers/RoomToolboxProvider.tsx index 41e5ef4e802af..49faa788d3bf3 100644 --- a/apps/meteor/client/views/room/providers/RoomToolboxProvider.tsx +++ b/apps/meteor/client/views/room/providers/RoomToolboxProvider.tsx @@ -1,11 +1,17 @@ import { useEffectEvent, useStableArray } from '@rocket.chat/fuselage-hooks'; -import { useUserId, useSetting, useRouter, useRouteParameter, useLayoutHiddenActions } from '@rocket.chat/ui-contexts'; +import { + useUserId, + useSetting, + useRouter, + useRouteParameter, + useLayoutHiddenActions, + RoomToolboxContext, + type RoomToolboxContextValue, +} from '@rocket.chat/ui-contexts'; import type { ReactNode } from 'react'; import { useMemo } from 'react'; import { useRoom } from '../contexts/RoomContext'; -import { RoomToolboxContext } from '../contexts/RoomToolboxContext'; -import type { RoomToolboxContextValue } from '../contexts/RoomToolboxContext'; import { getRoomGroup } from '../lib/getRoomGroup'; import { useAppsRoomActions } from './hooks/useAppsRoomActions'; import { useCoreRoomActions } from './hooks/useCoreRoomActions'; diff --git a/apps/meteor/client/views/room/providers/UserCardProvider.tsx b/apps/meteor/client/views/room/providers/UserCardProvider.tsx index 2a324bfbf8bf2..146b98ffaeeae 100644 --- a/apps/meteor/client/views/room/providers/UserCardProvider.tsx +++ b/apps/meteor/client/views/room/providers/UserCardProvider.tsx @@ -1,12 +1,12 @@ import { Popover } from '@rocket.chat/fuselage'; import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; +import { useRoomToolbox } from '@rocket.chat/ui-contexts'; import type { ComponentProps, ReactNode, UIEvent } from 'react'; import { Suspense, lazy, useCallback, useMemo, useRef, useState } from 'react'; import { useOverlayTrigger } from 'react-aria'; import { useOverlayTriggerState } from 'react-stately'; import { useRoom } from '../contexts/RoomContext'; -import { useRoomToolbox } from '../contexts/RoomToolboxContext'; import { UserCardContext } from '../contexts/UserCardContext'; const UserCard = lazy(() => import('../UserCard')); diff --git a/apps/meteor/client/views/room/providers/hooks/useAppsRoomActions.ts b/apps/meteor/client/views/room/providers/hooks/useAppsRoomActions.ts index 1d91bc179a184..f56526fa8ff74 100644 --- a/apps/meteor/client/views/room/providers/hooks/useAppsRoomActions.ts +++ b/apps/meteor/client/views/room/providers/hooks/useAppsRoomActions.ts @@ -1,4 +1,5 @@ import { useToastMessageDispatch } from '@rocket.chat/ui-contexts'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { useMemo } from 'react'; import { useTranslation } from 'react-i18next'; @@ -8,7 +9,6 @@ import { useAppActionButtons } from '../../../../hooks/useAppActionButtons'; import { useApplyButtonFilters } from '../../../../hooks/useApplyButtonFilters'; import { useUiKitActionManager } from '../../../../uikit/hooks/useUiKitActionManager'; import { useRoom } from '../../contexts/RoomContext'; -import type { RoomToolboxActionConfig } from '../../contexts/RoomToolboxContext'; export const useAppsRoomActions = () => { const result = useAppActionButtons('roomAction'); diff --git a/apps/meteor/client/views/room/providers/hooks/useCoreRoomActions.ts b/apps/meteor/client/views/room/providers/hooks/useCoreRoomActions.ts index c964e9afd122a..01f890cc5428a 100644 --- a/apps/meteor/client/views/room/providers/hooks/useCoreRoomActions.ts +++ b/apps/meteor/client/views/room/providers/hooks/useCoreRoomActions.ts @@ -1,7 +1,7 @@ import { useStableArray } from '@rocket.chat/fuselage-hooks'; +import type { RoomToolboxActionConfig } from '@rocket.chat/ui-contexts'; import { roomActionHooks } from '../../../../ui'; -import type { RoomToolboxActionConfig } from '../../contexts/RoomToolboxContext'; export const useCoreRoomActions = () => { return useStableArray( diff --git a/apps/meteor/client/views/teams/contextualBar/channels/TeamsChannelsWithData.tsx b/apps/meteor/client/views/teams/contextualBar/channels/TeamsChannelsWithData.tsx index 182c5df58a698..45c3953f16fc5 100644 --- a/apps/meteor/client/views/teams/contextualBar/channels/TeamsChannelsWithData.tsx +++ b/apps/meteor/client/views/teams/contextualBar/channels/TeamsChannelsWithData.tsx @@ -1,6 +1,6 @@ import type { IRoom } from '@rocket.chat/core-typings'; import { useLocalStorage, useDebouncedValue, useEffectEvent } from '@rocket.chat/fuselage-hooks'; -import { useSetModal, usePermission, useAtLeastOnePermission } from '@rocket.chat/ui-contexts'; +import { useSetModal, usePermission, useAtLeastOnePermission, useRoomToolbox } from '@rocket.chat/ui-contexts'; import type { ChangeEvent } from 'react'; import { useCallback, useMemo, useState } from 'react'; @@ -12,7 +12,6 @@ import { AsyncStatePhase } from '../../../../lib/asyncState'; import { roomCoordinator } from '../../../../lib/rooms/roomCoordinator'; import CreateChannelWithData from '../../../../sidebar/header/CreateChannel'; import { useRoom } from '../../../room/contexts/RoomContext'; -import { useRoomToolbox } from '../../../room/contexts/RoomToolboxContext'; const TeamsChannelsWithData = () => { const room = useRoom(); diff --git a/apps/meteor/client/views/teams/contextualBar/info/TeamsInfoWithData.tsx b/apps/meteor/client/views/teams/contextualBar/info/TeamsInfoWithData.tsx index 19f0b2bf7dbc0..d834e047cc228 100644 --- a/apps/meteor/client/views/teams/contextualBar/info/TeamsInfoWithData.tsx +++ b/apps/meteor/client/views/teams/contextualBar/info/TeamsInfoWithData.tsx @@ -1,10 +1,9 @@ import { useEffectEvent } from '@rocket.chat/fuselage-hooks'; -import { usePermission } from '@rocket.chat/ui-contexts'; +import { usePermission, useRoomToolbox } from '@rocket.chat/ui-contexts'; import { useCallback, useState } from 'react'; import TeamsInfo from './TeamsInfo'; import { useRoom } from '../../../room/contexts/RoomContext'; -import { useRoomToolbox } from '../../../room/contexts/RoomToolboxContext'; import EditChannelWithData from '../../../room/contextualBar/Info/EditRoomInfo'; const TeamsInfoWithData = () => { diff --git a/packages/ui-contexts/package.json b/packages/ui-contexts/package.json index f455f4005c9fd..f510cfb9ccb4c 100644 --- a/packages/ui-contexts/package.json +++ b/packages/ui-contexts/package.json @@ -22,9 +22,11 @@ "@rocket.chat/core-typings": "workspace:^", "@rocket.chat/ddp-client": "workspace:~", "@rocket.chat/emitter": "~0.31.25", + "@rocket.chat/fuselage": "~0.68.1", "@rocket.chat/fuselage-hooks": "~0.38.1", "@rocket.chat/fuselage-tokens": "~0.33.2", "@rocket.chat/i18n": "workspace:~", + "@rocket.chat/icons": "~0.45.0", "@rocket.chat/jest-presets": "workspace:~", "@rocket.chat/rest-typings": "workspace:^", "@rocket.chat/tools": "workspace:~", diff --git a/apps/meteor/client/views/room/contexts/RoomToolboxContext.ts b/packages/ui-contexts/src/RoomToolboxContext.ts similarity index 87% rename from apps/meteor/client/views/room/contexts/RoomToolboxContext.ts rename to packages/ui-contexts/src/RoomToolboxContext.ts index fb60d516df4ce..cb6f088d86e1e 100644 --- a/apps/meteor/client/views/room/contexts/RoomToolboxContext.ts +++ b/packages/ui-contexts/src/RoomToolboxContext.ts @@ -1,9 +1,10 @@ import type { Box } from '@rocket.chat/fuselage'; import type { Keys as IconName } from '@rocket.chat/icons'; -import type { TranslationKey } from '@rocket.chat/ui-contexts'; -import { createContext, useContext } from 'react'; +import { createContext } from 'react'; import type { ReactNode, ComponentProps, ComponentType } from 'react'; +import type { TranslationKey } from './TranslationContext'; + export type RenderToolboxItemParams = RoomToolboxActionConfig & { className?: ComponentProps['className']; toolbox: RoomToolboxContextValue; @@ -43,5 +44,3 @@ export const RoomToolboxContext = createContext({ openTab: () => undefined, closeTab: () => undefined, }); - -export const useRoomToolbox = () => useContext(RoomToolboxContext); diff --git a/packages/ui-contexts/src/hooks/useRoomToolbox.ts b/packages/ui-contexts/src/hooks/useRoomToolbox.ts new file mode 100644 index 0000000000000..af6f1e70314a7 --- /dev/null +++ b/packages/ui-contexts/src/hooks/useRoomToolbox.ts @@ -0,0 +1,6 @@ +import { useContext } from 'react'; + +import type { RoomToolboxContextValue } from '../RoomToolboxContext'; +import { RoomToolboxContext } from '../RoomToolboxContext'; + +export const useRoomToolbox = (): RoomToolboxContextValue => useContext(RoomToolboxContext); diff --git a/packages/ui-contexts/src/index.ts b/packages/ui-contexts/src/index.ts index 0c8071bdad788..91a3c3eac475f 100644 --- a/packages/ui-contexts/src/index.ts +++ b/packages/ui-contexts/src/index.ts @@ -6,6 +6,7 @@ export { CustomSoundContext, CustomSoundContextValue } from './CustomSoundContex export { LayoutContext, LayoutContextValue } from './LayoutContext'; export { ModalContext, ModalContextValue } from './ModalContext'; export * from './RouterContext'; +export { RoomToolboxContext, RoomToolboxContextValue, RoomToolboxActionConfig, RenderToolboxItemParams } from './RoomToolboxContext'; export { ServerContext, ServerContextValue } from './ServerContext'; export { SessionContext, SessionContextValue } from './SessionContext'; export { SettingsContext, SettingsContextValue, SettingsContextQuery } from './SettingsContext'; @@ -57,6 +58,7 @@ export { usePermissionWithScopedRoles } from './hooks/usePermissionWithScopedRol export { useRole } from './hooks/useRole'; export { useRolesDescription } from './hooks/useRolesDescription'; export { useRoomAvatarPath } from './hooks/useRoomAvatarPath'; +export { useRoomToolbox } from './hooks/useRoomToolbox'; export { useRouter } from './hooks/useRouter'; export { useRoute } from './hooks/useRoute'; export { useRouteParameter } from './hooks/useRouteParameter'; diff --git a/yarn.lock b/yarn.lock index 129ea5d08d840..fb515e3453d53 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8708,7 +8708,7 @@ __metadata: languageName: unknown linkType: soft -"@rocket.chat/fuselage@npm:~0.68.1": +"@rocket.chat/fuselage@npm:*, @rocket.chat/fuselage@npm:~0.68.1": version: 0.68.1 resolution: "@rocket.chat/fuselage@npm:0.68.1" dependencies: @@ -8847,7 +8847,7 @@ __metadata: languageName: unknown linkType: soft -"@rocket.chat/icons@npm:~0.45.0": +"@rocket.chat/icons@npm:*, @rocket.chat/icons@npm:~0.45.0": version: 0.45.0 resolution: "@rocket.chat/icons@npm:0.45.0" checksum: 10/9e0967eba17cbef1c482616bb94cf871dfac20e92ac5fad6164cbe60bab95882d9675bf9de2c611928da6d37806a1279d671b0a3463dda0a3148cdade9291147 @@ -10394,9 +10394,11 @@ __metadata: "@rocket.chat/core-typings": "workspace:^" "@rocket.chat/ddp-client": "workspace:~" "@rocket.chat/emitter": "npm:~0.31.25" + "@rocket.chat/fuselage": "npm:*" "@rocket.chat/fuselage-hooks": "npm:~0.38.1" "@rocket.chat/fuselage-tokens": "npm:~0.33.2" "@rocket.chat/i18n": "workspace:~" + "@rocket.chat/icons": "npm:*" "@rocket.chat/jest-presets": "workspace:~" "@rocket.chat/password-policies": "workspace:^" "@rocket.chat/rest-typings": "workspace:^"