Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | 28x 95x 95x | /**
* Delays the execution of the code for the specified amount of milliseconds.
*
* @example
*
* ```ts
* import { delay } from 'emitnlog/utils';
*
* // Wait for 500 milliseconds before continuing
* await delay(500);
* console.log('This will be logged after 500ms');
*
* // Chain multiple operations with delays
* async function processWithDelays() {
* await step1();
* await delay(1000); // 1 second cooldown
* await step2();
* await delay(2000); // 2 second cooldown
* await step3();
* }
* ```
*
* @param milliseconds The amount of milliseconds to wait (0 if negatived, and ceil if decimal).
* @returns A promise that resolves after the specified amount of milliseconds.
*/
export const delay = (milliseconds: number): Promise<void> =>
new Promise((resolve) => {
setTimeout(() => resolve(), Math.max(0, Math.ceil(milliseconds)));
});
|