0.1.8 • Published 7 years ago

mojule-transform v0.1.8

Weekly downloads
2
License
MIT
Repository
github
Last release
7 years ago

mojule-transform

Declarative object tranformation

Usage

npm install mojule-transformer

const transformer = require( 'mojule-transformer' )

const transformed = transformer( model, transform )

Examples

Append a property

Input:

const model = {
  "a": "Hello"
}

const transform = {
  "b": "World"
}

Output:

{
  "a": "Hello",
  "b": "World"
}

Copy a property

Input:

const model = {
  "a": "Hello"
}

const transform = {
  "b": {
    "$value": "a"
  }
}

Output:

{
  "a": "Hello",
  "b": "Hello"
}

Delete a property

Input:

const model = {
  "a": "Hello"
}

const transform = {
  "a": "$delete"
}

Output:

{}

Rename a property

Input:

const model = {
  "a": "Hello"
}

const transform = {
  "a": "$delete",
  "b": {
    "$value": "a"
  }
}

Output:

{
  "b": "Hello"
}

Conditional

Input:

const model = {
  "a": "Hello"
}

const transform = {
  "b": {
    "$if": [
      { "$value": "a" },
      true
    ]
  },
  "c": {
    "$if": [
      { "$value": "d" },
      true
    ]
  }
}

Output:

{
  "a": "Hello",
  "b": true
}
0.1.8

7 years ago

0.1.7

7 years ago

0.1.6

7 years ago

0.1.5

7 years ago

0.1.4

7 years ago

0.1.3

7 years ago

0.1.2

7 years ago

0.1.1

7 years ago

0.1.0

7 years ago