ChatInput
Overview
Chat Input is a rich and flexible chat input widget for Mendix web applications. It supports text input, file attachments (upload, drag & drop, paste), and optional speech-to-text. Built for chat and AI-powered apps, it includes file validation, preview, and configurable events like On Send. Easy to integrate and designed for scalable, real-world use cases.
Documentation
Typical usage scenario
Chat Input is used in chat-based and AI-powered Mendix applications where users need to send messages along with files or voice input.
It is ideal for:
• AI chatbots and assistants
• Support/chat interfaces
• Document-based query systems
• Applications requiring file upload within chat
It solves the problem of building a rich, user-friendly chat input with minimal effort.
Features and limitations
• Auto-growing text input
• File upload (browse, drag & drop, paste)
• File validation (size, type, count)
• File preview and removal
• Speech-to-text (browser-based)
• Configurable events (On Send, On Change, etc.)
• Send on Enter support
Configuration
• Set Text Attribute (e.g., ChatMessage/MessageText)
• Enable Support Files if file upload is required
• Select Associated Files and provide a nanoflow to create and commit FileDocument
File Validation Setup:
The widget supports both Static and Dynamic configuration for file size, count, and format:
• Static configuration
- Select Static as the source
- Directly provide values like max file size (MB), max file count, and allowed extensions (e.g., jpg,png,pdf)
• Dynamic configuration
- Select Dynamic as the source
- Map it to a String attribute (for extensions) or Integer attribute (for size/count)
- The widget will read values at runtime from the mapped attributes
• Configure actions like On Send to handle message submission
• Enable Speech-to-Text if required (browser supported)
• Use Send on Enter for quick message sending (Shift+Enter for new line)
Releases
CCG Chat Input Widget.
Provides a rich chat input experience for Mendix web applications with support for text input, file attachments (upload, drag & drop, paste), and optional speech-to-text.