# schema-mapper-differ

Get a list of [Changes](https://github.com/schema-mapper/spec#changes) by comparing 2 [Projects](https://github.com/schema-mapper/spec#projects).

[![Build status](https://travis-ci.org/schema-mapper/differ.svg)](https://travis-ci.org/schema-mapper/differ)
[![Docs status](https://doc.esdoc.org/github.com/schema-mapper/differ/badge.svg)](https://doc.esdoc.org/github.com/schema-mapper/differ)
[![Code Climate](https://codeclimate.com/github/schema-mapper/differ/badges/gpa.svg)](https://codeclimate.com/github/schema-mapper/differ)
[![Dependencies](https://david-dm.org/schema-mapper/differ.svg)](https://david-dm.org/schema-mapper/differ)
[![License](http://img.shields.io/badge/license-MIT-blue.svg?style=flat)](LICENSE)

# Installation
```shell
npm install --save schema-mapper-differ
```

## Usage
```js
var differ = require('schema-mapper-differ');

var oldProjects = {};
var projects = {
  '0': {
    name: 'demo',
    version: 0,
    schemas: {
      '1': {
        name: 'users',
        primary: '1',
        columns: {
          '1': {
            name: 'id',
            type: 'uuid'
          }
        }
      }
    }
  }
};

var changes = differ.diffProjects(oldProjects, projects);
console.log(changes);
```

```js
[
  {
    change: 'project.create',
    projectId: '0',
    project: {
      name: 'demo',
      version: 0,
      schemas: {
        '1': {
          name: 'users',
          primary: '1',
          columns: {
            '1': {
              name: 'id',
              type: 'uuid'
            }
          }
        }
      }
    }
  }
]
```

# API docs
[API Docs](https://schema-mapper.github.io/differ)

# Licence
MIT
