watermark-js-plus
Version:
watermark for the browser
43 lines (37 loc) • 1.58 kB
JavaScript
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 };