mirror of
https://github.com/mountain-loop/yaak.git
synced 2026-04-24 09:48:28 +02:00
Cmd jump to request
This commit is contained in:
3
.github/workflows/release.yml
vendored
3
.github/workflows/release.yml
vendored
@@ -5,8 +5,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-artifacts:
|
build-artifacts:
|
||||||
permissions:
|
permissions: write-all
|
||||||
contents: write
|
|
||||||
name: Build
|
name: Build
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
|
|||||||
@@ -111,7 +111,7 @@ export function GrpcConnectionLayout({ style }: Props) {
|
|||||||
) : messages.length >= 0 ? (
|
) : messages.length >= 0 ? (
|
||||||
<GrpcConnectionMessagesPane activeRequest={activeRequest} methodType={methodType} />
|
<GrpcConnectionMessagesPane activeRequest={activeRequest} methodType={methodType} />
|
||||||
) : (
|
) : (
|
||||||
<HotKeyList hotkeys={['grpc_request.send', 'sidebar.toggle', 'urlBar.focus']} />
|
<HotKeyList hotkeys={['grpc_request.send', 'sidebar.focus', 'urlBar.focus']} />
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ export const ResponsePane = memo(function ResponsePane({ style, className, activ
|
|||||||
>
|
>
|
||||||
{activeResponse == null ? (
|
{activeResponse == null ? (
|
||||||
<HotKeyList
|
<HotKeyList
|
||||||
hotkeys={['http_request.send', 'http_request.create', 'sidebar.toggle', 'urlBar.focus']}
|
hotkeys={['http_request.send', 'http_request.create', 'sidebar.focus', 'urlBar.focus']}
|
||||||
/>
|
/>
|
||||||
) : isResponseLoading(activeResponse) ? (
|
) : isResponseLoading(activeResponse) ? (
|
||||||
<div className="h-full w-full flex items-center justify-center">
|
<div className="h-full w-full flex items-center justify-center">
|
||||||
|
|||||||
@@ -159,6 +159,20 @@ export function Sidebar({ className }: Props) {
|
|||||||
return { tree, treeParentMap, selectableRequests, selectedRequest };
|
return { tree, treeParentMap, selectableRequests, selectedRequest };
|
||||||
}, [activeWorkspace, selectedId, requests, folders, collapsed.value]);
|
}, [activeWorkspace, selectedId, requests, folders, collapsed.value]);
|
||||||
|
|
||||||
|
const jumpToRequest = async (index: number) => {
|
||||||
|
const r = selectableRequests[index];
|
||||||
|
if (r != null) await handleSelect(r.id);
|
||||||
|
};
|
||||||
|
|
||||||
|
useHotKey('sidebar.jump_1', () => jumpToRequest(0));
|
||||||
|
useHotKey('sidebar.jump_2', () => jumpToRequest(1));
|
||||||
|
useHotKey('sidebar.jump_3', () => jumpToRequest(2));
|
||||||
|
useHotKey('sidebar.jump_4', () => jumpToRequest(3));
|
||||||
|
useHotKey('sidebar.jump_5', () => jumpToRequest(4));
|
||||||
|
useHotKey('sidebar.jump_6', () => jumpToRequest(5));
|
||||||
|
useHotKey('sidebar.jump_7', () => jumpToRequest(6));
|
||||||
|
useHotKey('sidebar.jump_8', () => jumpToRequest(7));
|
||||||
|
|
||||||
const focusActiveRequest = useCallback(
|
const focusActiveRequest = useCallback(
|
||||||
(
|
(
|
||||||
args: {
|
args: {
|
||||||
|
|||||||
@@ -31,7 +31,6 @@ export function SidebarActions() {
|
|||||||
className="pointer-events-auto"
|
className="pointer-events-auto"
|
||||||
size="sm"
|
size="sm"
|
||||||
title="Show sidebar"
|
title="Show sidebar"
|
||||||
hotkeyAction="sidebar.toggle"
|
|
||||||
icon={hidden ? 'leftPanelHidden' : 'leftPanelVisible'}
|
icon={hidden ? 'leftPanelHidden' : 'leftPanelVisible'}
|
||||||
/>
|
/>
|
||||||
<CreateDropdown hotKeyAction="http_request.create">
|
<CreateDropdown hotKeyAction="http_request.create">
|
||||||
|
|||||||
@@ -186,7 +186,7 @@ export default function Workspace() {
|
|||||||
</div>
|
</div>
|
||||||
) : activeRequest == null ? (
|
) : activeRequest == null ? (
|
||||||
<HotKeyList
|
<HotKeyList
|
||||||
hotkeys={['http_request.create', 'sidebar.toggle', 'settings.show']}
|
hotkeys={['http_request.create', 'sidebar.focus', 'settings.show']}
|
||||||
bottomSlot={
|
bottomSlot={
|
||||||
<HStack space={1} justifyContent="center" className="mt-3">
|
<HStack space={1} justifyContent="center" className="mt-3">
|
||||||
<Button variant="border" size="sm" onClick={() => importData.mutate()}>
|
<Button variant="border" size="sm" onClick={() => importData.mutate()}>
|
||||||
|
|||||||
@@ -18,7 +18,14 @@ export type HotkeyAction =
|
|||||||
| 'request_switcher.toggle'
|
| 'request_switcher.toggle'
|
||||||
| 'settings.show'
|
| 'settings.show'
|
||||||
| 'sidebar.focus'
|
| 'sidebar.focus'
|
||||||
| 'sidebar.toggle'
|
| 'sidebar.jump_1'
|
||||||
|
| 'sidebar.jump_2'
|
||||||
|
| 'sidebar.jump_3'
|
||||||
|
| 'sidebar.jump_4'
|
||||||
|
| 'sidebar.jump_5'
|
||||||
|
| 'sidebar.jump_6'
|
||||||
|
| 'sidebar.jump_7'
|
||||||
|
| 'sidebar.jump_8'
|
||||||
| 'urlBar.focus'
|
| 'urlBar.focus'
|
||||||
| 'command_palette.toggle'
|
| 'command_palette.toggle'
|
||||||
| 'app.zoom_in'
|
| 'app.zoom_in'
|
||||||
@@ -36,8 +43,15 @@ const hotkeys: Record<HotkeyAction, string[]> = {
|
|||||||
'request_switcher.prev': ['Control+Tab'],
|
'request_switcher.prev': ['Control+Tab'],
|
||||||
'request_switcher.toggle': ['CmdCtrl+p'],
|
'request_switcher.toggle': ['CmdCtrl+p'],
|
||||||
'settings.show': ['CmdCtrl+,'],
|
'settings.show': ['CmdCtrl+,'],
|
||||||
'sidebar.focus': ['CmdCtrl+1'],
|
'sidebar.focus': ['CmdCtrl+b'],
|
||||||
'sidebar.toggle': ['CmdCtrl+b'],
|
'sidebar.jump_1': ['CmdCtrl+1'],
|
||||||
|
'sidebar.jump_2': ['CmdCtrl+2'],
|
||||||
|
'sidebar.jump_3': ['CmdCtrl+3'],
|
||||||
|
'sidebar.jump_4': ['CmdCtrl+4'],
|
||||||
|
'sidebar.jump_5': ['CmdCtrl+5'],
|
||||||
|
'sidebar.jump_6': ['CmdCtrl+6'],
|
||||||
|
'sidebar.jump_7': ['CmdCtrl+7'],
|
||||||
|
'sidebar.jump_8': ['CmdCtrl+8'],
|
||||||
'urlBar.focus': ['CmdCtrl+l'],
|
'urlBar.focus': ['CmdCtrl+l'],
|
||||||
'command_palette.toggle': ['CmdCtrl+k'],
|
'command_palette.toggle': ['CmdCtrl+k'],
|
||||||
'app.zoom_in': ['CmdCtrl+='],
|
'app.zoom_in': ['CmdCtrl+='],
|
||||||
@@ -56,8 +70,15 @@ const hotkeyLabels: Record<HotkeyAction, string> = {
|
|||||||
'request_switcher.prev': 'Go To Next Request',
|
'request_switcher.prev': 'Go To Next Request',
|
||||||
'request_switcher.toggle': 'Toggle Request Switcher',
|
'request_switcher.toggle': 'Toggle Request Switcher',
|
||||||
'settings.show': 'Open Settings',
|
'settings.show': 'Open Settings',
|
||||||
'sidebar.focus': 'Focus Sidebar',
|
'sidebar.focus': 'Focus or Toggle Sidebar',
|
||||||
'sidebar.toggle': 'Toggle Sidebar',
|
'sidebar.jump_1': 'Jump to request 1',
|
||||||
|
'sidebar.jump_2': 'Jump to request 2',
|
||||||
|
'sidebar.jump_3': 'Jump to request 3',
|
||||||
|
'sidebar.jump_4': 'Jump to request 4',
|
||||||
|
'sidebar.jump_5': 'Jump to request 5',
|
||||||
|
'sidebar.jump_6': 'Jump to request 6',
|
||||||
|
'sidebar.jump_7': 'Jump to request 7',
|
||||||
|
'sidebar.jump_8': 'Jump to request 8',
|
||||||
'urlBar.focus': 'Focus URL',
|
'urlBar.focus': 'Focus URL',
|
||||||
'command_palette.toggle': 'Toggle Command Palette',
|
'command_palette.toggle': 'Toggle Command Palette',
|
||||||
'app.zoom_in': 'Zoom In',
|
'app.zoom_in': 'Zoom In',
|
||||||
|
|||||||
Reference in New Issue
Block a user