X-Git-Url: https://git.josue.xyz/?a=blobdiff_plain;f=.config%2Fcoc%2Fextensions%2Fnode_modules%2Fcoc-prettier%2Fnode_modules%2Fcore-js%2Finternals%2Fmicrotask.js;h=7efd595eee8a548fef618ff02b98e6bcfd3376e6;hb=3be0a9efc698a9570a44456009afc6014812625a;hp=2da2c24a46edc0fe85c70f259387069a89814fb8;hpb=4d07c77cf4d78cab8639e13ddc3c22495e585b0b;p=dotfiles%2F.git diff --git a/.config/coc/extensions/node_modules/coc-prettier/node_modules/core-js/internals/microtask.js b/.config/coc/extensions/node_modules/coc-prettier/node_modules/core-js/internals/microtask.js index 2da2c24a..7efd595e 100644 --- a/.config/coc/extensions/node_modules/coc-prettier/node_modules/core-js/internals/microtask.js +++ b/.config/coc/extensions/node_modules/coc-prettier/node_modules/core-js/internals/microtask.js @@ -1,7 +1,10 @@ var global = require('../internals/global'); +var bind = require('../internals/function-bind-context'); var getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f; var macrotask = require('../internals/task').set; var IS_IOS = require('../internals/engine-is-ios'); +var IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble'); +var IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit'); var IS_NODE = require('../internals/engine-is-node'); var MutationObserver = global.MutationObserver || global.WebKitMutationObserver; @@ -34,7 +37,8 @@ if (!queueMicrotask) { }; // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339 - if (!IS_IOS && !IS_NODE && MutationObserver && document) { + // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898 + if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) { toggle = true; node = document.createTextNode(''); new MutationObserver(flush).observe(node, { characterData: true }); @@ -42,12 +46,14 @@ if (!queueMicrotask) { node.data = toggle = !toggle; }; // environments with maybe non-completely correct, but existent Promise - } else if (Promise && Promise.resolve) { + } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) { // Promise.resolve without an argument throws an error in LG WebOS 2 promise = Promise.resolve(undefined); - then = promise.then; + // workaround of WebKit ~ iOS Safari 10.1 bug + promise.constructor = Promise; + then = bind(promise.then, promise); notify = function () { - then.call(promise, flush); + then(flush); }; // Node.js without promises } else if (IS_NODE) { @@ -61,9 +67,10 @@ if (!queueMicrotask) { // - onreadystatechange // - setTimeout } else { + // strange IE + webpack dev server bug - use .bind(global) + macrotask = bind(macrotask, global); notify = function () { - // strange IE + webpack dev server bug - use .call(global) - macrotask.call(global, flush); + macrotask(flush); }; } }