genUiCatalogComponent method
Adds a reusable component to a chat widget's GenUI catalog.
Implementation
void genUiCatalogComponent(
GenUiChatTarget chat, {
required Object component,
}) {
final chatName = chat.chatName;
final componentName = _resolveComponentReference(component, 'component');
final duplicate = _genUiCatalogComponents.any(
(entry) =>
entry.chatName == chatName && entry.componentName == componentName,
);
if (duplicate) {
throw ArgumentError(
'Component "$componentName" is already registered in the GenUI catalog for "$chatName".',
);
}
_genUiCatalogComponents.add(
GenUiCatalogComponentDeclaration(
chatName: chatName,
componentName: componentName,
),
);
}