init method

Future<void> init({
  1. required String brandToken,
  2. required String brandUrl,
  3. required String name,
  4. required String phone,
})

Implementation

Future<void> init({
  required String brandToken,
  required String brandUrl,
  required String name,
  required String phone,
}) async {
  controller = VouchSDKController(brandToken: brandToken);
  await controller.authenticate();

  statusController = StatusController();

  brandingController = GetBrandingController(
    brandUrl: brandUrl,
    phone: phone,
    name: name,
    controller: statusController,
    brandToken: brandToken,
  );

  await brandingController.getBranding();
  branding = await VouchStorageService.getBrandingData();


  final savedPhone = await VouchStorageService.getUserPhone();
  if (savedPhone == null || savedPhone != phone) {
    await VouchStorageService.clearFinishTapped();
    statusController.updateStatus(0);
    isReady = true;
    return;
  }
  final status = await VouchStorageService.getFinish();
  finishTapped = (status["finishTapped"] ?? "") != "";
  isReady = controller.isAuthenticated && brandingController.isDataLoaded;
}