| 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 }; |