Socket
Socket
Sign inDemoInstall

is-symbol

Package Overview
Dependencies
1
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.0.1 to 1.0.2

test/.eslintrc

116

.jscs.json
{
"es3": true,
"additionalRules": [],
"requireCurlyBraces": ["if", "else", "for", "while", "do", "try", "catch"],
"requireSemicolons": true,
"disallowMultipleSpaces": true,
"disallowIdentifierNames": [],
"requireCurlyBraces": {
"allExcept": [],
"keywords": ["if", "else", "for", "while", "do", "try", "catch"]
},
"requireSpaceAfterKeywords": ["if", "else", "for", "while", "do", "switch", "return", "try", "catch", "function"],

@@ -10,2 +21,17 @@

"disallowSpaceBeforeComma": true,
"disallowSpaceAfterComma": false,
"disallowSpaceBeforeSemicolon": true,
"disallowNodeTypes": [
"DebuggerStatement",
"ForInStatement",
"LabeledStatement",
"SwitchCase",
"SwitchStatement",
"WithStatement"
],
"requireObjectKeysOnNewLine": { "allExcept": ["sameLine"] },
"requireSpacesInAnonymousFunctionExpression": { "beforeOpeningRoundBrace": true, "beforeOpeningCurlyBrace": true },

@@ -23,3 +49,3 @@ "requireSpacesInNamedFunctionExpression": { "beforeOpeningCurlyBrace": true },

"disallowQuotedKeysInObjects": "allButReserved",
"disallowQuotedKeysInObjects": { "allExcept": ["reserved"] },

@@ -59,3 +85,3 @@ "disallowSpaceAfterObjectKeys": true,

"requireDotNotation": true,
"requireDotNotation": { "allExcept": ["keywords"] },

@@ -69,4 +95,86 @@ "requireParenthesesAroundIIFE": true,

"mark": "'"
}
},
"disallowOperatorBeforeLineBreak": [],
"requireSpaceBeforeKeywords": [
"do",
"for",
"if",
"else",
"switch",
"case",
"try",
"catch",
"finally",
"while",
"with",
"return"
],
"validateAlignedFunctionParameters": {
"lineBreakAfterOpeningBraces": true,
"lineBreakBeforeClosingBraces": true
},
"requirePaddingNewLinesBeforeExport": true,
"validateNewlineAfterArrayElements": {
"maximum": 1
},
"requirePaddingNewLinesAfterUseStrict": true,
"disallowArrowFunctions": true,
"disallowMultiLineTernary": true,
"validateOrderInObjectKeys": "asc-insensitive",
"disallowIdenticalDestructuringNames": true,
"disallowNestedTernaries": { "maxLevel": 1 },
"requireSpaceAfterComma": { "allExcept": ["trailing"] },
"requireAlignedMultilineParams": false,
"requireSpacesInGenerator": {
"afterStar": true
},
"disallowSpacesInGenerator": {
"beforeStar": true
},
"disallowVar": false,
"requireArrayDestructuring": false,
"requireEnhancedObjectLiterals": false,
"requireObjectDestructuring": false,
"requireEarlyReturn": false,
"requireCapitalizedConstructorsNew": {
"allExcept": ["Function", "String", "Object", "Symbol", "Number", "Date", "RegExp", "Error", "Boolean", "Array"]
},
"requireImportAlphabetized": false,
"requireSpaceBeforeObjectValues": true,
"requireSpaceBeforeDestructuredValues": true,
"disallowSpacesInsideTemplateStringPlaceholders": true,
"disallowArrayDestructuringReturn": false,
"requireNewlineBeforeSingleStatementsInIf": false,
"disallowUnusedVariables": true,
"requireSpacesInsideImportedObjectBraces": true,
"requireUseStrict": true
}

@@ -0,1 +1,6 @@

1.0.2 / 2018-09-20
=================
* [Refactor] use `has-symbols` and `object-inspect`
* [Tests] test on all the node minor versions
1.0.1 / 2015-01-26

@@ -2,0 +7,0 @@ =================

20

index.js
'use strict';
var toStr = Object.prototype.toString;
var hasSymbols = typeof Symbol === 'function' && typeof Symbol() === 'symbol';
var hasSymbols = require('has-symbols')();

@@ -9,9 +9,16 @@ if (hasSymbols) {

var symStringRegex = /^Symbol\(.*\)$/;
var isSymbolObject = function isSymbolObject(value) {
if (typeof value.valueOf() !== 'symbol') { return false; }
var isSymbolObject = function isRealSymbolObject(value) {
if (typeof value.valueOf() !== 'symbol') {
return false;
}
return symStringRegex.test(symToStr.call(value));
};
module.exports = function isSymbol(value) {
if (typeof value === 'symbol') { return true; }
if (toStr.call(value) !== '[object Symbol]') { return false; }
if (typeof value === 'symbol') {
return true;
}
if (toStr.call(value) !== '[object Symbol]') {
return false;
}
try {

@@ -24,6 +31,7 @@ return isSymbolObject(value);

} else {
module.exports = function isSymbol(value) {
// this environment does not support Symbols.
return false;
return false && value;
};
}
{
"name": "is-symbol",
"version": "1.0.1",
"version": "1.0.2",
"description": "Determine if a value is an ES6 Symbol or not.",
"main": "index.js",
"scripts": {
"test": "npm run lint && node --es-staging --harmony test/index.js && npm run security",
"coverage": "covert test/index.js",
"coverage:quiet": "covert test/index.js --quiet",
"lint": "jscs *.js */*.js",
"security": "nsp package"
"prepublish": "safe-publish-latest",
"pretest": "npm run lint",
"tests-only": "node --es-staging --harmony test",
"test": "npm run tests-only",
"posttest": "npm run security",
"coverage": "covert test",
"lint": "npm run jscs && npm run eslint",
"jscs": "jscs *.js */*.js",
"eslint": "eslint *.js */*.js",
"security": "nsp check"
},

@@ -28,9 +33,15 @@ "repository": {

},
"dependencies": {},
"dependencies": {
"has-symbols": "^1.0.0"
},
"devDependencies": {
"tape": "~3.4.0",
"covert": "1.0.0",
"jscs": "~1.10.0",
"nsp": "~1.0.0",
"semver": "~4.2.0"
"@ljharb/eslint-config": "^12.2.1",
"covert": "^1.1.0",
"eslint": "^4.19.1",
"jscs": "^3.0.7",
"nsp": "^3.2.1",
"object-inspect": "^1.6.0",
"safe-publish-latest": "^1.1.2",
"semver": "^5.5.0",
"tape": "^4.9.0"
},

@@ -59,2 +70,1 @@ "testling": {

}

@@ -33,3 +33,3 @@ #is-symbol <sup>[![Version Badge][2]][1]</sup>

[1]: https://npmjs.org/package/is-symbol
[2]: http://vb.teelaun.ch/ljharb/is-symbol.svg
[2]: http://versionbadg.es/ljharb/is-symbol.svg
[3]: https://travis-ci.org/ljharb/is-symbol.svg

@@ -36,0 +36,0 @@ [4]: https://travis-ci.org/ljharb/is-symbol

@@ -13,20 +13,5 @@ 'use strict';

var hasSymbols = typeof Symbol === 'function' && typeof Symbol() === 'symbol';
var debug = function (value, msg) {
var output = '';
if (hasSymbols) {
try { output += String(value); }
catch (e) { output += Symbol.prototype.toString.call(value); }
if (output === '') {
output = JSON.stringify(value);
}
}
var type = Object.prototype.toString.call(value).toLowerCase().slice(8, -1);
output += ' (' + type;
var typeOf = typeof value;
if (type !== typeOf) {
output += ', typeof: ' + typeOf;
}
return output + ') ' + msg;
};
var hasSymbols = require('has-symbols')();
var inspect = require('object-inspect');
var debug = function (v, m) { return inspect(v) + ' ' + m; };

@@ -82,5 +67,6 @@ test('non-symbol values', function (t) {

t.test('well-known Symbols', function (st) {
var wellKnownSymbols = Object.getOwnPropertyNames(Symbol).filter(function filterer(name) {
var isWellKnown = function filterer(name) {
return name !== 'for' && name !== 'keyFor' && !(name in filterer);
});
};
var wellKnownSymbols = Object.getOwnPropertyNames(Symbol).filter(isWellKnown);
wellKnownSymbols.forEach(function (name) {

@@ -97,3 +83,3 @@ var sym = Symbol[name];

Symbol('foo'),
Symbol.for('foo'),
Symbol['for']('foo'),
Object(Symbol('object'))

@@ -100,0 +86,0 @@ ];

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc