call method

  1. @override
Object? call(
  1. Interpreter interpreter,
  2. List<Object?> arguments,
  3. Map<Symbol, Object?> namedArguments
)
override

Implementation

@override
Object? call(Interpreter interpreter, List<Object?> arguments,
    Map<Symbol, Object?> namedArguments) {
  Color borderColor = Colors.red;
  var borderColorParsed = namedArguments[const Symbol('borderColor')];
  if (borderColorParsed != null) {
    borderColor = borderColorParsed as Color;
  }
  double borderWidth =
      parseDouble(namedArguments[const Symbol('borderWidth')]) ?? 3.0;
  Color overlayColor = const Color.fromRGBO(0, 0, 0, 80);
  var overlayColorParsed = namedArguments[const Symbol('overlayColor')];
  if (overlayColorParsed != null) {
    overlayColor = overlayColorParsed as Color;
  }
  double borderRadius =
      parseDouble(namedArguments[const Symbol('borderRadius')]) ?? 0;
  double borderLength =
      parseDouble(namedArguments[const Symbol('borderLength')]) ?? 40;
  double? cutOutSize =
      parseDouble(namedArguments[const Symbol('cutOutSize')]);
  double? cutOutWidth =
      parseDouble(namedArguments[const Symbol('cutOutWidth')]);
  double? cutOutHeight =
      parseDouble(namedArguments[const Symbol('cutOutHeight')]);
  double cutOutBottomOffset =
      parseDouble(namedArguments[const Symbol('cutOutBottomOffset')]) ?? 0;
  return QrScannerOverlayShape(
    borderColor: borderColor,
    borderWidth: borderWidth,
    overlayColor: overlayColor,
    borderRadius: borderRadius,
    borderLength: borderLength,
    cutOutSize: cutOutSize,
    cutOutWidth: cutOutWidth,
    cutOutHeight: cutOutHeight,
    cutOutBottomOffset: cutOutBottomOffset,
  );
}