From 261f3bdb77799009344aab4a60686b7186ebd3b0 Mon Sep 17 00:00:00 2001
From: "netop://ウィビ" <paul@webb.page>
Date: Fri, 24 Apr 2026 14:17:38 -0700
Subject: Implement v0.4 subscriptions + v0.5 theming and plugin slots

- SSE and WebSocket fetchers via graphql-sse and graphql-ws,
  returning AsyncIterable results
- SessionStore.run consumes AsyncIterable streams with
  subscriptionMode "append" (timestamped) or "replace" and
  honors an AbortSignal for cancellation
- Chrome CSS variables documented in styles/theme.scss with
  prefers-color-scheme light/dark gating and .graphiql-light override
- Svelte 5 snippet slots on GraphiQL: toolbarExtras, tabExtras,
  resultFooter
---
 source/library/components/Toolbar.svelte | 4 ++++
 1 file changed, 4 insertions(+)

(limited to 'source/library/components/Toolbar.svelte')

diff --git a/source/library/components/Toolbar.svelte b/source/library/components/Toolbar.svelte
index a17191c..8c75668 100644
--- a/source/library/components/Toolbar.svelte
+++ b/source/library/components/Toolbar.svelte
@@ -1,10 +1,12 @@
 <script lang="ts">
   import type { OperationInfo } from "../graphql/operations.ts";
+  import type { Snippet } from "svelte";
 
   type Props = {
     disabled: boolean;
     docsAvailable?: boolean;
     docsOpen?: boolean;
+    extras?: Snippet;
     historyOpen?: boolean;
     onRun: () => void;
     onSelectOperation?: (name: string | null) => void;
@@ -20,6 +22,7 @@
     disabled,
     docsAvailable = false,
     docsOpen = false,
+    extras,
     historyOpen = false,
     onRun,
     onSelectOperation,
@@ -125,6 +128,7 @@
       {/each}
     </select>
   {/if}
+  {#if extras}{@render extras()}{/if}
   <span class="hint">⌘/Ctrl + Enter</span>
   {#if schemaLoading}
     <span class="hint">Loading schema…</span>
-- 
cgit v1.2.3

