RocketChat/Rocket.Chat

View on GitHub
apps/meteor/client/views/admin/sidebar/AdminSidebar.tsx

Summary

Maintainability
A
0 mins
Test Coverage
import { useTranslation, useLayout, useCurrentRoutePath } from '@rocket.chat/ui-contexts';
import React, { memo } from 'react';

import PlanTag from '../../../components/PlanTag';
import Sidebar from '../../../components/Sidebar';
import SettingsProvider from '../../../providers/SettingsProvider';
import AdminSidebarPages from './AdminSidebarPages';

const AdminSidebar = () => {
    const t = useTranslation();

    const { sidebar } = useLayout();

    const currentPath = useCurrentRoutePath();

    // TODO: uplift this provider
    return (
        <SettingsProvider privileged>
            <Sidebar>
                <Sidebar.Header
                    onClose={sidebar.close}
                    title={
                        <>
                            {t('Administration')} <PlanTag />
                        </>
                    }
                />
                <Sidebar.Content>
                    <AdminSidebarPages currentPath={currentPath || ''} />
                </Sidebar.Content>
            </Sidebar>
        </SettingsProvider>
    );
};

export default memo(AdminSidebar);