Package io.jmix.aichat.data
@NullMarked
package io.jmix.aichat.data
AI chat message model (message contract, the render role, factory, and the default
implementation). The contract's own role type is
io.jmix.aichat.entity.AiMessageRole.-
ClassDescriptionAbstractAiChatItems<T extends AiChatMessage>Base class for
AiChatItemsimplementations: owns the lazily created event bus, the items-change notification, and the constant-ACTIVEdata-unit state every source shares.AiChatItems<T extends AiChatMessage>Source of conversation messages forAiChat: the component reads the rendered history from it and appends generated messages to it.AiChatItems.ItemsChangeEvent<T extends AiChatMessage>Event fired when the message collection changes.Kind of message collection change.Contract for a single chat message handled byAiChat.EverythingAiChatMessageFactoryis given about the message it is asked to mint.AiChatMessageFactory<T extends AiChatMessage>Creates message instances of the application's type forAiChat.ContainerAiChatItems<T extends AiChatMessage>AiChatItemsimplementation over a JmixCollectionContainer: the container is the source of truth, and generated messages are appended to it, so the chat takes part in the view's ordinary load and save cycle.The message factoryAiChatfalls back to when the application supplies none: it mintsSimpleAiChatMessageinstances and saves their attachments to the default file storage.ListAiChatItems<T extends AiChatMessage>In-memoryAiChatItemsimplementation.The role of a message in anAiMessageList: how the message list renders it.Built-in mutableAiChatMessageused byAiChatwhen the application does not supply its own message type.