maprify

object to object conversion via interfascist

npm install maprify
2 downloads in the last week
4 downloads in the last month
/*
  maprify
*/

var interfaces = {
  Point: {
    x: 'Number',
    y: 'Number'
  },
  Size: {
    width: 'Number',
    height: 'Number'
  },
  Rectangle: {
    position: 'Point',
    size: 'Size'
  },
  JQueryElement: {
    position: 'Function',
    width: 'Function',
    height: 'Function'
  }
};

var mappings = {
  Rectangle: {
    JQueryElement: function( value ){
      var position = value.position();
      return {
        position: {
          x: position.left,
          y: position.top
        },
        size: {
          width: value.width(),
          height: value.height()
        }        
      }
    }
  }
};

var mapper = new Maprify( interfaces, mappings );
var element = $( '.elephant' );
var rectangle = mapper.Rectangle( element );
npm loves you