mirror of
https://github.com/Raghu-Ch/nodeRestAPI.git
synced 2026-02-10 20:53:02 -05:00
initial commit
This commit is contained in:
15
node_modules/undefsafe/.npmignore
generated
vendored
Normal file
15
node_modules/undefsafe/.npmignore
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
lib-cov
|
||||
*.seed
|
||||
*.log
|
||||
*.csv
|
||||
*.dat
|
||||
*.out
|
||||
*.pid
|
||||
*.gz
|
||||
|
||||
pids
|
||||
logs
|
||||
results
|
||||
|
||||
npm-debug.log
|
||||
node_modules
|
||||
6
node_modules/undefsafe/.travis.yml
generated
vendored
Normal file
6
node_modules/undefsafe/.travis.yml
generated
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
language: node_js
|
||||
node_js:
|
||||
- "0.11"
|
||||
- "0.10"
|
||||
before_script:
|
||||
- npm install
|
||||
22
node_modules/undefsafe/README.md
generated
vendored
Normal file
22
node_modules/undefsafe/README.md
generated
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
undefsafe
|
||||
=========
|
||||
|
||||
Simple *function* for retrieving deep object properties without getting "Cannot read property 'X' of undefined"
|
||||
|
||||
## Usage
|
||||
|
||||
```js
|
||||
var object = {
|
||||
a: {
|
||||
b: {
|
||||
c: 1,
|
||||
d: [1,2,3],
|
||||
e: false
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
console.log(undefsafe(object, 'a.b.e') === false);
|
||||
```
|
||||
|
||||
Demo: [https://jsbin.com/eroqame/3/edit?js,console](https://jsbin.com/eroqame/3/edit?js,console)
|
||||
33
node_modules/undefsafe/lib/undefsafe.js
generated
vendored
Normal file
33
node_modules/undefsafe/lib/undefsafe.js
generated
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
'use strict';
|
||||
|
||||
function undefsafe(obj, path) {
|
||||
var parts = path.split('.');
|
||||
var key = null;
|
||||
var type = typeof obj;
|
||||
|
||||
// we're dealing with a primative
|
||||
if (type !== 'object' && type !== 'function') {
|
||||
return obj;
|
||||
} else if (path.trim() === '') {
|
||||
return obj;
|
||||
}
|
||||
|
||||
while ((key = parts.shift())) {
|
||||
obj = obj[key];
|
||||
if (obj === undefined || obj === null) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// if we have a null object, make sure it's the one the user was after,
|
||||
// if it's not (i.e. parts has a length) then give undefined back.
|
||||
if (obj === null && parts.length !== 0) {
|
||||
obj = undefined;
|
||||
}
|
||||
|
||||
return obj;
|
||||
}
|
||||
|
||||
if (typeof module !== 'undefined') {
|
||||
module.exports = undefsafe;
|
||||
}
|
||||
85
node_modules/undefsafe/package.json
generated
vendored
Normal file
85
node_modules/undefsafe/package.json
generated
vendored
Normal file
@@ -0,0 +1,85 @@
|
||||
{
|
||||
"_args": [
|
||||
[
|
||||
{
|
||||
"raw": "undefsafe@0.0.3",
|
||||
"scope": null,
|
||||
"escapedName": "undefsafe",
|
||||
"name": "undefsafe",
|
||||
"rawSpec": "0.0.3",
|
||||
"spec": "0.0.3",
|
||||
"type": "version"
|
||||
},
|
||||
"C:\\Users\\chvra\\Documents\\angular-play\\nodeRest\\node_modules\\nodemon"
|
||||
]
|
||||
],
|
||||
"_from": "undefsafe@0.0.3",
|
||||
"_id": "undefsafe@0.0.3",
|
||||
"_inCache": true,
|
||||
"_location": "/undefsafe",
|
||||
"_npmUser": {
|
||||
"name": "remy",
|
||||
"email": "remy@remysharp.com"
|
||||
},
|
||||
"_npmVersion": "1.4.28",
|
||||
"_phantomChildren": {},
|
||||
"_requested": {
|
||||
"raw": "undefsafe@0.0.3",
|
||||
"scope": null,
|
||||
"escapedName": "undefsafe",
|
||||
"name": "undefsafe",
|
||||
"rawSpec": "0.0.3",
|
||||
"spec": "0.0.3",
|
||||
"type": "version"
|
||||
},
|
||||
"_requiredBy": [
|
||||
"/nodemon"
|
||||
],
|
||||
"_resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-0.0.3.tgz",
|
||||
"_shasum": "ecca3a03e56b9af17385baac812ac83b994a962f",
|
||||
"_shrinkwrap": null,
|
||||
"_spec": "undefsafe@0.0.3",
|
||||
"_where": "C:\\Users\\chvra\\Documents\\angular-play\\nodeRest\\node_modules\\nodemon",
|
||||
"author": {
|
||||
"name": "Remy Sharp"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/remy/undefsafe/issues"
|
||||
},
|
||||
"dependencies": {},
|
||||
"description": "Undefined safe way of extracting object properties",
|
||||
"devDependencies": {
|
||||
"mocha": "~1.16.2"
|
||||
},
|
||||
"directories": {
|
||||
"test": "test"
|
||||
},
|
||||
"dist": {
|
||||
"shasum": "ecca3a03e56b9af17385baac812ac83b994a962f",
|
||||
"tarball": "https://registry.npmjs.org/undefsafe/-/undefsafe-0.0.3.tgz"
|
||||
},
|
||||
"gitHead": "435db2701b5ddccc0d575c669df8bdc96918889b",
|
||||
"homepage": "https://github.com/remy/undefsafe",
|
||||
"keywords": [
|
||||
"undefined"
|
||||
],
|
||||
"license": "MIT / http://rem.mit-license.org",
|
||||
"main": "lib/undefsafe.js",
|
||||
"maintainers": [
|
||||
{
|
||||
"name": "remy",
|
||||
"email": "remy@remysharp.com"
|
||||
}
|
||||
],
|
||||
"name": "undefsafe",
|
||||
"optionalDependencies": {},
|
||||
"readme": "ERROR: No README data found!",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git://github.com/remy/undefsafe.git"
|
||||
},
|
||||
"scripts": {
|
||||
"test": "node_modules/mocha/bin/_mocha --ui bdd test/**/*.test.js"
|
||||
},
|
||||
"version": "0.0.3"
|
||||
}
|
||||
84
node_modules/undefsafe/test/undefsafe.test.js
generated
vendored
Normal file
84
node_modules/undefsafe/test/undefsafe.test.js
generated
vendored
Normal file
@@ -0,0 +1,84 @@
|
||||
'use strict';
|
||||
/*global describe:true, it: true */
|
||||
var assert = require('assert');
|
||||
var undefsafe = require('../lib/undefsafe');
|
||||
|
||||
describe('undefsafe', function () {
|
||||
it('should handle primatives', function () {
|
||||
var r = undefsafe(1, '');
|
||||
assert(r === 1, 'undefsafe is 1: ' + r);
|
||||
});
|
||||
|
||||
it('should handle empty objects', function () {
|
||||
var value = {};
|
||||
var r;
|
||||
|
||||
r = undefsafe(value, '');
|
||||
assert(r === value, 'value is value' + r);
|
||||
|
||||
r = undefsafe(value, 'foo');
|
||||
assert(r === undefined, 'value.foo is undefined: ' + r);
|
||||
|
||||
r = undefsafe(value, 'foo.bar');
|
||||
assert(r === undefined, 'value.foo.bar is undefined: ' + r);
|
||||
});
|
||||
|
||||
it('should handle null properties', function () {
|
||||
var value = {
|
||||
a: {
|
||||
b: null,
|
||||
},
|
||||
};
|
||||
var r;
|
||||
|
||||
r = undefsafe(value, 'a.b');
|
||||
assert(r === null, 'value.a.b is null: ' + r);
|
||||
|
||||
r = undefsafe(value, 'a.b.c');
|
||||
assert(r === undefined, 'value.a.b.c is undefined: ' + r);
|
||||
});
|
||||
|
||||
it('should find deep object properties', function () {
|
||||
var value = {
|
||||
a: {
|
||||
b: {
|
||||
c: {
|
||||
d: 10,
|
||||
e: {
|
||||
f: 20,
|
||||
},
|
||||
g: true,
|
||||
h: false,
|
||||
i: undefined,
|
||||
j: null,
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
||||
var r;
|
||||
|
||||
r = undefsafe(value, 'a');
|
||||
assert(r === value.a, 'value.a: ' + r + ' ' + value.a);
|
||||
|
||||
r = undefsafe(value, 'a.foo');
|
||||
assert(r === undefined, 'value.a.foo is undefined: ' + r);
|
||||
|
||||
r = undefsafe(value, 'a.b.c.d');
|
||||
assert(r === 10, 'value.a.b.c.d = 10');
|
||||
|
||||
r = undefsafe(value, 'a.b.c.e');
|
||||
assert(r === value.a.b.c.e, 'value.a.b.c.e = <object>');
|
||||
|
||||
r = undefsafe(value, 'a.b.c.g');
|
||||
assert(r === true, 'bool(true)');
|
||||
|
||||
r = undefsafe(value, 'a.b.c.h');
|
||||
assert(r === false, 'bool(false)');
|
||||
|
||||
r = undefsafe(value, 'a.b.c.i');
|
||||
assert(r === undefined, 'undefined');
|
||||
|
||||
r = undefsafe(value, 'a.b.c.j');
|
||||
assert(r === null, 'null');
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user