massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / core-js / internals / date-to-primitive.js
index fc334f135661baab87a1c2ca7643c0ed5a04f770..6ae14d41ff87ee5818c9cf3eeba1b6abd1739dd7 100644 (file)
@@ -1,9 +1,15 @@
 'use strict';
+var global = require('../internals/global');
 var anObject = require('../internals/an-object');
-var toPrimitive = require('../internals/to-primitive');
+var ordinaryToPrimitive = require('../internals/ordinary-to-primitive');
 
+var TypeError = global.TypeError;
+
+// `Date.prototype[@@toPrimitive](hint)` method implementation
+// https://tc39.es/ecma262/#sec-date.prototype-@@toprimitive
 module.exports = function (hint) {
-  if (hint !== 'string' && hint !== 'number' && hint !== 'default') {
-    throw TypeError('Incorrect hint');
-  } return toPrimitive(anObject(this), hint !== 'number');
+  anObject(this);
+  if (hint === 'string' || hint === 'default') hint = 'string';
+  else if (hint !== 'number') throw TypeError('Incorrect hint');
+  return ordinaryToPrimitive(this, hint);
 };