fractal-transformer
Install
npm install fractal-transformer --save
Test
npm test
Basic Usage
//import libraryvar fractal = ; //get data from database or ...var dataDatabase = "_id": "5a91c4547886436ed94e6326" "firstName": "John" "lastName": "Doe" "password": "$2a$10$VzJQsmaknGuafqXSfzDWg.zPshX..uY26Yn8X9TJnvjGqHex1FQ7S"; //transform datavar dataTransformed = ; console;
The expected output
"id": "5a91c4547886436ed94e6326" "name": "John Doe"
Usage with others transformers
//import libraryvar fractal = ; //get data from database or ...var dataDatabase = "_id": "5a91c4547886436ed94e6326" "firstName": "John" "lastName": "Doe" "password": "$2a$10$VzJQsmaknGuafqXSfzDWg.zPshX..uY26Yn8X9TJnvjGqHex1FQ7S" "role" : "_id" : "5a93080d13592753b1146198" "name" : "admin" "permission" : 5 ; //transform datavar dataTransformed = ; console;
The expected output
"id": "5a91c4547886436ed94e6326" "name": "John Doe" "role": "id": "5a93080d13592753b1146198" "name": "admin"
Usage with data arrays
//import libraryvar fractal = ; //get data from database or ...var dataDatabase = "_id": "5a91c4547886436ed94e6326" "firstName": "John" "lastName": "Doe" "password": "$2a$10$VzJQsmaknGuafqXSfzDWg.zPshX..uY26Yn8X9TJnvjGqHex1FQ7S" "role" : "_id" : "5a93080d13592753b1146198" "name" : "admin" "permission" : 5 "permissions" : "_id" : "5a9307b413592753b1146197" "name" : "create" "_id" : "5a93076510c0b653673e7264" "name" : "delete" ; //transform datavar dataTransformed = ; console;
The expected output
"id":"5a91c4547886436ed94e6326" "name":"John Doe" "role": "id":"5a93080d13592753b1146198" "name":"admin" "permissions": "name_permission":"create" "name_permission":"delete"
Usage when data is a array
//import libraryvar fractal = ; //get data from database or ...var dataDatabase = "_id": "5a91c4547886436ed94e6326" "firstName": "John" "lastName": "Doe" "password": "$2a$10$VzJQsmaknGuafqXSfzDWg.zPshX..uY26Yn8X9TJnvjGqHex1FQ7S" "_id": "5a931bd3bac34d6aa90804dc" "firstName": "Homero" "lastName": "Simpson" "password": "$2a$10$B19Xg/peAH.BK4Z1gV/xJ.2OXvm9kO95W89SYzAxYP7GS26i9mOvy" ; //transform datavar dataTransformed = ; console;
The expected output
"id":"5a91c4547886436ed94e6326" "name":"John Doe" "id":"5a931bd3bac34d6aa90804dc" "name":"Homero Simpson"
Usage with config
create a transformers folder and create a file dataDatabase.js
in it.
moduleexports = "id": "_id" { return data + " " + data; }
//import libraryvar fractal = ; //get data from database or ...var dataDatabase = "_id": "5a91c4547886436ed94e6326" "firstName": "John" "lastName": "Doe" "password": "$2a$10$VzJQsmaknGuafqXSfzDWg.zPshX..uY26Yn8X9TJnvjGqHex1FQ7S" "_id": "5a931bd3bac34d6aa90804dc" "firstName": "Homero" "lastName": "Simpson" "password": "$2a$10$B19Xg/peAH.BK4Z1gV/xJ.2OXvm9kO95W89SYzAxYP7GS26i9mOvy" ; //transform datavar dataTransformed = ; console;
The expected output
"id":"5a91c4547886436ed94e6326" "name":"John Doe" "id":"5a931bd3bac34d6aa90804dc" "name":"Homero Simpson"
By default it searches for dataDatabase.js
in transformers
folder in the root
of the project.
You can overwrite its location by transformerDir: 'path/to/dir'
var fractal = transformerDir: 'api/transformers' ;
License
MIT © Riaz Laskar