Fix hotkeys for tasks page (#1034)

- fix hotkeys for tasks
This commit is contained in:
brendanlaschke
2023-08-02 07:11:07 +02:00
committed by GitHub
parent 991cadbe48
commit 0ad35549ac
5 changed files with 17 additions and 3 deletions

View File

@ -49,6 +49,7 @@ export function AppNavbar() {
<NavItem
label="Tasks"
to="/tasks"
active={currentPath === '/tasks'}
icon={<IconCheckbox size={theme.icon.size.md} />}
/>
<NavTitle label="Workspace" />

View File

@ -98,6 +98,11 @@ export function CommandMenu() {
label: 'Go to Settings',
shortcuts: ['G', 'S'],
},
{
to: '/tasks',
label: 'Go to Tasks',
shortcuts: ['G', 'T'],
},
];
const matchingCommand = commands.find(
@ -162,7 +167,6 @@ export function CommandMenu() {
{matchingCommand && (
<StyledGroup heading="Navigate">
<CommandMenuItem
key={matchingCommand.shortcuts?.join('')}
to={matchingCommand.to}
label={matchingCommand.label}
shortcuts={matchingCommand.shortcuts}
@ -222,8 +226,10 @@ export function CommandMenu() {
{!matchingCommand && (
<StyledGroup heading="Navigate">
{commands
.filter((cmd) =>
cmd.shortcuts?.join('').includes(search?.toUpperCase()),
.filter(
(cmd) =>
cmd.shortcuts?.join('').includes(search?.toUpperCase()) ||
cmd.label?.toUpperCase().includes(search?.toUpperCase()),
)
.map((cmd) => (
<CommandMenuItem

View File

@ -11,4 +11,5 @@ export enum PageHotkeyScope {
OpportunitiesPage = 'opportunities-page',
ProfilePage = 'profile-page',
WorkspaceMemberPage = 'workspace-member-page',
TaskPage = 'task-page',
}

View File

@ -91,6 +91,11 @@ export function AuthAutoRouter() {
setHotkeyScope(PageHotkeyScope.OpportunitiesPage, { goto: true });
break;
}
case isMatchingLocation(AppPath.TasksPage): {
setHotkeyScope(PageHotkeyScope.TaskPage, { goto: true });
break;
}
case isMatchingLocation(AppPath.SignIn): {
setHotkeyScope(PageHotkeyScope.SignInUp);
break;

View File

@ -5,6 +5,7 @@ export function GotoHotkeysHooks() {
useGoToHotkeys('c', '/companies');
useGoToHotkeys('o', '/opportunities');
useGoToHotkeys('s', '/settings/profile');
useGoToHotkeys('t', '/tasks');
return <></>;
}