call method

  1. @override
$Value? call(
  1. Runtime runtime,
  2. $Value? target,
  3. List<$Value?> args
)

Implementation

@override
$Value? call(Runtime runtime, $Value? target, List<$Value?> args) {
  final result = showTextAnswerDialog(
    context: args[0]!.$value,
    keyword: args[1]!.$value,
    title: args[2]?.$value,
    message: args[3]?.$value,
    okLabel: args[4]?.$value,
    cancelLabel: args[5]?.$value,
    isDestructiveAction: args[6]?.$value ?? false,
    barrierDismissible: args[7]?.$value ?? true,
    hintText: args[8]?.$value,
    retryTitle: args[9]?.$value,
    retryMessage: args[10]?.$value,
    retryOkLabel: args[11]?.$value,
    retryCancelLabel: args[12]?.$value,
    style: args[13]?.$value,
    useRootNavigator: args[14]?.$value ?? true,
    actionsOverflowDirection: args[15]?.$value ?? VerticalDirection.up,
    fullyCapitalizedForMaterial: args[16]?.$value ?? false,
    canPop: args[17]?.$value ?? true,
    onPopInvokedWithResult: (bool didPop, List<String>? result) {
      (args[18]! as EvalCallable?)?.call(runtime, null, [
        $bool(didPop),
        if (result == null)
          const $null()
        else
          $List.view(result, (e) => $String(e)),
      ]);
    },
    autoSubmit: args[19]?.$value ?? false,
    isCaseSensitive: args[20]?.$value ?? true,
    builder: (BuildContext context, Widget child) {
      return (args[21]! as EvalCallable?)?.call(runtime, null, [
        $BuildContext.wrap(context),
        $Widget.wrap(child),
      ])?.$value;
    },
  );
  return $Future.wrap(result.then((e) => $bool(e)));
}