UNPKG

watermark-js-plus

Version:
43 lines (37 loc) 1.58 kB
import { __require as requireFunctionCall } from './function-call.js'; import { __require as requireIsObject } from './is-object.js'; import { __require as requireIsSymbol } from './is-symbol.js'; import { __require as requireGetMethod } from './get-method.js'; import { __require as requireOrdinaryToPrimitive } from './ordinary-to-primitive.js'; import { __require as requireWellKnownSymbol } from './well-known-symbol.js'; var toPrimitive; var hasRequiredToPrimitive; function requireToPrimitive () { if (hasRequiredToPrimitive) return toPrimitive; hasRequiredToPrimitive = 1; var call = requireFunctionCall(); var isObject = requireIsObject(); var isSymbol = requireIsSymbol(); var getMethod = requireGetMethod(); var ordinaryToPrimitive = requireOrdinaryToPrimitive(); var wellKnownSymbol = requireWellKnownSymbol(); var $TypeError = TypeError; var TO_PRIMITIVE = wellKnownSymbol('toPrimitive'); // `ToPrimitive` abstract operation // https://tc39.es/ecma262/#sec-toprimitive toPrimitive = function (input, pref) { if (!isObject(input) || isSymbol(input)) return input; var exoticToPrim = getMethod(input, TO_PRIMITIVE); var result; if (exoticToPrim) { if (pref === undefined) pref = 'default'; result = call(exoticToPrim, input, pref); if (!isObject(result) || isSymbol(result)) return result; throw new $TypeError("Can't convert object to primitive value"); } if (pref === undefined) pref = 'number'; return ordinaryToPrimitive(input, pref); }; return toPrimitive; } export { requireToPrimitive as __require };