Reshaper
Reshaper is a JavaScript library which can automatically restructure JavaScript objects to match a provided schema. It also provides users with some manual control, by way of a 'hint' system.
To see some interactive examples, check out this Kajero notebook.
Installation
npm install reshaper
Usage
reshaper(data, schema, [hint])
data
: The JavaScript data structure to be reshaped.schema
: The structure we want our reshaped data to match.hint
: (Optional) The name of an object key, given as a 'hint'. Keys matching this hint will be preferred. An array of keys can also be provided if desired.
Examples
var reshaper = ; var peopleData = name: 'Joel' info: age: 22 height: 19 middleName: 'Robert' lastName: 'Auterson' name: 'Jake' info: age: 24 height: 185 middleName: 'Wild' lastName: 'Hall' ; var schema = 'String'; ;// => ['Joel', 'Jake'] // We can give a 'hint', to say lastName is what we want.;// => ['Auterson', 'Hall'] // Object keys get used as hintsvar schema = age: 'Number' height: 'Number'; ;/* =>{ age: [22, 24], height: [1.9, 1.85]}*/