@ciridae/ui-agent 0.3.8 → 0.3.10
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.
- package/dist/components/agentic/agent-composer.d.ts +4 -4
- package/dist/components/agentic/agent-composer.js +4 -5
- package/dist/components/agentic/agent-context.d.ts +1 -1
- package/dist/components/agentic/agent-plan.js +1 -1
- package/dist/components/agentic/approval-request.d.ts +1 -1
- package/dist/components/agentic/artifact.js +1 -1
- package/dist/components/agentic/attachments-actions.d.ts +1 -1
- package/dist/components/agentic/attachments-actions.js +2 -2
- package/dist/components/agentic/attachments-context.d.ts +1 -1
- package/dist/components/agentic/attachments-context.js +1 -1
- package/dist/components/agentic/attachments-model.d.ts +2 -2
- package/dist/components/agentic/attachments-preview.d.ts +2 -2
- package/dist/components/agentic/attachments-preview.js +1 -1
- package/dist/components/agentic/attachments-types.d.ts +1 -1
- package/dist/components/agentic/attachments-ui.d.ts +1 -1
- package/dist/components/agentic/attachments-ui.js +4 -4
- package/dist/components/agentic/attachments.d.ts +5 -5
- package/dist/components/agentic/attachments.js +4 -4
- package/dist/components/agentic/audio-player.d.ts +1 -1
- package/dist/components/agentic/canvas.js +1 -1
- package/dist/components/agentic/code-block.js +1 -1
- package/dist/components/agentic/commit.js +1 -1
- package/dist/components/agentic/conversation.d.ts +1 -1
- package/dist/components/agentic/environment-variables.js +1 -1
- package/dist/components/agentic/message.d.ts +2 -2
- package/dist/components/agentic/message.js +13 -6
- package/dist/components/agentic/mic-selector.d.ts +1 -1
- package/dist/components/agentic/mic-selector.js +3 -3
- package/dist/components/agentic/persona.js +1 -1
- package/dist/components/agentic/prompt-input.d.ts +9 -9
- package/dist/components/agentic/prompt-input.js +8 -8
- package/dist/components/agentic/reasoning.js +1 -1
- package/dist/components/agentic/snippet.js +1 -1
- package/dist/components/agentic/speech-input.d.ts +1 -1
- package/dist/components/agentic/stack-trace.js +11 -4
- package/dist/components/agentic/terminal.js +1 -1
- package/dist/components/agentic/tool.d.ts +1 -1
- package/dist/components/agentic/transcription.d.ts +1 -1
- package/dist/components/agentic/voice-selector.d.ts +1 -1
- package/dist/components/agentic/voice-selector.js +2 -2
- package/dist/components/blocks/artifact-workbench.js +4 -4
- package/dist/components/blocks/tool-approval-panel.d.ts +1 -1
- package/dist/components/blocks/tool-approval-panel.js +2 -2
- package/dist/components/blocks/voice-agent-panel.d.ts +1 -1
- package/dist/components/blocks/voice-agent-panel.js +6 -6
- package/dist/components/blocks/workflow-canvas-panel.js +7 -7
- package/dist/entries/agent-card.d.ts +1 -1
- package/dist/entries/agent-card.js +1 -1
- package/dist/entries/agent-composer.d.ts +1 -1
- package/dist/entries/agent-composer.js +1 -1
- package/dist/entries/agent-context.d.ts +1 -1
- package/dist/entries/agent-context.js +1 -1
- package/dist/entries/agent-plan.d.ts +1 -1
- package/dist/entries/agent-plan.js +1 -1
- package/dist/entries/agent-queue.d.ts +1 -1
- package/dist/entries/agent-queue.js +1 -1
- package/dist/entries/agent-task.d.ts +1 -1
- package/dist/entries/agent-task.js +1 -1
- package/dist/entries/agentic-types.d.ts +1 -1
- package/dist/entries/agentic-types.js +1 -1
- package/dist/entries/approval-request.d.ts +1 -1
- package/dist/entries/approval-request.js +1 -1
- package/dist/entries/artifact-workbench.d.ts +1 -1
- package/dist/entries/artifact-workbench.js +1 -1
- package/dist/entries/artifact.d.ts +1 -1
- package/dist/entries/artifact.js +1 -1
- package/dist/entries/assistant-mark-icon.d.ts +1 -1
- package/dist/entries/assistant-mark-icon.js +1 -1
- package/dist/entries/attachments-actions.d.ts +1 -1
- package/dist/entries/attachments-actions.js +1 -1
- package/dist/entries/attachments-context.d.ts +1 -1
- package/dist/entries/attachments-context.js +1 -1
- package/dist/entries/attachments-model.d.ts +1 -1
- package/dist/entries/attachments-model.js +1 -1
- package/dist/entries/attachments-preview.d.ts +1 -1
- package/dist/entries/attachments-preview.js +1 -1
- package/dist/entries/attachments-types.d.ts +1 -1
- package/dist/entries/attachments-types.js +1 -1
- package/dist/entries/attachments-ui.d.ts +1 -1
- package/dist/entries/attachments-ui.js +1 -1
- package/dist/entries/attachments.d.ts +1 -1
- package/dist/entries/attachments.js +1 -1
- package/dist/entries/audio-player.d.ts +1 -1
- package/dist/entries/audio-player.js +1 -1
- package/dist/entries/breathing-grid-icon.d.ts +1 -1
- package/dist/entries/breathing-grid-icon.js +1 -1
- package/dist/entries/canvas.d.ts +1 -1
- package/dist/entries/canvas.js +1 -1
- package/dist/entries/clipboard.d.ts +1 -1
- package/dist/entries/clipboard.js +1 -1
- package/dist/entries/code-block.d.ts +1 -1
- package/dist/entries/code-block.js +1 -1
- package/dist/entries/commit.d.ts +1 -1
- package/dist/entries/commit.js +1 -1
- package/dist/entries/connection.d.ts +1 -1
- package/dist/entries/connection.js +1 -1
- package/dist/entries/controls.d.ts +1 -1
- package/dist/entries/controls.js +1 -1
- package/dist/entries/conversation.d.ts +1 -1
- package/dist/entries/conversation.js +1 -1
- package/dist/entries/edge.d.ts +1 -1
- package/dist/entries/edge.js +1 -1
- package/dist/entries/effort-selector.d.ts +1 -1
- package/dist/entries/effort-selector.js +1 -1
- package/dist/entries/environment-variables.d.ts +1 -1
- package/dist/entries/environment-variables.js +1 -1
- package/dist/entries/file-tree.d.ts +1 -1
- package/dist/entries/file-tree.js +1 -1
- package/dist/entries/image.d.ts +1 -1
- package/dist/entries/image.js +1 -1
- package/dist/entries/inline-citation.d.ts +1 -1
- package/dist/entries/inline-citation.js +1 -1
- package/dist/entries/jsx-preview.d.ts +1 -1
- package/dist/entries/jsx-preview.js +1 -1
- package/dist/entries/message-branch.d.ts +1 -1
- package/dist/entries/message-branch.js +1 -1
- package/dist/entries/message.d.ts +1 -1
- package/dist/entries/message.js +1 -1
- package/dist/entries/mic-selector.d.ts +1 -1
- package/dist/entries/mic-selector.js +1 -1
- package/dist/entries/model-selector.d.ts +1 -1
- package/dist/entries/model-selector.js +1 -1
- package/dist/entries/node.d.ts +1 -1
- package/dist/entries/node.js +1 -1
- package/dist/entries/open-in-chat.d.ts +1 -1
- package/dist/entries/open-in-chat.js +1 -1
- package/dist/entries/package-info.d.ts +1 -1
- package/dist/entries/package-info.js +1 -1
- package/dist/entries/panel.d.ts +1 -1
- package/dist/entries/panel.js +1 -1
- package/dist/entries/persona.d.ts +1 -1
- package/dist/entries/persona.js +1 -1
- package/dist/entries/prompt-input-action-menu.d.ts +1 -1
- package/dist/entries/prompt-input-action-menu.js +1 -1
- package/dist/entries/prompt-input-command.d.ts +1 -1
- package/dist/entries/prompt-input-command.js +1 -1
- package/dist/entries/prompt-input-hover-card.d.ts +1 -1
- package/dist/entries/prompt-input-hover-card.js +1 -1
- package/dist/entries/prompt-input-select.d.ts +1 -1
- package/dist/entries/prompt-input-select.js +1 -1
- package/dist/entries/prompt-input-tabs.d.ts +1 -1
- package/dist/entries/prompt-input-tabs.js +1 -1
- package/dist/entries/prompt-input.d.ts +1 -1
- package/dist/entries/prompt-input.js +1 -1
- package/dist/entries/reasoning.d.ts +1 -1
- package/dist/entries/reasoning.js +1 -1
- package/dist/entries/run-checkpoint.d.ts +1 -1
- package/dist/entries/run-checkpoint.js +1 -1
- package/dist/entries/run-trace.d.ts +1 -1
- package/dist/entries/run-trace.js +1 -1
- package/dist/entries/sandbox.d.ts +1 -1
- package/dist/entries/sandbox.js +1 -1
- package/dist/entries/schema-display.d.ts +1 -1
- package/dist/entries/schema-display.js +1 -1
- package/dist/entries/shimmer.d.ts +1 -1
- package/dist/entries/shimmer.js +1 -1
- package/dist/entries/snippet.d.ts +1 -1
- package/dist/entries/snippet.js +1 -1
- package/dist/entries/sources.d.ts +1 -1
- package/dist/entries/sources.js +1 -1
- package/dist/entries/speech-input.d.ts +1 -1
- package/dist/entries/speech-input.js +1 -1
- package/dist/entries/stack-trace.d.ts +1 -1
- package/dist/entries/stack-trace.js +1 -1
- package/dist/entries/suggestion.d.ts +1 -1
- package/dist/entries/suggestion.js +1 -1
- package/dist/entries/terminal.d.ts +1 -1
- package/dist/entries/terminal.js +1 -1
- package/dist/entries/test-results.d.ts +1 -1
- package/dist/entries/test-results.js +1 -1
- package/dist/entries/theme.d.ts +1 -1
- package/dist/entries/theme.js +1 -1
- package/dist/entries/tool-approval-panel.d.ts +1 -1
- package/dist/entries/tool-approval-panel.js +1 -1
- package/dist/entries/tool.d.ts +1 -1
- package/dist/entries/tool.js +1 -1
- package/dist/entries/toolbar.d.ts +1 -1
- package/dist/entries/toolbar.js +1 -1
- package/dist/entries/transcription.d.ts +1 -1
- package/dist/entries/transcription.js +1 -1
- package/dist/entries/types.d.ts +1 -1
- package/dist/entries/types.js +1 -1
- package/dist/entries/use-controllable-state.d.ts +1 -1
- package/dist/entries/use-controllable-state.js +1 -1
- package/dist/entries/voice-agent-panel.d.ts +1 -1
- package/dist/entries/voice-agent-panel.js +1 -1
- package/dist/entries/voice-selector.d.ts +1 -1
- package/dist/entries/voice-selector.js +1 -1
- package/dist/entries/web-preview.d.ts +1 -1
- package/dist/entries/web-preview.js +1 -1
- package/dist/entries/workflow-canvas-panel.d.ts +1 -1
- package/dist/entries/workflow-canvas-panel.js +1 -1
- package/package.json +1 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import { type AgenticAttachment, type AttachmentError } from "./attachments";
|
|
3
|
-
import { type EffortSelectorValue } from "./effort-selector";
|
|
4
|
-
import { type PromptInputMessage } from "./prompt-input";
|
|
5
|
-
import type { AgenticChatStatus } from "./types";
|
|
2
|
+
import { type AgenticAttachment, type AttachmentError } from "./attachments.js";
|
|
3
|
+
import { type EffortSelectorValue } from "./effort-selector.js";
|
|
4
|
+
import { type PromptInputMessage } from "./prompt-input.js";
|
|
5
|
+
import type { AgenticChatStatus } from "./types.js";
|
|
6
6
|
type AgentComposerModel = {
|
|
7
7
|
description?: string;
|
|
8
8
|
group?: string;
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
/* eslint-disable max-lines, max-lines-per-function, react/jsx-max-depth */
|
|
3
2
|
import { CheckIcon, ChevronsUpDownIcon } from "lucide-react";
|
|
4
3
|
import * as React from "react";
|
|
5
|
-
import { AttachmentList, useAttachments, } from "./attachments";
|
|
6
|
-
import { EffortSelector } from "./effort-selector";
|
|
7
|
-
import { ModelSelector, ModelSelectorContent, ModelSelectorEmpty, ModelSelectorGroup, ModelSelectorInput, ModelSelectorItem, ModelSelectorList, ModelSelectorLogo, ModelSelectorName, ModelSelectorShortcut, ModelSelectorTrigger, } from "./model-selector";
|
|
8
|
-
import { PromptInput, PromptInputActionAddAttachments, PromptInputBody, PromptInputProvider, PromptInputSubmit, PromptInputTextarea, PromptInputTools, } from "./prompt-input";
|
|
4
|
+
import { AttachmentList, useAttachments, } from "./attachments.js";
|
|
5
|
+
import { EffortSelector } from "./effort-selector.js";
|
|
6
|
+
import { ModelSelector, ModelSelectorContent, ModelSelectorEmpty, ModelSelectorGroup, ModelSelectorInput, ModelSelectorItem, ModelSelectorList, ModelSelectorLogo, ModelSelectorName, ModelSelectorShortcut, ModelSelectorTrigger, } from "./model-selector.js";
|
|
7
|
+
import { PromptInput, PromptInputActionAddAttachments, PromptInputBody, PromptInputProvider, PromptInputSubmit, PromptInputTextarea, PromptInputTools, } from "./prompt-input.js";
|
|
9
8
|
import { Button } from "@ciridae/ui/button";
|
|
10
9
|
import { cn } from "@ciridae/ui/utils";
|
|
11
10
|
function AgentComposer({ accept, attachments, className, defaultAttachments, defaultValue, disabled, effort, focusHint, globalDrop, maxAttachmentSizeMb = 25, maxAttachments = 4, model, models, multiple = true, onAttachmentError, onAttachmentsChange, onEffortChange, onModelChange, onStop, onSubmit, onValueChange, placeholder = "Ask anything", status = "idle", value, ...props }) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type * as React from "react";
|
|
2
|
-
import type { AgenticContextUsage } from "./types";
|
|
2
|
+
import type { AgenticContextUsage } from "./types.js";
|
|
3
3
|
import { Button } from "@ciridae/ui/button";
|
|
4
4
|
import { HoverCard, HoverCardContent } from "@ciridae/ui/hover-card";
|
|
5
5
|
type AgentContextProps = React.ComponentProps<typeof HoverCard> & AgenticContextUsage;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { ChevronsUpDownIcon } from "lucide-react";
|
|
3
3
|
import { createContext, useContext, useMemo } from "react";
|
|
4
|
-
import { Shimmer } from "./shimmer";
|
|
4
|
+
import { Shimmer } from "./shimmer.js";
|
|
5
5
|
import { Button } from "@ciridae/ui/button";
|
|
6
6
|
import { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, } from "@ciridae/ui/card";
|
|
7
7
|
import { Collapsible, CollapsibleContent, CollapsibleTrigger } from "@ciridae/ui/collapsible";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type * as React from "react";
|
|
2
|
-
import type { AgenticApproval, AgenticToolState } from "./types";
|
|
2
|
+
import type { AgenticApproval, AgenticToolState } from "./types.js";
|
|
3
3
|
import { Button } from "@ciridae/ui/button";
|
|
4
4
|
type ApprovalRequestProps = React.ComponentProps<"div"> & {
|
|
5
5
|
approval?: AgenticApproval;
|
|
@@ -4,7 +4,7 @@ import { useState } from "react";
|
|
|
4
4
|
import { Button } from "@ciridae/ui/button";
|
|
5
5
|
import { cn } from "@ciridae/ui/utils";
|
|
6
6
|
import { css } from "@ciridae/ui/styled-system/css";
|
|
7
|
-
import { copyToClipboard } from "./clipboard";
|
|
7
|
+
import { copyToClipboard } from "./clipboard.js";
|
|
8
8
|
const artifactClassName = css({
|
|
9
9
|
backgroundColor: "card",
|
|
10
10
|
borderColor: "border",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import type { AttachmentActionAddFilesProps, AttachmentActionAddScreenshotProps, AttachmentRemoveProps } from "./attachments-types";
|
|
2
|
+
import type { AttachmentActionAddFilesProps, AttachmentActionAddScreenshotProps, AttachmentRemoveProps } from "./attachments-types.js";
|
|
3
3
|
declare function AttachmentRemove({ attachmentId, children, className, label, onClick, size, type, variant: buttonVariant, ...props }: AttachmentRemoveProps): React.JSX.Element | null;
|
|
4
4
|
declare function AttachmentActionAddFiles({ children, className, label, onClick, renderAs, size, tooltip, type, variant, ...props }: AttachmentActionAddFilesProps): React.JSX.Element;
|
|
5
5
|
declare function AttachmentActionAddScreenshot({ children, className, disabled, label, onClick, renderAs, size, status, tooltip, type, variant, ...props }: AttachmentActionAddScreenshotProps): React.JSX.Element;
|
|
@@ -2,8 +2,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
/* eslint-disable react-refresh/only-export-components */
|
|
3
3
|
import { CameraIcon, PaperclipIcon, XIcon } from "lucide-react";
|
|
4
4
|
import * as React from "react";
|
|
5
|
-
import { AttachmentItemContext, useAttachments, useOptionalAttachments, } from "./attachments-context";
|
|
6
|
-
import { getAttachmentRemoveSize, getScreenshotLabel } from "./attachments-model";
|
|
5
|
+
import { AttachmentItemContext, useAttachments, useOptionalAttachments, } from "./attachments-context.js";
|
|
6
|
+
import { getAttachmentRemoveSize, getScreenshotLabel } from "./attachments-model.js";
|
|
7
7
|
import { Button } from "@ciridae/ui/button";
|
|
8
8
|
import { DropdownMenuItem } from "@ciridae/ui/dropdown-menu";
|
|
9
9
|
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "@ciridae/ui/tooltip";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import type { AttachmentControllerContextValue, AttachmentData, AttachmentMediaCategory, AttachmentProviderProps, AttachmentVariant } from "./attachments-types";
|
|
2
|
+
import type { AttachmentControllerContextValue, AttachmentData, AttachmentMediaCategory, AttachmentProviderProps, AttachmentVariant } from "./attachments-types.js";
|
|
3
3
|
declare const AttachmentControllerContext: React.Context<AttachmentControllerContextValue | null>;
|
|
4
4
|
declare const AttachmentsContext: React.Context<{
|
|
5
5
|
variant: AttachmentVariant;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
/* eslint-disable react-refresh/only-export-components */
|
|
3
3
|
import * as React from "react";
|
|
4
|
-
import { captureBrowserScreenshot, fileToAttachment, getAttachmentError, getInitialScreenshotStatus, isScreenshotSupported, isIgnoredScreenshotError, revokeObjectUrls, revokeOwnedObjectUrls, revokeRemovedObjectUrls, } from "./attachments-model";
|
|
4
|
+
import { captureBrowserScreenshot, fileToAttachment, getAttachmentError, getInitialScreenshotStatus, isScreenshotSupported, isIgnoredScreenshotError, revokeObjectUrls, revokeOwnedObjectUrls, revokeRemovedObjectUrls, } from "./attachments-model.js";
|
|
5
5
|
const AttachmentControllerContext = React.createContext(null);
|
|
6
6
|
const AttachmentsContext = React.createContext(null);
|
|
7
7
|
const AttachmentItemContext = React.createContext(null);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { AgenticPromptAttachmentKind } from "./types";
|
|
2
|
-
import type { AgenticAttachment, AttachmentData, AttachmentError, AttachmentMediaCategory, AttachmentProviderProps, AttachmentScreenshotStatus, AttachmentVariant } from "./attachments-types";
|
|
1
|
+
import type { AgenticPromptAttachmentKind } from "./types.js";
|
|
2
|
+
import type { AgenticAttachment, AttachmentData, AttachmentError, AttachmentMediaCategory, AttachmentProviderProps, AttachmentScreenshotStatus, AttachmentVariant } from "./attachments-types.js";
|
|
3
3
|
export declare function prepareAttachmentsForSubmit(attachments: AgenticAttachment[]): Promise<AgenticAttachment[]>;
|
|
4
4
|
export declare function fileToAttachment(file: File, kind?: AgenticPromptAttachmentKind): AgenticAttachment;
|
|
5
5
|
export declare function getMediaCategory(data: AttachmentData): AttachmentMediaCategory;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { AgenticPromptAttachmentStatus } from "./types";
|
|
2
|
-
import type { AttachmentData, AttachmentMediaCategory, AttachmentVariant } from "./attachments-types";
|
|
1
|
+
import type { AgenticPromptAttachmentStatus } from "./types.js";
|
|
2
|
+
import type { AttachmentData, AttachmentMediaCategory, AttachmentVariant } from "./attachments-types.js";
|
|
3
3
|
declare function renderAttachmentPreview(data: AttachmentData, mediaCategory: AttachmentMediaCategory, variant: AttachmentVariant): import("@types/react").JSX.Element | null;
|
|
4
4
|
declare function AttachmentStatus({ status }: {
|
|
5
5
|
status?: AgenticPromptAttachmentStatus;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
/* eslint-disable react-refresh/only-export-components */
|
|
3
3
|
import { CheckIcon, CircleAlertIcon } from "lucide-react";
|
|
4
|
-
import { getAttachmentLabel } from "./attachments-model";
|
|
4
|
+
import { getAttachmentLabel } from "./attachments-model.js";
|
|
5
5
|
import { Spinner } from "@ciridae/ui/spinner";
|
|
6
6
|
import { cn } from "@ciridae/ui/utils";
|
|
7
7
|
function renderAttachmentPreview(data, mediaCategory, variant) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type * as React from "react";
|
|
2
|
-
import type { AgenticPromptAttachment, AgenticPromptAttachmentKind } from "./types";
|
|
2
|
+
import type { AgenticPromptAttachment, AgenticPromptAttachmentKind } from "./types.js";
|
|
3
3
|
import type { Button } from "@ciridae/ui/button";
|
|
4
4
|
import type { HoverCard, HoverCardContent, HoverCardTrigger } from "@ciridae/ui/hover-card";
|
|
5
5
|
export type AgenticAttachment = AgenticPromptAttachment & {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import type { AttachmentEmptyProps, AttachmentHoverCardContentProps, AttachmentHoverCardProps, AttachmentHoverCardTriggerProps, AttachmentInfoProps, AttachmentListProps, AttachmentMetaProps, AttachmentNameProps, AttachmentPreviewProps, AttachmentProps, AttachmentsProps } from "./attachments-types";
|
|
2
|
+
import type { AttachmentEmptyProps, AttachmentHoverCardContentProps, AttachmentHoverCardProps, AttachmentHoverCardTriggerProps, AttachmentInfoProps, AttachmentListProps, AttachmentMetaProps, AttachmentNameProps, AttachmentPreviewProps, AttachmentProps, AttachmentsProps } from "./attachments-types.js";
|
|
3
3
|
declare function Attachments({ variant, className, children, ...props }: AttachmentsProps): React.JSX.Element | null;
|
|
4
4
|
declare function AttachmentList({ variant, ...props }: AttachmentListProps): React.JSX.Element;
|
|
5
5
|
declare function Attachment({ attachment, children, className, data, onRemove, ...props }: AttachmentProps): React.JSX.Element | null;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { FileTextIcon, GlobeIcon, ImageIcon, Music2Icon, PaperclipIcon, VideoIcon, } from "lucide-react";
|
|
3
3
|
import * as React from "react";
|
|
4
|
-
import { AttachmentRemove } from "./attachments-actions";
|
|
5
|
-
import { AttachmentStatus, renderAttachmentPreview } from "./attachments-preview";
|
|
6
|
-
import { AttachmentItemContext, AttachmentsContext, useAttachmentContext, useAttachmentsContext, useOptionalAttachments, } from "./attachments-context";
|
|
7
|
-
import { getAttachmentLabel, getAttachmentMeta, getMediaCategory } from "./attachments-model";
|
|
4
|
+
import { AttachmentRemove } from "./attachments-actions.js";
|
|
5
|
+
import { AttachmentStatus, renderAttachmentPreview } from "./attachments-preview.js";
|
|
6
|
+
import { AttachmentItemContext, AttachmentsContext, useAttachmentContext, useAttachmentsContext, useOptionalAttachments, } from "./attachments-context.js";
|
|
7
|
+
import { getAttachmentLabel, getAttachmentMeta, getMediaCategory } from "./attachments-model.js";
|
|
8
8
|
import { HoverCard, HoverCardContent, HoverCardTrigger } from "@ciridae/ui/hover-card";
|
|
9
9
|
import { cn } from "@ciridae/ui/utils";
|
|
10
10
|
const mediaCategoryIcons = {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { AttachmentActionAddFiles, AttachmentActionAddScreenshot, AttachmentRemove, useAttachmentDropTarget, } from "./attachments-actions";
|
|
2
|
-
export { AttachmentProvider, useAttachmentContext, useAttachments, useAttachmentsContext, useOptionalAttachments, } from "./attachments-context";
|
|
3
|
-
export { captureBrowserScreenshot, fileToAttachment, getAttachmentLabel, getMediaCategory, prepareAttachmentsForSubmit, } from "./attachments-model";
|
|
4
|
-
export { Attachment, AttachmentEmpty, AttachmentHoverCard, AttachmentHoverCardContent, AttachmentHoverCardTrigger, AttachmentInfo, AttachmentList, AttachmentMeta, AttachmentName, AttachmentPreview, Attachments, } from "./attachments-ui";
|
|
5
|
-
export type { AgenticAttachment, AttachmentActionAddFilesProps, AttachmentActionAddScreenshotProps, AttachmentAddOptions, AttachmentControllerContextValue as AttachmentContextValue, AttachmentData, AttachmentEmptyProps, AttachmentError, AttachmentErrorCode, AttachmentHoverCardContentProps, AttachmentHoverCardProps, AttachmentHoverCardTriggerProps, AttachmentInfoProps, AttachmentListProps, AttachmentMediaCategory, AttachmentMetaProps, AttachmentNameProps, AttachmentPreviewProps, AttachmentProps, AttachmentProviderProps, AttachmentRemoveProps, AttachmentScreenshotStatus, AttachmentVariant, AttachmentsProps, } from "./attachments-types";
|
|
1
|
+
export { AttachmentActionAddFiles, AttachmentActionAddScreenshot, AttachmentRemove, useAttachmentDropTarget, } from "./attachments-actions.js";
|
|
2
|
+
export { AttachmentProvider, useAttachmentContext, useAttachments, useAttachmentsContext, useOptionalAttachments, } from "./attachments-context.js";
|
|
3
|
+
export { captureBrowserScreenshot, fileToAttachment, getAttachmentLabel, getMediaCategory, prepareAttachmentsForSubmit, } from "./attachments-model.js";
|
|
4
|
+
export { Attachment, AttachmentEmpty, AttachmentHoverCard, AttachmentHoverCardContent, AttachmentHoverCardTrigger, AttachmentInfo, AttachmentList, AttachmentMeta, AttachmentName, AttachmentPreview, Attachments, } from "./attachments-ui.js";
|
|
5
|
+
export type { AgenticAttachment, AttachmentActionAddFilesProps, AttachmentActionAddScreenshotProps, AttachmentAddOptions, AttachmentControllerContextValue as AttachmentContextValue, AttachmentData, AttachmentEmptyProps, AttachmentError, AttachmentErrorCode, AttachmentHoverCardContentProps, AttachmentHoverCardProps, AttachmentHoverCardTriggerProps, AttachmentInfoProps, AttachmentListProps, AttachmentMediaCategory, AttachmentMetaProps, AttachmentNameProps, AttachmentPreviewProps, AttachmentProps, AttachmentProviderProps, AttachmentRemoveProps, AttachmentScreenshotStatus, AttachmentVariant, AttachmentsProps, } from "./attachments-types.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* eslint-disable react-refresh/only-export-components */
|
|
2
|
-
export { AttachmentActionAddFiles, AttachmentActionAddScreenshot, AttachmentRemove, useAttachmentDropTarget, } from "./attachments-actions";
|
|
3
|
-
export { AttachmentProvider, useAttachmentContext, useAttachments, useAttachmentsContext, useOptionalAttachments, } from "./attachments-context";
|
|
4
|
-
export { captureBrowserScreenshot, fileToAttachment, getAttachmentLabel, getMediaCategory, prepareAttachmentsForSubmit, } from "./attachments-model";
|
|
5
|
-
export { Attachment, AttachmentEmpty, AttachmentHoverCard, AttachmentHoverCardContent, AttachmentHoverCardTrigger, AttachmentInfo, AttachmentList, AttachmentMeta, AttachmentName, AttachmentPreview, Attachments, } from "./attachments-ui";
|
|
2
|
+
export { AttachmentActionAddFiles, AttachmentActionAddScreenshot, AttachmentRemove, useAttachmentDropTarget, } from "./attachments-actions.js";
|
|
3
|
+
export { AttachmentProvider, useAttachmentContext, useAttachments, useAttachmentsContext, useOptionalAttachments, } from "./attachments-context.js";
|
|
4
|
+
export { captureBrowserScreenshot, fileToAttachment, getAttachmentLabel, getMediaCategory, prepareAttachmentsForSubmit, } from "./attachments-model.js";
|
|
5
|
+
export { Attachment, AttachmentEmpty, AttachmentHoverCard, AttachmentHoverCardContent, AttachmentHoverCardTrigger, AttachmentInfo, AttachmentList, AttachmentMeta, AttachmentName, AttachmentPreview, Attachments, } from "./attachments-ui.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type * as React from "react";
|
|
2
|
-
import type { AgenticAudioSource, AgenticPreviewState } from "./types";
|
|
2
|
+
import type { AgenticAudioSource, AgenticPreviewState } from "./types.js";
|
|
3
3
|
type AudioPlayerProps = React.ComponentProps<"div"> & AgenticAudioSource & {
|
|
4
4
|
state?: AgenticPreviewState;
|
|
5
5
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Background, BackgroundVariant, ReactFlow, } from "@xyflow/react";
|
|
3
3
|
import "@xyflow/react/dist/style.css";
|
|
4
|
-
import { useAgenticTheme } from "./theme";
|
|
4
|
+
import { useAgenticTheme } from "./theme.js";
|
|
5
5
|
import { cn } from "@ciridae/ui/utils";
|
|
6
6
|
const defaultDeleteKeyCode = ["Backspace", "Delete"];
|
|
7
7
|
const workflowEdgeColor = "color-mix(in oklch, var(--foreground) 72%, transparent)";
|
|
@@ -6,7 +6,7 @@ import { Button } from "@ciridae/ui/button";
|
|
|
6
6
|
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@ciridae/ui/select";
|
|
7
7
|
import { cn } from "@ciridae/ui/utils";
|
|
8
8
|
import { css } from "@ciridae/ui/styled-system/css";
|
|
9
|
-
import { copyToClipboard } from "./clipboard";
|
|
9
|
+
import { copyToClipboard } from "./clipboard.js";
|
|
10
10
|
const CodeBlockContext = createContext({ code: "" });
|
|
11
11
|
const codeBlockContainerClassName = css({
|
|
12
12
|
backgroundColor: "card",
|
|
@@ -5,7 +5,7 @@ import { Avatar, AvatarFallback, AvatarImage } from "@ciridae/ui/avatar";
|
|
|
5
5
|
import { Button } from "@ciridae/ui/button";
|
|
6
6
|
import { Collapsible, CollapsibleContent, CollapsibleTrigger } from "@ciridae/ui/collapsible";
|
|
7
7
|
import { cn } from "@ciridae/ui/utils";
|
|
8
|
-
import { copyToClipboard } from "./clipboard";
|
|
8
|
+
import { copyToClipboard } from "./clipboard.js";
|
|
9
9
|
const CommitContext = createContext({ hash: "" });
|
|
10
10
|
function Commit({ children, className, defaultOpen = true, hash = "", ...props }) {
|
|
11
11
|
const contextValue = useMemo(() => ({ hash }), [hash]);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type * as React from "react";
|
|
2
2
|
import { StickToBottom } from "use-stick-to-bottom";
|
|
3
|
-
import type { AgenticMessage } from "./types";
|
|
3
|
+
import type { AgenticMessage } from "./types.js";
|
|
4
4
|
import { Button } from "@ciridae/ui/button";
|
|
5
5
|
type ConversationProps = React.ComponentProps<typeof StickToBottom>;
|
|
6
6
|
type ConversationContentProps = React.ComponentProps<typeof StickToBottom.Content>;
|
|
@@ -5,7 +5,7 @@ import { Badge } from "@ciridae/ui/badge";
|
|
|
5
5
|
import { Button } from "@ciridae/ui/button";
|
|
6
6
|
import { Switch } from "@ciridae/ui/switch";
|
|
7
7
|
import { cn } from "@ciridae/ui/utils";
|
|
8
|
-
import { copyToClipboard } from "./clipboard";
|
|
8
|
+
import { copyToClipboard } from "./clipboard.js";
|
|
9
9
|
const EnvironmentVariablesContext = createContext(null);
|
|
10
10
|
const EnvironmentVariableContext = createContext({ value: "" });
|
|
11
11
|
function useEnvironmentVariables() {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type * as React from "react";
|
|
2
2
|
import { Streamdown } from "streamdown";
|
|
3
|
-
import { MessageBranch, MessageBranchContent, MessageBranchNext, MessageBranchPage, MessageBranchPrevious, MessageBranchSelector, type MessageBranchContentProps, type MessageBranchNextProps, type MessageBranchPageProps, type MessageBranchPreviousProps, type MessageBranchProps, type MessageBranchSelectorProps } from "./message-branch";
|
|
4
|
-
import type { AgenticMessageRole } from "./types";
|
|
3
|
+
import { MessageBranch, MessageBranchContent, MessageBranchNext, MessageBranchPage, MessageBranchPrevious, MessageBranchSelector, type MessageBranchContentProps, type MessageBranchNextProps, type MessageBranchPageProps, type MessageBranchPreviousProps, type MessageBranchProps, type MessageBranchSelectorProps } from "./message-branch.js";
|
|
4
|
+
import type { AgenticMessageRole } from "./types.js";
|
|
5
5
|
import "./message-response.css";
|
|
6
6
|
import { Button } from "@ciridae/ui/button";
|
|
7
7
|
type MessageProps = React.ComponentProps<"div"> & {
|
|
@@ -6,8 +6,8 @@ import { mermaid } from "@streamdown/mermaid";
|
|
|
6
6
|
import { createContext, memo, useContext, useEffect, useMemo, useState } from "react";
|
|
7
7
|
import { bundledLanguages } from "shiki";
|
|
8
8
|
import { Streamdown, useIsCodeFenceIncomplete, } from "streamdown";
|
|
9
|
-
import { CodeBlock, CodeBlockContent, CodeBlockCopyButton, CodeBlockHeader, CodeBlockTitle, } from "./code-block";
|
|
10
|
-
import { MessageBranch, MessageBranchContent, MessageBranchNext, MessageBranchPage, MessageBranchPrevious, MessageBranchSelector, } from "./message-branch";
|
|
9
|
+
import { CodeBlock, CodeBlockContent, CodeBlockCopyButton, CodeBlockHeader, CodeBlockTitle, } from "./code-block.js";
|
|
10
|
+
import { MessageBranch, MessageBranchContent, MessageBranchNext, MessageBranchPage, MessageBranchPrevious, MessageBranchSelector, } from "./message-branch.js";
|
|
11
11
|
import "./message-response.css";
|
|
12
12
|
import { Button } from "@ciridae/ui/button";
|
|
13
13
|
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "@ciridae/ui/tooltip";
|
|
@@ -196,7 +196,7 @@ function createMermaidMarkdown(code, meta) {
|
|
|
196
196
|
return `${fence}${info}\n${code}\n${fence}`;
|
|
197
197
|
}
|
|
198
198
|
function getCodeLanguage(className) {
|
|
199
|
-
const language = className?.match(/language-(
|
|
199
|
+
const language = className?.match(/language-(\S+)/)?.[1];
|
|
200
200
|
if (language && isBundledLanguage(language))
|
|
201
201
|
return language;
|
|
202
202
|
return "tsx";
|
|
@@ -213,12 +213,19 @@ function getCodeText(children) {
|
|
|
213
213
|
return children.map(getCodeText).join("");
|
|
214
214
|
return "";
|
|
215
215
|
}
|
|
216
|
+
// Undefined wherever the query cannot be asked: no window under react-dom/server, no
|
|
217
|
+
// matchMedia under jsdom. Callers treat that as "no stated preference".
|
|
218
|
+
function prefersReducedMotionQuery() {
|
|
219
|
+
if (typeof window === "undefined")
|
|
220
|
+
return undefined;
|
|
221
|
+
return window.matchMedia?.("(prefers-reduced-motion: reduce)");
|
|
222
|
+
}
|
|
216
223
|
function usePrefersReducedMotion() {
|
|
217
|
-
const [prefersReducedMotion, setPrefersReducedMotion] = useState(() =>
|
|
224
|
+
const [prefersReducedMotion, setPrefersReducedMotion] = useState(() => prefersReducedMotionQuery()?.matches ?? false);
|
|
218
225
|
useEffect(() => {
|
|
219
|
-
|
|
226
|
+
const mediaQuery = prefersReducedMotionQuery();
|
|
227
|
+
if (!mediaQuery)
|
|
220
228
|
return;
|
|
221
|
-
const mediaQuery = window.matchMedia("(prefers-reduced-motion: reduce)");
|
|
222
229
|
const handleChange = (event) => setPrefersReducedMotion(event.matches);
|
|
223
230
|
mediaQuery.addEventListener("change", handleChange);
|
|
224
231
|
return () => mediaQuery.removeEventListener("change", handleChange);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import type { AgenticMicOption } from "./types";
|
|
2
|
+
import type { AgenticMicOption } from "./types.js";
|
|
3
3
|
import { CommandEmpty, CommandInput, CommandItem, CommandList } from "@ciridae/ui/command";
|
|
4
4
|
import { Popover, PopoverContent, PopoverTrigger } from "@ciridae/ui/popover";
|
|
5
5
|
type MicSelectorContextValue = {
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
/* eslint-disable
|
|
2
|
+
/* eslint-disable react-refresh/only-export-components */
|
|
3
3
|
import { ChevronsUpDownIcon } from "lucide-react";
|
|
4
4
|
import * as React from "react";
|
|
5
5
|
import { Button } from "@ciridae/ui/button";
|
|
6
6
|
import { Command, CommandEmpty, CommandInput, CommandItem, CommandList } from "@ciridae/ui/command";
|
|
7
7
|
import { Popover, PopoverContent, PopoverTrigger } from "@ciridae/ui/popover";
|
|
8
8
|
import { cn } from "@ciridae/ui/utils";
|
|
9
|
-
import { useControllableState } from "./use-controllable-state";
|
|
10
|
-
const deviceIdRegex = /\(([\da-
|
|
9
|
+
import { useControllableState } from "./use-controllable-state.js";
|
|
10
|
+
const deviceIdRegex = /\(([\da-f]{4}:[\da-f]{4})\)$/i;
|
|
11
11
|
const MicSelectorContext = React.createContext(null);
|
|
12
12
|
function MicSelector({ children, defaultOpen = false, defaultValue, mics, onOpenChange, onValueChange, open: openProp, value: valueProp, ...props }) {
|
|
13
13
|
const [value, setValue] = useControllableState({
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { useRive, useStateMachineInput, useViewModel, useViewModelInstance, useViewModelInstanceColor, } from "@rive-app/react-webgl2";
|
|
3
3
|
import { memo, useEffect, useMemo, useRef, useState } from "react";
|
|
4
|
-
import { useAgenticTheme } from "./theme";
|
|
4
|
+
import { useAgenticTheme } from "./theme.js";
|
|
5
5
|
import { cn } from "@ciridae/ui/utils";
|
|
6
6
|
const HALO_SOURCE = "/assets/persona/halo-2.0.riv";
|
|
7
7
|
const STATE_MACHINE = "default";
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
export { AttachmentActionAddFiles as PromptInputActionAddAttachments, AttachmentActionAddScreenshot as PromptInputActionAddScreenshot, } from "./attachments";
|
|
3
|
-
export type { AttachmentActionAddFilesProps as PromptInputActionAddAttachmentsProps, AttachmentActionAddScreenshotProps as PromptInputActionAddScreenshotProps, } from "./attachments";
|
|
4
|
-
export * from "./prompt-input-action-menu";
|
|
5
|
-
export * from "./prompt-input-command";
|
|
6
|
-
export * from "./prompt-input-hover-card";
|
|
7
|
-
export * from "./prompt-input-select";
|
|
8
|
-
export * from "./prompt-input-tabs";
|
|
9
|
-
import { type AgenticAttachment, type AttachmentProviderProps } from "./attachments";
|
|
10
|
-
import type { AgenticChatStatus } from "./types";
|
|
2
|
+
export { AttachmentActionAddFiles as PromptInputActionAddAttachments, AttachmentActionAddScreenshot as PromptInputActionAddScreenshot, } from "./attachments.js";
|
|
3
|
+
export type { AttachmentActionAddFilesProps as PromptInputActionAddAttachmentsProps, AttachmentActionAddScreenshotProps as PromptInputActionAddScreenshotProps, } from "./attachments.js";
|
|
4
|
+
export * from "./prompt-input-action-menu.js";
|
|
5
|
+
export * from "./prompt-input-command.js";
|
|
6
|
+
export * from "./prompt-input-hover-card.js";
|
|
7
|
+
export * from "./prompt-input-select.js";
|
|
8
|
+
export * from "./prompt-input-tabs.js";
|
|
9
|
+
import { type AgenticAttachment, type AttachmentProviderProps } from "./attachments.js";
|
|
10
|
+
import type { AgenticChatStatus } from "./types.js";
|
|
11
11
|
import { Button } from "@ciridae/ui/button";
|
|
12
12
|
import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupTextarea } from "@ciridae/ui/input-group";
|
|
13
13
|
type PromptInputMessage = {
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
/* eslint-disable
|
|
2
|
+
/* eslint-disable react-refresh/only-export-components */
|
|
3
3
|
import { ArrowUpIcon, SquareIcon } from "lucide-react";
|
|
4
4
|
import * as React from "react";
|
|
5
|
-
export { AttachmentActionAddFiles as PromptInputActionAddAttachments, AttachmentActionAddScreenshot as PromptInputActionAddScreenshot, } from "./attachments";
|
|
6
|
-
export * from "./prompt-input-action-menu";
|
|
7
|
-
export * from "./prompt-input-command";
|
|
8
|
-
export * from "./prompt-input-hover-card";
|
|
9
|
-
export * from "./prompt-input-select";
|
|
10
|
-
export * from "./prompt-input-tabs";
|
|
11
|
-
import { AttachmentProvider, prepareAttachmentsForSubmit, useAttachmentDropTarget, useAttachments, useOptionalAttachments, } from "./attachments";
|
|
5
|
+
export { AttachmentActionAddFiles as PromptInputActionAddAttachments, AttachmentActionAddScreenshot as PromptInputActionAddScreenshot, } from "./attachments.js";
|
|
6
|
+
export * from "./prompt-input-action-menu.js";
|
|
7
|
+
export * from "./prompt-input-command.js";
|
|
8
|
+
export * from "./prompt-input-hover-card.js";
|
|
9
|
+
export * from "./prompt-input-select.js";
|
|
10
|
+
export * from "./prompt-input-tabs.js";
|
|
11
|
+
import { AttachmentProvider, prepareAttachmentsForSubmit, useAttachmentDropTarget, useAttachments, useOptionalAttachments, } from "./attachments.js";
|
|
12
12
|
import { Button } from "@ciridae/ui/button";
|
|
13
13
|
import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupTextarea, } from "@ciridae/ui/input-group";
|
|
14
14
|
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from "@ciridae/ui/tooltip";
|
|
@@ -6,7 +6,7 @@ import { mermaid } from "@streamdown/mermaid";
|
|
|
6
6
|
import { BrainIcon, ChevronDownIcon } from "lucide-react";
|
|
7
7
|
import { createContext, memo, useCallback, useContext, useEffect, useMemo, useRef, useState, } from "react";
|
|
8
8
|
import { Streamdown } from "streamdown";
|
|
9
|
-
import { Shimmer } from "./shimmer";
|
|
9
|
+
import { Shimmer } from "./shimmer.js";
|
|
10
10
|
import "./message-response.css";
|
|
11
11
|
import { Collapsible, CollapsibleContent, CollapsibleTrigger } from "@ciridae/ui/collapsible";
|
|
12
12
|
import { cn } from "@ciridae/ui/utils";
|
|
@@ -3,7 +3,7 @@ import { CheckIcon, CopyIcon } from "lucide-react";
|
|
|
3
3
|
import { createContext, useContext, useMemo, useState } from "react";
|
|
4
4
|
import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, } from "@ciridae/ui/input-group";
|
|
5
5
|
import { cn } from "@ciridae/ui/utils";
|
|
6
|
-
import { copyToClipboard } from "./clipboard";
|
|
6
|
+
import { copyToClipboard } from "./clipboard.js";
|
|
7
7
|
const SnippetContext = createContext({ value: "" });
|
|
8
8
|
function useSnippet() {
|
|
9
9
|
return useContext(SnippetContext);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type * as React from "react";
|
|
2
|
-
import type { AgenticSpeechStatus } from "./types";
|
|
2
|
+
import type { AgenticSpeechStatus } from "./types.js";
|
|
3
3
|
import { Button } from "@ciridae/ui/button";
|
|
4
4
|
type SpeechInputProps = React.ComponentProps<"div"> & {
|
|
5
5
|
disabled?: boolean;
|
|
@@ -4,7 +4,7 @@ import { createContext, useContext, useMemo, useState } from "react";
|
|
|
4
4
|
import { Button } from "@ciridae/ui/button";
|
|
5
5
|
import { Collapsible, CollapsibleContent, CollapsibleTrigger } from "@ciridae/ui/collapsible";
|
|
6
6
|
import { cn } from "@ciridae/ui/utils";
|
|
7
|
-
import { copyToClipboard } from "./clipboard";
|
|
7
|
+
import { copyToClipboard } from "./clipboard.js";
|
|
8
8
|
const StackTraceContext = createContext(null);
|
|
9
9
|
function useStackTrace() {
|
|
10
10
|
const context = useContext(StackTraceContext);
|
|
@@ -63,10 +63,17 @@ function parseStackFrames(stack) {
|
|
|
63
63
|
}
|
|
64
64
|
function parseStackLine(line) {
|
|
65
65
|
const trimmed = line.trim().replace(/^at\s+/, "");
|
|
66
|
-
const
|
|
67
|
-
if (!
|
|
66
|
+
const location = /:(\d+):(\d+)\)?$/.exec(trimmed);
|
|
67
|
+
if (!location)
|
|
68
68
|
return null;
|
|
69
|
-
|
|
69
|
+
const locationPrefix = trimmed.slice(0, location.index);
|
|
70
|
+
const methodSeparator = locationPrefix.lastIndexOf(" (");
|
|
71
|
+
return {
|
|
72
|
+
column: location[2],
|
|
73
|
+
file: methodSeparator === -1 ? locationPrefix : locationPrefix.slice(methodSeparator + 2),
|
|
74
|
+
line: location[1],
|
|
75
|
+
method: methodSeparator === -1 ? undefined : locationPrefix.slice(0, methodSeparator),
|
|
76
|
+
};
|
|
70
77
|
}
|
|
71
78
|
function formatLocation(frame) {
|
|
72
79
|
if (!frame.line)
|
|
@@ -3,7 +3,7 @@ import { CheckIcon, CopyIcon, SquareIcon, XIcon } from "lucide-react";
|
|
|
3
3
|
import { createContext, useContext, useMemo, useState } from "react";
|
|
4
4
|
import { Button } from "@ciridae/ui/button";
|
|
5
5
|
import { cn } from "@ciridae/ui/utils";
|
|
6
|
-
import { copyToClipboard } from "./clipboard";
|
|
6
|
+
import { copyToClipboard } from "./clipboard.js";
|
|
7
7
|
const TerminalContext = createContext({ output: "" });
|
|
8
8
|
const statusLabel = { error: "error", idle: "idle", running: "running", success: "success" };
|
|
9
9
|
const statusClass = {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type * as React from "react";
|
|
2
|
-
import type { AgenticToolState } from "./types";
|
|
2
|
+
import type { AgenticToolState } from "./types.js";
|
|
3
3
|
import { Collapsible, CollapsibleContent, CollapsibleTrigger } from "@ciridae/ui/collapsible";
|
|
4
4
|
type ToolProps = React.ComponentProps<typeof Collapsible>;
|
|
5
5
|
type ToolHeaderProps = Omit<React.ComponentProps<typeof CollapsibleTrigger>, "type"> & {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import type { AgenticVoiceOption } from "./types";
|
|
2
|
+
import type { AgenticVoiceOption } from "./types.js";
|
|
3
3
|
import { CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut } from "@ciridae/ui/command";
|
|
4
4
|
import { Dialog, DialogContent, DialogTrigger } from "@ciridae/ui/dialog";
|
|
5
5
|
type VoiceSelectorContextValue = {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
/* eslint-disable
|
|
2
|
+
/* eslint-disable react-refresh/only-export-components */
|
|
3
3
|
import { CircleSmallIcon, MarsIcon, PauseIcon, PlayIcon, TransgenderIcon, VenusAndMarsIcon, VenusIcon, } from "lucide-react";
|
|
4
4
|
import * as React from "react";
|
|
5
5
|
import { Button } from "@ciridae/ui/button";
|
|
@@ -7,7 +7,7 @@ import { Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, Comma
|
|
|
7
7
|
import { Dialog, DialogContent, DialogTitle, DialogTrigger } from "@ciridae/ui/dialog";
|
|
8
8
|
import { Spinner } from "@ciridae/ui/spinner";
|
|
9
9
|
import { cn } from "@ciridae/ui/utils";
|
|
10
|
-
import { useControllableState } from "./use-controllable-state";
|
|
10
|
+
import { useControllableState } from "./use-controllable-state.js";
|
|
11
11
|
const VoiceSelectorContext = React.createContext(null);
|
|
12
12
|
function VoiceSelector({ children, defaultOpen = false, defaultValue, onOpenChange, onValueChange, open: openProp, value: valueProp, voices = [], ...props }) {
|
|
13
13
|
const [value, setValue] = useControllableState({
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Artifact, ArtifactContent, ArtifactDescription, ArtifactHeader, ArtifactTitle, } from "../agentic/artifact";
|
|
3
|
-
import { CodeBlock, CodeBlockContent, CodeBlockCopyButton, CodeBlockHeader, CodeBlockTitle, } from "../agentic/code-block";
|
|
4
|
-
import { Sandbox, SandboxContent, SandboxHeader, SandboxTabContent, SandboxTabs, SandboxTabsBar, SandboxTabsList, SandboxTabsTrigger, } from "../agentic/sandbox";
|
|
5
|
-
import { WebPreview, WebPreviewBody, WebPreviewNavigation, WebPreviewNavigationButton, WebPreviewUrl, } from "../agentic/web-preview";
|
|
2
|
+
import { Artifact, ArtifactContent, ArtifactDescription, ArtifactHeader, ArtifactTitle, } from "../agentic/artifact.js";
|
|
3
|
+
import { CodeBlock, CodeBlockContent, CodeBlockCopyButton, CodeBlockHeader, CodeBlockTitle, } from "../agentic/code-block.js";
|
|
4
|
+
import { Sandbox, SandboxContent, SandboxHeader, SandboxTabContent, SandboxTabs, SandboxTabsBar, SandboxTabsList, SandboxTabsTrigger, } from "../agentic/sandbox.js";
|
|
5
|
+
import { WebPreview, WebPreviewBody, WebPreviewNavigation, WebPreviewNavigationButton, WebPreviewUrl, } from "../agentic/web-preview.js";
|
|
6
6
|
import { cn } from "@ciridae/ui/utils";
|
|
7
7
|
function ArtifactWorkbench({ className, code, previewUrl, title, ...props }) {
|
|
8
8
|
return (_jsxs("div", { "data-slot": "artifact-workbench", className: cn("grid w-full gap-4 lg:grid-cols-[minmax(0,1fr)_minmax(18rem,24rem)]", className), ...props, children: [_jsx(ArtifactWorkbenchPreviewPane, { previewUrl: previewUrl, title: title }), _jsx(ArtifactWorkbenchSourcePane, { code: code })] }));
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type * as React from "react";
|
|
2
|
-
import type { AgenticApproval, AgenticToolPart } from "../agentic/types";
|
|
2
|
+
import type { AgenticApproval, AgenticToolPart } from "../agentic/types.js";
|
|
3
3
|
type ToolApprovalPanelProps = React.ComponentProps<"div"> & {
|
|
4
4
|
approval?: AgenticApproval;
|
|
5
5
|
onApprove?: () => void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { ApprovalRequest, ApprovalRequestAction, ApprovalRequestActions, ApprovalRequestDescription, ApprovalRequestPending, ApprovalRequestTitle, } from "../agentic/approval-request";
|
|
3
|
-
import { Tool, ToolContent, ToolHeader, ToolInput, ToolOutput } from "../agentic/tool";
|
|
2
|
+
import { ApprovalRequest, ApprovalRequestAction, ApprovalRequestActions, ApprovalRequestDescription, ApprovalRequestPending, ApprovalRequestTitle, } from "../agentic/approval-request.js";
|
|
3
|
+
import { Tool, ToolContent, ToolHeader, ToolInput, ToolOutput } from "../agentic/tool.js";
|
|
4
4
|
import { cn } from "@ciridae/ui/utils";
|
|
5
5
|
function ToolApprovalPanel({ approval, className, onApprove, onReject, tool, ...props }) {
|
|
6
6
|
return (_jsx("div", { "data-slot": "tool-approval-panel", className: cn("grid gap-3", className), ...props, children: _jsxs(Tool, { defaultOpen: true, children: [_jsx(ToolHeader, { state: tool.state, title: tool.toolName, type: tool.type }), _jsxs(ToolContent, { children: [_jsx(ToolInput, { input: tool.input }), _jsx(ToolApprovalPanelRequest, { approval: approval, onApprove: onApprove, onReject: onReject, state: tool.state }), _jsx(ToolOutput, { errorText: tool.errorText, output: tool.output })] })] }) }));
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import type { AgenticAudioSource, AgenticMicOption, AgenticSpeechStatus, AgenticTranscriptSegment, AgenticVoiceOption } from "../agentic/types";
|
|
2
|
+
import type { AgenticAudioSource, AgenticMicOption, AgenticSpeechStatus, AgenticTranscriptSegment, AgenticVoiceOption } from "../agentic/types.js";
|
|
3
3
|
type VoiceAgentPanelProps = React.ComponentProps<"div"> & {
|
|
4
4
|
audio?: AgenticAudioSource;
|
|
5
5
|
mics?: AgenticMicOption[];
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import * as React from "react";
|
|
3
|
-
import { AudioPlayer } from "../agentic/audio-player";
|
|
4
|
-
import { MicSelector } from "../agentic/mic-selector";
|
|
5
|
-
import { Persona } from "../agentic/persona";
|
|
6
|
-
import { SpeechInput } from "../agentic/speech-input";
|
|
7
|
-
import { Transcription } from "../agentic/transcription";
|
|
8
|
-
import { VoiceSelector } from "../agentic/voice-selector";
|
|
3
|
+
import { AudioPlayer } from "../agentic/audio-player.js";
|
|
4
|
+
import { MicSelector } from "../agentic/mic-selector.js";
|
|
5
|
+
import { Persona } from "../agentic/persona.js";
|
|
6
|
+
import { SpeechInput } from "../agentic/speech-input.js";
|
|
7
|
+
import { Transcription } from "../agentic/transcription.js";
|
|
8
|
+
import { VoiceSelector } from "../agentic/voice-selector.js";
|
|
9
9
|
import { Badge } from "@ciridae/ui/badge";
|
|
10
10
|
import { cn } from "@ciridae/ui/utils";
|
|
11
11
|
const defaultMics = [
|