var getPrototypeOf = require("./getPrototypeOf"), setPrototypeOf = require("./setPrototypeOf"), isNativeFunction = require("./isNativeFunction"), construct = require("./construct"); function _wrapNativeSuper(t) { var e = "function" == typeof Map ? new Map() : void 0; return ( (module.exports = _wrapNativeSuper = function (t) { if (null === t || !isNativeFunction(t)) return t; if ("function" != typeof t) throw new TypeError( "Super expression must either be null or a function" ); if (void 0 !== e) { if (e.has(t)) return e.get(t); e.set(t, r); } function r() { return construct(t, arguments, getPrototypeOf(this).constructor); } return ( (r.prototype = Object.create(t.prototype, { constructor: { value: r, enumerable: !1, writable: !0, configurable: !0, }, })), setPrototypeOf(r, t) ); }), _wrapNativeSuper(t) ); } module.exports = _wrapNativeSuper;