UNPKG

682 BJavaScriptView Raw
1import getPrototypeOf from "./getPrototypeOf.js";
2import isNativeReflectConstruct from "./isNativeReflectConstruct.js";
3import possibleConstructorReturn from "./possibleConstructorReturn.js";
4export default function _createSuper(Derived) {
5 var hasNativeReflectConstruct = isNativeReflectConstruct();
6 return function _createSuperInternal() {
7 var Super = getPrototypeOf(Derived),
8 result;
9
10 if (hasNativeReflectConstruct) {
11 var NewTarget = getPrototypeOf(this).constructor;
12 result = Reflect.construct(Super, arguments, NewTarget);
13 } else {
14 result = Super.apply(this, arguments);
15 }
16
17 return possibleConstructorReturn(this, result);
18 };
19}
\No newline at end of file