@kodaris/krubble-app-components 1.0.70 → 1.0.71

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/chatbot.d.ts CHANGED
@@ -1,27 +1,58 @@
1
1
  import { LitElement } from 'lit';
2
2
  /**
3
- /**
4
- * An image shown on a chat message. `url` is what the thumbnail/lightbox render:
5
- * an object URL for an image the user just sent, or a server view URL for one
6
- * loaded from conversation history.
3
+ * An internal file stored on the server. Mirrors the backend InternalFileViewDto
4
+ * (and its InternalFileCreateUpdateDto base), so files loaded with a conversation
5
+ * pass through unchanged. The chatbot displays images from these by building a
6
+ * view URL from `internalFileID` at render time.
7
7
  */
8
- export interface KRChatbotAttachment {
9
- /** URL used to display the image (thumbnail + lightbox). */
10
- url: string;
11
- /** Original filename, if known. */
12
- name?: string;
13
- /** MIME type, if known. */
8
+ export interface KRChatbotInternalFile {
9
+ internalFileID: number;
10
+ internalFileUUID?: string;
11
+ niceName?: string;
14
12
  mimeType?: string;
13
+ lastModified?: string;
14
+ fileType?: string;
15
+ path?: string;
16
+ created?: string;
17
+ entityID?: number;
18
+ entityType?: string;
19
+ geoCoordinates?: string;
20
+ imageDetectionType?: string;
21
+ name?: string;
22
+ description?: string;
23
+ creator?: string;
24
+ keywords?: string;
25
+ subType?: string;
26
+ alt?: string;
27
+ metadata?: string;
28
+ deleted?: boolean;
29
+ extraText?: string;
30
+ emailID?: number;
31
+ aiPimSource?: string;
32
+ aiPimLastParsed?: string;
33
+ aiPimStatus?: string;
34
+ folder?: string;
35
+ status?: string;
36
+ extra1?: string;
37
+ extra2?: string;
38
+ extra3?: string;
39
+ extra4?: string;
40
+ extra5?: string;
41
+ parentInternalFileID?: number;
42
+ isFolder?: boolean;
43
+ type?: string;
44
+ aiPimEnabled?: boolean;
15
45
  }
16
46
  /**
17
- * Chat message interface
47
+ * Chat message interface. Field names mirror the backend
48
+ * ConversationMessageViewDto so loaded messages pass through without remapping.
18
49
  */
19
50
  export interface KRChatbotMessage {
20
- role: 'user' | 'assistant';
51
+ type: 'user' | 'assistant';
21
52
  content: string;
22
53
  reasoning?: string;
23
- /** Images attached to this message (user messages only, for now). */
24
- attachments?: KRChatbotAttachment[];
54
+ /** Internal files attached to this message. */
55
+ internalFiles?: KRChatbotInternalFile[];
25
56
  }
26
57
  /**
27
58
  * Callback function type for sending messages.
@@ -32,7 +63,7 @@ export interface KRChatbotMessage {
32
63
  export type KRChatbotSend = (params: {
33
64
  message: string;
34
65
  messages: KRChatbotMessage[];
35
- files: File[];
66
+ internalFiles: File[];
36
67
  }) => Promise<Response>;
37
68
  /**
38
69
  * AI chatbot component with SSE streaming.
@@ -54,7 +85,7 @@ export type KRChatbotSend = (params: {
54
85
  * ## Usage
55
86
  * ```html
56
87
  * <kr-chatbot
57
- * title="AI Assistant"
88
+ * label="AI Assistant"
58
89
  * .send=${(params) => {
59
90
  * return fetch('/api/ai/chat/stream', {
60
91
  * method: 'POST',
@@ -94,16 +125,25 @@ export declare class KRChatbot extends LitElement {
94
125
  /**
95
126
  * Callback function for sending messages. Receives the user's message and
96
127
  * current conversation history. Must return a Response with a streaming SSE body.
128
+ *
129
+ * Optional — when not set, the chatbot uses its built-in default that streams
130
+ * from the Kodaris Bedrock conversation endpoints. Set this to override.
97
131
  */
98
132
  send: KRChatbotSend | null;
99
133
  /**
100
134
  * Callback function called when the user clears the conversation.
101
135
  * Must return a Promise — messages are only cleared if it resolves.
136
+ *
137
+ * Optional — when not set, the chatbot uses its built-in default that clears
138
+ * the Kodaris Bedrock conversation state. Set this to override.
102
139
  */
103
140
  clear: (() => Promise<unknown>) | null;
104
141
  /**
105
142
  * Callback function called on init to load existing conversation messages.
106
143
  * Must return a Promise that resolves with an array of KRChatbotMessage.
144
+ *
145
+ * Optional — when not set, the chatbot uses its built-in default that loads
146
+ * existing messages from the Kodaris Bedrock conversation. Set this to override.
107
147
  */
108
148
  load: (() => Promise<KRChatbotMessage[]>) | null;
109
149
  /**
@@ -112,13 +152,9 @@ export declare class KRChatbot extends LitElement {
112
152
  */
113
153
  messages: KRChatbotMessage[];
114
154
  /**
115
- * Header title text.
116
- */
117
- title: string;
118
- /**
119
- * Header subtitle text (shown below title with a green status dot).
155
+ * Header label text.
120
156
  */
121
- subtitle: string;
157
+ label: string;
122
158
  /**
123
159
  * Input placeholder text.
124
160
  */
@@ -133,12 +169,22 @@ export declare class KRChatbot extends LitElement {
133
169
  * then driven via the `open()` / `close()` / `toggle()` methods.
134
170
  */
135
171
  hideToggle: boolean;
172
+ /**
173
+ * Layout mode.
174
+ * - `'floating'` (default): the chatbot is a fixed bottom-right widget with a
175
+ * toggle button, and the panel can be dragged and resized. This is the
176
+ * traditional chat-widget appearance.
177
+ * - `'inline'`: the chatbot drops its fixed positioning and fills its parent
178
+ * container (100% width/height, no border radius/shadow, no toggle, no
179
+ * drag/resize). The panel is always open. Use this to embed the chat as a
180
+ * full page or panel region.
181
+ */
182
+ variant: 'floating' | 'inline';
136
183
  private _inputValue;
137
184
  private _isStreaming;
138
- private _statusText;
139
185
  private _error;
140
186
  /** Images staged in the composer, before the message is sent. */
141
- private _pendingAttachments;
187
+ private _pendingInternalFiles;
142
188
  /** True while a file is being dragged over the panel (shows the drop overlay). */
143
189
  private _isDraggingFile;
144
190
  private _panelEl;
@@ -201,8 +247,8 @@ export declare class KRChatbot extends LitElement {
201
247
  private _addFiles;
202
248
  private _removePending;
203
249
  private _clearPending;
204
- /** Open the shared full-screen previewer for an attachment. */
205
- private _openAttachment;
250
+ /** Open the shared full-screen previewer for a message image. */
251
+ private _openImage;
206
252
  /** Whether the send button is active: needs text or at least one image. */
207
253
  private _canSend;
208
254
  private _handleSubmit;
@@ -1 +1 @@
1
- {"version":3,"file":"chatbot.d.ts","sourceRoot":"","sources":["../src/chatbot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatbot.d.ts","sourceRoot":"","sources":["../src/chatbot.ts"],"names":[],"mappings":"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"}