odata-query
Advanced tools
Comparing version 3.3.3 to 3.3.4
@@ -1,7 +0,1 @@ | ||
'use strict'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }(); | ||
@@ -11,3 +5,11 @@ | ||
exports.default = function () { | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
var COMPARISON_OPERATORS = ['eq', 'ne', 'gt', 'ge', 'lt', 'le']; | ||
var LOGICAL_OPERATORS = ['and', 'or', 'not']; | ||
var COLLECTION_OPERATORS = ['any', 'all']; | ||
var BOOLEAN_FUNCTIONS = ['startswith', 'endswith', 'contains']; | ||
var SUPPORTED_EXPAND_PROPERTIES = ['expand', 'select', 'top', 'orderby', 'filter']; | ||
export default function () { | ||
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, | ||
@@ -83,16 +85,14 @@ select = _ref.select, | ||
} else if ((typeof func === 'undefined' ? 'undefined' : _typeof(func)) === 'object') { | ||
(function () { | ||
var _Object$keys = Object.keys(func), | ||
_Object$keys2 = _slicedToArray(_Object$keys, 1), | ||
funcName = _Object$keys2[0]; | ||
var _Object$keys = Object.keys(func), | ||
_Object$keys2 = _slicedToArray(_Object$keys, 1), | ||
funcName = _Object$keys2[0]; | ||
var funcParams = Object.keys(func[funcName]).map(function (p) { | ||
return p + '=' + func[funcName][p]; | ||
}).join(','); | ||
var funcParams = Object.keys(func[funcName]).map(function (p) { | ||
return p + '=' + func[funcName][p]; | ||
}).join(','); | ||
path += '/' + funcName; | ||
if (funcParams.length) { | ||
path += '(' + funcParams + ')'; | ||
} | ||
})(); | ||
path += '/' + funcName; | ||
if (funcParams.length) { | ||
path += '(' + funcParams + ')'; | ||
} | ||
} | ||
@@ -110,12 +110,4 @@ } | ||
return buildUrl(path, params); | ||
}; | ||
} | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
var COMPARISON_OPERATORS = ['eq', 'ne', 'gt', 'ge', 'lt', 'le']; | ||
var LOGICAL_OPERATORS = ['and', 'or', 'not']; | ||
var COLLECTION_OPERATORS = ['any', 'all']; | ||
var BOOLEAN_FUNCTIONS = ['startswith', 'endswith', 'contains']; | ||
var SUPPORTED_EXPAND_PROPERTIES = ['expand', 'select', 'top', 'orderby', 'filter']; | ||
function buildFilter() { | ||
@@ -125,3 +117,6 @@ var filters = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; | ||
if (typeof filters === 'string') { | ||
if (filters == null) { | ||
// ignore `null` and `undefined` filters (useful for conditionally applied filters) | ||
return; | ||
} else if (typeof filters === 'string') { | ||
// Use raw filter string | ||
@@ -132,2 +127,4 @@ return filters; | ||
return buildFilter(f, propPrefix); | ||
}).filter(function (f) { | ||
return f !== undefined; | ||
}); | ||
@@ -149,2 +146,4 @@ if (builtFilters.length) { | ||
return buildFilter(v, propPrefix); | ||
}).filter(function (f) { | ||
return f !== undefined; | ||
}); | ||
@@ -182,4 +181,4 @@ if (_builtFilters.length) { | ||
}); | ||
} else if (value === undefined) { | ||
// Ignore/omit filter | ||
} else if (value == null) { | ||
// Ignore/omit filter if `null` or `undefined` | ||
} else { | ||
@@ -192,3 +191,8 @@ throw new Error('Unexpected value type: ' + value); | ||
return filtersArray.join(' and '); | ||
if (filtersArray.length) { | ||
return filtersArray.join(' and '); | ||
} else { | ||
// return `undefined` for empty arrays | ||
return; | ||
} | ||
} else { | ||
@@ -195,0 +199,0 @@ throw new Error('Unexpected filters type: ' + filters); |
{ | ||
"name": "odata-query", | ||
"version": "3.3.3", | ||
"version": "3.3.4", | ||
"author": "Sean Lynch <techniq35@gmail.com>", | ||
@@ -12,6 +12,6 @@ "license": "MIT", | ||
"devDependencies": { | ||
"babel-cli": "^6.23.0", | ||
"babel-jest": "^19.0.0", | ||
"babel-preset-react-app": "^2.2.0", | ||
"jest": "^19.0.2", | ||
"babel-cli": "^6.24.1", | ||
"babel-jest": "^20.0.3", | ||
"babel-preset-react-app": "^3.0.0", | ||
"jest": "^20.0.4", | ||
"rimraf": "^2.6.1" | ||
@@ -18,0 +18,0 @@ }, |
21096
240