func pageViewController()

in ScrollingFeed/Controllers/StreamsViewController.swift [57:68]


    func pageViewController(_ pageViewController: UIPageViewController, viewControllerBefore viewController: UIViewController) -> UIViewController? {
        guard let previousStreamVC = storyboard?.instantiateViewController(withIdentifier: "StreamViewController") as? StreamViewController,
              let vc = viewController as? StreamViewController,
              let stream = vc.stream else {
                  return nil
              }

        let currentIndex = streams.firstIndex(where: { $0.id == stream.id }) ?? 0
        let index = currentIndex == 0 ? streams.count - 1 : currentIndex - 1
        previousStreamVC.setup(streams[index], delegate: self)
        return previousStreamVC
    }