From f159ba73779c5967fdb5f6723ad38b27944092a2 Mon Sep 17 00:00:00 2001 From: dougfabris Date: Wed, 24 Mar 2021 15:47:18 -0300 Subject: [PATCH 1/5] add threads on teams and headers items positions --- app/discussion/client/tabBar.ts | 2 +- app/threads/client/flextab/threadlist.tsx | 4 ++-- .../views/teams/contextualBar/{index.ts => tabBar.ts} | 10 +++++----- client/views/teams/index.js | 2 +- client/views/teams/info/tabBar.ts | 2 +- client/views/teams/members/tabBar.ts | 2 +- 6 files changed, 11 insertions(+), 11 deletions(-) rename client/views/teams/contextualBar/{index.ts => tabBar.ts} (69%) diff --git a/app/discussion/client/tabBar.ts b/app/discussion/client/tabBar.ts index bcdfb59b80347..14bfe145c4386 100644 --- a/app/discussion/client/tabBar.ts +++ b/app/discussion/client/tabBar.ts @@ -15,6 +15,6 @@ addAction('discussions', () => { icon: 'discussion', template, full: true, - order: 1, + order: 7, } : null), [discussionEnabled]); }); diff --git a/app/threads/client/flextab/threadlist.tsx b/app/threads/client/flextab/threadlist.tsx index 45bf968663312..75650d3dd6caa 100644 --- a/app/threads/client/flextab/threadlist.tsx +++ b/app/threads/client/flextab/threadlist.tsx @@ -22,7 +22,7 @@ addAction('thread', (options) => { const room = options.room as unknown as ISubscription; const threadsEnabled = useSetting('Threads_enabled'); return useMemo(() => (threadsEnabled ? { - groups: ['channel', 'group', 'direct'], + groups: ['channel', 'group', 'direct', 'team'], id: 'thread', full: true, title: 'Threads', @@ -35,6 +35,6 @@ addAction('thread', (options) => { { unread > 0 && {unread} } ; }, - order: 2, + order: 4, } : null), [threadsEnabled, room.tunread?.length, room.tunreadUser?.length, room.tunreadGroup?.length]); }); diff --git a/client/views/teams/contextualBar/index.ts b/client/views/teams/contextualBar/tabBar.ts similarity index 69% rename from client/views/teams/contextualBar/index.ts rename to client/views/teams/contextualBar/tabBar.ts index d2633b51a8615..d2f359a09f756 100644 --- a/client/views/teams/contextualBar/index.ts +++ b/client/views/teams/contextualBar/tabBar.ts @@ -1,14 +1,14 @@ -import { lazy, LazyExoticComponent, FC } from 'react'; +import { FC, lazy, LazyExoticComponent } from 'react'; import { addAction } from '../../room/lib/Toolbox'; -addAction('team-channels', () => ({ +addAction('team-channels', { groups: ['team'], id: 'team-channels', anonymous: true, + full: true, title: 'Team_Channels', icon: 'hash', template: lazy(() => import('./TeamChannels')) as LazyExoticComponent, - full: true, - order: 8, -})); + order: 2, +}); diff --git a/client/views/teams/index.js b/client/views/teams/index.js index 9a2bd377992cb..b97eb784c4cd6 100644 --- a/client/views/teams/index.js +++ b/client/views/teams/index.js @@ -1,4 +1,4 @@ -import './contextualBar'; +import './contextualBar/tabBar'; import './info/tabBar.ts'; import './members/tabBar'; import './info'; diff --git a/client/views/teams/info/tabBar.ts b/client/views/teams/info/tabBar.ts index 9202bb9f91ae2..ee8a103aa1023 100644 --- a/client/views/teams/info/tabBar.ts +++ b/client/views/teams/info/tabBar.ts @@ -10,5 +10,5 @@ addAction('team-info', { title: 'Teams_Info', icon: 'info-circled', template: lazy(() => import('./index.js')) as LazyExoticComponent, - order: 7, + order: 1, }); diff --git a/client/views/teams/members/tabBar.ts b/client/views/teams/members/tabBar.ts index 9495adf19ed74..2f8493f7ce851 100644 --- a/client/views/teams/members/tabBar.ts +++ b/client/views/teams/members/tabBar.ts @@ -10,5 +10,5 @@ addAction('team-members', { title: 'Teams_members', icon: 'members', template: lazy(() => import('./index')), - order: 7, + order: 6, }); From 04486ab748f83d2934c4db89cc0a6ed03c40f943 Mon Sep 17 00:00:00 2001 From: dougfabris Date: Wed, 24 Mar 2021 17:35:25 -0300 Subject: [PATCH 2/5] add click to view room --- .../List => }/hooks/usePreventProgation.tsx | 0 .../contextualBar/Info/RoomInfo/RoomInfo.js | 5 ++- client/views/room/contextualBar/Info/index.js | 6 +-- .../RoomMembers/List/components/MemberItem.js | 2 +- .../teams/contextualBar/TeamChannelItem.js | 9 ++++- .../views/teams/contextualBar/TeamChannels.js | 40 +++++++++++++++---- 6 files changed, 48 insertions(+), 14 deletions(-) rename client/{views/room/contextualBar/RoomMembers/List => }/hooks/usePreventProgation.tsx (100%) diff --git a/client/views/room/contextualBar/RoomMembers/List/hooks/usePreventProgation.tsx b/client/hooks/usePreventProgation.tsx similarity index 100% rename from client/views/room/contextualBar/RoomMembers/List/hooks/usePreventProgation.tsx rename to client/hooks/usePreventProgation.tsx diff --git a/client/views/room/contextualBar/Info/RoomInfo/RoomInfo.js b/client/views/room/contextualBar/Info/RoomInfo/RoomInfo.js index f76b254196743..90769b2774b1d 100644 --- a/client/views/room/contextualBar/Info/RoomInfo/RoomInfo.js +++ b/client/views/room/contextualBar/Info/RoomInfo/RoomInfo.js @@ -49,6 +49,7 @@ export const RoomInfo = function RoomInfo({ rid, icon, retentionPolicy = {}, + onClickBack, onClickHide, onClickClose, onClickLeave, @@ -127,7 +128,7 @@ export const RoomInfo = function RoomInfo({ return ( <> - + {onClickBack ? : } {t('Room_Info')} { onClickClose && } @@ -189,6 +190,7 @@ export const RoomInfo = function RoomInfo({ export default ({ rid, openEditing, + onClickBack, }) => { const onClickClose = useTabBarClose(); const t = useTranslation(); @@ -334,6 +336,7 @@ export default ({ broadcast={broadcast} icon={room.t === 'p' ? 'lock' : 'hashtag'} retentionPolicy={retentionPolicyEnabled && retentionPolicy} + onClickBack={onClickBack} onClickEdit={canEdit && openEditing} onClickClose={onClickClose} onClickDelete={canDelete && handleDelete} diff --git a/client/views/room/contextualBar/Info/index.js b/client/views/room/contextualBar/Info/index.js index 40f9e52914fab..d81105659cb91 100644 --- a/client/views/room/contextualBar/Info/index.js +++ b/client/views/room/contextualBar/Info/index.js @@ -4,8 +4,8 @@ import React, { useState } from 'react'; import EditChannelWithData from './EditRoomInfo'; import RoomInfo from './RoomInfo'; -export default ({ rid }) => { +export default ({ rid, onClickBack }) => { const [editing, setEditing] = useState(false); - const onClickBack = useMutableCallback(() => setEditing(false)); - return editing ? : ; + const backToView = useMutableCallback(() => setEditing(false)); + return editing ? : ; }; diff --git a/client/views/room/contextualBar/RoomMembers/List/components/MemberItem.js b/client/views/room/contextualBar/RoomMembers/List/components/MemberItem.js index b7ef8063c4526..fd470fbf404a2 100644 --- a/client/views/room/contextualBar/RoomMembers/List/components/MemberItem.js +++ b/client/views/room/contextualBar/RoomMembers/List/components/MemberItem.js @@ -11,7 +11,7 @@ import { useUserInfoActions } from '../../../../hooks/useUserInfoActions'; import { useActionSpread } from '../../../../../hooks/useActionSpread'; import UserAvatar from '../../../../../../components/avatar/UserAvatar'; import { ReactiveUserStatus } from '../../../../../../components/UserStatus'; -import { usePreventProgation } from '../hooks/usePreventProgation'; +import { usePreventProgation } from '../../../../../../hooks/usePreventProgation'; const UserActions = ({ username, _id, rid }) => { const { menu: menuOptions } = useActionSpread(useUserInfoActions({ _id, username }, rid), 0); diff --git a/client/views/teams/contextualBar/TeamChannelItem.js b/client/views/teams/contextualBar/TeamChannelItem.js index 495fde584a8c3..dd6beb19800b3 100644 --- a/client/views/teams/contextualBar/TeamChannelItem.js +++ b/client/views/teams/contextualBar/TeamChannelItem.js @@ -8,6 +8,7 @@ import { useSetModal } from '../../../contexts/ModalContext'; import RoomAvatar from '../../../components/avatar/RoomAvatar'; import ConfirmationModal from '../modals/ConfirmationModal'; import { roomTypes } from '../../../../app/utils/client'; +import { usePreventProgation } from '../../../hooks/usePreventProgation'; export const useReactModal = (Component, props) => { const setModal = useSetModal(); @@ -92,23 +93,27 @@ const RoomActions = ({ room }) => { />; }; -export const TeamChannelItem = ({ room }) => { +export const TeamChannelItem = ({ room, onClickView }) => { const [showButton, setShowButton] = useState(); const isReduceMotionEnabled = usePrefersReducedMotion(); const handleMenuEvent = { [isReduceMotionEnabled ? 'onMouseEnter' : 'onTransitionEnd']: setShowButton }; + const onClick = usePreventProgation(); + return (