wrapperFactory function
Future<void>
wrapperFactory(
- BuildContext _context, {
- required PropagaPayment payment,
- required PropagaSDK propagaSDK,
Implementation
Future<void> wrapperFactory(
BuildContext _context, {
required PropagaPayment payment,
required PropagaSDK propagaSDK,
}) async {
final accountResponse = await propagaSDK
.getCornerStoreService()
.getExternalAccount(payment.cornerStoreId);
if (accountResponse.status == 'in-waiting-list') {
return payment.onErrorTransaction(PropagaError(
errorCode: 'USER_IN_WAITING_LIST',
errorMessage: 'USER_IN_WAITING_LIST'));
}
final simulation = await propagaSDK
.getTransactionService()
.createSimulation(accountResponse.cornerStoreId, payment.totalAmount);
final customizerOptions =
await propagaSDK.getWholesalerService().getCustomizerOptions();
Navigator.of(_context).push(createRoute(
MultiProvider(
providers: createProviders(
propagaSDK: propagaSDK,
accountResponse: accountResponse,
simulation: simulation,
customizerOptions: customizerOptions,
payment: payment),
builder: (context, _) => PropagaFactory(
buildContext: _context,
),
),
customizerOptions.logo));
}