text: // Generated by CoffeeScript 1.9.2
  (function() {
    var Originals, Utils, _;
  
    _ = require("./Underscore")._;
  
    Utils = require("./Utils");
  
    Originals = {
      Layer: {
        backgroundColor: "rgba(0,124,255,.5)",
        width: 100,
        height: 100
      },
      Animation: {
        curve: "ease",
        time: 1
      },
      DeviceComponent: {
        fullScreen: false,
        padding: 50,
        deviceType: "iphone-5s-spacegray",
        deviceZoom: "fit",
        contentZoom: 1,
        orientation: "portrait",
        keyboard: false,
        animationOptions: {
          curve: "spring(400,40,0)"
        }
      },
      LayerDraggable: {
        momentum: true,
        momentumOptions: {
          friction: 2.1,
          tolerance: 1
        },
        bounce: true,
        bounceOptions: {
          friction: 40,
          tension: 200,
          tolerance: 1
        },
        directionLock: false,
        directionLockThreshold: {
          x: 10,
          y: 10
        },
        overdrag: true,
        overdragScale: 0.5,
        pixelAlign: true,
        velocityTimeout: 100,
        velocityScale: 890
      },
      FrictionSimulator: {
        friction: 2,
        tolerance: 1 / 10
      },
      SpringSimulator: {
        tension: 500,
        friction: 10,
        tolerance: 1 / 10000
      },
      MomentumBounceSimulator: {
        momentum: {
          friction: 2,
          tolerance: 10
        },
        bounce: {
          tension: 500,
          friction: 10,
          tolerance: 1
        }
      }
    };
  
    exports.Defaults = {
      getDefaults: function(className, options) {
        var defaults, k, ref, v;
        if (!Originals.hasOwnProperty(className)) {
          return {};
        }
        if (!Framer.Defaults.hasOwnProperty(className)) {
          return {};
        }
        defaults = _.clone(Originals[className]);
        ref = Framer.Defaults[className];
        for (k in ref) {
          v = ref[k];
          defaults[k] = _.isFunction(v) ? v() : v;
        }
        for (k in defaults) {
          v = defaults[k];
          if (!options.hasOwnProperty(k)) {
            options[k] = v;
          }
        }
        return options;
      },
      setup: function() {
        var className, classValues, k, ref, v;
        if (window.FramerDefaults) {
          ref = window.FramerDefaults;
          for (className in ref) {
            classValues = ref[className];
            for (k in classValues) {
              v = classValues[k];
              Originals[className][k] = v;
            }
          }
        }
        return exports.Defaults.reset();
      },
      reset: function() {
        return window.Framer.Defaults = _.clone(Originals);
      }
    };
  
  }).call(this);
  