(res: RunResponse | Observable<RunResponse>)
| 2 | import { Observable } from 'rxjs' |
| 3 | |
| 4 | export async function convertObservableToRunResponse(res: RunResponse | Observable<RunResponse>): Promise<RunResponse> { |
| 5 | if ('outputs' in res) { |
| 6 | return res |
| 7 | } |
| 8 | return new Promise((resolve, reject) => { |
| 9 | const items: any[] = [] |
| 10 | let store: RunResponse['store'] |
| 11 | res.subscribe({ |
| 12 | next(item) { |
| 13 | items.push(item.outputs) |
| 14 | store = item.store |
| 15 | }, |
| 16 | error(err) { |
| 17 | reject(err) |
| 18 | }, |
| 19 | complete() { |
| 20 | resolve({ outputs: { items }, store }) |
| 21 | }, |
| 22 | }) |
| 23 | }) |
| 24 | } |
| 25 | |
| 26 | export function wait(ms: number): Promise<void> { |
| 27 | return new Promise((resolve) => setTimeout(resolve, ms)) |
no test coverage detected