build method

  1. @override
dynamic build(
  1. Object? context, {
  2. bool asElement = true,
  3. DSXResolution dsxResolution = DSXResolution.resolveDSX,
  4. QueryElementProvider? elementProvider,
  5. IntlMessageResolver? intlMessageResolver,
})
override

Implementation

@override
dynamic build(
  Object? context, {
  bool asElement = true,
  DSXResolution dsxResolution = DSXResolution.resolveDSX,
  QueryElementProvider? elementProvider,
  IntlMessageResolver? intlMessageResolver,
}) {
  if (evaluate(context, dsxResolution: dsxResolution)) {
    return buildContent(
      context,
      asElement: asElement,
      dsxResolution: dsxResolution,
      elementProvider: elementProvider,
    );
  } else {
    var elseCondition = this.elseCondition;

    while (elseCondition != null) {
      if (elseCondition.evaluate(context, dsxResolution: dsxResolution)) {
        return elseCondition.build(
          context,
          asElement: asElement,
          dsxResolution: dsxResolution,
          elementProvider: elementProvider,
        );
      }
      elseCondition = elseCondition.elseCondition;
    }

    return null;
  }
}