Source

delay.js

/** 
 * @module Delay 
 */

/**
 * function to create a promise that resolves after a given amount of time
 * @author Moreno van Rooijen <moreno@notanumber.digital>
 * @example
 * import { delay } from "nan-design-system/utils";
 *
 * function walk(){
 *  takeStep()
 *  await delay(1000); // wait 1 second
 *  takeStep()
 * }
 * @param {int} ms time to wait in ms
 * @returns {Promise} promise that resolves after ms milliseconds
 */
export async function delay(ms) {
  return new Promise((resolve) => {
    setTimeout(() => {
      resolve();
    }, ms);
  });
}