()
| 46 | return new Promise((resolve, reject) => { |
| 47 | const start = Date.now(); |
| 48 | const check = () => { |
| 49 | if (condition()) return resolve(); |
| 50 | if (Date.now() - start > timeoutMs) return reject(new Error('waitFor timed out')); |
| 51 | setTimeout(check, intervalMs); |
| 52 | }; |
| 53 | check(); |
| 54 | }); |
| 55 | } |