open-consul/ui/packages/consul-ui/app/services/timeout.js
John Cowen ef01ea18f1
ui: Run Ember native class code mod (#9093)
* ui: Apply native class codemod to all services

* ui: Apply native class codemod to routes

* ui: Apply native class codemod to controllers

* Fix up ember proxy `content` issue

* Add a CreateTime on policy creation

* Minor formatting

* Convert child based saving to use ec instead of custom approach

* Remove custom event source repo wrapping initializer

* Repos here are no longer proxy objects revert to using them normally

* Remove areas of code that were used to set up source backed repos
2020-11-09 09:25:35 +00:00

20 lines
624 B
JavaScript

import Service from '@ember/service';
import promisedTimeoutFactory from 'consul-ui/utils/promisedTimeout';
import { next } from '@ember/runloop';
const promisedTimeout = promisedTimeoutFactory(Promise);
export default class TimeoutService extends Service {
// TODO: milliseconds should default to 0 or potentially just null
// if it is 0/null use tick/next instead
// if Octane eliminates the runloop things, look to use raf here instead
execute(milliseconds, cb) {
return promisedTimeout(milliseconds, cb);
}
tick() {
return new Promise(function(resolve, reject) {
next(resolve);
});
}
}