function codeWrap(){"use strict";function a(){var a='<ul class="nav nav-tabs nav-code" data-code-tablist="{{codeId}}"><li><a href="#async">Async functions</a></li><li class="active"><a href="#promise">Promises</a></li><li><a href="#callback">Callbacks</a></li></ul><div class="tab-content">{{tapPanes}}</div>';l.forEach(function(e){var t=$("[data-code-id='"+e+"']"),c=t.get().map(function(a){return a.outerHTML}).join(""),i=a.replace(/{{tapPanes}}/g,c).replace(/{{codeId}}/g,e);t.first().replaceWith(i),t.remove()}),$("[data-code-hide]").addClass("hide")}function e(a){var e=!localStorage.getItem("codeStyle");if(e&&localStorage.setItem("codeStyle",c),a=a||localStorage.getItem("codeStyle"),"undefined"!=typeof a&&null!==a){var t=$('[data-code-tablist] [href="#'+a+'"]').parent();$("[data-code-tablist] li").removeClass("active"),t.addClass("active"),$(".tab-pane").removeClass("active"),$('.tab-pane[id="'+a+'"]').addClass("active"),localStorage.setItem("codeStyle",a)}}function t(){o.length>0||l.forEach(function(a){var e=$("[data-code-id='"+a+"']"),t=0;e.get().forEach(function(a){var e=a.style.display;a.style.display="block";var c=a.clientHeight;a.style.display=e,c>t&&(t=c)}),e.find("pre").css("height",t),o.push(a)})}var c="promise",i=$("[data-code-id]").get(),l=i.map(function(a){return a.attributes["data-code-id"].value}).filter(function(a,e,t){return t.indexOf(a)==e});a(),e(),$("[data-code-tablist] [href]").on("click",function(a){var c=$(this).attr("href");e(c.replace("#","")),t(),a.preventDefault()});var o=[]}codeWrap();
