component method

dynamic component(
  1. String name, {
  2. String? description,
  3. Map<String, DslType>? params,
  4. required DslWidget body,
})

Declares a reusable component and returns a callable handle for it.

Implementation

dynamic component(
  String name, {
  String? description,
  Map<String, DslType>? params,
  required DslWidget body,
}) {
  _ensureNotPendingRemoval(
    _pendingRemovals,
    name,
    'component',
    'removeComponent',
  );
  _ensureUnique(_componentNames, name, 'component');
  _rejectReservedComponentParamNames(name, params);
  final declaration = ComponentDeclaration(
    name: name,
    description: description,
    params: params,
    body: body,
  );
  _components.add(declaration);
  return ComponentHandle(declaration);
}