import getPrototypeOf from "./getPrototypeOf.js"; import setPrototypeOf from "./setPrototypeOf.js"; import isNativeFunction from "./isNativeFunction.js"; import construct from "./construct.js"; function _wrapNativeSuper(t) { var r = "function" == typeof Map ? new Map() : void 0; return _wrapNativeSuper = function _wrapNativeSuper(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 !== r) { if (r.has(t)) return r.get(t); r.set(t, Wrapper); } function Wrapper() { return construct(t, arguments, getPrototypeOf(this).constructor); } return Wrapper.prototype = Object.create(t.prototype, { constructor: { value: Wrapper, enumerable: !1, writable: !0, configurable: !0 } }), setPrototypeOf(Wrapper, t); }, _wrapNativeSuper(t); } export { _wrapNativeSuper as default };