node-simple-odata-server icon indicating copy to clipboard operation
node-simple-odata-server copied to clipboard

left.value as canonical path generates object with items not in input order?[partial code?]

Open eldhoabraham94 opened this issue 2 years ago • 0 comments

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 } }

eldhoabraham94 avatar Jan 09 '23 15:01 eldhoabraham94