openBestChoice method Null safety

Future<void> openBestChoice(
  1. {required dynamic productQuery,
  2. required dynamic localDatabase,
  3. required dynamic color,
  4. required String heroTag,
  5. required String name,
  6. required dynamic context}
)

Implementation

Future<void> openBestChoice({
  required final PagedProductQuery productQuery,
  required final LocalDatabase localDatabase,
  required final Color color,
  required final String heroTag,
  required final String name,
  required final BuildContext context,
}) async {
  final ProductListSupplier supplier =
      await ProductListSupplier.getBestSupplier(
    productQuery,
    localDatabase,
  );
  //ignore: use_build_context_synchronously
  Navigator.push<Widget>(
    context,
    MaterialPageRoute<Widget>(
      builder: (BuildContext context) => ProductQueryPage(
        productListSupplier: supplier,
        heroTag: heroTag,
        mainColor: color,
        name: name,
        lastUpdate: supplier.timestamp,
      ),
    ),
  );
}