diff options
Diffstat (limited to 'node_modules/@babel/plugin-transform-classes/lib/inline-createSuper-helpers.js')
| -rw-r--r-- | node_modules/@babel/plugin-transform-classes/lib/inline-createSuper-helpers.js | 68 |
1 files changed, 0 insertions, 68 deletions
diff --git a/node_modules/@babel/plugin-transform-classes/lib/inline-createSuper-helpers.js b/node_modules/@babel/plugin-transform-classes/lib/inline-createSuper-helpers.js deleted file mode 100644 index 5d5b2e3a..00000000 --- a/node_modules/@babel/plugin-transform-classes/lib/inline-createSuper-helpers.js +++ /dev/null @@ -1,68 +0,0 @@ -"use strict"; - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.default = addCreateSuperHelper; -var _core = require("@babel/core"); -const helper = _core.template.statement` - function CREATE_SUPER(Derived) { - function isNativeReflectConstruct() { - if (typeof Reflect === "undefined" || !Reflect.construct) return false; - - // core-js@3 - if (Reflect.construct.sham) return false; - - // Proxy can't be polyfilled. Every browser implemented - // proxies before or at the same time as Reflect.construct, - // so if they support Proxy they also support Reflect.construct. - if (typeof Proxy === "function") return true; - - // Since Reflect.construct can't be properly polyfilled, some - // implementations (e.g. core-js@2) don't set the correct internal slots. - // Those polyfills don't allow us to subclass built-ins, so we need to - // use our fallback implementation. - try { - // If the internal slots aren't set, this throws an error similar to - // TypeError: this is not a Date object. - Date.prototype.toString.call(Reflect.construct(Date, [], function() {})); - return true; - } catch (e) { - return false; - } - } - - return function () { - var Super = GET_PROTOTYPE_OF(Derived), result; - if (isNativeReflectConstruct()) { - // NOTE: This doesn't work if this.__proto__.constructor has been modified. - var NewTarget = GET_PROTOTYPE_OF(this).constructor; - result = Reflect.construct(Super, arguments, NewTarget); - } else { - result = Super.apply(this, arguments); - } - return POSSIBLE_CONSTRUCTOR_RETURN(this, result); - } - } -`; -const helperIDs = new WeakMap(); -function addCreateSuperHelper(file) { - if (helperIDs.has(file)) { - return (_core.types.cloneNode || _core.types.clone)(helperIDs.get(file)); - } - try { - return file.addHelper("createSuper"); - } catch (_unused) {} - const id = file.scope.generateUidIdentifier("createSuper"); - helperIDs.set(file, id); - const fn = helper({ - CREATE_SUPER: id, - GET_PROTOTYPE_OF: file.addHelper("getPrototypeOf"), - POSSIBLE_CONSTRUCTOR_RETURN: file.addHelper("possibleConstructorReturn") - }); - file.path.unshiftContainer("body", [fn]); - file.scope.registerDeclaration(file.path.get("body.0")); - return _core.types.cloneNode(id); -} - -//# sourceMappingURL=inline-createSuper-helpers.js.map |
