12345678910111213141516171819202122232425 |
- 'use strict';
- var $ = require('../internals/export');
- var globalThis = require('../internals/global-this');
- var microtask = require('../internals/microtask');
- var aCallable = require('../internals/a-callable');
- var validateArgumentsLength = require('../internals/validate-arguments-length');
- var fails = require('../internals/fails');
- var DESCRIPTORS = require('../internals/descriptors');
-
- // Bun ~ 1.0.30 bug
- // https://github.com/oven-sh/bun/issues/9249
- var WRONG_ARITY = fails(function () {
- // getOwnPropertyDescriptor for prevent experimental warning in Node 11
- // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
- return DESCRIPTORS && Object.getOwnPropertyDescriptor(globalThis, 'queueMicrotask').value.length !== 1;
- });
-
- // `queueMicrotask` method
- // https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#dom-queuemicrotask
- $({ global: true, enumerable: true, dontCallGetSet: true, forced: WRONG_ARITY }, {
- queueMicrotask: function queueMicrotask(fn) {
- validateArgumentsLength(arguments.length, 1);
- microtask(aCallable(fn));
- }
- });
|