func download()

in Diffusion/Common/Pipeline/PipelineLoader.swift [136:148]


    func download() async throws -> URL {
        if ready || downloaded { return downloadedURL }

        let downloader = Downloader(from: url, to: downloadedURL)
        self.downloader = downloader
        downloadSubscriber = downloader.downloadState.sink { state in
            if case .downloading(let progress) = state {
                self.state = .downloading(progress)
            }
        }
        try downloader.waitUntilDone()
        return downloadedURL
    }