json-api-response-converter
v1.6.0
Published
[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.me/guillaumebriday) [![](https://img.shields.io/npm/dt/json-api-response-converter.svg)](https://www.npmjs.com/package/json-api-response-converter) [![](https://img.shiel
Downloads
1,305
Readme
JSON:API Response Converter
Features
- Very small
- No dependencies
- Easy to use
- Compatible with Vuex ORM
Getting started
Install
$ npm install json-api-response-converter --save
# or
$ yarn add json-api-response-converter
Usage
import JsonApiResponseConverter from 'json-api-response-converter'
const response = {
data: [
{
id: '1',
type: 'articles',
attributes: {
title: 'This project is awesome'
},
relationships: {
author: {
data: { id: '1', type: 'author' }
},
comments: {
data: [
{ id: '1', type: 'comment' },
{ id: '2', type: 'comment' }
]
}
}
}
],
included: [
{
id: '1',
type: 'author',
attributes: {
name: 'Anakin'
}
},
{
id: '1',
type: 'comment',
attributes: {
body: 'First!'
}
},
{
id: '2',
type: 'comment',
attributes: {
body: 'Second!'
}
}
]
}
const data = new JsonApiResponseConverter(response).formattedResponse
console.log(data)
/**
[
{
id: 1,
title: 'This project is awesome',
author: {
id: 1,
name: 'Anakin'
},
comments: [
{
id: 1,
body: 'First!'
},
{
id: 2,
body: 'Second!'
}
]
}
]
*/
Many edges cases are tested in the tests folder
Development
$ git clone https://github.com/guillaumebriday/json-api-response-converter
$ cd json-api-response-converter
$ yarn # or npm install
You can run tests with Jest:
$ yarn test # or npm run test
Check the syntax with ESLint:
$ yarn lint
Contributing
Do not hesitate to contribute to the project by adapting or adding features ! Bug reports or pull requests are welcome.
Credits
Inspired by:
License
The gem is available as open source under the terms of the MIT License.