showMultipleInAppWithInAppCode static method

Future<ListView> showMultipleInAppWithInAppCode(
  1. List<String> inAppCodes,
  2. List<Container> containers,
  3. dynamic didExpired(
    1. Container container,
    2. ErrorModel error
    )?,
  4. dynamic didShowManyTimes(
    1. Container container,
    2. ErrorModel error
    )?,
  5. dynamic didClickOut(
    1. Container container,
    2. ErrorModel error
    )?,
  6. dynamic dismissForever(
    1. Container container,
    2. ErrorModel error
    )?,
  7. dynamic didFormSubmit(
    1. Container container,
    2. ErrorModel error
    )?,
  8. dynamic onSuccess(
    1. InApp inApp,
    2. Container container
    )?,
  9. dynamic onError(
    1. ErrorModel error
    )?,
)

Show multiple InApp

Set a list of containers and inApp codes, if is correct it return a callback with inApp and container and return a listView with all containers with the webViews embeded

Implementation

static Future<ListView> showMultipleInAppWithInAppCode(
    List<String> inAppCodes,
    List<Container> containers,
    Function(Container container, ErrorModel error)? didExpired,
    Function(Container container, ErrorModel error)? didShowManyTimes,
    Function(Container container, ErrorModel error)? didClickOut,
    Function(Container container, ErrorModel error)? dismissForever,
    Function(Container container, ErrorModel error)? didFormSubmit,
    Function(InApp inApp, Container container)? onSuccess,
    Function(ErrorModel error)? onError) async {
  List<Container> listContainer = [];
  for (var i = 0; i < inAppCodes.length; i++) {
    var container = await _inAppWasShown(
        inAppCodes[i],
        containers[i],
        didExpired,
        didShowManyTimes,
        didClickOut,
        dismissForever,
        didFormSubmit,
        onSuccess,
        onError);
    if (container != null) listContainer.add(container);
  }
  return ListView.builder(
      itemCount: listContainer.length,
      shrinkWrap: true, // <- added
      //primary: false, //
      itemBuilder: (BuildContext context, int index) {
        return listContainer[index];
      });
}