mirror of
https://github.com/mountain-loop/yaak.git
synced 2026-04-17 14:29:46 +02:00
Fix sending of ephemeral requests
This commit is contained in:
@@ -7,6 +7,7 @@ import type { HttpRequest } from '../lib/models';
|
|||||||
import { getResponseBodyText } from '../lib/responseBody';
|
import { getResponseBodyText } from '../lib/responseBody';
|
||||||
import { sendEphemeralRequest } from '../lib/sendEphemeralRequest';
|
import { sendEphemeralRequest } from '../lib/sendEphemeralRequest';
|
||||||
import { useDebouncedValue } from './useDebouncedValue';
|
import { useDebouncedValue } from './useDebouncedValue';
|
||||||
|
import { useActiveEnvironmentId } from './useActiveEnvironmentId';
|
||||||
|
|
||||||
const introspectionRequestBody = JSON.stringify({
|
const introspectionRequestBody = JSON.stringify({
|
||||||
query: getIntrospectionQuery(),
|
query: getIntrospectionQuery(),
|
||||||
@@ -17,6 +18,7 @@ export function useIntrospectGraphQL(baseRequest: HttpRequest) {
|
|||||||
// Debounce the request because it can change rapidly and we don't
|
// Debounce the request because it can change rapidly and we don't
|
||||||
// want to send so too many requests.
|
// want to send so too many requests.
|
||||||
const request = useDebouncedValue(baseRequest);
|
const request = useDebouncedValue(baseRequest);
|
||||||
|
const activeEnvironmentId = useActiveEnvironmentId();
|
||||||
const [refetchKey, setRefetchKey] = useState<number>(0);
|
const [refetchKey, setRefetchKey] = useState<number>(0);
|
||||||
const [isLoading, setIsLoading] = useState<boolean>(false);
|
const [isLoading, setIsLoading] = useState<boolean>(false);
|
||||||
const [error, setError] = useState<string>();
|
const [error, setError] = useState<string>();
|
||||||
@@ -31,7 +33,7 @@ export function useIntrospectGraphQL(baseRequest: HttpRequest) {
|
|||||||
setIsLoading(true);
|
setIsLoading(true);
|
||||||
setError(undefined);
|
setError(undefined);
|
||||||
const args = { ...baseRequest, body: introspectionRequestBody };
|
const args = { ...baseRequest, body: introspectionRequestBody };
|
||||||
const response = await minPromiseMillis(sendEphemeralRequest(args), 700);
|
const response = await minPromiseMillis(sendEphemeralRequest(args, activeEnvironmentId), 700);
|
||||||
|
|
||||||
if (response.error) {
|
if (response.error) {
|
||||||
return Promise.reject(new Error(response.error));
|
return Promise.reject(new Error(response.error));
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import { invoke } from '@tauri-apps/api';
|
import { invoke } from '@tauri-apps/api';
|
||||||
import type { HttpRequest, HttpResponse } from './models';
|
import type { HttpRequest, HttpResponse } from './models';
|
||||||
|
|
||||||
export async function sendEphemeralRequest(request: HttpRequest): Promise<HttpResponse> {
|
export async function sendEphemeralRequest(request: HttpRequest, environmentId: string | null): Promise<HttpResponse> {
|
||||||
// Remove some things that we don't want to associate
|
// Remove some things that we don't want to associate
|
||||||
const newRequest = { ...request, id: '', requestId: '', workspaceId: '' };
|
const newRequest = { ...request, id: '', requestId: '', workspaceId: '' };
|
||||||
return invoke('send_ephemeral_request', { request: newRequest });
|
return invoke('send_ephemeral_request', { request: newRequest, environmentId });
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user