Autocomplete URLs of other requests

This commit is contained in:
Gregory Schier
2024-05-13 23:54:52 -07:00
parent 0b494bbfbf
commit 8de917ea5e
5 changed files with 32 additions and 15 deletions

View File

@@ -39,6 +39,8 @@ import { HeadersEditor } from './HeadersEditor';
import { UrlBar } from './UrlBar';
import { UrlParametersEditor } from './UrlParameterEditor';
import { useImportCurl } from '../hooks/useImportCurl';
import { useRequests } from '../hooks/useRequests';
import type { GenericCompletionOption } from './core/Editor/genericCompletion';
interface Props {
style: CSSProperties;
@@ -55,6 +57,7 @@ export const RequestPane = memo(function RequestPane({
className,
activeRequest,
}: Props) {
const requests = useRequests();
const activeRequestId = activeRequest.id;
const updateRequest = useUpdateHttpRequest(activeRequestId);
const [activeTab, setActiveTab] = useActiveTab();
@@ -250,6 +253,24 @@ export const RequestPane = memo(function RequestPane({
}
importCurl.mutate({ requestId: activeRequestId, command });
}}
autocomplete={{
minMatch: 3,
options:
requests.length > 0
? [
...requests.map(
(r) =>
({
type: 'constant',
label: r.url,
} as GenericCompletionOption),
),
]
: [
{ label: 'http://', type: 'constant' },
{ label: 'https://', type: 'constant' },
],
}}
onSend={handleSend}
onCancel={handleCancel}
onMethodChange={handleMethodChange}