toPrimitive.js 553 B

123456789101112131415161718
  1. var _Symbol$toPrimitive = require("../core-js/symbol/to-primitive");
  2. var _typeof = require("../helpers/typeof");
  3. function _toPrimitive(input, hint) {
  4. if (_typeof(input) !== "object" || input === null) return input;
  5. var prim = input[_Symbol$toPrimitive];
  6. if (prim !== undefined) {
  7. var res = prim.call(input, hint || "default");
  8. if (_typeof(res) !== "object") return res;
  9. throw new TypeError("@@toPrimitive must return a primitive value.");
  10. }
  11. return (hint === "string" ? String : Number)(input);
  12. }
  13. module.exports = _toPrimitive;