NPM Dependencies UPDATE

This commit is contained in:
Luis Fernando Molina committed 2018-05-02 10:21:21 +02:00
1 parent 20c29bb4d6
commit a9bfe7a413
599 files changed
+12369 -51423

No files matched your search

-25
View File
@@ -1,25 +0,0 @@
env:
node: true
extends: 'eslint:recommended'
rules:
indent: [ 2, 2, { SwitchCase: 1 } ]
no-trailing-spaces: 2
quotes: [ 2, single, avoid-escape ]
linebreak-style: [ 2, unix ]
semi: [ 2, always ]
valid-jsdoc: [ 2, { requireReturn: false } ]
no-invalid-this: 2
no-unused-vars: [ 2, { args: none } ]
no-console: [ 2, { allow: [ warn, error ] } ]
block-scoped-var: 2
curly: [ 2, multi-or-nest, consistent ]
dot-location: [ 2, property ]
dot-notation: 2
no-else-return: 2
no-eq-null: 2
no-fallthrough: 2
no-return-assign: 2
strict: [ 2, global ]
no-use-before-define: [ 2, nofunc ]
callback-return: 2
no-path-concat: 2
-60
View File
@@ -1,60 +0,0 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# Runtime data
pids
*.pid
*.seed
*.pid.lock
# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov
# Coverage directory used by tools like istanbul
coverage
# nyc test coverage
.nyc_output
# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
.grunt
# Bower dependency directory (https://bower.io/)
bower_components
# node-waf configuration
.lock-wscript
# Compiled binary addons (http://nodejs.org/api/addons.html)
build/Release
# Dependency directories
node_modules/
jspm_packages/
# Typescript v1 declaration files
typings/
# Optional npm cache directory
.npm
# Optional eslint cache
.eslintcache
# Optional REPL history
.node_repl_history
# Output of 'npm pack'
*.tgz
# Yarn Integrity file
.yarn-integrity
# dotenv environment variables file
.env
.DS_Store
-8
View File
@@ -1,8 +0,0 @@
language: node_js
node_js:
- "4"
- "6"
- "7"
- "8"
after_script:
- coveralls < coverage/lcov.info
-5
View File
@@ -1,5 +0,0 @@
parserOptions:
ecmaVersion: 2016
rules:
no-invalid-this: 0
no-console: 0
-56
View File
@@ -1,56 +0,0 @@
'use strict';
const assertDeepStrictEqual = require('assert').deepStrictEqual;
const tests = require('../spec/tests');
const Benchmark = require('benchmark');
const suite = new Benchmark.Suite;
const equalPackages = {
'fast-deep-equal': require('../index'),
'nano-equal': true,
'shallow-equal-fuzzy': true,
'underscore.isEqual': require('underscore').isEqual,
'lodash.isEqual': require('lodash').isEqual,
'deep-equal': true,
'deep-eql': true,
'assert.deepStrictEqual': (a, b) => {
try { assertDeepStrictEqual(a, b); return true; }
catch(e) { return false; }
}
};
for (const equalName in equalPackages) {
let equalFunc = equalPackages[equalName];
if (equalFunc === true) equalFunc = require(equalName);
for (const testSuite of tests) {
for (const test of testSuite.tests) {
try {
if (equalFunc(test.value1, test.value2) !== test.equal)
console.error('different result', equalName, testSuite.description, test.description);
} catch(e) {
console.error(equalName, testSuite.description, test.description, e);
}
}
}
suite.add(equalName, function() {
for (const testSuite of tests) {
for (const test of testSuite.tests) {
if (test.description != 'pseudo array and equivalent array are not equal')
equalFunc(test.value1, test.value2);
}
}
});
}
console.log();
suite
.on('cycle', (event) => console.log(String(event.target)))
.on('complete', function () {
console.log('The fastest is ' + this.filter('fastest').map('name'));
})
.run({async: true});
+4
View File
@@ -0,0 +1,4 @@
declare module 'fast-deep-equal' {
const equal: (a: any, b: any) => boolean;
export = equal;
}
+32 -20
View File
@@ -1,40 +1,52 @@
'use strict';
var isArray = Array.isArray;
var keyList = Object.keys;
var hasProp = Object.prototype.hasOwnProperty;
module.exports = function equal(a, b) {
if (a === b) return true;
var arrA = Array.isArray(a)
, arrB = Array.isArray(b)
, i;
var arrA = isArray(a)
, arrB = isArray(b)
, i
, length
, key;
if (arrA && arrB) {
if (a.length != b.length) return false;
for (i = 0; i < a.length; i++)
length = a.length;
if (length != b.length) return false;
for (i = 0; i < length; i++)
if (!equal(a[i], b[i])) return false;
return true;
}
if (arrA != arrB) return false;
if (a && b && typeof a === 'object' && typeof b === 'object') {
var keys = Object.keys(a);
if (keys.length !== Object.keys(b).length) return false;
var dateA = a instanceof Date
, dateB = b instanceof Date;
if (dateA != dateB) return false;
if (dateA && dateB) return a.getTime() == b.getTime();
var dateA = a instanceof Date
, dateB = b instanceof Date;
if (dateA && dateB) return a.getTime() == b.getTime();
if (dateA != dateB) return false;
var regexpA = a instanceof RegExp
, regexpB = b instanceof RegExp;
if (regexpA != regexpB) return false;
if (regexpA && regexpB) return a.toString() == b.toString();
var regexpA = a instanceof RegExp
, regexpB = b instanceof RegExp;
if (regexpA && regexpB) return a.toString() == b.toString();
if (regexpA != regexpB) return false;
if (a instanceof Object && b instanceof Object) {
var keys = keyList(a);
length = keys.length;
for (i = 0; i < keys.length; i++)
if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;
if (length !== keyList(b).length)
return false;
for (i = 0; i < keys.length; i++)
if(!equal(a[keys[i]], b[keys[i]])) return false;
for (i = 0; i < length; i++)
if (!hasProp.call(b, keys[i])) return false;
for (i = 0; i < length; i++) {
key = keys[i];
if (!equal(a[key], b[key])) return false;
}
return true;
}
+28 -48
View File
@@ -1,48 +1,35 @@
{
"_args": [
[
"fast-deep-equal@^1.0.0",
"c:\\users\\luis\\source\\repos\\AACharly\\node_modules\\request\\node_modules\\ajv"
]
],
"_from": "fast-deep-equal@>=1.0.0-0 <2.0.0-0",
"_id": "fast-deep-equal@1.0.0",
"_inCache": true,
"_from": "fast-deep-equal@^1.0.0",
"_id": "fast-deep-equal@1.1.0",
"_inBundle": false,
"_integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=",
"_location": "/fast-deep-equal",
"_nodeVersion": "6.9.1",
"_npmOperationalInternal": {
"host": "s3://npm-registry-packages",
"tmp": "tmp/fast-deep-equal-1.0.0.tgz_1497730970672_0.7519061632920057"
},
"_npmUser": {
"email": "e.poberezkin@me.com",
"name": "esp"
},
"_npmVersion": "3.10.8",
"_phantomChildren": {},
"_requested": {
"name": "fast-deep-equal",
"type": "range",
"registry": true,
"raw": "fast-deep-equal@^1.0.0",
"name": "fast-deep-equal",
"escapedName": "fast-deep-equal",
"rawSpec": "^1.0.0",
"scope": null,
"spec": ">=1.0.0-0 <2.0.0-0",
"type": "range"
"saveSpec": null,
"fetchSpec": "^1.0.0"
},
"_requiredBy": [
"/request/ajv"
"/ajv"
],
"_resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz",
"_shasum": "96256a3bc975595eb36d82e9929d060d893439ff",
"_shrinkwrap": null,
"_resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
"_shasum": "c053477817c86b51daa853c81e059b733d023614",
"_spec": "fast-deep-equal@^1.0.0",
"_where": "c:\\users\\luis\\source\\repos\\AACharly\\node_modules\\request\\node_modules\\ajv",
"_where": "C:\\Users\\Luis\\source\\repos\\AACloud\\node_modules\\ajv",
"author": {
"name": "Evgeny Poberezkin"
},
"bugs": {
"url": "https://github.com/epoberezkin/fast-deep-equal/issues"
},
"dependencies": {},
"bundleDependencies": false,
"deprecated": false,
"description": "Fast deep equal",
"devDependencies": {
"benchmark": "^2.1.4",
@@ -56,29 +43,21 @@
"nyc": "^11.0.2",
"pre-commit": "^1.2.2",
"shallow-equal-fuzzy": "0.0.2",
"typescript": "^2.6.1",
"underscore": "^1.8.3"
},
"directories": {},
"dist": {
"shasum": "96256a3bc975595eb36d82e9929d060d893439ff",
"tarball": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz"
},
"gitHead": "b876854e5e56eb5baf79eb434d4bcb81f4c30b9a",
"files": [
"index.js",
"index.d.ts"
],
"homepage": "https://github.com/epoberezkin/fast-deep-equal#readme",
"installable": true,
"keywords": [
"deep-equal",
"fast",
"equal",
"fast"
"deep-equal"
],
"license": "MIT",
"main": "index.js",
"maintainers": [
{
"name": "esp",
"email": "e.poberezkin@me.com"
}
],
"name": "fast-deep-equal",
"nyc": {
"exclude": [
@@ -90,16 +69,17 @@
"text-summary"
]
},
"optionalDependencies": {},
"repository": {
"type": "git",
"url": "git+https://github.com/epoberezkin/fast-deep-equal.git"
},
"scripts": {
"eslint": "eslint *.js benchmark spec",
"test": "npm run eslint && npm run test-cov",
"test": "npm run eslint && npm run test-ts && npm run test-cov",
"test-cov": "nyc npm run test-spec",
"test-spec": "mocha spec/*.spec.js -R spec"
"test-spec": "mocha spec/*.spec.js -R spec",
"test-ts": "tsc --target ES5 --noImplicitAny index.d.ts"
},
"version": "1.0.0"
"types": "index.d.ts",
"version": "1.1.0"
}
-5
View File
@@ -1,5 +0,0 @@
rules:
no-console: 0
globals:
describe: false
it: false
-18
View File
@@ -1,18 +0,0 @@
'use strict';
var equal = require('../index');
var tests = require('./tests');
var assert = require('assert');
describe('equal', function() {
tests.forEach(function (suite) {
describe(suite.description, function() {
suite.tests.forEach(function (test) {
it(test.description, function() {
assert.strictEqual(equal(test.value1, test.value2), test.equal);
});
});
});
});
});
-320
View File
@@ -1,320 +0,0 @@
'use strict';
module.exports = [
{
description: 'scalars',
tests: [
{
description: 'equal numbers',
value1: 1,
value2: 1,
equal: true
},
{
description: 'not equal numbers',
value1: 1,
value2: 2,
equal: false
},
{
description: 'number and array are not equal',
value1: 1,
value2: [],
equal: false
},
{
description: '0 and null are not equal',
value1: 0,
value2: null,
equal: false
},
{
description: 'equal strings',
value1: 'a',
value2: 'a',
equal: true
},
{
description: 'not equal strings',
value1: 'a',
value2: 'b',
equal: false
},
{
description: 'empty string and null are not equal',
value1: '',
value2: null,
equal: false
},
{
description: 'null is equal to null',
value1: null,
value2: null,
equal: true
},
{
description: 'equal booleans (true)',
value1: true,
value2: true,
equal: true
},
{
description: 'equal booleans (false)',
value1: false,
value2: false,
equal: true
},
{
description: 'not equal booleans',
value1: true,
value2: false,
equal: false
},
{
description: '1 and true are not equal',
value1: 1,
value2: true,
equal: false
},
{
description: '0 and false are not equal',
value1: 0,
value2: false,
equal: false
}
]
},
{
description: 'objects',
tests: [
{
description: 'empty objects are equal',
value1: {},
value2: {},
equal: true
},
{
description: 'equal objects (same properties "order")',
value1: {a: 1, b: '2'},
value2: {a: 1, b: '2'},
equal: true
},
{
description: 'equal objects (different properties "order")',
value1: {a: 1, b: '2'},
value2: {b: '2', a: 1},
equal: true
},
{
description: 'not equal objects (extra property)',
value1: {a: 1, b: '2'},
value2: {a: 1, b: '2', c: []},
equal: false
},
{
description: 'not equal objects (different properties)',
value1: {a: 1, b: '2', c: 3},
value2: {a: 1, b: '2', d: 3},
equal: false
},
{
description: 'not equal objects (different properties)',
value1: {a: 1, b: '2', c: 3},
value2: {a: 1, b: '2', d: 3},
equal: false
},
{
description: 'equal objects (same sub-properties)',
value1: { a: [ { b: 'c' } ] },
value2: { a: [ { b: 'c' } ] },
equal: true
},
{
description: 'not equal objects (different sub-property value)',
value1: { a: [ { b: 'c' } ] },
value2: { a: [ { b: 'd' } ] },
equal: false
},
{
description: 'not equal objects (different sub-property)',
value1: { a: [ { b: 'c' } ] },
value2: { a: [ { c: 'c' } ] },
equal: false
},
{
description: 'empty array and empty object are not equal',
value1: {},
value2: [],
equal: false
},
{
description: 'object with extra undefined properties are not equal #1',
value1: {},
value2: {foo: undefined},
equal: false
},
{
description: 'object with extra undefined properties are not equal #2',
value1: {foo: undefined},
value2: {},
equal: false
},
{
description: 'object with extra undefined properties are not equal #3',
value1: {foo: undefined},
value2: {bar: undefined},
equal: false
}
]
},
{
description: 'arrays',
tests: [
{
description: 'two empty arrays are equal',
value1: [],
value2: [],
equal: true
},
{
description: 'equal arrays',
value1: [1, 2, 3],
value2: [1, 2, 3],
equal: true
},
{
description: 'not equal arrays (different item)',
value1: [1, 2, 3],
value2: [1, 2, 4],
equal: false
},
{
description: 'not equal arrays (different length)',
value1: [1, 2, 3],
value2: [1, 2],
equal: false
},
{
description: 'equal arrays of objects',
value1: [{a: 'a'}, {b: 'b'}],
value2: [{a: 'a'}, {b: 'b'}],
equal: true
},
{
description: 'not equal arrays of objects',
value1: [{a: 'a'}, {b: 'b'}],
value2: [{a: 'a'}, {b: 'c'}],
equal: false
},
{
description: 'pseudo array and equivalent array are not equal',
value1: {'0': 0, '1': 1, length: 2},
value2: [0, 1],
equal: false
}
]
},
{
description: 'Date objects',
tests: [
{
description: 'equal date objects',
value1: new Date('2017-06-16T21:36:48.362Z'),
value2: new Date('2017-06-16T21:36:48.362Z'),
equal: true
},
{
description: 'not equal date objects',
value1: new Date('2017-06-16T21:36:48.362Z'),
value2: new Date('2017-01-01T00:00:00.000Z'),
equal: false
},
{
description: 'date and string are not equal',
value1: new Date('2017-06-16T21:36:48.362Z'),
value2: '2017-06-16T21:36:48.362Z',
equal: false
},
{
description: 'date and object are not equal',
value1: new Date('2017-06-16T21:36:48.362Z'),
value2: {},
equal: false
}
]
},
{
description: 'RegExp objects',
tests: [
{
description: 'equal RegExp objects',
value1: /foo/,
value2: /foo/,
equal: true
},
{
description: 'not equal RegExp objects (different pattern)',
value1: /foo/,
value2: /bar/,
equal: false
},
{
description: 'not equal RegExp objects (different flags)',
value1: /foo/,
value2: /foo/i,
equal: false
},
{
description: 'RegExp and string are not equal',
value1: /foo/,
value2: 'foo',
equal: false
},
{
description: 'RegExp and object are not equal',
value1: /foo/,
value2: {},
equal: false
}
]
},
{
description: 'sample objects',
tests: [
{
description: 'big object',
value1: {
prop1: 'value1',
prop2: 'value2',
prop3: 'value3',
prop4: {
subProp1: 'sub value1',
subProp2: {
subSubProp1: 'sub sub value1',
subSubProp2: [1, 2, {prop2: 1, prop: 2}, 4, 5]
}
},
prop5: 1000,
prop6: new Date(2016, 2, 10)
},
value2: {
prop5: 1000,
prop3: 'value3',
prop1: 'value1',
prop2: 'value2',
prop6: new Date('2016/03/10'),
prop4: {
subProp2: {
subSubProp1: 'sub sub value1',
subSubProp2: [1, 2, {prop2: 1, prop: 2}, 4, 5]
},
subProp1: 'sub value1'
}
},
equal: true
}
]
}
];