@itechchoice/prime-chatkit 0.1.0-alpha.4 → 0.1.0-alpha.6

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.
@@ -100,6 +100,9 @@ export type ThreadTaskDetail = {
100
100
  export type ThreadPart = {
101
101
  kind: "text";
102
102
  text: string;
103
+ } | {
104
+ kind: "note";
105
+ text: string;
103
106
  } | {
104
107
  kind: "tools";
105
108
  id: string;
@@ -728,10 +731,14 @@ declare function UserMessage({ message: m, labels, onRetry }: {
728
731
  }): import("react").JSX.Element;
729
732
  /** The orchestrator's: plain text on the page under its mark, with its cards, tools and files in between */
730
733
  declare const ThreadLinkContext: import("react").Context<((href: string, event: MouseEvent<HTMLAnchorElement>) => void) | undefined>;
731
- declare function AgentMessage({ message: m, status, phase, clock, orchestratorAvatar, first, now, labels, askState, onTask, onAsk, onRetry, onCopy, onRegenerate, onFeedback, feedbackReasons, }: {
734
+ declare const ThreadMarkdown: import("react").NamedExoticComponent<{
735
+ text: string;
736
+ }>;
737
+ declare function AgentMessage({ message: m, status, phase, liveOpen, clock, orchestratorAvatar, first, now, labels, askState, onTask, onAsk, onRetry, onCopy, onRegenerate, onFeedback, feedbackReasons, }: {
732
738
  message: ThreadAgentMessage;
733
739
  status?: ReactNode;
734
740
  phase?: "working" | "writing" | "done";
741
+ liveOpen?: boolean;
735
742
  clock: Intl.DateTimeFormat;
736
743
  orchestratorAvatar?: string;
737
744
  first: boolean;
@@ -742,7 +749,7 @@ declare function AgentMessage({ message: m, status, phase, clock, orchestratorAv
742
749
  onAsk: (id: string) => void;
743
750
  onRetry?: () => void;
744
751
  } & Pick<AgentThreadScreenProps, "onCopy" | "onRegenerate" | "onFeedback" | "feedbackReasons">): import("react").JSX.Element;
745
- export { UserMessage, AgentMessage, ThreadStart, ThreadLinkContext, threadDefaults };
752
+ export { UserMessage, AgentMessage, ThreadStart, ThreadMarkdown, ThreadLinkContext, threadDefaults };
746
753
  export type { Labels };
747
754
  /** The original message parts, with their shell tokens but no screen layout. */
748
755
  export declare function ThreadPartsRoot({ children, className }: {
@@ -83,6 +83,8 @@ export type ChatComposerProps = {
83
83
  onModelChange?: (model: ChatModel) => void;
84
84
  /** An entry of the plus menu was picked: "files", "claude", "folder", "goal", "plan", "skill", "draw", "documents" or "pdf" */
85
85
  onAttach?: (item: string) => void;
86
+ /** Open a picker directly instead of the plus menu. */
87
+ onAdd?: () => void;
86
88
  /** Plus-menu row IDs to show, after the tray's folder/apps replacement; omitted, show all. */
87
89
  addItems?: string[];
88
90
  /** The approval mode to start with; false removes the button and menu. */
@@ -115,4 +117,4 @@ export type ChatComposerProps = {
115
117
  export declare const defaultFolders: string[];
116
118
  export declare const defaultApps: ChatApp[];
117
119
  export declare const defaultModels: ChatModel[];
118
- export declare function ChatComposer({ running, onStop, sendDisabled, placeholder, disabled, labels: labelProp, models, dictation, onSend, onModelChange, onAttach, addItems, voice, approval: firstApproval, onApprovalChange, onLearnMore, folders, folder: firstFolder, onFolderChange, apps, connectedApps, onAppsChange, foot, tray, }: ChatComposerProps): import("react").JSX.Element;
120
+ export declare function ChatComposer({ running, onStop, sendDisabled, placeholder, disabled, labels: labelProp, models, dictation, onSend, onModelChange, onAttach, onAdd, addItems, voice, approval: firstApproval, onApprovalChange, onLearnMore, folders, folder: firstFolder, onFolderChange, apps, connectedApps, onAppsChange, foot, tray, }: ChatComposerProps): import("react").JSX.Element;
@@ -27,6 +27,7 @@ export type Decision = {
27
27
  task?: string;
28
28
  /** decision: rows to pick from · pick: preview tiles · approval: facts, then Approve / Decline (default: decision) */
29
29
  kind?: DecisionKind;
30
+ body?: ReactNode;
30
31
  /** decision and pick – all supplied options */
31
32
  options?: DecisionOption[];
32
33
  own?: boolean;
@@ -1,3 +1,4 @@
1
+ import { type RefObject } from "react";
1
2
  export type UploadStatus = "uploading" | "done" | "error";
2
3
  export type UploadItem = {
3
4
  id: string;
@@ -12,6 +13,9 @@ export type UploadItem = {
12
13
  file?: File;
13
14
  };
14
15
  export type DropzoneProps = {
16
+ picker?: RefObject<{
17
+ pick: () => void;
18
+ } | null>;
15
19
  labels?: Partial<DropzoneLabels>;
16
20
  /** Allowed extensions, e.g. [".pdf", ".png"] – any file when left out */
17
21
  accept?: string[];
@@ -67,4 +71,4 @@ export declare const defaultDropzoneLabels: {
67
71
  fileBadge: (extension: string) => string;
68
72
  };
69
73
  export type DropzoneLabels = typeof defaultDropzoneLabels;
70
- export declare function Dropzone({ labels: labelProp, accept, maxSize, onUpload, onChange, hint, autoplay, className, }: DropzoneProps): import("react").JSX.Element;
74
+ export declare function Dropzone({ picker, labels: labelProp, accept, maxSize, onUpload, onChange, hint, autoplay, className, }: DropzoneProps): import("react").JSX.Element;
@@ -1,9 +1,12 @@
1
1
  import type { Run } from "../../core/types";
2
2
  import type { BlocksCopy, ThreadCopy } from "../i18n";
3
3
  /** The prototype's phase precedence, preferring concise tool names for the live status. */
4
- export declare function phaseLabel(run: Run, live: BlocksCopy["live"], copy: ThreadCopy): string;
5
- export declare function LiveStatus({ run, live, copy }: {
4
+ export declare function phaseLabel(run: Run, live: BlocksCopy["live"], copy: ThreadCopy, options?: {
5
+ hideTools?: boolean;
6
+ }): string;
7
+ export declare function LiveStatus({ run, live, copy, hideTools }: {
6
8
  run: Run;
7
9
  live: BlocksCopy["live"];
8
10
  copy: ThreadCopy;
11
+ hideTools?: boolean;
9
12
  }): import("react").JSX.Element | null;
@@ -30,6 +30,9 @@ export type ThreadDecision = {
30
30
  export type ThreadPart = {
31
31
  kind: "text";
32
32
  text: string;
33
+ } | {
34
+ kind: "note";
35
+ text: string;
33
36
  } | {
34
37
  kind: "tools";
35
38
  id: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@itechchoice/prime-chatkit",
3
- "version": "0.1.0-alpha.4",
3
+ "version": "0.1.0-alpha.6",
4
4
  "description": "PrimeChatKit: React chat UI for products built on the prime-chatkit SDK BFF contract. Shows the agent's work: thinking, tool calls, approvals, sources and cost.",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "publishConfig": {