node-simple-odata-server
node-simple-odata-server copied to clipboard
left.value as canonical path generates object with items not in input order?[partial code?]
The following code separates the input filter value $filter=(location/address/firstname eq 'John') into an object. The object results with the '/' sepated items in no alphabetical order, misrepresenting the original order. Is it a partial code?
Node.prototype._prop = function (result, left, rightValue) { if (left.type === 'property' && left.name.indexOf('/') !== -1) { const fragments = left.name.split('/') const obj = result[fragments[0]] || {}
for (let i = 1; i < fragments.length; i++) {
if (i === (fragments.length - 1)) {
obj[fragments[i]] = rightValue
} else {
obj[fragments[i]] = obj[fragments[i]] || {}
}
}
result[fragments[0]] = obj
} else { result[left.name] = rightValue } }