// Generated by CoffeeScript 1.12.8 (function() { var slice = [].slice; Turbolinks.Renderer = (function() { var copyElementAttributes; function Renderer() {} Renderer.render = function() { var args, callback, delegate, renderer; delegate = arguments[0], callback = arguments[1], args = 3 <= arguments.length ? slice.call(arguments, 2) : []; renderer = (function(func, args, ctor) { ctor.prototype = func.prototype; var child = new ctor, result = func.apply(child, args); return Object(result) === result ? result : child; })(this, args, function(){}); renderer.delegate = delegate; renderer.render(callback); return renderer; }; Renderer.prototype.renderView = function(callback) { this.delegate.viewWillRender(this.newBody); callback(); return this.delegate.viewRendered(this.newBody); }; Renderer.prototype.invalidateView = function() { return this.delegate.viewInvalidated(); }; Renderer.prototype.createScriptElement = function(element) { var createdScriptElement; if (element.getAttribute("data-turbolinks-eval") === "false") { return element; } else { createdScriptElement = document.createElement("script"); createdScriptElement.textContent = element.textContent; createdScriptElement.async = false; copyElementAttributes(createdScriptElement, element); return createdScriptElement; } }; copyElementAttributes = function(destinationElement, sourceElement) { var i, len, name, ref, ref1, results, value; ref = sourceElement.attributes; results = []; for (i = 0, len = ref.length; i < len; i++) { ref1 = ref[i], name = ref1.name, value = ref1.value; results.push(destinationElement.setAttribute(name, value)); } return results; }; return Renderer; })(); }).call(this);