@ciridae/ui 0.2.5 → 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 (126) hide show
  1. package/dist/components/ui/item.d.ts +1 -1
  2. package/dist/styled-system/styles.css +393 -61
  3. package/dist/styles.css +2 -0
  4. package/package.json +2 -260
  5. package/dist/components/agentic/agent-card.d.ts +0 -28
  6. package/dist/components/agentic/agent-card.js +0 -27
  7. package/dist/components/agentic/agent-composer.d.ts +0 -44
  8. package/dist/components/agentic/agent-composer.js +0 -104
  9. package/dist/components/agentic/agent-context.d.ts +0 -28
  10. package/dist/components/agentic/agent-context.js +0 -102
  11. package/dist/components/agentic/agent-plan.d.ts +0 -27
  12. package/dist/components/agentic/agent-plan.js +0 -43
  13. package/dist/components/agentic/agent-queue.d.ts +0 -46
  14. package/dist/components/agentic/agent-queue.js +0 -53
  15. package/dist/components/agentic/agent-task.d.ts +0 -16
  16. package/dist/components/agentic/agent-task.js +0 -20
  17. package/dist/components/agentic/approval-request.d.ts +0 -24
  18. package/dist/components/agentic/approval-request.js +0 -57
  19. package/dist/components/agentic/artifact.d.ts +0 -24
  20. package/dist/components/agentic/artifact.js +0 -72
  21. package/dist/components/agentic/attachments.d.ts +0 -124
  22. package/dist/components/agentic/attachments.js +0 -595
  23. package/dist/components/agentic/audio-player.d.ts +0 -16
  24. package/dist/components/agentic/audio-player.js +0 -21
  25. package/dist/components/agentic/canvas.d.ts +0 -10
  26. package/dist/components/agentic/canvas.js +0 -22
  27. package/dist/components/agentic/clipboard.d.ts +0 -2
  28. package/dist/components/agentic/clipboard.js +0 -12
  29. package/dist/components/agentic/code-block.d.ts +0 -43
  30. package/dist/components/agentic/code-block.js +0 -92
  31. package/dist/components/agentic/commit.d.ts +0 -57
  32. package/dist/components/agentic/commit.js +0 -85
  33. package/dist/components/agentic/connection.d.ts +0 -3
  34. package/dist/components/agentic/connection.js +0 -8
  35. package/dist/components/agentic/controls.d.ts +0 -6
  36. package/dist/components/agentic/controls.js +0 -7
  37. package/dist/components/agentic/conversation.d.ts +0 -25
  38. package/dist/components/agentic/conversation.js +0 -56
  39. package/dist/components/agentic/edge.d.ts +0 -8
  40. package/dist/components/agentic/edge.js +0 -65
  41. package/dist/components/agentic/effort-selector.d.ts +0 -43
  42. package/dist/components/agentic/effort-selector.js +0 -47
  43. package/dist/components/agentic/environment-variables.d.ts +0 -32
  44. package/dist/components/agentic/environment-variables.js +0 -66
  45. package/dist/components/agentic/file-tree.d.ts +0 -24
  46. package/dist/components/agentic/file-tree.js +0 -56
  47. package/dist/components/agentic/image.d.ts +0 -9
  48. package/dist/components/agentic/image.js +0 -11
  49. package/dist/components/agentic/inline-citation.d.ts +0 -40
  50. package/dist/components/agentic/inline-citation.js +0 -111
  51. package/dist/components/agentic/jsx-preview.d.ts +0 -19
  52. package/dist/components/agentic/jsx-preview.js +0 -34
  53. package/dist/components/agentic/message-branch.d.ts +0 -20
  54. package/dist/components/agentic/message-branch.js +0 -83
  55. package/dist/components/agentic/message-response.css +0 -265
  56. package/dist/components/agentic/message-response.css.d.ts +0 -2
  57. package/dist/components/agentic/message.d.ts +0 -27
  58. package/dist/components/agentic/message.js +0 -57
  59. package/dist/components/agentic/mic-selector.d.ts +0 -58
  60. package/dist/components/agentic/mic-selector.js +0 -173
  61. package/dist/components/agentic/model-selector.d.ts +0 -39
  62. package/dist/components/agentic/model-selector.js +0 -47
  63. package/dist/components/agentic/node.d.ts +0 -26
  64. package/dist/components/agentic/node.js +0 -29
  65. package/dist/components/agentic/open-in-chat.d.ts +0 -9
  66. package/dist/components/agentic/open-in-chat.js +0 -8
  67. package/dist/components/agentic/package-info.d.ts +0 -30
  68. package/dist/components/agentic/package-info.js +0 -44
  69. package/dist/components/agentic/panel.d.ts +0 -6
  70. package/dist/components/agentic/panel.js +0 -7
  71. package/dist/components/agentic/persona.d.ts +0 -16
  72. package/dist/components/agentic/persona.js +0 -116
  73. package/dist/components/agentic/prompt-input-action-menu.d.ts +0 -16
  74. package/dist/components/agentic/prompt-input-action-menu.js +0 -22
  75. package/dist/components/agentic/prompt-input-command.d.ts +0 -18
  76. package/dist/components/agentic/prompt-input-command.js +0 -25
  77. package/dist/components/agentic/prompt-input-hover-card.d.ts +0 -10
  78. package/dist/components/agentic/prompt-input-hover-card.js +0 -13
  79. package/dist/components/agentic/prompt-input-select.d.ts +0 -14
  80. package/dist/components/agentic/prompt-input-select.js +0 -19
  81. package/dist/components/agentic/prompt-input-tabs.d.ts +0 -17
  82. package/dist/components/agentic/prompt-input-tabs.js +0 -45
  83. package/dist/components/agentic/prompt-input.d.ts +0 -79
  84. package/dist/components/agentic/prompt-input.js +0 -206
  85. package/dist/components/agentic/reasoning.d.ts +0 -21
  86. package/dist/components/agentic/reasoning.js +0 -106
  87. package/dist/components/agentic/run-checkpoint.d.ts +0 -13
  88. package/dist/components/agentic/run-checkpoint.js +0 -19
  89. package/dist/components/agentic/run-trace.d.ts +0 -30
  90. package/dist/components/agentic/run-trace.js +0 -56
  91. package/dist/components/agentic/sandbox.d.ts +0 -24
  92. package/dist/components/agentic/sandbox.js +0 -33
  93. package/dist/components/agentic/schema-display.d.ts +0 -39
  94. package/dist/components/agentic/schema-display.js +0 -56
  95. package/dist/components/agentic/shimmer.d.ts +0 -11
  96. package/dist/components/agentic/shimmer.js +0 -16
  97. package/dist/components/agentic/snippet.d.ts +0 -18
  98. package/dist/components/agentic/snippet.js +0 -35
  99. package/dist/components/agentic/sources.d.ts +0 -16
  100. package/dist/components/agentic/sources.js +0 -17
  101. package/dist/components/agentic/speech-input.d.ts +0 -24
  102. package/dist/components/agentic/speech-input.js +0 -30
  103. package/dist/components/agentic/stack-trace.d.ts +0 -27
  104. package/dist/components/agentic/stack-trace.js +0 -76
  105. package/dist/components/agentic/suggestion.d.ts +0 -12
  106. package/dist/components/agentic/suggestion.js +0 -15
  107. package/dist/components/agentic/terminal.d.ts +0 -24
  108. package/dist/components/agentic/terminal.js +0 -47
  109. package/dist/components/agentic/test-results.d.ts +0 -51
  110. package/dist/components/agentic/test-results.js +0 -83
  111. package/dist/components/agentic/theme.d.ts +0 -5
  112. package/dist/components/agentic/theme.js +0 -31
  113. package/dist/components/agentic/tool.d.ts +0 -25
  114. package/dist/components/agentic/tool.js +0 -73
  115. package/dist/components/agentic/toolbar.d.ts +0 -6
  116. package/dist/components/agentic/toolbar.js +0 -7
  117. package/dist/components/agentic/transcription.d.ts +0 -20
  118. package/dist/components/agentic/transcription.js +0 -32
  119. package/dist/components/agentic/types.d.ts +0 -172
  120. package/dist/components/agentic/types.js +0 -1
  121. package/dist/components/agentic/use-controllable-state.d.ts +0 -6
  122. package/dist/components/agentic/use-controllable-state.js +0 -13
  123. package/dist/components/agentic/voice-selector.d.ts +0 -69
  124. package/dist/components/agentic/voice-selector.js +0 -122
  125. package/dist/components/agentic/web-preview.d.ts +0 -25
  126. package/dist/components/agentic/web-preview.js +0 -33
@@ -1,2 +0,0 @@
1
- declare function copyToClipboard(value: string, setCopied: (copied: boolean) => void, timeout?: number): Promise<boolean>;
2
- export { copyToClipboard };
@@ -1,12 +0,0 @@
1
- async function copyToClipboard(value, setCopied, timeout = 1200) {
2
- try {
3
- await navigator.clipboard.writeText(value);
4
- setCopied(true);
5
- window.setTimeout(() => setCopied(false), timeout);
6
- return true;
7
- }
8
- catch {
9
- return false;
10
- }
11
- }
12
- export { copyToClipboard };
@@ -1,43 +0,0 @@
1
- import type * as React from "react";
2
- import { type BundledLanguage } from "shiki";
3
- import { Button } from "@ciridae/ui/button";
4
- import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@ciridae/ui/select";
5
- type CodeBlockProps = React.ComponentProps<"div"> & {
6
- code: string;
7
- language?: BundledLanguage;
8
- showLineNumbers?: boolean;
9
- };
10
- type CodeBlockContainerProps = React.ComponentProps<"div">;
11
- type CodeBlockHeaderProps = React.ComponentProps<"div">;
12
- type CodeBlockTitleProps = React.ComponentProps<"div">;
13
- type CodeBlockFilenameProps = React.ComponentProps<"div">;
14
- type CodeBlockActionsProps = React.ComponentProps<"div">;
15
- type CodeBlockContentProps = React.ComponentProps<"div"> & {
16
- code?: string;
17
- language?: BundledLanguage;
18
- showLineNumbers?: boolean;
19
- };
20
- type CodeBlockCopyButtonProps = React.ComponentProps<typeof Button> & {
21
- copiedLabel?: string;
22
- label?: string;
23
- };
24
- type CodeBlockLanguageSelectorProps = React.ComponentProps<typeof Select>;
25
- type CodeBlockLanguageSelectorTriggerProps = React.ComponentProps<typeof SelectTrigger>;
26
- type CodeBlockLanguageSelectorValueProps = React.ComponentProps<typeof SelectValue>;
27
- type CodeBlockLanguageSelectorContentProps = React.ComponentProps<typeof SelectContent>;
28
- type CodeBlockLanguageSelectorItemProps = React.ComponentProps<typeof SelectItem>;
29
- declare function CodeBlock({ children, className, code, language, showLineNumbers, ...props }: CodeBlockProps): React.JSX.Element;
30
- declare function CodeBlockContainer({ className, ...props }: CodeBlockContainerProps): React.JSX.Element;
31
- declare function CodeBlockHeader({ className, ...props }: CodeBlockHeaderProps): React.JSX.Element;
32
- declare function CodeBlockTitle({ className, ...props }: CodeBlockTitleProps): React.JSX.Element;
33
- declare function CodeBlockFilename({ className, ...props }: CodeBlockFilenameProps): React.JSX.Element;
34
- declare function CodeBlockActions({ className, ...props }: CodeBlockActionsProps): React.JSX.Element;
35
- declare function CodeBlockContent({ className, code, language, showLineNumbers, ...props }: CodeBlockContentProps): React.JSX.Element;
36
- declare function CodeBlockCopyButton({ copiedLabel, label, onClick, type, ...props }: CodeBlockCopyButtonProps): React.JSX.Element;
37
- declare function CodeBlockLanguageSelector(props: CodeBlockLanguageSelectorProps): React.JSX.Element;
38
- declare function CodeBlockLanguageSelectorTrigger({ className, ...props }: CodeBlockLanguageSelectorTriggerProps): React.JSX.Element;
39
- declare function CodeBlockLanguageSelectorValue(props: CodeBlockLanguageSelectorValueProps): React.JSX.Element;
40
- declare function CodeBlockLanguageSelectorContent(props: CodeBlockLanguageSelectorContentProps): React.JSX.Element;
41
- declare function CodeBlockLanguageSelectorItem(props: CodeBlockLanguageSelectorItemProps): React.JSX.Element;
42
- export { CodeBlock, CodeBlockActions, CodeBlockContainer, CodeBlockContent, CodeBlockCopyButton, CodeBlockFilename, CodeBlockHeader, CodeBlockLanguageSelector, CodeBlockLanguageSelectorContent, CodeBlockLanguageSelectorItem, CodeBlockLanguageSelectorTrigger, CodeBlockLanguageSelectorValue, CodeBlockTitle, };
43
- export type { CodeBlockActionsProps, CodeBlockContainerProps, CodeBlockContentProps, CodeBlockCopyButtonProps, CodeBlockFilenameProps, CodeBlockHeaderProps, CodeBlockLanguageSelectorContentProps, CodeBlockLanguageSelectorItemProps, CodeBlockLanguageSelectorProps, CodeBlockLanguageSelectorTriggerProps, CodeBlockLanguageSelectorValueProps, CodeBlockProps, CodeBlockTitleProps, };
@@ -1,92 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { CheckIcon, CopyIcon } from "lucide-react";
3
- import { createContext, useContext, useEffect, useMemo, useState } from "react";
4
- import { codeToHtml } from "shiki";
5
- import { Button } from "@ciridae/ui/button";
6
- import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from "@ciridae/ui/select";
7
- import { cn } from "@ciridae/ui/utils";
8
- import { copyToClipboard } from "./clipboard";
9
- const CodeBlockContext = createContext({ code: "" });
10
- function useCodeBlock() {
11
- return useContext(CodeBlockContext);
12
- }
13
- function CodeBlock({ children, className, code, language = "tsx", showLineNumbers, ...props }) {
14
- const contextValue = useMemo(() => ({ code }), [code]);
15
- return (_jsx(CodeBlockContext.Provider, { value: contextValue, children: _jsx(CodeBlockContainer, { className: className, ...props, children: children ?? (_jsx(CodeBlockContent, { code: code, language: language, showLineNumbers: showLineNumbers })) }) }));
16
- }
17
- function CodeBlockContainer({ className, ...props }) {
18
- return (_jsx("div", { "data-slot": "code-block", className: cn("w-full overflow-hidden rounded-lg border bg-card text-card-foreground", className), ...props }));
19
- }
20
- function CodeBlockHeader({ className, ...props }) {
21
- return (_jsx("div", { "data-slot": "code-block-header", className: cn("flex min-w-0 items-center justify-between gap-3 border-b px-3 py-2", className), ...props }));
22
- }
23
- function CodeBlockTitle({ className, ...props }) {
24
- return (_jsx("div", { "data-slot": "code-block-title", className: cn("truncate text-sm font-medium", className), ...props }));
25
- }
26
- function CodeBlockFilename({ className, ...props }) {
27
- return (_jsx("div", { "data-slot": "code-block-filename", className: cn("truncate font-mono text-xs text-muted-foreground", className), ...props }));
28
- }
29
- function CodeBlockActions({ className, ...props }) {
30
- return (_jsx("div", { "data-slot": "code-block-actions", className: cn("flex shrink-0 items-center gap-1", className), ...props }));
31
- }
32
- function CodeBlockContent({ className, code, language = "tsx", showLineNumbers = false, ...props }) {
33
- const context = useCodeBlock();
34
- const resolvedCode = code ?? context.code;
35
- const html = useHighlightedCode(resolvedCode, language);
36
- return (_jsx("div", { "data-line-numbers": showLineNumbers ? "true" : undefined, "data-slot": "code-block-content", className: cn("max-h-96 overflow-auto bg-background text-sm text-foreground [&_pre]:!bg-transparent", className), ...props, children: _jsx("div", { className: "min-w-max p-4 font-mono leading-6", dangerouslySetInnerHTML: { __html: html } }) }));
37
- }
38
- function CodeBlockCopyButton({ copiedLabel = "Copied", label = "Copy code", onClick, type = "button", ...props }) {
39
- const { code } = useCodeBlock();
40
- const [copied, setCopied] = useState(false);
41
- const Icon = copied ? CheckIcon : CopyIcon;
42
- return (_jsx(Button, { "aria-label": copied ? copiedLabel : label, size: "icon", variant: "ghost", ...props, type: type, onClick: (event) => {
43
- onClick?.(event);
44
- if (!event.defaultPrevented)
45
- void copyToClipboard(code, setCopied);
46
- }, children: _jsx(Icon, { "aria-hidden": "true", className: "size-4" }) }));
47
- }
48
- function CodeBlockLanguageSelector(props) {
49
- return _jsx(Select, { ...props });
50
- }
51
- function CodeBlockLanguageSelectorTrigger({ className, ...props }) {
52
- return _jsx(SelectTrigger, { className: cn("h-8 min-w-24", className), ...props });
53
- }
54
- function CodeBlockLanguageSelectorValue(props) {
55
- return _jsx(SelectValue, { ...props });
56
- }
57
- function CodeBlockLanguageSelectorContent(props) {
58
- return _jsx(SelectContent, { ...props });
59
- }
60
- function CodeBlockLanguageSelectorItem(props) {
61
- return _jsx(SelectItem, { ...props });
62
- }
63
- function useHighlightedCode(code, language) {
64
- const [html, setHtml] = useState(() => fallbackCodeHtml(code));
65
- useEffect(() => {
66
- let isMounted = true;
67
- setHtml(fallbackCodeHtml(code));
68
- void codeToHtml(code, {
69
- lang: language,
70
- themes: { dark: "github-dark-high-contrast", light: "github-light-high-contrast" },
71
- })
72
- .then((nextHtml) => {
73
- if (isMounted)
74
- setHtml(nextHtml);
75
- })
76
- .catch(() => {
77
- if (isMounted)
78
- setHtml(fallbackCodeHtml(code));
79
- });
80
- return () => {
81
- isMounted = false;
82
- };
83
- }, [code, language]);
84
- return html;
85
- }
86
- function fallbackCodeHtml(code) {
87
- return `<pre><code>${escapeHtml(code)}</code></pre>`;
88
- }
89
- function escapeHtml(value) {
90
- return value.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
91
- }
92
- export { CodeBlock, CodeBlockActions, CodeBlockContainer, CodeBlockContent, CodeBlockCopyButton, CodeBlockFilename, CodeBlockHeader, CodeBlockLanguageSelector, CodeBlockLanguageSelectorContent, CodeBlockLanguageSelectorItem, CodeBlockLanguageSelectorTrigger, CodeBlockLanguageSelectorValue, CodeBlockTitle, };
@@ -1,57 +0,0 @@
1
- import { FileIcon } from "lucide-react";
2
- import type * as React from "react";
3
- import { Avatar } from "@ciridae/ui/avatar";
4
- import { Button } from "@ciridae/ui/button";
5
- import { Collapsible, CollapsibleContent } from "@ciridae/ui/collapsible";
6
- type CommitProps = React.ComponentProps<typeof Collapsible> & {
7
- hash?: string;
8
- };
9
- type CommitHeaderProps = React.ComponentProps<"div">;
10
- type CommitHashProps = React.ComponentProps<"span">;
11
- type CommitMessageProps = React.ComponentProps<"span">;
12
- type CommitMetadataProps = React.ComponentProps<"div">;
13
- type CommitSeparatorProps = React.ComponentProps<"span">;
14
- type CommitInfoProps = React.ComponentProps<"div">;
15
- type CommitAuthorProps = React.ComponentProps<"div">;
16
- type CommitAuthorAvatarProps = React.ComponentProps<typeof Avatar> & {
17
- fallback?: string;
18
- src?: string;
19
- };
20
- type CommitTimestampProps = React.ComponentProps<"time">;
21
- type CommitActionsProps = React.ComponentProps<"div">;
22
- type CommitCopyButtonProps = React.ComponentProps<typeof Button>;
23
- type CommitContentProps = React.ComponentProps<typeof CollapsibleContent>;
24
- type CommitFilesProps = React.ComponentProps<"div">;
25
- type CommitFileProps = React.ComponentProps<"div">;
26
- type CommitFileInfoProps = React.ComponentProps<"div">;
27
- type CommitFileStatusProps = React.ComponentProps<"span"> & {
28
- status?: "added" | "deleted" | "modified" | "renamed";
29
- };
30
- type CommitFileIconProps = React.ComponentProps<typeof FileIcon>;
31
- type CommitFilePathProps = React.ComponentProps<"span">;
32
- type CommitFileChangesProps = React.ComponentProps<"div">;
33
- type CommitFileAdditionsProps = React.ComponentProps<"span">;
34
- type CommitFileDeletionsProps = React.ComponentProps<"span">;
35
- declare function Commit({ children, className, defaultOpen, hash, ...props }: CommitProps): React.JSX.Element;
36
- declare function CommitHeader({ children, className, ...props }: CommitHeaderProps): React.JSX.Element;
37
- declare function CommitHash({ className, ...props }: CommitHashProps): React.JSX.Element;
38
- declare function CommitMessage({ className, ...props }: CommitMessageProps): React.JSX.Element;
39
- declare function CommitMetadata({ className, ...props }: CommitMetadataProps): React.JSX.Element;
40
- declare function CommitSeparator(props: CommitSeparatorProps): React.JSX.Element;
41
- declare function CommitInfo({ className, ...props }: CommitInfoProps): React.JSX.Element;
42
- declare function CommitAuthor({ className, ...props }: CommitAuthorProps): React.JSX.Element;
43
- declare function CommitAuthorAvatar({ fallback, src, ...props }: CommitAuthorAvatarProps): React.JSX.Element;
44
- declare function CommitTimestamp(props: CommitTimestampProps): React.JSX.Element;
45
- declare function CommitActions({ className, ...props }: CommitActionsProps): React.JSX.Element;
46
- declare function CommitCopyButton({ children, onClick, type, ...props }: CommitCopyButtonProps): React.JSX.Element;
47
- declare function CommitContent({ className, ...props }: CommitContentProps): React.JSX.Element;
48
- declare function CommitFiles({ className, ...props }: CommitFilesProps): React.JSX.Element;
49
- declare function CommitFile({ className, ...props }: CommitFileProps): React.JSX.Element;
50
- declare function CommitFileInfo({ className, ...props }: CommitFileInfoProps): React.JSX.Element;
51
- declare function CommitFileStatus({ className, status, ...props }: CommitFileStatusProps): React.JSX.Element;
52
- declare function CommitFileIcon(props: CommitFileIconProps): React.JSX.Element;
53
- declare function CommitFilePath({ className, ...props }: CommitFilePathProps): React.JSX.Element;
54
- declare function CommitFileChanges({ className, ...props }: CommitFileChangesProps): React.JSX.Element;
55
- declare function CommitFileAdditions({ className, ...props }: CommitFileAdditionsProps): React.JSX.Element;
56
- declare function CommitFileDeletions({ className, ...props }: CommitFileDeletionsProps): React.JSX.Element;
57
- export { Commit, CommitActions, CommitAuthor, CommitAuthorAvatar, CommitContent, CommitCopyButton, CommitFile, CommitFileAdditions, CommitFileChanges, CommitFileDeletions, CommitFileIcon, CommitFileInfo, CommitFilePath, CommitFiles, CommitFileStatus, CommitHash, CommitHeader, CommitInfo, CommitMessage, CommitMetadata, CommitSeparator, CommitTimestamp, };
@@ -1,85 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { CheckIcon, ChevronDownIcon, CopyIcon, FileIcon } from "lucide-react";
3
- import { createContext, useContext, useMemo, useState } from "react";
4
- import { Avatar, AvatarFallback, AvatarImage } from "@ciridae/ui/avatar";
5
- import { Button } from "@ciridae/ui/button";
6
- import { Collapsible, CollapsibleContent, CollapsibleTrigger } from "@ciridae/ui/collapsible";
7
- import { cn } from "@ciridae/ui/utils";
8
- import { copyToClipboard } from "./clipboard";
9
- const CommitContext = createContext({ hash: "" });
10
- function Commit({ children, className, defaultOpen = true, hash = "", ...props }) {
11
- const contextValue = useMemo(() => ({ hash }), [hash]);
12
- return (_jsx(CommitContext.Provider, { value: contextValue, children: _jsx(Collapsible, { "data-slot": "commit", className: cn("rounded-lg border bg-card", className), defaultOpen: defaultOpen, ...props, children: children }) }));
13
- }
14
- function CommitHeader({ children, className, ...props }) {
15
- return (_jsxs("div", { "data-slot": "commit-header", className: cn("flex w-full items-center justify-between gap-3 px-3 py-2 text-left", className), ...props, children: [children, _jsx(CollapsibleTrigger, { asChild: true, children: _jsx(Button, { "aria-label": "Toggle commit details", className: "group/commit-toggle shrink-0", size: "icon", type: "button", variant: "ghost", children: _jsx(ChevronDownIcon, { "aria-hidden": "true", className: "size-4 transition-transform group-data-[state=open]/commit-toggle:rotate-180" }) }) })] }));
16
- }
17
- function CommitHash({ className, ...props }) {
18
- const { hash } = useContext(CommitContext);
19
- return (_jsx("span", { "data-slot": "commit-hash", className: cn("font-mono text-xs text-muted-foreground", className), ...props, children: props.children ?? hash.slice(0, 7) }));
20
- }
21
- function CommitMessage({ className, ...props }) {
22
- return (_jsx("span", { "data-slot": "commit-message", className: cn("truncate text-sm font-medium", className), ...props }));
23
- }
24
- function CommitMetadata({ className, ...props }) {
25
- return (_jsx("div", { "data-slot": "commit-metadata", className: cn("flex flex-wrap items-center gap-2 text-xs text-muted-foreground", className), ...props }));
26
- }
27
- function CommitSeparator(props) {
28
- return (_jsx("span", { "aria-hidden": "true", "data-slot": "commit-separator", ...props, children: "/" }));
29
- }
30
- function CommitInfo({ className, ...props }) {
31
- return (_jsx("div", { "data-slot": "commit-info", className: cn("min-w-0 flex-1 space-y-1", className), ...props }));
32
- }
33
- function CommitAuthor({ className, ...props }) {
34
- return (_jsx("div", { "data-slot": "commit-author", className: cn("inline-flex items-center gap-1.5", className), ...props }));
35
- }
36
- function CommitAuthorAvatar({ fallback = "A", src, ...props }) {
37
- return (_jsxs(Avatar, { "data-slot": "commit-author-avatar", ...props, children: [src ? _jsx(AvatarImage, { alt: "", src: src }) : null, _jsx(AvatarFallback, { children: fallback })] }));
38
- }
39
- function CommitTimestamp(props) {
40
- return _jsx("time", { "data-slot": "commit-timestamp", ...props });
41
- }
42
- function CommitActions({ className, ...props }) {
43
- return (_jsx("div", { "data-slot": "commit-actions", className: cn("flex shrink-0 items-center gap-1", className), ...props }));
44
- }
45
- function CommitCopyButton({ children, onClick, type = "button", ...props }) {
46
- const { hash } = useContext(CommitContext);
47
- const [copied, setCopied] = useState(false);
48
- const Icon = copied ? CheckIcon : CopyIcon;
49
- return (_jsx(Button, { "aria-label": copied ? "Copied" : "Copy commit hash", size: "icon", variant: "ghost", ...props, type: type, onClick: (event) => {
50
- onClick?.(event);
51
- if (!event.defaultPrevented)
52
- void copyToClipboard(hash, setCopied);
53
- }, children: children ?? _jsx(Icon, { "aria-hidden": "true", className: "size-4" }) }));
54
- }
55
- function CommitContent({ className, ...props }) {
56
- return (_jsx(CollapsibleContent, { "data-slot": "commit-content", className: cn("border-t p-3", className), ...props }));
57
- }
58
- function CommitFiles({ className, ...props }) {
59
- return _jsx("div", { "data-slot": "commit-files", className: cn("grid gap-1", className), ...props });
60
- }
61
- function CommitFile({ className, ...props }) {
62
- return (_jsx("div", { "data-slot": "commit-file", className: cn("flex min-w-0 items-center justify-between gap-3 rounded-md px-2 py-1 text-sm hover:bg-muted", className), ...props }));
63
- }
64
- function CommitFileInfo({ className, ...props }) {
65
- return (_jsx("div", { "data-slot": "commit-file-info", className: cn("flex min-w-0 items-center gap-2", className), ...props }));
66
- }
67
- function CommitFileStatus({ className, status = "modified", ...props }) {
68
- return (_jsx("span", { "data-slot": "commit-file-status", className: cn("text-meta text-muted-foreground", className), ...props, children: status }));
69
- }
70
- function CommitFileIcon(props) {
71
- return _jsx(FileIcon, { "aria-hidden": "true", "data-slot": "commit-file-icon", ...props });
72
- }
73
- function CommitFilePath({ className, ...props }) {
74
- return (_jsx("span", { "data-slot": "commit-file-path", className: cn("truncate font-mono text-xs", className), ...props }));
75
- }
76
- function CommitFileChanges({ className, ...props }) {
77
- return (_jsx("div", { "data-slot": "commit-file-changes", className: cn("flex shrink-0 items-center gap-2 font-mono text-xs", className), ...props }));
78
- }
79
- function CommitFileAdditions({ className, ...props }) {
80
- return (_jsx("span", { "data-slot": "commit-file-additions", className: cn("text-foreground", className), ...props }));
81
- }
82
- function CommitFileDeletions({ className, ...props }) {
83
- return (_jsx("span", { "data-slot": "commit-file-deletions", className: cn("text-muted-foreground", className), ...props }));
84
- }
85
- export { Commit, CommitActions, CommitAuthor, CommitAuthorAvatar, CommitContent, CommitCopyButton, CommitFile, CommitFileAdditions, CommitFileChanges, CommitFileDeletions, CommitFileIcon, CommitFileInfo, CommitFilePath, CommitFiles, CommitFileStatus, CommitHash, CommitHeader, CommitInfo, CommitMessage, CommitMetadata, CommitSeparator, CommitTimestamp, };
@@ -1,3 +0,0 @@
1
- import type { ConnectionLineComponentProps, Node as FlowNode } from "@xyflow/react";
2
- declare function Connection<NodeType extends FlowNode = FlowNode>({ fromX, fromY, toX, toY, }: ConnectionLineComponentProps<NodeType>): import("react").JSX.Element;
3
- export { Connection };
@@ -1,8 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- const half = 0.5;
3
- function Connection({ fromX, fromY, toX, toY, }) {
4
- const centerX = fromX + (toX - fromX) * half;
5
- const path = `M ${fromX} ${fromY} C ${centerX} ${fromY}, ${centerX} ${toY}, ${toX} ${toY}`;
6
- return (_jsx("path", { className: "fill-none stroke-foreground/70", d: path, "data-slot": "connection", strokeDasharray: "4 4", strokeLinecap: "round", strokeWidth: 1.5 }));
7
- }
8
- export { Connection };
@@ -1,6 +0,0 @@
1
- import type * as React from "react";
2
- import { Controls as ControlsPrimitive } from "@xyflow/react";
3
- type ControlsProps = React.ComponentProps<typeof ControlsPrimitive>;
4
- declare function Controls({ className, ...props }: ControlsProps): React.JSX.Element;
5
- export { Controls };
6
- export type { ControlsProps };
@@ -1,7 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { Controls as ControlsPrimitive } from "@xyflow/react";
3
- import { cn } from "@ciridae/ui/utils";
4
- function Controls({ className, ...props }) {
5
- return (_jsx(ControlsPrimitive, { "data-slot": "controls", className: cn("overflow-hidden rounded-lg border bg-card p-1 shadow-xs", "[&>button]:size-7 [&>button]:border-0! [&>button]:bg-transparent! [&>button]:text-foreground", "[&>button]:hover:bg-secondary! [&>button>svg]:max-h-4 [&>button>svg]:max-w-4", className), ...props }));
6
- }
7
- export { Controls };
@@ -1,25 +0,0 @@
1
- import type * as React from "react";
2
- import { StickToBottom } from "use-stick-to-bottom";
3
- import type { AgenticMessage } from "@ciridae/ui/types";
4
- import { Button } from "@ciridae/ui/button";
5
- type ConversationProps = React.ComponentProps<typeof StickToBottom>;
6
- type ConversationContentProps = React.ComponentProps<typeof StickToBottom.Content>;
7
- type ConversationEmptyStateProps = React.ComponentProps<"div"> & {
8
- description?: string;
9
- icon?: React.ReactNode;
10
- title?: string;
11
- };
12
- type ConversationScrollButtonProps = React.ComponentProps<typeof Button>;
13
- type ConversationDownloadProps = Omit<React.ComponentProps<typeof Button>, "onClick"> & {
14
- filename?: string;
15
- formatMessage?: (message: AgenticMessage, index: number) => string;
16
- messages: AgenticMessage[];
17
- };
18
- declare function Conversation({ className, resize, initial, ...props }: ConversationProps): React.JSX.Element;
19
- declare function ConversationContent({ className, scrollClassName, ...props }: ConversationContentProps): React.JSX.Element;
20
- declare function ConversationEmptyState({ children, className, description, icon, title, ...props }: ConversationEmptyStateProps): React.JSX.Element;
21
- declare function ConversationScrollButton({ children, className, onClick, size, type, variant, ...props }: ConversationScrollButtonProps): React.JSX.Element | null;
22
- declare function ConversationDownload({ children, className, filename, formatMessage, messages, size, type, variant, ...props }: ConversationDownloadProps): React.JSX.Element;
23
- declare function messagesToMarkdown(messages: AgenticMessage[], formatMessage?: (message: AgenticMessage, index: number) => string): string;
24
- export { Conversation, ConversationContent, ConversationDownload, ConversationEmptyState, ConversationScrollButton, messagesToMarkdown, };
25
- export type { ConversationContentProps, ConversationDownloadProps, ConversationEmptyStateProps, ConversationProps, ConversationScrollButtonProps, };
@@ -1,56 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- /* eslint-disable react-refresh/only-export-components */
3
- import { ArrowDownIcon, DownloadIcon, MessageCircleIcon } from "lucide-react";
4
- import { useCallback } from "react";
5
- import { StickToBottom, useStickToBottomContext } from "use-stick-to-bottom";
6
- import { Button } from "@ciridae/ui/button";
7
- import { cn } from "@ciridae/ui/utils";
8
- function Conversation({ className, resize = "smooth", initial = "smooth", ...props }) {
9
- return (_jsx(StickToBottom, { "data-slot": "conversation", resize: resize, initial: initial, className: cn("relative min-h-0 overflow-hidden", className), ...props }));
10
- }
11
- function ConversationContent({ className, scrollClassName, ...props }) {
12
- return (_jsx(StickToBottom.Content, { "data-slot": "conversation-content", scrollClassName: cn("min-h-0 overflow-y-auto", scrollClassName), className: cn("flex min-h-full min-w-0 flex-col gap-4 p-4", className), ...props }));
13
- }
14
- function ConversationEmptyState({ children, className, description = "Start a conversation to see messages here.", icon, title = "No messages yet", ...props }) {
15
- return (_jsx("div", { "data-slot": "conversation-empty-state", className: cn("flex min-h-64 min-w-0 flex-1 flex-col items-center justify-center gap-3 rounded-lg border border-dashed p-(--panel-padding) text-center text-balance", className), ...props, children: children ?? (_jsxs(_Fragment, { children: [_jsx("div", { className: "flex size-10 items-center justify-center rounded-lg bg-muted text-muted-foreground", children: icon ?? _jsx(MessageCircleIcon, { "aria-hidden": "true", className: "size-5" }) }), _jsxs("div", { className: "grid max-w-sm gap-1", children: [_jsx("h3", { className: "text-sm font-medium", children: title }), description ? _jsx("p", { className: "text-sm text-muted-foreground", children: description }) : null] })] })) }));
16
- }
17
- function ConversationScrollButton({ children, className, onClick, size = "icon", type = "button", variant = "outline", ...props }) {
18
- const { isAtBottom, scrollToBottom } = useStickToBottomContext();
19
- const handleScrollToBottom = useCallback((event) => {
20
- onClick?.(event);
21
- if (!event.defaultPrevented)
22
- scrollToBottom();
23
- }, [onClick, scrollToBottom]);
24
- if (isAtBottom)
25
- return null;
26
- return (_jsx(Button, { "aria-label": "Scroll to bottom", "data-slot": "conversation-scroll-button", className: cn("absolute right-4 bottom-4 shadow-xs", className), onClick: handleScrollToBottom, size: size, type: type, variant: variant, ...props, children: children ?? _jsx(ArrowDownIcon, {}) }));
27
- }
28
- function ConversationDownload({ children, className, filename = "conversation.md", formatMessage = defaultFormatMessage, messages, size = "sm", type = "button", variant = "outline", ...props }) {
29
- const handleDownload = useCallback(() => {
30
- const markdown = messagesToMarkdown(messages, formatMessage);
31
- const blob = new Blob([markdown], { type: "text/markdown" });
32
- const url = URL.createObjectURL(blob);
33
- const link = document.createElement("a");
34
- link.href = url;
35
- link.download = filename;
36
- document.body.append(link);
37
- link.click();
38
- link.remove();
39
- URL.revokeObjectURL(url);
40
- }, [filename, formatMessage, messages]);
41
- return (_jsx(Button, { "data-slot": "conversation-download", className: cn("shrink-0", className), onClick: handleDownload, size: size, type: type, variant: variant, ...props, children: children ?? (_jsxs(_Fragment, { children: [_jsx(DownloadIcon, {}), "Download"] })) }));
42
- }
43
- function messagesToMarkdown(messages, formatMessage = defaultFormatMessage) {
44
- return messages.map((message, index) => formatMessage(message, index)).join("\n\n");
45
- }
46
- function defaultFormatMessage(message) {
47
- const roleLabel = message.role.charAt(0).toUpperCase() + message.role.slice(1);
48
- return `**${roleLabel}:** ${getMessageText(message)}`;
49
- }
50
- function getMessageText(message) {
51
- return message.parts
52
- .filter((part) => part.type === "text")
53
- .map((part) => part.text)
54
- .join("");
55
- }
56
- export { Conversation, ConversationContent, ConversationDownload, ConversationEmptyState, ConversationScrollButton, messagesToMarkdown, };
@@ -1,8 +0,0 @@
1
- import type { EdgeProps } from "@xyflow/react";
2
- declare function Temporary({ id, markerEnd, sourcePosition, sourceX, sourceY, style, targetPosition, targetX, targetY, }: EdgeProps): import("react").JSX.Element;
3
- declare function Animated({ id, markerEnd, source, style, target }: EdgeProps): import("react").JSX.Element | null;
4
- declare const Edge: {
5
- Animated: typeof Animated;
6
- Temporary: typeof Temporary;
7
- };
8
- export { Edge };
@@ -1,65 +0,0 @@
1
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { BaseEdge, getBezierPath, getSimpleBezierPath, Position, useInternalNode, } from "@xyflow/react";
3
- function Temporary({ id, markerEnd, sourcePosition, sourceX, sourceY, style, targetPosition, targetX, targetY, }) {
4
- const [edgePath] = getSimpleBezierPath({
5
- sourcePosition,
6
- sourceX,
7
- sourceY,
8
- targetPosition,
9
- targetX,
10
- targetY,
11
- });
12
- return _jsx(WorkflowBaseEdge, { id: id, markerEnd: markerEnd, path: edgePath, style: style });
13
- }
14
- function Animated({ id, markerEnd, source, style, target }) {
15
- const sourceNode = useInternalNode(source);
16
- const targetNode = useInternalNode(target);
17
- if (!(sourceNode && targetNode))
18
- return null;
19
- const { sourcePos, sx, sy, targetPos, tx, ty } = getEdgeParams(sourceNode, targetNode);
20
- const [edgePath] = getBezierPath({
21
- sourcePosition: sourcePos,
22
- sourceX: sx,
23
- sourceY: sy,
24
- targetPosition: targetPos,
25
- targetX: tx,
26
- targetY: ty,
27
- });
28
- return (_jsxs(_Fragment, { children: [_jsx(WorkflowBaseEdge, { id: id, markerEnd: markerEnd, path: edgePath, style: style }), _jsx("circle", { className: "fill-foreground/70 motion-reduce:hidden", r: "3", children: _jsx("animateMotion", { dur: "2.4s", path: edgePath, repeatCount: "indefinite" }) })] }));
29
- }
30
- function WorkflowBaseEdge({ className, id, markerEnd, path, style, }) {
31
- return (_jsx(BaseEdge, { className: className, id: id, markerEnd: markerEnd, path: path, style: {
32
- stroke: "var(--agentic-workflow-edge-color, color-mix(in oklch, var(--foreground) 72%, transparent))",
33
- strokeWidth: 1.5,
34
- ...style,
35
- } }));
36
- }
37
- function getEdgeParams(source, target) {
38
- const sourcePos = Position.Right;
39
- const targetPos = Position.Left;
40
- const [sx, sy] = getHandleCoordsByPosition(source, sourcePos);
41
- const [tx, ty] = getHandleCoordsByPosition(target, targetPos);
42
- return { sourcePos, sx, sy, targetPos, tx, ty };
43
- }
44
- function getHandleCoordsByPosition(node, handlePosition) {
45
- const handleType = handlePosition === Position.Left ? "target" : "source";
46
- const handle = node.internals.handleBounds?.[handleType]?.find((candidate) => candidate.position === handlePosition);
47
- if (!handle)
48
- return [node.internals.positionAbsolute.x, node.internals.positionAbsolute.y];
49
- let offsetX = handle.width / 2;
50
- let offsetY = handle.height / 2;
51
- if (handlePosition === Position.Left)
52
- offsetX = 0;
53
- if (handlePosition === Position.Right)
54
- offsetX = handle.width;
55
- if (handlePosition === Position.Top)
56
- offsetY = 0;
57
- if (handlePosition === Position.Bottom)
58
- offsetY = handle.height;
59
- return [
60
- node.internals.positionAbsolute.x + handle.x + offsetX,
61
- node.internals.positionAbsolute.y + handle.y + offsetY,
62
- ];
63
- }
64
- const Edge = { Animated, Temporary };
65
- export { Edge };
@@ -1,43 +0,0 @@
1
- import type * as React from "react";
2
- import { Button } from "@ciridae/ui/button";
3
- type EffortSelectorValue = "auto" | "low" | "medium" | "high" | "xhigh";
4
- type EffortSelectorOption = {
5
- label: string;
6
- shortLabel: string;
7
- value: EffortSelectorValue;
8
- };
9
- type EffortSelectorProps = Omit<React.ComponentProps<typeof Button>, "onChange" | "onClick" | "value"> & {
10
- onValueChange: (value: EffortSelectorValue) => void;
11
- showLabel?: boolean;
12
- value: EffortSelectorValue;
13
- };
14
- type EffortSelectorIconProps = React.ComponentProps<"span"> & {
15
- value: EffortSelectorValue;
16
- };
17
- declare const EFFORT_SELECTOR_OPTIONS: readonly [{
18
- readonly value: "auto";
19
- readonly label: "Auto";
20
- readonly shortLabel: "";
21
- }, {
22
- readonly value: "low";
23
- readonly label: "Low";
24
- readonly shortLabel: "Low";
25
- }, {
26
- readonly value: "medium";
27
- readonly label: "Medium";
28
- readonly shortLabel: "Medium";
29
- }, {
30
- readonly value: "high";
31
- readonly label: "High";
32
- readonly shortLabel: "High";
33
- }, {
34
- readonly value: "xhigh";
35
- readonly label: "Extra High";
36
- readonly shortLabel: "Extra High";
37
- }];
38
- declare function EffortSelector({ className, disabled, onValueChange, showLabel, value, variant, ...props }: EffortSelectorProps): React.JSX.Element;
39
- declare function EffortSelectorIcon({ className, value, ...props }: EffortSelectorIconProps): React.JSX.Element;
40
- declare function getEffortSelectorOption(value: string | null | undefined): EffortSelectorOption;
41
- declare function getNextEffortValue(value: EffortSelectorValue): "medium" | "auto" | "low" | "high" | "xhigh";
42
- export { EFFORT_SELECTOR_OPTIONS, EffortSelector, EffortSelectorIcon, getEffortSelectorOption, getNextEffortValue, };
43
- export type { EffortSelectorOption, EffortSelectorProps, EffortSelectorValue };
@@ -1,47 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Button } from "@ciridae/ui/button";
3
- import { cn } from "@ciridae/ui/utils";
4
- const EFFORT_SELECTOR_OPTIONS = [
5
- { value: "auto", label: "Auto", shortLabel: "" },
6
- { value: "low", label: "Low", shortLabel: "Low" },
7
- { value: "medium", label: "Medium", shortLabel: "Medium" },
8
- { value: "high", label: "High", shortLabel: "High" },
9
- { value: "xhigh", label: "Extra High", shortLabel: "Extra High" },
10
- ];
11
- function EffortSelector({ className, disabled, onValueChange, showLabel = true, value, variant = "ghost", ...props }) {
12
- const selectedOption = getEffortSelectorOption(value);
13
- return (_jsxs(Button, { "aria-label": `Effort: ${selectedOption.label}. Click to change.`, className: cn("h-7 w-auto justify-start gap-1 rounded-md px-1.5 text-xs", className), "data-slot": "effort-selector", disabled: disabled, onClick: () => onValueChange(getNextEffortValue(value)), title: `Effort: ${selectedOption.label}`, type: "button", variant: variant, ...props, children: [_jsx(EffortSelectorIcon, { value: value }), showLabel && selectedOption.shortLabel ? (_jsx("span", { className: "min-w-0 flex-none truncate text-left", "data-slot": "effort-selector-label", children: selectedOption.shortLabel })) : null] }));
14
- }
15
- function EffortSelectorIcon({ className, value, ...props }) {
16
- const activeBars = getActiveBarCount(value);
17
- return (_jsx("span", { "aria-hidden": "true", className: cn("flex size-4 shrink-0 items-end justify-center gap-0.5 text-muted-foreground", className), "data-slot": "effort-selector-icon", ...props, children: [1, 2, 3, 4].map((bar) => (_jsx("span", { className: cn("w-0.5 rounded-full bg-current transition-opacity", getBarHeightClassName(bar), bar <= activeBars ? "opacity-100" : "opacity-30") }, bar))) }));
18
- }
19
- function getEffortSelectorOption(value) {
20
- return (EFFORT_SELECTOR_OPTIONS.find((option) => option.value === value) ?? EFFORT_SELECTOR_OPTIONS[0]);
21
- }
22
- function getNextEffortValue(value) {
23
- const selectedIndex = EFFORT_SELECTOR_OPTIONS.findIndex((option) => option.value === value);
24
- const nextIndex = (selectedIndex + 1) % EFFORT_SELECTOR_OPTIONS.length;
25
- return EFFORT_SELECTOR_OPTIONS[nextIndex].value;
26
- }
27
- function getActiveBarCount(value) {
28
- if (value === "auto")
29
- return 0;
30
- if (value === "low")
31
- return 1;
32
- if (value === "medium")
33
- return 2;
34
- if (value === "high")
35
- return 3;
36
- return 4;
37
- }
38
- function getBarHeightClassName(bar) {
39
- if (bar === 1)
40
- return "h-2";
41
- if (bar === 2)
42
- return "h-2.5";
43
- if (bar === 3)
44
- return "h-3";
45
- return "h-3.5";
46
- }
47
- export { EFFORT_SELECTOR_OPTIONS, EffortSelector, EffortSelectorIcon, getEffortSelectorOption, getNextEffortValue, };
@@ -1,32 +0,0 @@
1
- import type * as React from "react";
2
- import { Badge } from "@ciridae/ui/badge";
3
- import { Button } from "@ciridae/ui/button";
4
- import { Switch } from "@ciridae/ui/switch";
5
- type EnvironmentVariablesProps = React.ComponentProps<"div"> & {
6
- defaultRevealed?: boolean;
7
- };
8
- type EnvironmentVariablesHeaderProps = React.ComponentProps<"div">;
9
- type EnvironmentVariablesTitleProps = React.ComponentProps<"h3">;
10
- type EnvironmentVariablesToggleProps = React.ComponentProps<typeof Switch>;
11
- type EnvironmentVariablesContentProps = React.ComponentProps<"div">;
12
- type EnvironmentVariableGroupProps = React.ComponentProps<"div">;
13
- type EnvironmentVariableProps = React.ComponentProps<"div"> & {
14
- value: string;
15
- };
16
- type EnvironmentVariableNameProps = React.ComponentProps<"span">;
17
- type EnvironmentVariableValueProps = React.ComponentProps<"span">;
18
- type EnvironmentVariableCopyButtonProps = React.ComponentProps<typeof Button>;
19
- type EnvironmentVariableRequiredProps = React.ComponentProps<typeof Badge>;
20
- declare function EnvironmentVariables({ children, className, defaultRevealed, ...props }: EnvironmentVariablesProps): React.JSX.Element;
21
- declare function EnvironmentVariablesHeader({ className, ...props }: EnvironmentVariablesHeaderProps): React.JSX.Element;
22
- declare function EnvironmentVariablesTitle({ className, ...props }: EnvironmentVariablesTitleProps): React.JSX.Element;
23
- declare function EnvironmentVariablesToggle(props: EnvironmentVariablesToggleProps): React.JSX.Element;
24
- declare function EnvironmentVariablesContent({ className, ...props }: EnvironmentVariablesContentProps): React.JSX.Element;
25
- declare function EnvironmentVariableGroup({ className, ...props }: EnvironmentVariableGroupProps): React.JSX.Element;
26
- declare function EnvironmentVariable({ children, className, value, ...props }: EnvironmentVariableProps): React.JSX.Element;
27
- declare function EnvironmentVariableName({ className, ...props }: EnvironmentVariableNameProps): React.JSX.Element;
28
- declare function EnvironmentVariableValue({ className, ...props }: EnvironmentVariableValueProps): React.JSX.Element;
29
- declare function EnvironmentVariableCopyButton({ children, onClick, type, ...props }: EnvironmentVariableCopyButtonProps): React.JSX.Element;
30
- declare function EnvironmentVariableRequired({ children, variant, ...props }: EnvironmentVariableRequiredProps): React.JSX.Element;
31
- export { EnvironmentVariable, EnvironmentVariableCopyButton, EnvironmentVariableGroup, EnvironmentVariableName, EnvironmentVariableRequired, EnvironmentVariableValue, EnvironmentVariables, EnvironmentVariablesContent, EnvironmentVariablesHeader, EnvironmentVariablesTitle, EnvironmentVariablesToggle, };
32
- export type { EnvironmentVariableCopyButtonProps, EnvironmentVariableGroupProps, EnvironmentVariableNameProps, EnvironmentVariableProps, EnvironmentVariableRequiredProps, EnvironmentVariableValueProps, EnvironmentVariablesContentProps, EnvironmentVariablesHeaderProps, EnvironmentVariablesProps, EnvironmentVariablesTitleProps, EnvironmentVariablesToggleProps, };