@@ -15,9 +15,33 @@ import { styles } from './themes/input.base.css.js';
1515import { attachmentIcon , sendButtonIcon } from './types.js' ;
1616
1717/**
18+ * A web component that provides the input area for the `igc-chat` interface.
19+ *
20+ * It supports:
21+ * - Text input with automatic resizing
22+ * - Sending messages on Enter key (with Shift+Enter for newlines)
23+ * - File attachments via file picker or drag-and-drop
24+ * - Customizable templates for send button, attachments, and text input
25+ * - Emits various chat-related events (typing, input focus/blur, attachment drop, etc.)
1826 *
1927 * @element igc-chat-input
2028 *
29+ * @slot - Default unnamed slot for rendering inside the component
30+ * @fires igcTypingChange - Fired when the user starts/stops typing
31+ * @fires igcInputFocus - Fired when the input area receives focus
32+ * @fires igcInputBlur - Fired when the input area loses focus
33+ * @fires igcAttachmentDrag - Fired when dragging a file over the input
34+ * @fires igcAttachmentDrop - Fired when a file is dropped into the input
35+ * @fires igcChange - Fired when file input changes (delegated from `<igc-file-input>`)
36+ *
37+ * @csspart input-container - Container for the input section
38+ * @csspart input-wrapper - Wrapper around the text input
39+ * @csspart text-input - The `<igc-textarea>` component
40+ * @csspart buttons-container - Container for file upload/send buttons
41+ * @csspart send-button - The send icon button
42+ * @csspart attachments - Container for rendering attachments
43+ * @csspart attachment-wrapper - Wrapper for individual attachment
44+ * @csspart attachment-name - Display name of an attachment
2145 */
2246export default class IgcChatInputComponent extends LitElement {
2347 public static readonly tagName = 'igc-chat-input' ;
0 commit comments