Files
coopgo/node_modules/@react-dnd/asap/src/asap.ts
sgauthier 6e64e138e2
All checks were successful
Publish To Prod / deploy_and_publish (push) Successful in 35s
planning
2024-10-14 09:15:30 +02:00

19 lines
743 B
TypeScript

import { AsapQueue } from './AsapQueue.js'
import { TaskFactory } from './TaskFactory.js'
import type { TaskFn } from './types.js'
const asapQueue = new AsapQueue()
const taskFactory = new TaskFactory(asapQueue.registerPendingError)
/**
* Calls a task as soon as possible after returning, in its own event, with priority
* over other events like animation, reflow, and repaint. An error thrown from an
* event will not interrupt, nor even substantially slow down the processing of
* other events, but will be rather postponed to a lower priority event.
* @param {{call}} task A callable object, typically a function that takes no
* arguments.
*/
export function asap(task: TaskFn) {
asapQueue.enqueueTask(taskFactory.create(task))
}