mirror of
https://github.com/gamedig/node-gamedig.git
synced 2024-11-16 08:48:32 +01:00
93a9095d99
* Add initial prettier and eslint configs * Modify prettierrc * Run eslint on everything * Actually remove prettier * Fix some eslints * Remove label in gs2 * Update CHANGELOG * Update eslintrc to specify es2021
18 lines
467 B
JavaScript
18 lines
467 B
JavaScript
export default class Promises {
|
|
static createTimeout (timeoutMs, timeoutMsg) {
|
|
let cancel = null
|
|
const wrapped = new Promise((resolve, reject) => {
|
|
const timeout = setTimeout(
|
|
() => {
|
|
reject(new Error(timeoutMsg + ' - Timed out after ' + timeoutMs + 'ms'))
|
|
},
|
|
timeoutMs
|
|
)
|
|
cancel = () => {
|
|
clearTimeout(timeout)
|
|
}
|
|
})
|
|
wrapped.cancel = cancel
|
|
return wrapped
|
|
}
|
|
}
|