@aphrody/m3-ai 3.3.2 → 3.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/README.md +29 -7
  2. package/dist/A2APeerInspector.d.ts +41 -0
  3. package/dist/A2APeerInspector.d.ts.map +1 -0
  4. package/dist/A2ATaskTimeline.d.ts +28 -0
  5. package/dist/A2ATaskTimeline.d.ts.map +1 -0
  6. package/dist/AgUiEventStream.d.ts +87 -0
  7. package/dist/AgUiEventStream.d.ts.map +1 -0
  8. package/dist/GeminiAccountMenu.d.ts +55 -0
  9. package/dist/GeminiAccountMenu.d.ts.map +1 -0
  10. package/dist/GeminiPersonalContextEdit.d.ts +29 -0
  11. package/dist/GeminiPersonalContextEdit.d.ts.map +1 -0
  12. package/dist/GoogleSpotlightBar.d.ts +32 -0
  13. package/dist/GoogleSpotlightBar.d.ts.map +1 -0
  14. package/dist/Markdown.d.ts +2 -1
  15. package/dist/Markdown.d.ts.map +1 -1
  16. package/dist/McpAppCard.d.ts +24 -0
  17. package/dist/McpAppCard.d.ts.map +1 -0
  18. package/dist/ModelSelector.d.ts.map +1 -1
  19. package/dist/TaskRow.d.ts.map +1 -1
  20. package/dist/ToolCall.d.ts.map +1 -1
  21. package/dist/index.d.ts +15 -0
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +3629 -1950
  24. package/dist/index.js.map +32 -1
  25. package/package.json +17 -20
  26. package/src/A2APeerInspector.tsx +370 -0
  27. package/src/A2ATaskTimeline.tsx +218 -0
  28. package/src/AgUiEventStream.ts +492 -0
  29. package/src/ChatComposer.tsx +261 -0
  30. package/src/ConversationList.tsx +207 -0
  31. package/src/GeminiAccountMenu.tsx +212 -0
  32. package/src/GeminiPersonalContextEdit.tsx +147 -0
  33. package/src/GoogleSpotlightBar.tsx +165 -0
  34. package/src/InlineBranchCard.tsx +97 -0
  35. package/src/InlineWorkerCard.tsx +182 -0
  36. package/src/Markdown.tsx +769 -0
  37. package/src/McpAppCard.tsx +161 -0
  38. package/src/MemoryPanel.tsx +176 -0
  39. package/src/MessageBubble.tsx +143 -0
  40. package/src/ModelSelector.tsx +319 -0
  41. package/src/ModelUnavailable.tsx +116 -0
  42. package/src/TaskCreateForm.tsx +123 -0
  43. package/src/TaskDetail.tsx +224 -0
  44. package/src/TaskList.tsx +136 -0
  45. package/src/TaskPriorityIcon.tsx +39 -0
  46. package/src/TaskRow.tsx +177 -0
  47. package/src/TaskStatusIcon.tsx +39 -0
  48. package/src/ToolCall.tsx +644 -0
  49. package/src/chatIcons.tsx +105 -0
  50. package/src/chatLabels.ts +243 -0
  51. package/src/citations.tsx +286 -0
  52. package/src/index.ts +173 -0
  53. package/src/internal.tsx +107 -0
  54. package/src/openaiChatStream.ts +400 -0
  55. package/src/types.ts +212 -0
  56. package/src/useOpenAIChat.ts +126 -0
package/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  Material Design 3 components for agent interfaces: tool-call cards, markdown, chat bubbles, the
4
4
  chat composer, model selector, worker and branch cards, and the task board. They are the SpaceUI
5
5
  `@spacedrive/ai` set, rebuilt on `@aphrody/m3-primitives`, the M3 color roles, typescale, shapes
6
- and motion of aphrody-os, and Material Symbols icons.
6
+ and motion of Aphrody OS, and Material Symbols icons.
7
7
 
8
8
  ## Install
9
9
 
@@ -17,7 +17,7 @@ Peers: `react` and `react-dom` 18 or 19, `tailwindcss` 4.1+.
17
17
 
18
18
  The components ship Tailwind class names that use the M3 utilities of `@aphrody/m3-theme`. Import
19
19
  the tokens, a palette sheet and the M3 utilities, then let Tailwind scan the package output. The
20
- full recipe is in [`docs/design/SPACEUI-M3-FUSION.md`](../../docs/design/SPACEUI-M3-FUSION.md),
20
+ full recipe is in [`docs/design/SPACEUI-M3-FUSION.md`](../../docs/architecture/design/SPACEUI-M3-FUSION.md),
21
21
  section "Integration":
22
22
 
23
23
  ```css
@@ -41,11 +41,11 @@ import type { ToolCallPair } from "@aphrody/m3-ai";
41
41
 
42
42
  const pair: ToolCallPair = {
43
43
  id: "1",
44
- name: "shell",
45
- argsRaw: '{"command":"ls"}',
46
- args: { command: "ls" },
47
- resultRaw: '{"exit_code":0,"stdout":"README.md"}',
48
- result: { exit_code: 0, stdout: "README.md" },
44
+ name: "file_read",
45
+ argsRaw: '{"path":"README.md"}',
46
+ args: { path: "README.md" },
47
+ resultRaw: '{"text":"# Aphrody"}',
48
+ result: { text: "# Aphrody" },
49
49
  status: "completed",
50
50
  };
51
51
 
@@ -83,6 +83,28 @@ Helpers from `types.ts`: `pairTranscriptSteps`, `tryParseJson`, `isErrorResult`,
83
83
  `TASK_STATUS_ORDER`, `TASK_STATUS_LABEL`, `TASK_PRIORITY_LABEL`, and the transcript, task and
84
84
  model types.
85
85
 
86
+ ## Local chat
87
+
88
+ Everything a chat over an OpenAI-compatible server (llama-server, vLLM, the Aphrody gateway)
89
+ needs, with no visible string hard-coded:
90
+
91
+ | Export | Role |
92
+ | ------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
93
+ | `ChatLabels`, `chatLabelsFr` / `chatLabelsEn` / `chatLabelsJa`, `resolveChatLabels`, `formatLabel` | One dictionary for every visible string and aria-label. Every chat component takes `labels?: Partial<ChatLabels>`; missing keys fall back on English. |
94
+ | `streamChatCompletion`, `createSseParser`, `parseChatCompletionChunk`, `chatReducer`, `ChatStreamError` | Pure streaming client of `POST <baseUrl>/chat/completions` (`stream: true`): SSE framing, content / `reasoning_content` / tool-call deltas, `finish_reason`, top-level `citations` and `refusal`. Network failures and 404/502/503/504 are `unavailable`. |
95
+ | `useOpenAIChat({ baseUrl, model, fetch?, headers?, initialMessages?, preamble?, body? })` | React hook: `{ messages, send, stop, status, error, reset, setMessages }`, `status` is `idle`, `streaming`, `error` or `unavailable`. |
96
+ | `ConversationList` | Navigation-drawer list: new conversation, optional search, rename / delete callbacks, empty state, localized dates. |
97
+ | `ModelUnavailable` | Downloading / loading / unavailable state with a determinate linear indicator and a retry button. |
98
+ | `CitedMarkdown`, `CitationChip`, `CitationList`, `RefusalNotice` | Grounded answers: `[n]` markers as chips, the numbered sources, the "not established in the sources" notice. `MessageBubble` takes `citations` and `refusal` directly. |
99
+ | `MemoryPanel` | Saved memories with per-item deletion and a confirmed "clear all" (`confirmClear` injects your own dialog). |
100
+ | `ChatIcon` | The chat icons as inline Material Symbols SVG: no icon font is needed by the chat components. |
101
+
102
+ `Markdown` (and `MessageBubble`, `CitedMarkdown`) open external links with
103
+ `target="_blank" rel="noopener noreferrer"` and take `onLinkClick(href, event)` (call
104
+ `event.preventDefault()` to open the system browser from a Tauri webview) or `renderLink`.
105
+ `ChatComposer` takes `disabled` (the model is unavailable: input, send, voice and selectors are
106
+ inert), distinct from `isSending`.
107
+
86
108
  ## Tests
87
109
 
88
110
  ```sh
@@ -0,0 +1,41 @@
1
+ /**
2
+ * @aphrody/m3-ai - A2APeerInspector
3
+ *
4
+ * Material Design 3 Agent-to-Agent (A2A 1.0) Fleet Inspector:
5
+ * - Visualizes connected peer agents (codex, claude, agycli, shenron, nie, ocr, rag).
6
+ * - Displays AgentCard interface, capabilities, and active tasks.
7
+ * - Live inspection of .coord mailbox envelopes (ask, fact, ack, ping, error).
8
+ * - File lock & resource claims view (.coord/claims).
9
+ */
10
+ import React from "react";
11
+ import type { CoordEnvelope, EnvelopeKind } from "./AgUiEventStream";
12
+ export interface AgentPeer {
13
+ id: string;
14
+ name: string;
15
+ role: string;
16
+ status: "idle" | "busy" | "offline";
17
+ version?: string;
18
+ skills?: string[];
19
+ activeClaim?: string;
20
+ }
21
+ export interface SendEnvelopePayload {
22
+ from: string;
23
+ to?: string;
24
+ kind: EnvelopeKind | string;
25
+ topic: string;
26
+ body: string;
27
+ re?: string;
28
+ channel_hint?: string[];
29
+ v?: number;
30
+ [key: string]: unknown;
31
+ }
32
+ export interface A2APeerInspectorProps {
33
+ peers?: AgentPeer[];
34
+ envelopes?: CoordEnvelope[];
35
+ selectedPeerId?: string;
36
+ onSelectPeer?: (peerId: string) => void;
37
+ onSendEnvelope?: (envelope: SendEnvelopePayload) => void;
38
+ className?: string;
39
+ }
40
+ export declare const A2APeerInspector: React.FC<A2APeerInspectorProps>;
41
+ //# sourceMappingURL=A2APeerInspector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"A2APeerInspector.d.ts","sourceRoot":"","sources":["../src/A2APeerInspector.tsx"],"names":[],"mappings":"AACA;;;;;;;;GAQG;AAEH,OAAO,KAAmB,MAAM,OAAO,CAAC;AAExC,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAErE,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,YAAY,GAAG,MAAM,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,aAAa,EAAE,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAoED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAyQ5D,CAAC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * @aphrody/m3-ai - A2ATaskTimeline
3
+ *
4
+ * Material Design 3 Agent-to-Agent Delegation Timeline:
5
+ * - Chronological trace of task handoffs between agents (e.g., user -> agycli -> codex -> claude -> shenron).
6
+ * - Displays delegation phase, envelope kind, file claims, and execution status.
7
+ */
8
+ import React from "react";
9
+ import type { CoordEnvelope } from "./AgUiEventStream";
10
+ export interface TimelineStep {
11
+ id: string;
12
+ from: string;
13
+ to: string;
14
+ title: string;
15
+ description?: string;
16
+ status: "pending" | "running" | "completed" | "error";
17
+ timestamp: string;
18
+ envelope?: Partial<CoordEnvelope>;
19
+ claim?: string;
20
+ }
21
+ export interface A2ATaskTimelineProps {
22
+ steps?: TimelineStep[];
23
+ currentStepId?: string;
24
+ onSelectStep?: (step: TimelineStep) => void;
25
+ className?: string;
26
+ }
27
+ export declare const A2ATaskTimeline: React.FC<A2ATaskTimelineProps>;
28
+ //# sourceMappingURL=A2ATaskTimeline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"A2ATaskTimeline.d.ts","sourceRoot":"","sources":["../src/A2ATaskTimeline.tsx"],"names":[],"mappings":"AACA;;;;;;GAMG;AAEH,OAAO,KAA0B,MAAM,OAAO,CAAC;AAE/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;IACtD,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAuBD,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAoK1D,CAAC"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * @aphrody/m3-ai - AgUiEventStream
3
+ *
4
+ * Full-duplex Agent-to-User (A2U) streaming and A2A fleet bridge:
5
+ * - Maps AG-UI v1.0 protocol events (text chunks, tool calls, reasoning, state, subagents)
6
+ * into native Material Design 3 TranscriptSteps and TranscriptItems.
7
+ * - Bridges Aphrody A2A CoordEnvelope fleet messages (ask/fact/ack/ping/error) to and from AG-UI events.
8
+ * - Provides reactive state accumulator and streaming parser.
9
+ */
10
+ import { type BaseEvent } from "@aphrody/ag-ui";
11
+ import { type TranscriptStep, type TranscriptItem } from "./types";
12
+ export type EnvelopeKind = "ask" | "fact" | "ack" | "ping" | "error";
13
+ export interface CoordEnvelope {
14
+ v?: number;
15
+ ts: string;
16
+ id: string;
17
+ from: string;
18
+ to?: string;
19
+ kind: EnvelopeKind | string;
20
+ topic: string;
21
+ body: string;
22
+ re?: string;
23
+ channel_hint?: string[];
24
+ [key: string]: unknown;
25
+ }
26
+ export interface SubagentTrace {
27
+ id: string;
28
+ name: string;
29
+ status: "running" | "completed" | "error";
30
+ parentRunId?: string;
31
+ error?: string;
32
+ }
33
+ export interface AgUiStreamState {
34
+ status: "idle" | "streaming" | "completed" | "error";
35
+ items: TranscriptItem[];
36
+ steps: TranscriptStep[];
37
+ reasoning: string;
38
+ currentText: string;
39
+ error?: string;
40
+ subagents: SubagentTrace[];
41
+ a2uiSurfaces: Map<string, Record<string, unknown>>;
42
+ }
43
+ export declare class AgUiEventAccumulator {
44
+ private steps;
45
+ private activeText;
46
+ private activeReasoning;
47
+ private pendingToolCalls;
48
+ private toolCallNames;
49
+ private subagents;
50
+ private a2uiSurfaces;
51
+ private isFinished;
52
+ private hasError;
53
+ private errorMessage?;
54
+ /**
55
+ * Process a single AG-UI event and update accumulator state.
56
+ */
57
+ push(event: BaseEvent): void;
58
+ /**
59
+ * Parse A2UI operations if returned by a tool result
60
+ */
61
+ private inspectA2uiOperations;
62
+ /**
63
+ * Produces the snapshot of current streaming state.
64
+ */
65
+ snapshot(): AgUiStreamState;
66
+ /**
67
+ * Alias for snapshot() for ergonomics.
68
+ */
69
+ getState(): AgUiStreamState;
70
+ }
71
+ /**
72
+ * Converts a static list of AG-UI events into TranscriptSteps.
73
+ */
74
+ export declare function agUiEventsToTranscriptSteps(events: BaseEvent[]): TranscriptStep[];
75
+ /**
76
+ * Converts a static list of AG-UI events into paired TranscriptItems.
77
+ */
78
+ export declare function agUiEventsToTranscriptItems(events: BaseEvent[]): TranscriptItem[];
79
+ /**
80
+ * Translates an Aphrody A2A CoordEnvelope mailbox message into an AG-UI BaseEvent.
81
+ */
82
+ export declare function coordEnvelopeToAgUiEvent(envelope: CoordEnvelope): BaseEvent;
83
+ /**
84
+ * Translates an AG-UI BaseEvent into an Aphrody A2A CoordEnvelope mailbox message.
85
+ */
86
+ export declare function agUiEventToCoordEnvelope(event: BaseEvent, from: string, to?: string): CoordEnvelope;
87
+ //# sourceMappingURL=AgUiEventStream.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgUiEventStream.d.ts","sourceRoot":"","sources":["../src/AgUiEventStream.ts"],"names":[],"mappings":"AACA;;;;;;;;GAQG;AAEH,OAAO,EAEL,KAAK,SAAS,EAUf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,cAAc,EAGpB,MAAM,SAAS,CAAC;AAMjB,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;AAErE,MAAM,WAAW,aAAa;IAC5B,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,YAAY,GAAG,MAAM,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,WAAW,GAAG,OAAO,CAAC;IACrD,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACpD;AAMD,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,UAAU,CAAc;IAChC,OAAO,CAAC,eAAe,CAAc;IACrC,OAAO,CAAC,gBAAgB,CAAqD;IAC7E,OAAO,CAAC,aAAa,CAA6B;IAClD,OAAO,CAAC,SAAS,CAAoC;IACrD,OAAO,CAAC,YAAY,CAA8C;IAClE,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,YAAY,CAAC,CAAS;IAE9B;;OAEG;IACI,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAoJlC;IAED;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAiC7B;;OAEG;IACI,QAAQ,IAAI,eAAe,CA+BjC;IAED;;OAEG;IACI,QAAQ,IAAI,eAAe,CAEjC;CACF;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,cAAc,EAAE,CAMjF;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,cAAc,EAAE,CAMjF;AAMD;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,aAAa,GAAG,SAAS,CAqE3E;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,MAAM,EACZ,EAAE,GAAE,MAAgB,GACnB,aAAa,CA6Df"}
@@ -0,0 +1,55 @@
1
+ import type { ReactNode } from "react";
2
+ export interface MenuItem {
3
+ id: string;
4
+ label: string;
5
+ icon?: string;
6
+ shortcut?: string;
7
+ onClick?: () => void;
8
+ destructive?: boolean;
9
+ dividerAfter?: boolean;
10
+ }
11
+ export interface GeminiAccountMenuProps {
12
+ /** User name */
13
+ name: string;
14
+ /** User email */
15
+ email: string;
16
+ /** Avatar image URL or fallback initials */
17
+ avatar?: ReactNode;
18
+ /** Menu open state */
19
+ open: boolean;
20
+ /** Menu open state change */
21
+ onOpenChange: (open: boolean) => void;
22
+ /** Menu items */
23
+ items?: MenuItem[];
24
+ /** Trigger element */
25
+ children: ReactNode;
26
+ /** Additional container class */
27
+ className?: string;
28
+ }
29
+ /**
30
+ * Gemini Sidebar Footer Account Menu.
31
+ * Benchmark parity: `assets/ui/gemini-account-menu.png` (manifest item 2).
32
+ * Anchored to the sidebar footer avatar/profile card, displaying Google account
33
+ * details and navigation links with M3 typography, icons, and keyboard-reachable rows.
34
+ */
35
+ export declare function GeminiAccountMenu({ name, email, avatar, open, onOpenChange, items, children, className, }: GeminiAccountMenuProps): import("react").JSX.Element;
36
+ export interface ComposerMoreUploadsMenuProps {
37
+ /** Menu open state */
38
+ open: boolean;
39
+ /** Menu open state change */
40
+ onOpenChange: (open: boolean) => void;
41
+ /** Items in upload/add menu */
42
+ items: MenuItem[];
43
+ /** Submenu items (e.g., More uploads / Google Drive / Workspace) */
44
+ submenuItems?: MenuItem[];
45
+ /** Trigger element */
46
+ children: ReactNode;
47
+ }
48
+ /**
49
+ * Composer Add & More Uploads Menu.
50
+ * Benchmark parity: `assets/ui/gemini-composer-more-uploads.png` (manifest item 3).
51
+ * Anchored to the '+' trigger of the composer, grouping related upload actions
52
+ * with an optional adjacent secondary submenu.
53
+ */
54
+ export declare function ComposerMoreUploadsMenu({ open, onOpenChange, items, submenuItems, children, }: ComposerMoreUploadsMenuProps): import("react").JSX.Element;
55
+ //# sourceMappingURL=GeminiAccountMenu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GeminiAccountMenu.d.ts","sourceRoot":"","sources":["../src/GeminiAccountMenu.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,sBAAsB;IACrC,gBAAgB;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,sBAAsB;IACtB,IAAI,EAAE,OAAO,CAAC;IACd,6BAA6B;IAC7B,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,iBAAiB;IACjB,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;IACnB,sBAAsB;IACtB,QAAQ,EAAE,SAAS,CAAC;IACpB,iCAAiC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAID;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,EACJ,KAAK,EACL,MAAM,EACN,IAAI,EACJ,YAAY,EACZ,KAAwB,EACxB,QAAQ,EACR,SAAS,GACV,EAAE,sBAAsB,+BAiExB;AAED,MAAM,WAAW,4BAA4B;IAC3C,sBAAsB;IACtB,IAAI,EAAE,OAAO,CAAC;IACd,6BAA6B;IAC7B,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,+BAA+B;IAC/B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,oEAAoE;IACpE,YAAY,CAAC,EAAE,QAAQ,EAAE,CAAC;IAC1B,sBAAsB;IACtB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,EACtC,IAAI,EACJ,YAAY,EACZ,KAAK,EACL,YAAY,EACZ,QAAQ,GACT,EAAE,4BAA4B,+BA+D9B"}
@@ -0,0 +1,29 @@
1
+ export interface GeminiPersonalContextEditProps {
2
+ /** Controls open state of the dialog */
3
+ open: boolean;
4
+ /** Open state change callback */
5
+ onOpenChange: (open: boolean) => void;
6
+ /** Current context text */
7
+ initialContext?: string;
8
+ /** Title of the dialog */
9
+ title?: string;
10
+ /** Subtitle/description of context rules */
11
+ description?: string;
12
+ /** Save callback */
13
+ onSave: (context: string) => void | Promise<void>;
14
+ /** Clear/delete context callback */
15
+ onClear?: () => void;
16
+ /** Additional container classes */
17
+ className?: string;
18
+ }
19
+ /**
20
+ * Gemini Personal Context & User Memory Editor Dialog.
21
+ * Benchmark parity: `assets/ui/gemini-personal-context-edit.png` (manifest item 4).
22
+ * Features:
23
+ * - Centered dialog over translucent backdrop blur.
24
+ * - Focused multiline context editor with visible focus outline.
25
+ * - Save button is disabled when context is empty or unchanged.
26
+ * - Contextual instructions for how agent uses personal context.
27
+ */
28
+ export declare function GeminiPersonalContextEdit({ open, onOpenChange, initialContext, title, description, onSave, onClear, className, }: GeminiPersonalContextEditProps): import("react").JSX.Element;
29
+ //# sourceMappingURL=GeminiPersonalContextEdit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GeminiPersonalContextEdit.d.ts","sourceRoot":"","sources":["../src/GeminiPersonalContextEdit.tsx"],"names":[],"mappings":"AAUA,MAAM,WAAW,8BAA8B;IAC7C,wCAAwC;IACxC,IAAI,EAAE,OAAO,CAAC;IACd,iCAAiC;IACjC,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,2BAA2B;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0BAA0B;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB;IACpB,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,oCAAoC;IACpC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CAAC,EACxC,IAAI,EACJ,YAAY,EACZ,cAAmB,EACnB,KAA+B,EAC/B,WAAoK,EACpK,MAAM,EACN,OAAO,EACP,SAAS,GACV,EAAE,8BAA8B,+BAmGhC"}
@@ -0,0 +1,32 @@
1
+ import { type ReactNode } from "react";
2
+ export interface GoogleSpotlightBarProps {
3
+ /** Placeholder text */
4
+ placeholder?: string;
5
+ /** Active query draft */
6
+ query?: string;
7
+ /** On change callback */
8
+ onQueryChange?: (val: string) => void;
9
+ /** Triggered on submit */
10
+ onSubmit?: (query: string) => void;
11
+ /** File/attachment action handler */
12
+ onAttach?: () => void;
13
+ /** Screen capture / share window handler */
14
+ onScreenCapture?: () => void;
15
+ /** Google Lens multimodal query handler */
16
+ onGoogleLens?: () => void;
17
+ /** User avatar element or image URL */
18
+ avatar?: ReactNode;
19
+ /** Additional container classes */
20
+ className?: string;
21
+ }
22
+ /**
23
+ * Floating Spotlight Assistant Bar & Search Capsule (Alt + Space).
24
+ * Benchmark parity: `google-desktop-spotlight-bar.png` (manifest item 1).
25
+ * Features:
26
+ * - Floating translucent frameless capsule with 32dp corner radius (--gemini-corner-prompt-bar).
27
+ * - Soft desktop elevation shadow.
28
+ * - Global shortcut pill indicator ('Alt + Space').
29
+ * - Multimodal action buttons (+ for attach, screen capture, Google Lens).
30
+ */
31
+ export declare function GoogleSpotlightBar({ placeholder, query: controlledQuery, onQueryChange, onSubmit, onAttach, onScreenCapture, onGoogleLens, avatar, className, }: GoogleSpotlightBarProps): import("react").JSX.Element;
32
+ //# sourceMappingURL=GoogleSpotlightBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GoogleSpotlightBar.d.ts","sourceRoot":"","sources":["../src/GoogleSpotlightBar.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,SAAS,EAAY,MAAM,OAAO,CAAC;AAEjD,MAAM,WAAW,uBAAuB;IACtC,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yBAAyB;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,4CAA4C;IAC5C,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,uCAAuC;IACvC,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,WAA+C,EAC/C,KAAK,EAAE,eAAe,EACtB,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,MAAM,EACN,SAAS,GACV,EAAE,uBAAuB,+BAkHzB"}
@@ -31,7 +31,8 @@ export interface BlockMathProps extends React.HTMLAttributes<HTMLDivElement> {
31
31
  math: string;
32
32
  }
33
33
  export declare function BlockMath({ math, className, ...props }: BlockMathProps): import("react").JSX.Element;
34
- export declare function remarkMathPlugin(): (tree: any) => void;
34
+ declare function transformMathTree(tree: any): void;
35
+ export declare function remarkMathPlugin(): typeof transformMathTree;
35
36
  declare const Markdown: import("react").ForwardRefExoticComponent<MarkdownProps & import("react").RefAttributes<HTMLDivElement>>;
36
37
  export { Markdown };
37
38
  export type { MarkdownProps };
@@ -1 +1 @@
1
- {"version":3,"file":"Markdown.d.ts","sourceRoot":"","sources":["../src/Markdown.tsx"],"names":[],"mappings":"AAOA,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAKf,KAAK,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEjD,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gGAAgG;IAChG,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AA4ED,wBAAgB,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAW3E;AAMD,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC;IAC1F,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,wBAAgB,SAAS,CAAC,EACxB,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,YAAY,EACtB,MAAM,EACN,SAAS,EACT,QAAQ,EACR,GAAG,SAAS,EACb,EAAE,cAAc,+BAsFhB;AA6GD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAkCzD;AAED,MAAM,WAAW,eAAgB,SAAQ,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC;IAC5E,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,eAAe,+BAYxE;AAED,MAAM,WAAW,cAAe,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IAC1E,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,SAAS,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,+BAYtE;AAMD,wBAAgB,gBAAgB,WAChB,GAAG,UA8FlB;AAgLD,QAAA,MAAM,QAAQ,0GAiBb,CAAC;AAIF,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,YAAY,EAAE,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"Markdown.d.ts","sourceRoot":"","sources":["../src/Markdown.tsx"],"names":[],"mappings":"AAOA,OAAO,EAA2D,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAKhG,KAAK,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEjD,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gGAAgG;IAChG,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AA4ED,wBAAgB,cAAc,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAc3E;AAMD,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC;IAC1F,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,wBAAgB,SAAS,CAAC,EACxB,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,YAAY,EACtB,MAAM,EACN,SAAS,EACT,QAAQ,EACR,GAAG,SAAS,EACb,EAAE,cAAc,+BAsFhB;AA+GD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAkCzD;AAED,MAAM,WAAW,eAAgB,SAAQ,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC;IAC5E,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,eAAe,+BAYxE;AAED,MAAM,WAAW,cAAe,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IAC1E,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,SAAS,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,+BAYtE;AAgGD,iBAAS,iBAAiB,CAAC,IAAI,EAAE,GAAG,QAGnC;AAED,wBAAgB,gBAAgB,6BAE/B;AA8KD,QAAA,MAAM,QAAQ,0GAiBb,CAAC;AAIF,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,YAAY,EAAE,aAAa,EAAE,CAAC"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @aphrody/m3-ai - McpAppCard
3
+ *
4
+ * Material Design 3 Interactive MCP App Container:
5
+ * - Renders generative UI resources produced by MCP tools (SEP-1724 / mcp-ui).
6
+ * - Hosts interactive guest web applications in an isolated sandbox iframe.
7
+ * - Passes reactive M3 theme and color scheme context to the guest app.
8
+ * - Supports expandable full-bleed or embedded card layouts.
9
+ */
10
+ import React from "react";
11
+ export interface McpAppCardProps {
12
+ toolName: string;
13
+ title?: string;
14
+ html?: string;
15
+ toolResourceUri?: string;
16
+ toolInput?: Record<string, unknown>;
17
+ toolResult?: any;
18
+ sandboxUrl?: string;
19
+ isExpandedDefault?: boolean;
20
+ className?: string;
21
+ onAction?: (action: string, payload?: unknown) => void;
22
+ }
23
+ export declare const McpAppCard: React.FC<McpAppCardProps>;
24
+ //# sourceMappingURL=McpAppCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"McpAppCard.d.ts","sourceRoot":"","sources":["../src/McpAppCard.tsx"],"names":[],"mappings":"AACA;;;;;;;;GAQG;AAEH,OAAO,KAAoC,MAAM,OAAO,CAAC;AAIzD,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACxD;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAoIhD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ModelSelector.d.ts","sourceRoot":"","sources":["../src/ModelSelector.tsx"],"names":[],"mappings":"AAKA,OAAO,EAGL,UAAU,EAEV,KAAK,eAAe,EACrB,MAAM,wBAAwB,CAAC;AAKhC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,MAAM,WAAW,kBAAkB;IACjC,uBAAuB;IACvB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yBAAyB;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,yBAAyB;IACzB,OAAO,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IACrC,sBAAsB;IACtB,IAAI,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAC/B,oCAAoC;IACpC,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IACxC,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,uEAAuE;AACvE,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,WAAW,EAAE,EACrB,MAAM,SAAK,GACV,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAc/B;AAED,MAAM,WAAW,oBAAoB;IACnC,sEAAsE;IACtE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;IACvC,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,oBAAoB,+BA+E5F;AAsCD,eAAO,MAAM,aAAa,kHAqEzB,CAAC"}
1
+ {"version":3,"file":"ModelSelector.d.ts","sourceRoot":"","sources":["../src/ModelSelector.tsx"],"names":[],"mappings":"AAKA,OAAO,EAGL,UAAU,EAEV,KAAK,eAAe,EACrB,MAAM,wBAAwB,CAAC;AAKhC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,MAAM,WAAW,kBAAkB;IACjC,uBAAuB;IACvB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,sCAAsC;IACtC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yBAAyB;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,yBAAyB;IACzB,OAAO,CAAC,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IACrC,sBAAsB;IACtB,IAAI,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAC/B,oCAAoC;IACpC,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IACxC,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,uEAAuE;AACvE,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,WAAW,EAAE,EACrB,MAAM,SAAK,GACV,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAc/B;AAED,MAAM,WAAW,oBAAoB;IACnC,sEAAsE;IACtE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;IACvC,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,oBAAoB,+BAkH5F;AAsCD,eAAO,MAAM,aAAa,kHAqEzB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"TaskRow.d.ts","sourceRoot":"","sources":["../src/TaskRow.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGhD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAC1D,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,+DAA+D;AAC/D,eAAO,MAAM,aAAa,sCAAsC,CAAC;AAEjE,kFAAkF;AAClF,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,EACtB,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,gBAAgB,EAChB,cAAc,EACd,QAAQ,EACR,SAAS,GACV,EAAE,YAAY,+BAwJd"}
1
+ {"version":3,"file":"TaskRow.d.ts","sourceRoot":"","sources":["../src/TaskRow.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGhD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,KAAK,IAAI,CAAC;IAC1D,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,+DAA+D;AAC/D,eAAO,MAAM,aAAa,sCAAsC,CAAC;AAEjE,kFAAkF;AAClF,eAAO,MAAM,eAAe,KAAK,CAAC;AAElC;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,EACtB,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,gBAAgB,EAChB,cAAc,EACd,QAAQ,EACR,SAAS,GACV,EAAE,YAAY,+BAuId"}
@@ -1 +1 @@
1
- {"version":3,"file":"ToolCall.d.ts","sourceRoot":"","sources":["../src/ToolCall.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAkB,MAAM,SAAS,CAAC;AAi0B5D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,YAAY,CAAC;IACnB,qCAAqC;IACrC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,eAAuB,EAAE,SAAS,EAAE,EAAE,aAAa,+BAiGnF"}
1
+ {"version":3,"file":"ToolCall.d.ts","sourceRoot":"","sources":["../src/ToolCall.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAkB,MAAM,SAAS,CAAC;AAga5D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,YAAY,CAAC;IACnB,qCAAqC;IACrC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,eAAuB,EAAE,SAAS,EAAE,EAAE,aAAa,+BAiGnF"}
package/dist/index.d.ts CHANGED
@@ -14,6 +14,12 @@ export { ModelSelector, ModelOptionList, groupModelsByProvider } from "./ModelSe
14
14
  export type { ModelSelectorProps, ModelOptionListProps } from "./ModelSelector";
15
15
  export { ChatComposer } from "./ChatComposer";
16
16
  export type { ChatComposerProps } from "./ChatComposer";
17
+ export { GoogleSpotlightBar } from "./GoogleSpotlightBar";
18
+ export type { GoogleSpotlightBarProps } from "./GoogleSpotlightBar";
19
+ export { GeminiAccountMenu, ComposerMoreUploadsMenu, } from "./GeminiAccountMenu";
20
+ export type { GeminiAccountMenuProps, ComposerMoreUploadsMenuProps, MenuItem, } from "./GeminiAccountMenu";
21
+ export { GeminiPersonalContextEdit } from "./GeminiPersonalContextEdit";
22
+ export type { GeminiPersonalContextEditProps } from "./GeminiPersonalContextEdit";
17
23
  export { TaskStatusIcon } from "./TaskStatusIcon";
18
24
  export type { TaskStatusIconProps } from "./TaskStatusIcon";
19
25
  export { TaskPriorityIcon } from "./TaskPriorityIcon";
@@ -26,4 +32,13 @@ export { TaskDetail } from "./TaskDetail";
26
32
  export type { TaskDetailProps } from "./TaskDetail";
27
33
  export { TaskCreateForm } from "./TaskCreateForm";
28
34
  export type { TaskCreateFormProps, TaskCreateFormData } from "./TaskCreateForm";
35
+ export { EventType } from "@aphrody/ag-ui";
36
+ export { AgUiEventAccumulator, agUiEventsToTranscriptSteps, agUiEventsToTranscriptItems, coordEnvelopeToAgUiEvent, agUiEventToCoordEnvelope, } from "./AgUiEventStream";
37
+ export type { CoordEnvelope, EnvelopeKind, SubagentTrace, AgUiStreamState, } from "./AgUiEventStream";
38
+ export { A2APeerInspector } from "./A2APeerInspector";
39
+ export type { A2APeerInspectorProps, AgentPeer, SendEnvelopePayload } from "./A2APeerInspector";
40
+ export { A2ATaskTimeline } from "./A2ATaskTimeline";
41
+ export type { A2ATaskTimelineProps, TimelineStep } from "./A2ATaskTimeline";
42
+ export { McpAppCard } from "./McpAppCard";
43
+ export type { McpAppCardProps } from "./McpAppCard";
29
44
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,YAAY,EACV,cAAc,EACd,YAAY,EACZ,aAAa,EACb,cAAc,EACd,cAAc,EACd,QAAQ,EACR,UAAU,EACV,WAAW,EACX,SAAS,EACT,WAAW,EACX,UAAU,EACV,YAAY,EACZ,OAAO,EACP,IAAI,GACL,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACxE,YAAY,EACV,aAAa,EACb,cAAc,EACd,eAAe,EACf,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxF,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGxD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}