startSession static method

Future<Map> startSession(
  1. IdentityBuilder builder,
  2. String sessionToken
)

Start the session given a builder and a sessionToken.

Implementation

static Future<Map> startSession(
    IdentityBuilder builder, String sessionToken) async {
  Map<String, dynamic> parameters = {};
  parameters['SessionToken'] = sessionToken;
  if (builder.language != null) {
    parameters['Language'] = builder.language.toString();
  }

  if (builder.colors.textColor != null) {
    parameters['Colors.textColor'] =
        KIVHexColor.flutterColorToHex(builder.colors.textColor!, true);
  }

  if (builder.colors.backgroundColor != null) {
    parameters['Colors.backgroundColor'] =
        KIVHexColor.flutterColorToHex(builder.colors.backgroundColor!, true);
  }

  if (builder.colors.buttonSuccessColor != null) {
    parameters['Colors.buttonSuccessColor'] = KIVHexColor.flutterColorToHex(
        builder.colors.buttonSuccessColor!, true);
  }

  if (builder.colors.buttonErrorColor != null) {
    parameters['Colors.buttonErrorColor'] =
        KIVHexColor.flutterColorToHex(builder.colors.buttonErrorColor!, true);
  }

  if (builder.colors.buttonOtherColor != null) {
    parameters['Colors.buttonOtherColor'] =
        KIVHexColor.flutterColorToHex(builder.colors.buttonOtherColor!, true);
  }

  if (builder.colors.progressBarBackground != null) {
    parameters['Colors.progressBarBackground'] =
        KIVHexColor.flutterColorToHex(
            builder.colors.progressBarBackground!, true);
  }

  if (builder.colors.progressBarForeground != null) {
    parameters['Colors.progressBarForeground'] =
        KIVHexColor.flutterColorToHex(
            builder.colors.progressBarForeground!, true);
  }

  if (builder.fonts.fontName != null) {
    parameters['Fonts.fontName'] = builder.fonts.fontName;
  }

  if (builder.fonts.boldFontName != null) {
    parameters['Fonts.boldFontName'] = builder.fonts.boldFontName;
  }

  if (builder.hasIntroScreen != null) {
    parameters['HasIntroScreen'] = builder.hasIntroScreen;
  }

  if (builder.hasSuccessScreen != null) {
    parameters['HasSuccessScreen'] = builder.hasSuccessScreen;
  }

  if (builder.isDebug != null) {
    parameters['IsDebug'] = builder.isDebug;
  }

  if (builder.enableAutoCapture != null) {
    parameters['EnableAutoCapture'] = builder.enableAutoCapture;
  }

  if (builder.verifyIncludeList != null) {
    parameters['VerifyIncludeList'] = builder.verifyIncludeList;
  }

  if (builder.verifyExcludeList != null) {
    parameters['VerifyExcludeList'] = builder.verifyExcludeList;
  }

  if (builder.validationIncludeList != null) {
    parameters['ValidationIncludeList'] = builder.validationIncludeList;
  }

  if (builder.validationExcludeList != null) {
    parameters['ValidationExcludeList'] = builder.validationExcludeList;
  }

  if (builder.retryThreshold != null) {
    parameters["RetryThreshold"] = builder.retryThreshold;
  }

  if (builder.allowCameraOnNFCTask != null) {
    parameters["AllowCameraOnNFCTask"] = builder.allowCameraOnNFCTask;
  }

  if (builder.exitOnRetryThresholdReached != null) {
    parameters["ExitOnRetryThresholdReached"] =
        builder.exitOnRetryThresholdReached;
  }

  if (builder.nfcTimeoutThreshold != null) {
    parameters["NfcTimeoutThreshold"] = builder.nfcTimeoutThreshold;
  }

  final Map startSessionResult =
      await _channel.invokeMethod('startSession', parameters);
  return startSessionResult;
}