priority-update
v1.1.1
Published
It is module just to set the priority. Depending on that update other set of objects
Downloads
10
Maintainers
Readme
NPM Package To maintain the priority of any thing
It is used to update the priority from given data array.
The package is useful in the case where array of objects one key with unique values as priority and out of that if you change in one of the priority, it should automatically update the rest according to the logic.
To Use This Package For Earlier Versions (<6.0) Of Your Node.js Then Download <1.0.0 Version
Installation
Install with the node package manager npm:
- Using npm
$ npm install priority-update --save
- Using yarn
$ yarn add priority-update
How To Use?
Update priority using object
as input
Lets take an example where top 5 brands car into the competition,
on every hits on the car by viewer it increase the views of the car and at the end of every day we finalized the top priority car and we rate it as a top most priority car brand.
So here, we have set of brands data with their old priority
/* INPUT */
let data = [
{'id': 1, 'brand': 'Mercedes-Benz', 'priority': 1},
{'id': 2, 'brand': 'BMW', 'priority': 2},
{'id': 3, 'brand': 'Audi', 'priority': 3},
{'id': 4, 'brand': 'Porsche', 'priority': 4},
{'id': 5, 'brand': 'Volkswagen', 'priority': 5}
]
Below is the input data where the dataKey is key which needs to set the new priority which is in dataValue
and rest data objects need to update accordingly.
searchKey is key which helps to identify which objects value is going to update.
let input = {
dataKey: 'priority',
dataValue: 1,
searchKey: 'brand',
searchValue: 'Porsche'
}
// Method call
const priority = require('priority-update').priority
let output = priority(data, input)
console.log('OUTPUT -- ', JSON.stringify(output))
/* OUTPUT */
[{"id":4,"brand":"Porsche","priority":1},
{"id":1,"brand":"Mercedes-Benz","priority":2},
{"id":2,"brand":"BMW","priority":3},
{"id":3,"brand":"Audi","priority":4},
{"id":5,"brand":"ravi5","Volkswagen":5,"priority":5}]
Update priority using array of object
as input
Continue with the same example
/* INPUT */
let input = [{
dataKey: 'priority',
dataValue: 2,
searchKey: 'brand',
searchValue: 'Porsche'
},{
dataKey: 'priority',
dataValue: 3,
searchKey: 'brand',
searchValue: 'Volkswagen'
},{
dataKey: 'priority',
dataValue: 1,
searchKey: 'brand',
searchValue: 'BMW'
}]
// Method Call
const priorityInBulk = require('priority-update').priorityInBulk
let output = priorityInBulk(data, input)
console.log('OUTPUT -- ', JSON.stringify(output))
/* OUTPUT */
[{"id":2,"brand":"BMW","priority":1},
{"id":4,"brand":"Porsche","priority":2},
{"id":5,"brand":"Volkswagen","priority":3},
{"id":1,"brand":"Mercedes-Benz","priority":4},
{"id":3,"brand":"Audi","priority":5}]
Changelog
- 1.1.0 priorityInBulk New Method added
- 1.0.1 Input validations added
- 1.0.0 Initial version