Esri simple renderer generator

  require([
    "esri/map", 
    "esri/layers/FeatureLayer", 
    "esri/renderers/SimpleRenderer", 
    "dojo/domReady!"
  ], 
  var map = new Map("esri-map", {
      center: [-118, 34.5],
      zoom: 7,
      basemap: "topo",
      smartNavigation: false
    });

    map.on('load', function() {
      map.disableScrollWheelZoom();
    });

    var layer = new FeatureLayer('http://services.arcgis.com/V6ZHFr6zdgNZuVG0/arcgis/rest/services/2012_CA_NHTSA/FeatureServer/0', {
      mode: FeatureLayer.MODE_ONDEMAND,
      outFields: ['*']
    });

    map.addLayer(layer);

    layer.on('load', function() {
      //console.log('layer', layer);
      var json = {
        type: 'simple',
        symbol: layer.renderer.toJson().defaultSymbol
      }
      
      var rend = new SimpleRenderer(json);
      layer.setRenderer(rend);
      layer.redraw();

      var malette = new Malette('esri-map', {
        style: json,
        formatIn: 'esri-json',
        formatOut: 'esri-json'
      });

      malette.on('style-change', function( style ){
        console.log('exported style', style);

        var rend = new SimpleRenderer(style);
        layer.setRenderer(rend);
        layer.redraw();

      });

    });

  });