Tweak schema menu

This commit is contained in:
Gregory Schier
2024-11-16 15:17:26 -08:00
parent ff9abab547
commit 23c026126f
2 changed files with 9 additions and 9 deletions
+4 -7
View File
@@ -65,11 +65,7 @@ export function GraphQLEditor({ body, onChange, baseRequest, ...extraEditorProps
const actions = useMemo<EditorProps['actions']>( const actions = useMemo<EditorProps['actions']>(
() => [ () => [
<div key="introspection" className="!opacity-100"> <div key="introspection" className="!opacity-100">
{isLoading ? ( {schema === undefined ? null /* Initializing */ : !error ? (
<Button size="sm" variant="border" onClick={refetch} isLoading>
{isLoading ? 'Introspecting' : 'Schema'}
</Button>
) : !error ? (
<Dropdown <Dropdown
items={[ items={[
{ {
@@ -112,9 +108,10 @@ export function GraphQLEditor({ body, onChange, baseRequest, ...extraEditorProps
size="sm" size="sm"
variant="border" variant="border"
title="Refetch Schema" title="Refetch Schema"
color={schema ? 'default' : 'warning'} isLoading={isLoading}
color={isLoading || schema ? 'default' : 'warning'}
> >
{schema ? 'Schema' : 'No Schema'} {isLoading ? 'Introspecting' : schema ? 'Schema' : 'No Schema'}
</Button> </Button>
</Dropdown> </Dropdown>
) : ( ) : (
+4 -1
View File
@@ -85,8 +85,11 @@ export function useIntrospectGraphQL(
}, [setIntrospection]); }, [setIntrospection]);
const schema = useMemo(() => { const schema = useMemo(() => {
if (introspection == null) {
return introspection;
}
try { try {
return introspection ? buildClientSchema(introspection) : undefined; return buildClientSchema(introspection);
// eslint-disable-next-line @typescript-eslint/no-explicit-any // eslint-disable-next-line @typescript-eslint/no-explicit-any
} catch (e: any) { } catch (e: any) {
setError('message' in e ? e.message : String(e)); setError('message' in e ? e.message : String(e));