registerBuilder method
void
registerBuilder(
- ContentBuilder<
ContentItem> builder, { - List<
ContentDescriptor> ? descriptors = const [],
Register a ContentBuilder directly This allows other plugins to register content builders programmatically
Implementation
void registerBuilder(ContentBuilder builder,
{List<ContentDescriptor>? descriptors = const []}) {
final schemaType = builder.content.schemaType;
if (_contentBuilderMap.containsKey(schemaType)) {
VyuhBinding.instance.log.warn(
'ContentBuilder for schemaType: $schemaType is already registered. Overriding.',
);
}
_contentBuilderMap[schemaType] = builder;
final matchingDescriptors = descriptors
?.where((element) => element.schemaType == schemaType)
.toList(growable: false) ??
[];
builder.init(matchingDescriptors);
VyuhBinding.instance.log.info(
'Registered ContentBuilder for schemaType: $schemaType',
);
}