@epam/ai-dial-conversation-input 1.1.0-dev.9 → 1.1.0-dev.90
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/components/AddAttachmentButton/AddAttachmentButton.d.ts +10 -0
- package/components/AddAttachmentButton/AddAttachmentButton.d.ts.map +1 -1
- package/components/BottomSheet/BottomSheet.d.ts +17 -4
- package/components/BottomSheet/BottomSheet.d.ts.map +1 -1
- package/components/BottomSheetShell/BottomSheetShell.d.ts +16 -13
- package/components/BottomSheetShell/BottomSheetShell.d.ts.map +1 -1
- package/components/ChatSettingsBottomSheet/ChatSettingsBottomSheet.d.ts +1 -4
- package/components/ChatSettingsBottomSheet/ChatSettingsBottomSheet.d.ts.map +1 -1
- package/components/ChatSettingsModal/ChatSettingsModal.d.ts +1 -0
- package/components/ChatSettingsModal/ChatSettingsModal.d.ts.map +1 -1
- package/components/ConversationInput/ConversationInput.d.ts +1 -0
- package/components/ConversationInput/ConversationInput.d.ts.map +1 -1
- package/components/EditMessageInput/EditMessageInput.d.ts +1 -0
- package/components/EditMessageInput/EditMessageInput.d.ts.map +1 -1
- package/components/Input/Buttons/SendButton.d.ts +1 -2
- package/components/Input/Buttons/SendButton.d.ts.map +1 -1
- package/components/Input/Buttons/StopButton.d.ts +1 -0
- package/components/Input/Buttons/StopButton.d.ts.map +1 -1
- package/components/Input/Input.d.ts +1 -0
- package/components/Input/Input.d.ts.map +1 -1
- package/components/Input/ModelSelectorControl.d.ts +9 -10
- package/components/Input/ModelSelectorControl.d.ts.map +1 -1
- package/components/ModelSelectorBottomSheet/ModelSelectorBottomSheet.d.ts +21 -5
- package/components/ModelSelectorBottomSheet/ModelSelectorBottomSheet.d.ts.map +1 -1
- package/components/ModelSelectorSkeleton/ModelSelectorSkeleton.d.ts +4 -0
- package/components/ModelSelectorSkeleton/ModelSelectorSkeleton.d.ts.map +1 -1
- package/components/SelectedToolsChips/SelectedToolsChips.d.ts +42 -0
- package/components/SelectedToolsChips/SelectedToolsChips.d.ts.map +1 -0
- package/components/ToolsBottomSheet/ToolsBottomSheet.d.ts +29 -0
- package/components/ToolsBottomSheet/ToolsBottomSheet.d.ts.map +1 -0
- package/components/VoiceBar/VoiceBar.d.ts +11 -17
- package/components/VoiceBar/VoiceBar.d.ts.map +1 -1
- package/hooks/useAttachments.d.ts +1 -5
- package/hooks/useAttachments.d.ts.map +1 -1
- package/hooks/useBottomSheet.d.ts +1 -4
- package/hooks/useBottomSheet.d.ts.map +1 -1
- package/hooks/useDelayedUnmount.d.ts +3 -12
- package/hooks/useDelayedUnmount.d.ts.map +1 -1
- package/hooks/useInputHistoryNavigation.d.ts +1 -12
- package/hooks/useInputHistoryNavigation.d.ts.map +1 -1
- package/hooks/useMessageState.d.ts +1 -4
- package/hooks/useMessageState.d.ts.map +1 -1
- package/hooks/useModelSelector.d.ts.map +1 -1
- package/hooks/useVoiceRecorder.d.ts +16 -24
- package/hooks/useVoiceRecorder.d.ts.map +1 -1
- package/index.css +1 -1
- package/index.d.ts +1 -1
- package/index.d.ts.map +1 -1
- package/index.js +1047 -864
- package/models/ConversationInput.d.ts +67 -32
- package/models/ConversationInput.d.ts.map +1 -1
- package/models/Input.d.ts +67 -34
- package/models/Input.d.ts.map +1 -1
- package/package.json +5 -5
- package/utils/concurrency.d.ts +3 -12
- package/utils/concurrency.d.ts.map +1 -1
- package/utils/deployment.d.ts +1 -4
- package/utils/deployment.d.ts.map +1 -1
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import { Attachment, AttachmentErrorReason, DeploymentItem, DisplayAttachment } from '@epam/ai-dial-chat-shared';
|
|
1
|
+
import { Attachment, AttachmentErrorReason, DeploymentItem, DisplayAttachment, ToolMenuItem } from '@epam/ai-dial-chat-shared';
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
|
-
import { ChatSettingsConfig, InputColors, InputTypography, ModelSelectorLabels, SendOnEnter } from './Input';
|
|
3
|
+
import { ChatSettingsConfig, InputColors, InputTypography, ModelSelectorLabels, SendOnEnter, ToolsChipLabels } from './Input';
|
|
4
4
|
/** CSS custom-property overrides for the `ConversationInput` component. */
|
|
5
5
|
export interface ConversationInputColors {
|
|
6
|
-
/** Root container background color. */
|
|
7
|
-
background?: string;
|
|
8
6
|
/** Welcome heading text color. */
|
|
9
7
|
welcomeText?: string;
|
|
10
8
|
/** Color overrides forwarded to the inner `Input` component. */
|
|
@@ -32,12 +30,7 @@ export interface EditMessageInputProps {
|
|
|
32
30
|
initialAttachments?: DisplayAttachment[];
|
|
33
31
|
/** Called when the user clicks the Cancel button. */
|
|
34
32
|
onCancel: () => void;
|
|
35
|
-
/**
|
|
36
|
-
* Called when the user clicks Save & Submit.
|
|
37
|
-
* @param message - The edited message text.
|
|
38
|
-
* @param keptAttachments - Pre-existing attachments the user did not remove.
|
|
39
|
-
* @param newAttachments - New attachments added during editing.
|
|
40
|
-
*/
|
|
33
|
+
/** Called when the user clicks Save & Submit. */
|
|
41
34
|
onSave: (message: string, keptAttachments: DisplayAttachment[], newAttachments: Attachment[]) => void;
|
|
42
35
|
/** Called immediately after a new attachment is added. Returns the uploaded attachment URL. */
|
|
43
36
|
onUploadAttachment?: (attachment: Attachment) => Promise<string>;
|
|
@@ -72,18 +65,16 @@ export interface EditMessageInputProps {
|
|
|
72
65
|
*/
|
|
73
66
|
validateAttachment?: (attachment: Attachment) => AttachmentErrorReason | undefined;
|
|
74
67
|
/**
|
|
75
|
-
*
|
|
76
|
-
*
|
|
68
|
+
* When `false`, long pasted plain text is inserted inline instead of being
|
|
69
|
+
* converted to a text attachment. Set to `false` when the selected model
|
|
70
|
+
* does not support attachments. Defaults to `true`.
|
|
77
71
|
*/
|
|
72
|
+
isAttachmentsEnabled?: boolean;
|
|
73
|
+
/** Maximum total kept-plus-new attachments; unlimited when `undefined`, `0`, or non-finite. */
|
|
78
74
|
maximumAttachmentsAmount?: number;
|
|
79
|
-
/**
|
|
80
|
-
* Called when adding a file/drop batch would exceed
|
|
81
|
-
* `maximumAttachmentsAmount`.
|
|
82
|
-
*/
|
|
75
|
+
/** Called when adding a batch would exceed `maximumAttachmentsAmount`. */
|
|
83
76
|
onAttachmentsLimitExceeded?: (count: number, limit: number) => void;
|
|
84
|
-
/**
|
|
85
|
-
* When `true`, the "Attach file" button is hidden.
|
|
86
|
-
*/
|
|
77
|
+
/** When `true`, the "Attach file" button is hidden. */
|
|
87
78
|
hideAttachFile?: boolean;
|
|
88
79
|
/**
|
|
89
80
|
* Value applied verbatim as the `accept` attribute on the native device
|
|
@@ -101,6 +92,20 @@ export interface EditMessageInputProps {
|
|
|
101
92
|
pendingAttachments?: Attachment[];
|
|
102
93
|
/** Called after `pendingAttachments` have been inserted into the local tray. */
|
|
103
94
|
onPendingAttachmentsConsumed?: () => void;
|
|
95
|
+
/**
|
|
96
|
+
* Called when the user clicks or keyboard-activates an attachment card in the tray.
|
|
97
|
+
* Covers both newly-added and pre-existing (kept) attachments.
|
|
98
|
+
* When absent the cards are not rendered as interactive.
|
|
99
|
+
*/
|
|
100
|
+
onAttachmentClick?: (attachment: DisplayAttachment) => void;
|
|
101
|
+
/** Character count above which pasted plain-text triggers `onMessageTooLong` when attachments are disabled. Defaults to `4000`. */
|
|
102
|
+
pasteTextThreshold?: number;
|
|
103
|
+
/**
|
|
104
|
+
* Called when the user pastes text whose length is ≥ `pasteTextThreshold` while
|
|
105
|
+
* `isAttachmentsEnabled` is `false`. The text is still inserted inline — the
|
|
106
|
+
* host is responsible for surfacing the error to the user.
|
|
107
|
+
*/
|
|
108
|
+
onMessageTooLong?: (length: number, max: number) => void;
|
|
104
109
|
}
|
|
105
110
|
/** Props accepted by the `ConversationInput` component. */
|
|
106
111
|
export interface ConversationInputProps {
|
|
@@ -169,24 +174,30 @@ export interface ConversationInputProps {
|
|
|
169
174
|
*/
|
|
170
175
|
isModelSelectorDisabled?: boolean;
|
|
171
176
|
/**
|
|
172
|
-
* When `true`, the
|
|
173
|
-
*
|
|
174
|
-
* When `false` or absent, the mic button is hidden and the voice bar is never shown.
|
|
177
|
+
* When `true`, disables the send action without removing or dimming the
|
|
178
|
+
* send button itself. Independent of `isInputDisabled`. Defaults to `false`.
|
|
175
179
|
*/
|
|
176
|
-
|
|
180
|
+
isSendDisabled?: boolean;
|
|
177
181
|
/**
|
|
178
|
-
*
|
|
179
|
-
*
|
|
180
|
-
*
|
|
182
|
+
* Extra class name(s) merged onto the inner `Input` wrapper element (the
|
|
183
|
+
* bordered container around the textarea/model-selector/send-button row),
|
|
184
|
+
* distinct from `className` which styles this component's own outer root.
|
|
181
185
|
*/
|
|
182
|
-
|
|
186
|
+
inputClassName?: string;
|
|
183
187
|
/**
|
|
184
|
-
*
|
|
185
|
-
*
|
|
188
|
+
* When `true`, the mic button is rendered and voice recording is enabled.
|
|
189
|
+
* The host app derives this from the selected deployment's `inputAttachmentTypes`.
|
|
190
|
+
* When `false` or absent, the mic button is hidden and the voice bar is never shown.
|
|
186
191
|
*/
|
|
187
|
-
|
|
192
|
+
isAudioMessageSupported?: boolean;
|
|
188
193
|
/** Accessible label for the mic button. Defaults to `'Record voice message'`. */
|
|
189
194
|
micLabel?: string;
|
|
195
|
+
/** Accessible label for the stop-recording button inside the voice bar. Defaults to `'Stop recording'`. */
|
|
196
|
+
stopRecordingLabel?: string;
|
|
197
|
+
/** Accessible label for the discard / X button inside the voice bar. Defaults to `'Discard recording'`. */
|
|
198
|
+
discardRecordingLabel?: string;
|
|
199
|
+
/** `aria-label` for the elapsed-time region inside the voice bar. Defaults to `'Recording time'`. */
|
|
200
|
+
timerAriaLabel?: string;
|
|
190
201
|
/**
|
|
191
202
|
* Controls which key combination submits the message.
|
|
192
203
|
* - `SendOnEnter.Enter` (default): Enter submits; Shift+Enter inserts a newline.
|
|
@@ -228,6 +239,12 @@ export interface ConversationInputProps {
|
|
|
228
239
|
* and `onUploadAttachment` is NOT called). Return `undefined` to allow normal upload.
|
|
229
240
|
*/
|
|
230
241
|
validateAttachment?: (attachment: Attachment) => AttachmentErrorReason | undefined;
|
|
242
|
+
/**
|
|
243
|
+
* When `false`, long pasted plain text is inserted inline instead of being
|
|
244
|
+
* converted to a text attachment. Set to `false` when the selected model
|
|
245
|
+
* does not support attachments. Defaults to `true`.
|
|
246
|
+
*/
|
|
247
|
+
isAttachmentsEnabled?: boolean;
|
|
231
248
|
/**
|
|
232
249
|
* Maximum number of attachments allowed in the input tray. Undefined, `0`,
|
|
233
250
|
* or non-finite values mean there is no count limit.
|
|
@@ -246,15 +263,33 @@ export interface ConversationInputProps {
|
|
|
246
263
|
hideAttachFile?: boolean;
|
|
247
264
|
/**
|
|
248
265
|
* Called when the user clicks or keyboard-activates an attachment card.
|
|
249
|
-
* Receives
|
|
266
|
+
* Receives a `DisplayAttachment` (covers both new and pre-existing attachments).
|
|
250
267
|
* When absent the card is not rendered as interactive.
|
|
251
268
|
*/
|
|
252
|
-
onAttachmentClick?: (attachment:
|
|
269
|
+
onAttachmentClick?: (attachment: DisplayAttachment) => void;
|
|
253
270
|
/**
|
|
254
271
|
* When provided, the desktop model-selector chip opens this panel instead of
|
|
255
272
|
* the flat deployment list. Receives `onClose` so the panel can close the
|
|
256
273
|
* popover after a selection or an explicit dismiss.
|
|
257
274
|
*/
|
|
258
275
|
modelPickerOverlay?: (onClose: () => void) => ReactNode;
|
|
276
|
+
/** Resolved tool toggle items rendered in a "Tools" submenu. When empty or absent, no Tools item is shown. */
|
|
277
|
+
toolsMenuItems?: ToolMenuItem[];
|
|
278
|
+
/** Called when a tool row is toggled. Receives the tool id. */
|
|
279
|
+
onToolToggle?: (toolId: string) => void;
|
|
280
|
+
/** Label for the "Tools" menu item and mobile sheet title. Defaults to `'Tools'`. */
|
|
281
|
+
toolsMenuTitle?: string;
|
|
282
|
+
/** Accessible label for the back arrow in the mobile tools bottom sheet. Defaults to `'Back'`. */
|
|
283
|
+
toolsBackLabel?: string;
|
|
284
|
+
/** Labels for the selected-tools chip row shown in the input when tools are active. */
|
|
285
|
+
toolsChipLabels?: ToolsChipLabels;
|
|
286
|
+
/** Arbitrary slot rendered in the action row before the model selector. Use to inject app-level controls (e.g. a token-usage indicator). */
|
|
287
|
+
usageLimitsSlot?: ReactNode;
|
|
288
|
+
/**
|
|
289
|
+
* Called when the user pastes text whose length is ≥ `pasteTextThreshold` while
|
|
290
|
+
* `isAttachmentsEnabled` is `false`. The text is still inserted inline — the
|
|
291
|
+
* host is responsible for surfacing the error to the user.
|
|
292
|
+
*/
|
|
293
|
+
onMessageTooLong?: (length: number, max: number) => void;
|
|
259
294
|
}
|
|
260
295
|
//# sourceMappingURL=ConversationInput.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConversationInput.d.ts","sourceRoot":"","sources":["../../src/models/ConversationInput.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,qBAAqB,EACrB,cAAc,EACd,iBAAiB,
|
|
1
|
+
{"version":3,"file":"ConversationInput.d.ts","sourceRoot":"","sources":["../../src/models/ConversationInput.ts"],"names":[],"mappings":"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"}
|
package/models/Input.d.ts
CHANGED
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
import { Attachment, AttachmentErrorReason, DeploymentFeatures, DeploymentItem, DisplayAttachment, ResponseFormat } from '@epam/ai-dial-chat-shared';
|
|
1
|
+
import { Attachment, AttachmentErrorReason, DeploymentFeatures, DeploymentItem, DisplayAttachment, ResponseFormat, ToolMenuItem } from '@epam/ai-dial-chat-shared';
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
|
-
/**
|
|
4
|
-
* Controls which key combination submits the message in the `Input` component.
|
|
5
|
-
* - `Enter` (default): Enter submits; Shift+Enter inserts a newline.
|
|
6
|
-
* - `MetaEnter`: ⌘+Enter (macOS) / Ctrl+Enter (Windows/Linux) submits; bare Enter inserts a newline.
|
|
7
|
-
*/
|
|
3
|
+
/** Controls which key combination submits the message in the `Input` component. */
|
|
8
4
|
export declare enum SendOnEnter {
|
|
9
5
|
/** Enter submits; Shift+Enter inserts a newline. */
|
|
10
6
|
Enter = "enter",
|
|
@@ -19,22 +15,24 @@ export interface InputColors {
|
|
|
19
15
|
text?: string;
|
|
20
16
|
/** Border color in the default (unfocused) state. */
|
|
21
17
|
border?: string;
|
|
22
|
-
/** Border color on hover (unfocused). */
|
|
23
|
-
borderHover?: string;
|
|
24
18
|
/** Border color when the input is focused. */
|
|
25
19
|
borderFocus?: string;
|
|
26
20
|
/** Placeholder text color. */
|
|
27
21
|
placeholder?: string;
|
|
28
|
-
/**
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
|
|
36
|
-
/**
|
|
37
|
-
|
|
22
|
+
/** text disabled color. */
|
|
23
|
+
textDisabled?: string;
|
|
24
|
+
/** Model-selector chip caret icon color. Defaults to `--text-primary`. */
|
|
25
|
+
modelSelectorCaret?: string;
|
|
26
|
+
/** Model-selector chip hover/active background color. Defaults to `--bg-control-accent-alpha-hover`/`--bg-control-accent-alpha-active`. */
|
|
27
|
+
modelSelectorHoverBg?: string;
|
|
28
|
+
/** Model-selector chip caret color when disabled. Defaults to `--text-control-disable`. */
|
|
29
|
+
modelSelectorDisabled?: string;
|
|
30
|
+
/** Voice bar error border/icon color. Defaults to `--stroke-error`/`--text-error`. */
|
|
31
|
+
voiceError?: string;
|
|
32
|
+
/** Voice bar waveform and timer text color. Defaults to `--text-primary`. */
|
|
33
|
+
voiceWaveform?: string;
|
|
34
|
+
/** Voice bar stop button and recording-dot accent color. Defaults to `--text-error`. */
|
|
35
|
+
voiceAccent?: string;
|
|
38
36
|
}
|
|
39
37
|
/** Typography overrides for the `Input` component. */
|
|
40
38
|
export interface InputTypography {
|
|
@@ -56,6 +54,13 @@ export interface ModelSelectorLabels {
|
|
|
56
54
|
/** Accessible label for the close button in the mobile bottom-sheet. Defaults to `'Close'`. */
|
|
57
55
|
closeLabel?: string;
|
|
58
56
|
}
|
|
57
|
+
/** Labels for the selected-tools chip row that appears in the input when tools are active. */
|
|
58
|
+
export interface ToolsChipLabels {
|
|
59
|
+
/** Formats the consolidated count label for the mobile chip. Receives the number of selected tools. Defaults to English pluralization. */
|
|
60
|
+
countLabel?: (count: number) => string;
|
|
61
|
+
/** Returns the accessible label for the close button on a desktop chip. Receives the tool label. Defaults to `"Remove {toolLabel}"`. */
|
|
62
|
+
removeLabel?: (toolLabel: string) => string;
|
|
63
|
+
}
|
|
59
64
|
/** Props accepted by the `Input` component. */
|
|
60
65
|
export interface InputProps {
|
|
61
66
|
/**
|
|
@@ -70,7 +75,7 @@ export interface InputProps {
|
|
|
70
75
|
messageRevision?: number;
|
|
71
76
|
/** Called on every keystroke with the current textarea value. */
|
|
72
77
|
onChange?: (message: string) => void;
|
|
73
|
-
/** Called when the user submits a message
|
|
78
|
+
/** Called when the user submits a message. */
|
|
74
79
|
onSend?: (message: string, attachments: Attachment[]) => Promise<void> | void;
|
|
75
80
|
/** Called immediately after an attachment is added. Returns the uploaded attachment URL. */
|
|
76
81
|
onUploadAttachment?: (attachment: Attachment) => Promise<string>;
|
|
@@ -122,6 +127,13 @@ export interface InputProps {
|
|
|
122
127
|
onPendingAttachmentsConsumed?: () => void;
|
|
123
128
|
/** Character count above which a pasted plain-text string is converted to an attachment rather than inserted inline. Defaults to `4000`. Pass `Infinity` to disable. */
|
|
124
129
|
pasteTextThreshold?: number;
|
|
130
|
+
/**
|
|
131
|
+
* When `false`, long pasted plain text is inserted inline instead of being
|
|
132
|
+
* converted to a text attachment. Set to `false` when the selected model
|
|
133
|
+
* does not support attachments so that pasting a long prompt does not
|
|
134
|
+
* trigger an "Attachments not supported" error. Defaults to `true`.
|
|
135
|
+
*/
|
|
136
|
+
isAttachmentsEnabled?: boolean;
|
|
125
137
|
/**
|
|
126
138
|
* List of deployment items to populate the model selector menu. When `undefined`, the selector is not rendered.
|
|
127
139
|
* `iconUrl` on each item must already be a fully resolved URL usable in `<img src>` — the host app
|
|
@@ -143,7 +155,7 @@ export interface InputProps {
|
|
|
143
155
|
/**
|
|
144
156
|
* When `true`, the textarea always renders on its own row above the action bar
|
|
145
157
|
* (attach button at the start, footer actions at the end), instead of the
|
|
146
|
-
* compact single-row layout
|
|
158
|
+
* compact single-row layout. Used by the
|
|
147
159
|
* edit-message UI, which always wants the stacked layout.
|
|
148
160
|
*/
|
|
149
161
|
isStacked?: boolean;
|
|
@@ -186,23 +198,25 @@ export interface InputProps {
|
|
|
186
198
|
*/
|
|
187
199
|
isModelSelectorDisabled?: boolean;
|
|
188
200
|
/**
|
|
189
|
-
* When `true`, the
|
|
190
|
-
*
|
|
201
|
+
* When `true`, disables the send action without removing or dimming the
|
|
202
|
+
* send button itself. Independent of `isInputDisabled`/`isStreaming`.
|
|
203
|
+
* Defaults to `false`.
|
|
191
204
|
*/
|
|
192
|
-
|
|
205
|
+
isSendDisabled?: boolean;
|
|
193
206
|
/**
|
|
194
|
-
*
|
|
195
|
-
*
|
|
196
|
-
*
|
|
197
|
-
*/
|
|
198
|
-
onUploadAudio?: (file: File, contentType: string) => Promise<string>;
|
|
199
|
-
/**
|
|
200
|
-
* Called after successful audio upload with the DIAL storage URL.
|
|
201
|
-
* Resolves with the transcript text.
|
|
207
|
+
* When `true`, the mic button is rendered and voice recording is enabled.
|
|
208
|
+
* Derived by the host app from the selected deployment's `inputAttachmentTypes`.
|
|
209
|
+
* When `false` or absent, the mic button is hidden and the voice bar is never shown.
|
|
202
210
|
*/
|
|
203
|
-
|
|
211
|
+
isAudioMessageSupported?: boolean;
|
|
204
212
|
/** Accessible label for the mic button. Defaults to `'Record voice message'`. */
|
|
205
213
|
micLabel?: string;
|
|
214
|
+
/** Accessible label for the stop-recording button inside the voice bar. Defaults to `'Stop recording'`. */
|
|
215
|
+
stopRecordingLabel?: string;
|
|
216
|
+
/** Accessible label for the discard / X button inside the voice bar. Defaults to `'Discard recording'`. */
|
|
217
|
+
discardRecordingLabel?: string;
|
|
218
|
+
/** `aria-label` for the elapsed-time region inside the voice bar. Defaults to `'Recording time'`. */
|
|
219
|
+
timerAriaLabel?: string;
|
|
206
220
|
/**
|
|
207
221
|
* Controls which key combination submits the message.
|
|
208
222
|
* - `SendOnEnter.Enter` (default): Enter submits; Shift+Enter inserts a newline.
|
|
@@ -219,6 +233,16 @@ export interface InputProps {
|
|
|
219
233
|
* Modal state is managed internally by the component.
|
|
220
234
|
*/
|
|
221
235
|
chatSettings?: ChatSettingsConfig;
|
|
236
|
+
/** Resolved tool toggle items rendered in a "Tools" submenu. When empty or absent, no Tools item is shown. */
|
|
237
|
+
toolsMenuItems?: ToolMenuItem[];
|
|
238
|
+
/** Called when a tool row is toggled. Receives the tool id. */
|
|
239
|
+
onToolToggle?: (toolId: string) => void;
|
|
240
|
+
/** Label for the "Tools" menu item and mobile sheet title. Defaults to `'Tools'`. */
|
|
241
|
+
toolsMenuTitle?: string;
|
|
242
|
+
/** Accessible label for the back arrow in the mobile tools bottom sheet. Defaults to `'Back'`. */
|
|
243
|
+
toolsBackLabel?: string;
|
|
244
|
+
/** Labels for the selected-tools chip row shown in the input when tools are active. */
|
|
245
|
+
toolsChipLabels?: ToolsChipLabels;
|
|
222
246
|
/** When `true`, focuses the textarea on mount. Defaults to `false`. */
|
|
223
247
|
autoFocus?: boolean;
|
|
224
248
|
/**
|
|
@@ -249,16 +273,25 @@ export interface InputProps {
|
|
|
249
273
|
onAttachmentsLimitExceeded?: (count: number, limit: number) => void;
|
|
250
274
|
/**
|
|
251
275
|
* Called when the user clicks or keyboard-activates an attachment card.
|
|
252
|
-
* Receives
|
|
276
|
+
* Receives a `DisplayAttachment` — covers both newly-added attachments
|
|
277
|
+
* (which carry a local `File`) and pre-existing ones (which only have a URL).
|
|
253
278
|
* When absent the card is not rendered as interactive.
|
|
254
279
|
*/
|
|
255
|
-
onAttachmentClick?: (attachment:
|
|
280
|
+
onAttachmentClick?: (attachment: DisplayAttachment) => void;
|
|
256
281
|
/**
|
|
257
282
|
* When provided, the desktop model-selector chip opens this panel instead of
|
|
258
283
|
* the flat deployment list. Receives `onClose` so the panel can close the
|
|
259
284
|
* popover after a selection or an explicit dismiss.
|
|
260
285
|
*/
|
|
261
286
|
modelPickerOverlay?: (onClose: () => void) => ReactNode;
|
|
287
|
+
/** Arbitrary slot rendered in the action row before the model selector. Use to inject app-level controls (e.g. a token-usage indicator). */
|
|
288
|
+
usageLimitsSlot?: ReactNode;
|
|
289
|
+
/**
|
|
290
|
+
* Called when the user pastes text whose length is ≥ `pasteTextThreshold` while
|
|
291
|
+
* `isAttachmentsEnabled` is `false`. The text is still inserted inline — the
|
|
292
|
+
* host is responsible for surfacing the error to the user.
|
|
293
|
+
*/
|
|
294
|
+
onMessageTooLong?: (length: number, max: number) => void;
|
|
262
295
|
}
|
|
263
296
|
/** Values emitted by the chat-settings modal when the user clicks Save. */
|
|
264
297
|
export interface ChatSettingsValues {
|
package/models/Input.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../src/models/Input.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,qBAAqB,EACrB,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,cAAc,
|
|
1
|
+
{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../src/models/Input.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@epam/ai-dial-conversation-input",
|
|
3
3
|
"description": "Conversation message input with model selection, attachments, voice input, and edit mode",
|
|
4
|
-
"version": "1.1.0-dev.
|
|
4
|
+
"version": "1.1.0-dev.90",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "./index.js",
|
|
@@ -17,13 +17,13 @@
|
|
|
17
17
|
}
|
|
18
18
|
},
|
|
19
19
|
"peerDependencies": {
|
|
20
|
-
"@epam/ai-dial-attachment-input": "1.1.0-dev.
|
|
21
|
-
"@epam/ai-dial-chat-shared": "1.1.0-dev.
|
|
22
|
-
"@epam/ai-dial-ui-kit": "0.12.0-dev.36",
|
|
20
|
+
"@epam/ai-dial-attachment-input": "1.1.0-dev.90",
|
|
21
|
+
"@epam/ai-dial-chat-shared": "1.1.0-dev.90",
|
|
23
22
|
"@tabler/icons-react": "^3.44.0",
|
|
24
23
|
"react": "^19.0.0",
|
|
25
24
|
"react-dom": "^19.2.6",
|
|
26
|
-
"@epam/ai-dial-kit": "1.1.0-dev.
|
|
25
|
+
"@epam/ai-dial-kit": "1.1.0-dev.90",
|
|
26
|
+
"@epam/ai-dial-ui-kit": "^0.13.0-dev.26"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
29
|
"react-window": "^2.2.7"
|
package/utils/concurrency.d.ts
CHANGED
|
@@ -1,17 +1,8 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Runs `fn` over every item in `items` with at most `concurrency` calls in flight
|
|
3
|
-
* at a time. Items are consumed from a shared queue by N concurrent workers, so
|
|
4
|
-
* faster tasks don't leave workers idle waiting for a slow sibling.
|
|
5
|
-
*/
|
|
1
|
+
/** Runs `fn` over every item in `items` with at most `concurrency` calls in flight at a time. */
|
|
6
2
|
export declare const runConcurrent: <T>(items: T[], concurrency: number, fn: (item: T) => Promise<void>) => Promise<void>;
|
|
7
3
|
/**
|
|
8
|
-
* Runs `fn` over every item in `items` at a steady rate of `maxPerMinute` calls
|
|
9
|
-
*
|
|
10
|
-
* call starts, not how many are in flight. This prevents bursting past a
|
|
11
|
-
* server-side throttle window while still parallelising the work.
|
|
12
|
-
*
|
|
13
|
-
* Example: 200 items at 100/min → one call every 600 ms, all overlapping,
|
|
14
|
-
* never more than 100 starts within any 60-second window.
|
|
4
|
+
* Runs `fn` over every item in `items` at a steady rate of `maxPerMinute` calls per minute.
|
|
5
|
+
* All calls run concurrently — the rate limit controls when each call starts, not how many are in flight.
|
|
15
6
|
*/
|
|
16
7
|
export declare const runAtRate: <T>(items: T[], maxPerMinute: number, fn: (item: T) => Promise<void>) => Promise<void>;
|
|
17
8
|
//# sourceMappingURL=concurrency.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concurrency.d.ts","sourceRoot":"","sources":["../../src/utils/concurrency.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"concurrency.d.ts","sourceRoot":"","sources":["../../src/utils/concurrency.ts"],"names":[],"mappings":"AAAA,iGAAiG;AACjG,eAAO,MAAM,aAAa,GAAU,CAAC,EACnC,OAAO,CAAC,EAAE,EACV,aAAa,MAAM,EACnB,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,KAC7B,OAAO,CAAC,IAAI,CAYd,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAU,CAAC,EAC/B,OAAO,CAAC,EAAE,EACV,cAAc,MAAM,EACpB,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,KAC7B,OAAO,CAAC,IAAI,CAYd,CAAC"}
|
package/utils/deployment.d.ts
CHANGED
|
@@ -7,9 +7,6 @@ export declare const getDeploymentLabel: (item: DeploymentItem) => string;
|
|
|
7
7
|
* An empty/whitespace query returns the list unchanged.
|
|
8
8
|
*/
|
|
9
9
|
export declare const filterDeployments: (deployments: DeploymentItem[], query: string) => DeploymentItem[];
|
|
10
|
-
/**
|
|
11
|
-
* Builds the leading icon for a deployment. Uses the resolved image URL when
|
|
12
|
-
* available (with an error fallback and lazy loading) and an initials avatar otherwise.
|
|
13
|
-
*/
|
|
10
|
+
/** Builds the leading icon node for a deployment. */
|
|
14
11
|
export declare const buildDeploymentIcon: (resolvedIconUrl: string | undefined, type: string | undefined, displayName: string, size?: number, tooltip?: string) => ReactNode;
|
|
15
12
|
//# sourceMappingURL=deployment.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployment.d.ts","sourceRoot":"","sources":["../../src/utils/deployment.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAkB,MAAM,2BAA2B,CAAC;AAChF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,iFAAiF;AACjF,eAAO,MAAM,kBAAkB,GAAI,MAAM,cAAc,KAAG,MAC7B,CAAC;AAE9B;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAC5B,aAAa,cAAc,EAAE,EAC7B,OAAO,MAAM,KACZ,cAAc,EAMhB,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"deployment.d.ts","sourceRoot":"","sources":["../../src/utils/deployment.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAkB,MAAM,2BAA2B,CAAC;AAChF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,iFAAiF;AACjF,eAAO,MAAM,kBAAkB,GAAI,MAAM,cAAc,KAAG,MAC7B,CAAC;AAE9B;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAC5B,aAAa,cAAc,EAAE,EAC7B,OAAO,MAAM,KACZ,cAAc,EAMhB,CAAC;AAEF,qDAAqD;AACrD,eAAO,MAAM,mBAAmB,GAC9B,iBAAiB,MAAM,GAAG,SAAS,EACnC,MAAM,MAAM,GAAG,SAAS,EACxB,aAAa,MAAM,EACnB,aAAS,EACT,UAAU,MAAM,KACf,SAOF,CAAC"}
|