(function(){var $,create,hasAttr,init;$=null;hasAttr=function(el,name){var attr;attr=$(el).attr(name);return typeof attr!=="undefined"&&attr!==false};create=function(toggler,target,event,hideToggler){if(event==null){event="click"}if(hideToggler==null){hideToggler=false}return toggler.on(event,function(e){e.preventDefault();target.toggle();if(hideToggler){return toggler.hide()}})};init=function(jQuery,scope){if(scope==null){scope="body"}$=jQuery;return $(scope).find("*[data-toggle]").each(function(i,el){var event,hideToggler,target,targetSelector;if(!hasAttr(el,"data-target")){throw new Error("Toggle: missing data-target attribute.")}el=$(el);targetSelector=el.attr("data-target");target=$(targetSelector);if(target.length===0){throw new Error("Toggle: element '"+targetSelector+"' was not found.")}event=hasAttr(el,"data-event")?el.attr("data-event"):"click";hideToggler=hasAttr(el,"data-hide-toggler");create(el,target,event,hideToggler);return null})};if(typeof module==="object"){module.exports=init}else{window.Toggle=init}}).call(this);