@ciridae/ui-agent 0.3.0

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 (70) hide show
  1. package/README.md +19 -0
  2. package/dist/components/agentic/agent-plan.d.ts +27 -0
  3. package/dist/components/agentic/agent-plan.js +43 -0
  4. package/dist/components/agentic/agent-queue.d.ts +46 -0
  5. package/dist/components/agentic/agent-queue.js +53 -0
  6. package/dist/components/agentic/agent-task.d.ts +16 -0
  7. package/dist/components/agentic/agent-task.js +20 -0
  8. package/dist/components/agentic/approval-request.d.ts +24 -0
  9. package/dist/components/agentic/approval-request.js +57 -0
  10. package/dist/components/agentic/artifact.d.ts +24 -0
  11. package/dist/components/agentic/artifact.js +147 -0
  12. package/dist/components/agentic/attachments.d.ts +124 -0
  13. package/dist/components/agentic/attachments.js +591 -0
  14. package/dist/components/agentic/clipboard.d.ts +2 -0
  15. package/dist/components/agentic/clipboard.js +12 -0
  16. package/dist/components/agentic/code-block.d.ts +44 -0
  17. package/dist/components/agentic/code-block.js +182 -0
  18. package/dist/components/agentic/conversation.d.ts +25 -0
  19. package/dist/components/agentic/conversation.js +56 -0
  20. package/dist/components/agentic/file-tree.d.ts +24 -0
  21. package/dist/components/agentic/file-tree.js +56 -0
  22. package/dist/components/agentic/image.d.ts +9 -0
  23. package/dist/components/agentic/image.js +11 -0
  24. package/dist/components/agentic/inline-citation.d.ts +40 -0
  25. package/dist/components/agentic/inline-citation.js +111 -0
  26. package/dist/components/agentic/message-branch.d.ts +20 -0
  27. package/dist/components/agentic/message-branch.js +83 -0
  28. package/dist/components/agentic/message-response.css +242 -0
  29. package/dist/components/agentic/message-response.css.d.ts +2 -0
  30. package/dist/components/agentic/message.d.ts +29 -0
  31. package/dist/components/agentic/message.js +191 -0
  32. package/dist/components/agentic/model-selector.d.ts +39 -0
  33. package/dist/components/agentic/model-selector.js +47 -0
  34. package/dist/components/agentic/prompt-input-action-menu.d.ts +16 -0
  35. package/dist/components/agentic/prompt-input-action-menu.js +22 -0
  36. package/dist/components/agentic/prompt-input-command.d.ts +18 -0
  37. package/dist/components/agentic/prompt-input-command.js +25 -0
  38. package/dist/components/agentic/prompt-input-hover-card.d.ts +10 -0
  39. package/dist/components/agentic/prompt-input-hover-card.js +13 -0
  40. package/dist/components/agentic/prompt-input-select.d.ts +14 -0
  41. package/dist/components/agentic/prompt-input-select.js +19 -0
  42. package/dist/components/agentic/prompt-input-tabs.d.ts +17 -0
  43. package/dist/components/agentic/prompt-input-tabs.js +45 -0
  44. package/dist/components/agentic/prompt-input.d.ts +66 -0
  45. package/dist/components/agentic/prompt-input.js +227 -0
  46. package/dist/components/agentic/reasoning.d.ts +21 -0
  47. package/dist/components/agentic/reasoning.js +106 -0
  48. package/dist/components/agentic/run-checkpoint.d.ts +13 -0
  49. package/dist/components/agentic/run-checkpoint.js +19 -0
  50. package/dist/components/agentic/run-trace.d.ts +30 -0
  51. package/dist/components/agentic/run-trace.js +56 -0
  52. package/dist/components/agentic/sandbox.d.ts +24 -0
  53. package/dist/components/agentic/sandbox.js +33 -0
  54. package/dist/components/agentic/schema-display.d.ts +39 -0
  55. package/dist/components/agentic/schema-display.js +56 -0
  56. package/dist/components/agentic/shimmer.d.ts +11 -0
  57. package/dist/components/agentic/shimmer.js +16 -0
  58. package/dist/components/agentic/snippet.d.ts +18 -0
  59. package/dist/components/agentic/snippet.js +35 -0
  60. package/dist/components/agentic/sources.d.ts +16 -0
  61. package/dist/components/agentic/sources.js +130 -0
  62. package/dist/components/agentic/terminal.d.ts +24 -0
  63. package/dist/components/agentic/terminal.js +47 -0
  64. package/dist/components/agentic/tool.d.ts +25 -0
  65. package/dist/components/agentic/tool.js +73 -0
  66. package/dist/components/agentic/types.d.ts +172 -0
  67. package/dist/components/agentic/types.js +1 -0
  68. package/dist/components/agentic/web-preview.d.ts +25 -0
  69. package/dist/components/agentic/web-preview.js +33 -0
  70. package/package.json +179 -0
@@ -0,0 +1,172 @@
1
+ type AgenticMessageRole = "user" | "assistant" | "system";
2
+ type AgenticChatStatus = "idle" | "submitted" | "streaming" | "error";
3
+ type AgenticMessagePart = {
4
+ isStreaming?: boolean;
5
+ text: string;
6
+ type: "text";
7
+ };
8
+ type AgenticMessage = {
9
+ createdAt?: string;
10
+ id: string;
11
+ metadata?: Record<string, unknown>;
12
+ parts: AgenticMessagePart[];
13
+ role: AgenticMessageRole;
14
+ };
15
+ type AgenticPromptAttachmentKind = "file" | "screenshot" | "source";
16
+ type AgenticPromptAttachmentStatus = "idle" | "uploading" | "complete" | "error";
17
+ type AgenticPromptAttachment = {
18
+ error?: string;
19
+ file?: File;
20
+ id: string;
21
+ kind?: AgenticPromptAttachmentKind;
22
+ mediaType?: string;
23
+ metadata?: Record<string, unknown>;
24
+ name: string;
25
+ size?: number;
26
+ status?: AgenticPromptAttachmentStatus;
27
+ url?: string;
28
+ };
29
+ type AgenticPromptSubmitPayload = {
30
+ attachments: AgenticPromptAttachment[];
31
+ text: string;
32
+ };
33
+ type AgenticSource = {
34
+ description?: string;
35
+ id: string;
36
+ metadata?: Record<string, unknown>;
37
+ quote?: string;
38
+ title?: string;
39
+ url?: string;
40
+ };
41
+ type AgenticToolState = "approval-requested" | "approval-responded" | "input-available" | "input-streaming" | "output-available" | "output-denied" | "output-error";
42
+ type AgenticToolPart = {
43
+ errorText?: string;
44
+ id?: string;
45
+ input?: unknown;
46
+ metadata?: Record<string, unknown>;
47
+ output?: unknown;
48
+ state: AgenticToolState;
49
+ toolName?: string;
50
+ type?: string;
51
+ };
52
+ type AgenticApproval = {
53
+ approved?: boolean;
54
+ id: string;
55
+ reason?: string;
56
+ };
57
+ type AgenticPlanStatus = "pending" | "active" | "complete" | "error";
58
+ type AgenticTaskStatus = AgenticPlanStatus;
59
+ type AgenticQueueItem = {
60
+ description?: string;
61
+ id: string;
62
+ metadata?: Record<string, unknown>;
63
+ status?: "pending" | "completed";
64
+ title: string;
65
+ };
66
+ type AgenticCheckpoint = {
67
+ createdAt?: string;
68
+ id: string;
69
+ label?: string;
70
+ metadata?: Record<string, unknown>;
71
+ };
72
+ type AgenticContextUsage = {
73
+ cacheCostText?: string;
74
+ cachedInputTokens?: number;
75
+ inputCostText?: string;
76
+ inputTokens?: number;
77
+ maxTokens: number;
78
+ outputCostText?: string;
79
+ outputTokens?: number;
80
+ reasoningCostText?: string;
81
+ reasoningTokens?: number;
82
+ totalCostText?: string;
83
+ usedTokens: number;
84
+ };
85
+ type AgenticTraceStep = {
86
+ description?: string;
87
+ id: string;
88
+ label: string;
89
+ metadata?: Record<string, unknown>;
90
+ status?: "active" | "complete" | "pending";
91
+ };
92
+ type AgenticGeneratedImage = {
93
+ alt?: string;
94
+ base64?: string;
95
+ height?: number;
96
+ id?: string;
97
+ mediaType?: string;
98
+ src?: string;
99
+ width?: number;
100
+ };
101
+ type AgenticCommitFile = {
102
+ additions?: number;
103
+ deletions?: number;
104
+ path: string;
105
+ status?: "added" | "deleted" | "modified" | "renamed";
106
+ };
107
+ type AgenticCommitSummary = {
108
+ author?: string;
109
+ files?: AgenticCommitFile[];
110
+ hash: string;
111
+ message: string;
112
+ timestamp?: string;
113
+ };
114
+ type AgenticPackageDependency = {
115
+ name: string;
116
+ version?: string;
117
+ };
118
+ type AgenticTestStatus = "passed" | "failed" | "skipped" | "running";
119
+ type AgenticTestResult = {
120
+ duration?: string;
121
+ error?: string;
122
+ id: string;
123
+ name: string;
124
+ status: AgenticTestStatus;
125
+ };
126
+ type AgenticArtifact = {
127
+ description?: string;
128
+ id: string;
129
+ metadata?: Record<string, unknown>;
130
+ title: string;
131
+ type?: "code" | "document" | "image" | "preview" | "schema" | "terminal";
132
+ };
133
+ type AgenticPreviewState = "idle" | "loading" | "ready" | "error";
134
+ type AgenticSpeechStatus = "idle" | "listening" | "processing" | "speaking" | "error";
135
+ type AgenticMicOption = {
136
+ description?: string;
137
+ disabled?: boolean;
138
+ id: string;
139
+ label: string;
140
+ mediaType?: string;
141
+ metadata?: Record<string, unknown>;
142
+ };
143
+ type AgenticVoiceOption = {
144
+ accent?: string;
145
+ age?: string;
146
+ description?: string;
147
+ disabled?: boolean;
148
+ gender?: "male" | "female" | "transgender" | "androgyne" | "non-binary" | "intersex" | (string & Record<never, never>);
149
+ id: string;
150
+ label: string;
151
+ metadata?: Record<string, unknown>;
152
+ previewLabel?: string;
153
+ provider?: string;
154
+ };
155
+ type AgenticTranscriptSegmentStatus = "interim" | "final" | "error";
156
+ type AgenticTranscriptSegment = {
157
+ createdAt?: string;
158
+ id: string;
159
+ metadata?: Record<string, unknown>;
160
+ role: AgenticMessageRole;
161
+ status?: AgenticTranscriptSegmentStatus;
162
+ text: string;
163
+ };
164
+ type AgenticAudioSource = {
165
+ description?: string;
166
+ duration?: string;
167
+ id?: string;
168
+ metadata?: Record<string, unknown>;
169
+ src?: string;
170
+ title?: string;
171
+ };
172
+ export type { AgenticApproval, AgenticAudioSource, AgenticArtifact, AgenticChatStatus, AgenticCheckpoint, AgenticCommitFile, AgenticCommitSummary, AgenticContextUsage, AgenticGeneratedImage, AgenticMessage, AgenticMessagePart, AgenticMessageRole, AgenticMicOption, AgenticPackageDependency, AgenticPlanStatus, AgenticPreviewState, AgenticPromptAttachment, AgenticPromptAttachmentKind, AgenticPromptAttachmentStatus, AgenticPromptSubmitPayload, AgenticQueueItem, AgenticSource, AgenticSpeechStatus, AgenticTaskStatus, AgenticTestResult, AgenticTestStatus, AgenticToolPart, AgenticToolState, AgenticTraceStep, AgenticTranscriptSegment, AgenticTranscriptSegmentStatus, AgenticVoiceOption, };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,25 @@
1
+ import type * as React from "react";
2
+ import { Button } from "@ciridae/ui/button";
3
+ import { Input } from "@ciridae/ui/input";
4
+ type WebPreviewProps = React.ComponentProps<"div"> & {
5
+ url: string;
6
+ };
7
+ type WebPreviewNavigationProps = React.ComponentProps<"div">;
8
+ type WebPreviewNavigationButtonProps = React.ComponentProps<typeof Button> & {
9
+ action?: "back" | "forward" | "reload";
10
+ };
11
+ type WebPreviewUrlProps = Omit<React.ComponentProps<typeof Input>, "value"> & {
12
+ value?: string;
13
+ };
14
+ type WebPreviewBodyProps = React.ComponentProps<"iframe"> & {
15
+ src?: string;
16
+ };
17
+ type WebPreviewConsoleProps = React.ComponentProps<"div">;
18
+ declare function WebPreview({ children, className, url, ...props }: WebPreviewProps): React.JSX.Element;
19
+ declare function WebPreviewNavigation({ className, ...props }: WebPreviewNavigationProps): React.JSX.Element;
20
+ declare function WebPreviewNavigationButton({ action, children, ...props }: WebPreviewNavigationButtonProps): React.JSX.Element;
21
+ declare function WebPreviewUrl({ className, value, ...props }: WebPreviewUrlProps): React.JSX.Element;
22
+ declare function WebPreviewBody({ className, referrerPolicy, sandbox, src, title, ...props }: WebPreviewBodyProps): React.JSX.Element;
23
+ declare function WebPreviewConsole({ className, ...props }: WebPreviewConsoleProps): React.JSX.Element;
24
+ export { WebPreview, WebPreviewBody, WebPreviewConsole, WebPreviewNavigation, WebPreviewNavigationButton, WebPreviewUrl, };
25
+ export type { WebPreviewBodyProps, WebPreviewConsoleProps, WebPreviewNavigationButtonProps, WebPreviewNavigationProps, WebPreviewProps, WebPreviewUrlProps, };
@@ -0,0 +1,33 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { ArrowLeftIcon, ArrowRightIcon, RotateCwIcon } from "lucide-react";
3
+ import { createContext, useContext, useMemo } from "react";
4
+ import { Button } from "@ciridae/ui/button";
5
+ import { Input } from "@ciridae/ui/input";
6
+ import { cn } from "@ciridae/ui/utils";
7
+ const WebPreviewContext = createContext({ url: "" });
8
+ function useWebPreview() {
9
+ return useContext(WebPreviewContext);
10
+ }
11
+ function WebPreview({ children, className, url, ...props }) {
12
+ const contextValue = useMemo(() => ({ url }), [url]);
13
+ return (_jsx(WebPreviewContext.Provider, { value: contextValue, children: _jsx("div", { "data-slot": "web-preview", className: cn("flex min-h-0 w-full flex-col overflow-hidden rounded-lg border bg-card", className), ...props, children: children }) }));
14
+ }
15
+ function WebPreviewNavigation({ className, ...props }) {
16
+ return (_jsx("div", { "data-slot": "web-preview-navigation", className: cn("flex min-w-0 items-center gap-2 border-b p-2", className), ...props }));
17
+ }
18
+ function WebPreviewNavigationButton({ action = "reload", children, ...props }) {
19
+ const Icon = action === "back" ? ArrowLeftIcon : action === "forward" ? ArrowRightIcon : RotateCwIcon;
20
+ return (_jsx(Button, { "aria-label": action, size: "icon", type: "button", variant: "ghost", ...props, children: children ?? _jsx(Icon, { "aria-hidden": "true", className: "size-4" }) }));
21
+ }
22
+ function WebPreviewUrl({ className, value, ...props }) {
23
+ const { url } = useWebPreview();
24
+ return (_jsx(Input, { "data-slot": "web-preview-url", readOnly: true, value: value ?? url, className: cn("h-8 flex-1 font-mono text-xs", className), ...props }));
25
+ }
26
+ function WebPreviewBody({ className, referrerPolicy = "no-referrer", sandbox = "allow-scripts", src, title = "Web preview", ...props }) {
27
+ const { url } = useWebPreview();
28
+ return (_jsx("iframe", { "data-slot": "web-preview-body", className: cn("min-h-80 w-full flex-1 bg-background", className), referrerPolicy: referrerPolicy, sandbox: sandbox, src: src ?? url, title: title, ...props }));
29
+ }
30
+ function WebPreviewConsole({ className, ...props }) {
31
+ return (_jsx("div", { "data-slot": "web-preview-console", className: cn("border-t bg-muted/40 p-3 font-mono text-xs text-muted-foreground", className), ...props }));
32
+ }
33
+ export { WebPreview, WebPreviewBody, WebPreviewConsole, WebPreviewNavigation, WebPreviewNavigationButton, WebPreviewUrl, };
package/package.json ADDED
@@ -0,0 +1,179 @@
1
+ {
2
+ "name": "@ciridae/ui-agent",
3
+ "version": "0.3.0",
4
+ "type": "module",
5
+ "private": false,
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "git+https://github.com/ciridae-ai/int-ciridae-ui.git"
9
+ },
10
+ "publishConfig": {
11
+ "access": "public"
12
+ },
13
+ "sideEffects": [
14
+ "**/*.css"
15
+ ],
16
+ "exports": {
17
+ "./package.json": "./package.json",
18
+ "./agent-plan": {
19
+ "types": "./dist/components/agentic/agent-plan.d.ts",
20
+ "default": "./dist/components/agentic/agent-plan.js"
21
+ },
22
+ "./agent-queue": {
23
+ "types": "./dist/components/agentic/agent-queue.d.ts",
24
+ "default": "./dist/components/agentic/agent-queue.js"
25
+ },
26
+ "./agent-task": {
27
+ "types": "./dist/components/agentic/agent-task.d.ts",
28
+ "default": "./dist/components/agentic/agent-task.js"
29
+ },
30
+ "./approval-request": {
31
+ "types": "./dist/components/agentic/approval-request.d.ts",
32
+ "default": "./dist/components/agentic/approval-request.js"
33
+ },
34
+ "./artifact": {
35
+ "types": "./dist/components/agentic/artifact.d.ts",
36
+ "default": "./dist/components/agentic/artifact.js"
37
+ },
38
+ "./attachments": {
39
+ "types": "./dist/components/agentic/attachments.d.ts",
40
+ "default": "./dist/components/agentic/attachments.js"
41
+ },
42
+ "./clipboard": {
43
+ "types": "./dist/components/agentic/clipboard.d.ts",
44
+ "default": "./dist/components/agentic/clipboard.js"
45
+ },
46
+ "./code-block": {
47
+ "types": "./dist/components/agentic/code-block.d.ts",
48
+ "default": "./dist/components/agentic/code-block.js"
49
+ },
50
+ "./conversation": {
51
+ "types": "./dist/components/agentic/conversation.d.ts",
52
+ "default": "./dist/components/agentic/conversation.js"
53
+ },
54
+ "./file-tree": {
55
+ "types": "./dist/components/agentic/file-tree.d.ts",
56
+ "default": "./dist/components/agentic/file-tree.js"
57
+ },
58
+ "./image": {
59
+ "types": "./dist/components/agentic/image.d.ts",
60
+ "default": "./dist/components/agentic/image.js"
61
+ },
62
+ "./inline-citation": {
63
+ "types": "./dist/components/agentic/inline-citation.d.ts",
64
+ "default": "./dist/components/agentic/inline-citation.js"
65
+ },
66
+ "./message-branch": {
67
+ "types": "./dist/components/agentic/message-branch.d.ts",
68
+ "default": "./dist/components/agentic/message-branch.js"
69
+ },
70
+ "./message": {
71
+ "types": "./dist/components/agentic/message.d.ts",
72
+ "default": "./dist/components/agentic/message.js"
73
+ },
74
+ "./message-response.css": {
75
+ "types": "./dist/components/agentic/message-response.css.d.ts",
76
+ "default": "./dist/components/agentic/message-response.css"
77
+ },
78
+ "./model-selector": {
79
+ "types": "./dist/components/agentic/model-selector.d.ts",
80
+ "default": "./dist/components/agentic/model-selector.js"
81
+ },
82
+ "./prompt-input-action-menu": {
83
+ "types": "./dist/components/agentic/prompt-input-action-menu.d.ts",
84
+ "default": "./dist/components/agentic/prompt-input-action-menu.js"
85
+ },
86
+ "./prompt-input": {
87
+ "types": "./dist/components/agentic/prompt-input.d.ts",
88
+ "default": "./dist/components/agentic/prompt-input.js"
89
+ },
90
+ "./prompt-input-command": {
91
+ "types": "./dist/components/agentic/prompt-input-command.d.ts",
92
+ "default": "./dist/components/agentic/prompt-input-command.js"
93
+ },
94
+ "./prompt-input-hover-card": {
95
+ "types": "./dist/components/agentic/prompt-input-hover-card.d.ts",
96
+ "default": "./dist/components/agentic/prompt-input-hover-card.js"
97
+ },
98
+ "./prompt-input-select": {
99
+ "types": "./dist/components/agentic/prompt-input-select.d.ts",
100
+ "default": "./dist/components/agentic/prompt-input-select.js"
101
+ },
102
+ "./prompt-input-tabs": {
103
+ "types": "./dist/components/agentic/prompt-input-tabs.d.ts",
104
+ "default": "./dist/components/agentic/prompt-input-tabs.js"
105
+ },
106
+ "./reasoning": {
107
+ "types": "./dist/components/agentic/reasoning.d.ts",
108
+ "default": "./dist/components/agentic/reasoning.js"
109
+ },
110
+ "./run-checkpoint": {
111
+ "types": "./dist/components/agentic/run-checkpoint.d.ts",
112
+ "default": "./dist/components/agentic/run-checkpoint.js"
113
+ },
114
+ "./run-trace": {
115
+ "types": "./dist/components/agentic/run-trace.d.ts",
116
+ "default": "./dist/components/agentic/run-trace.js"
117
+ },
118
+ "./sandbox": {
119
+ "types": "./dist/components/agentic/sandbox.d.ts",
120
+ "default": "./dist/components/agentic/sandbox.js"
121
+ },
122
+ "./schema-display": {
123
+ "types": "./dist/components/agentic/schema-display.d.ts",
124
+ "default": "./dist/components/agentic/schema-display.js"
125
+ },
126
+ "./shimmer": {
127
+ "types": "./dist/components/agentic/shimmer.d.ts",
128
+ "default": "./dist/components/agentic/shimmer.js"
129
+ },
130
+ "./snippet": {
131
+ "types": "./dist/components/agentic/snippet.d.ts",
132
+ "default": "./dist/components/agentic/snippet.js"
133
+ },
134
+ "./sources": {
135
+ "types": "./dist/components/agentic/sources.d.ts",
136
+ "default": "./dist/components/agentic/sources.js"
137
+ },
138
+ "./terminal": {
139
+ "types": "./dist/components/agentic/terminal.d.ts",
140
+ "default": "./dist/components/agentic/terminal.js"
141
+ },
142
+ "./tool": {
143
+ "types": "./dist/components/agentic/tool.d.ts",
144
+ "default": "./dist/components/agentic/tool.js"
145
+ },
146
+ "./types": {
147
+ "types": "./dist/components/agentic/types.d.ts",
148
+ "default": "./dist/components/agentic/types.js"
149
+ },
150
+ "./agentic-types": {
151
+ "types": "./dist/components/agentic/types.d.ts",
152
+ "default": "./dist/components/agentic/types.js"
153
+ },
154
+ "./web-preview": {
155
+ "types": "./dist/components/agentic/web-preview.d.ts",
156
+ "default": "./dist/components/agentic/web-preview.js"
157
+ }
158
+ },
159
+ "files": [
160
+ "dist",
161
+ "README.md"
162
+ ],
163
+ "peerDependencies": {
164
+ "react": ">=18",
165
+ "react-dom": ">=18"
166
+ },
167
+ "dependencies": {
168
+ "@streamdown/cjk": "^1.0.3",
169
+ "@streamdown/code": "^1.1.1",
170
+ "@streamdown/math": "^1.0.2",
171
+ "@streamdown/mermaid": "^1.0.2",
172
+ "katex": "^0.17.0",
173
+ "lucide-react": "^1.23.0",
174
+ "shiki": "^4.3.0",
175
+ "streamdown": "^2.5.0",
176
+ "use-stick-to-bottom": "^1.1.6",
177
+ "@ciridae/ui": "0.3.0"
178
+ }
179
+ }