I need to be able to increment and decrement the position of an element of an array in a MongoDB object.
I looked at the <update> API in the MongoDB API but could not find anything to let me do so.
I am trying to use findOneAndUpdate through Mongoose and I know the index of the element I am trying to shift up or down.
An example of the array item of base64 encoded images:
{ 
  images: [
    "img1",
    "img2",
    "img3"
  ]
}
And I would like to move, for example "img2", up or down (but "image" should not be able to pushed up since there is nowhere to go).
If I wanted to push "img2" up then the result would be:
{ 
  images: [
    "img2",
    "img1",
    "img3"
  ]
}
It doesn't matter if I achieve this through changing the index, swapping, or pushing up/down.
 
    