upjs-rails 0.12.4 → 0.12.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/dist/up.min.js CHANGED
@@ -1,2 +1,2 @@
1
- (function(){window.up={}}).call(this),function(){var t=[].slice;up.util=function(e){var n,r,o,u,i,a,s,l,c,p,f,d,m,h,v,g,y,b,w,k,x,S,C,T,A,P,E,O,$,D,j,U,R,z,M,L,W,F,I,_,Q,K,N,H,q,B,J,G,X,V,Y,Z,te,ee,ne,re,oe,ue,ie,ae,se,le,ce,pe,fe,de,me,he,ve,ge,ye,be,we,ke,xe,Se,Ce,Te,Ae,Pe,Ee,Oe,$e,De,je,Ue,Re;return oe=function(e){var n,r;return n=void 0,r=!1,function(){var o;return o=1<=arguments.length?t.call(arguments,0):[],r?n:(r=!0,n=e.apply(null,o))}},u=function(t){return t=d(t),t.selector&&(t.headers={"X-Up-Selector":t.selector}),e.ajax(t)},G=function(t,e){return(""===e||"80"===e)&&"http:"===t||"443"===e&&"https:"===t},ce=function(t,n){var r,o,u;return r=null,X(t)?(r=e("<a>").attr({href:t}).get(0),z(r.hostname)&&(r.href=r.href)):r=De(t),o=r.protocol+"//"+r.hostname,G(r.protocol,r.port)||(o+=":"+r.port),u=r.pathname,"/"!==u[0]&&(u="/"+u),(null!=n?n.stripTrailingSlash:void 0)===!0&&(u=u.replace(/\/$/,"")),o+=u,(null!=n?n.hash:void 0)===!0&&(o+=r.hash),(null!=n?n.search:void 0)!==!1&&(o+=r.search),o},le=function(t){return t?t.toUpperCase():"GET"},n=function(t){var n,r,o,u,i,a,s,l,c,p,f,d,m,h,v,g;for(v=t.split(/[ >]/),o=null,p=f=0,m=v.length;m>f;p=++f){for(a=v[p],i=a.match(/(^|\.|\#)[A-Za-z0-9\-_]+/g),g="div",u=[],c=null,d=0,h=i.length;h>d;d++)switch(s=i[d],s[0]){case".":u.push(s.substr(1));break;case"#":c=s.substr(1);break;default:g=s}l="<"+g,u.length&&(l+=' class="'+u.join(" ")+'"'),c&&(l+=' id="'+c+'"'),l+=">",n=e(l),r&&n.appendTo(r),0===p&&(o=n),r=n}return o},h=function(t,e){var n;return n=document.createElement(t),B(e)&&(n.innerHTML=e),n},b=function(){var e,n,r;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],n="[UP] "+n,(r=up.browser).puts.apply(r,["debug",n].concat(t.call(e)))},Re=function(){var e,n,r;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],n="[UP] "+n,(r=up.browser).puts.apply(r,["warn",n].concat(t.call(e)))},C=function(){var n,r,o,u;throw r=1<=arguments.length?t.call(arguments,0):[],r[0]="[UP] "+r[0],(u=up.browser).puts.apply(u,["error"].concat(t.call(r))),o=A.apply(null,r),n=ge(e(".up-error"))||e('<div class="up-error"></div>').prependTo("body"),n.addClass("up-error"),n.text(o),new Error(o)},o=/\%[odisf]/g,A=function(){var e,n,r,u;return e=1<=arguments.length?t.call(arguments,0):[],u=e[0],n=0,r=80,u.replace(o,function(){var t,o;return n+=1,t=e[n],o=typeof t,"string"===o?(t=t.replace(/\s+/g," "),t.length>r&&(t=t.substr(0,r)+"\u2026"),t='"'+t+'"'):t="undefined"===o?"undefined":"number"===o||"function"===o?t.toString():JSON.stringify(t),t.length>r&&(t=t.substr(0,r)+" \u2026",("object"===o||"function"===o)&&(t+=" }")),t})},g=function(t){var e,n,r,o,u,i,a;for(b("Creating selector from element %o",t),n=(e=t.attr("class"))?e.split(" "):[],r=t.attr("id"),a=t.prop("tagName").toLowerCase(),r&&(a+="#"+r),o=0,i=n.length;i>o;o++)u=n[o],a+="."+u;return a},v=function(t){var e,n,r,o,u,i,a,s,l,c,p,f;return l=function(t){return"<"+t+"(?: [^>]*)?>"},i=function(t){return"</"+t+">"},e="(?:.|\\n)*?",u=function(t){return"("+t+")"},f=new RegExp(l("head")+e+l("title")+u(e)+i("title")+e+i("body"),"i"),o=new RegExp(l("body")+u(e)+i("body"),"i"),(r=t.match(o))?(s=document.createElement("html"),n=h("body",r[1]),s.appendChild(n),(p=t.match(f))&&(a=h("head"),s.appendChild(a),c=h("title",p[1]),a.appendChild(c)),s):h("div",t)},P=e.extend,$e=e.trim,k=function(t,e){var n,r,o,u,i;for(i=[],n=o=0,u=t.length;u>o;n=++o)r=t[n],i.push(e(r,n));return i},ne=k,j=function(t){return t},Ee=function(t,e){var n,r,o,u;for(u=[],n=r=0,o=t-1;o>=0?o>=r:r>=o;n=o>=0?++r:--r)u.push(e(n));return u},N=function(t){return null===t},V=function(t){return void 0===t},L=function(t){return!V(t)},K=function(t){return V(t)||N(t)},I=function(t){return!K(t)},z=function(t){return K(t)||q(t)&&0===Object.keys(t).length||0===t.length},ge=function(t,e){return null==e&&(e=B),e(t)?t:null},B=function(t){return!z(t)},F=function(t){return"function"==typeof t},X=function(t){return"string"==typeof t},H=function(t){return"number"==typeof t},_=function(t){return"object"==typeof t&&!!t},q=function(t){return _(t)||"function"==typeof t},W=function(t){return!(!t||1!==t.nodeType)},Q=function(t){return t instanceof jQuery},J=function(t){return q(t)&&F(t.then)},M=function(t){return J(t)&&F(t.resolve)},U=function(t){return I(t)?t:void 0},R=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)},Oe=function(t){return Array.prototype.slice.call(t)},d=function(t){return R(t)?t.slice():P({},t)},De=function(t){return Q(t)?t.get(0):t},ue=function(t,e){return P(d(t),e)},ve=function(t,e){var n,r,o,u;if(o=t?d(t):{},e)for(r in e)n=e[r],u=o[r],I(u)?q(n)&&q(u)&&(o[r]=ve(u,n)):o[r]=n;return o},he=function(){var e,n,r,o,u,i;for(n=1<=arguments.length?t.call(arguments,0):[],u=void 0,r=0,o=n.length;o>r;r++)if(e=n[r],i=e,F(i)&&(i=i()),I(i)){u=i;break}return u},w=function(t,e){var n,r,o,u;for(u=void 0,r=0,o=t.length;o>r;r++)if(n=t[r],e(n)){u=n;break}return u},i=function(t,e){var n;return n=w(t,e),L(n)},c=function(t){return Ce(t,I)},je=function(t){var e;return e={},Ce(t,function(t){return e.hasOwnProperty(t)?!1:e[t]=!0})},Ce=function(t,e){var n;return n=[],k(t,function(t){return e(t)?n.push(t):void 0}),n},ye=function(){var e,n,r,o;return e=arguments[0],r=2<=arguments.length?t.call(arguments,1):[],o=function(){var t,o,u;for(u=[],t=0,o=r.length;o>t;t++)n=r[t],u.push(e.attr(n));return u}(),w(o,B)},se=function(t){return setTimeout(t,0)},te=function(t){return t[t.length-1]},l=function(){var t;return t=document.documentElement,{width:t.clientWidth,height:t.clientHeight}},Se=oe(function(){var t,n,r;return t=e("<div>").css({position:"absolute",top:"0",left:"0",width:"50px",height:"50px",overflowY:"scroll"}),t.appendTo(document.body),n=t.get(0),r=n.offsetWidth-n.clientWidth,t.remove(),r}),de=function(t){var e;return e=void 0,function(){return null!=t&&(e=t()),t=void 0,e}},Pe=function(t,e,n){var r,o;return o=t.css(Object.keys(e)),t.css(e),r=function(){return t.css(o)},n?(n(),r()):de(r)},D=function(t){var e,n;return n=t.css(["transform","-webkit-transform"]),z(n)||"none"===n.transform?(e=function(){return t.css(n)},t.css({transform:"translateZ(0)","-webkit-transform":"translateZ(0)"})):e=function(){},e},y=function(t,n,o){var u,i,a,s,l,c;return u=e(t),up.browser.canCssAnimation()?(o=ve(o,{duration:300,delay:0,easing:"ease"}),i=e.Deferred(),s={"transition-property":Object.keys(n).join(", "),"transition-duration":o.duration+"ms","transition-delay":o.delay+"ms","transition-timing-function":o.easing},l=D(u),c=Pe(u,s),u.css(n),i.then(l),i.then(c),u.data(r,i),i.then(function(){return u.removeData(r)}),a=setTimeout(function(){return i.resolve()},o.duration+o.delay),i.then(function(){return clearTimeout(a)}),i):(u.css(n),ke())},r="up-animation-promise",O=function(t){return e(t).each(function(){var t;return(t=e(this).data(r))?t.resolve():void 0})},re=function(t,n){var r,o,u,i,a,s;return n=ve(n,{relative:!1,inner:!1,full:!1}),n.relative?n.relative===!0?i=t.position():(r=e(n.relative),a=t.offset(),r.is(document)?i=a:(u=r.offset(),i={left:a.left-u.left,top:a.top-u.top})):i=t.offset(),o={left:i.left,top:i.top},n.inner?(o.width=t.width(),o.height=t.height()):(o.width=t.outerWidth(),o.height=t.outerHeight()),n.full&&(s=l(),o.right=s.width-(o.left+o.width),o.bottom=s.height-(o.top+o.height)),o},m=function(t,e){var n,r,o,u,i;for(u=t.get(0).attributes,i=[],r=0,o=u.length;o>r;r++)n=u[r],i.push(n.specified?e.attr(n.name,n.value):void 0);return i},E=function(t,e){return t.find(e).addBack(e)},T=function(t){return 27===t.keyCode},Ae=function(t,e){return 0===t.indexOf(e)},S=function(t,e){return t.indexOf(e)===t.length-e.length},f=function(t,e){return t.indexOf(e)>=0},s=function(t,e){var n;switch(n=t.attr(e)){case"false":return!1;case"true":return!0;case"":return!0;default:return n}},ee=function(t){return t.getResponseHeader("X-Up-Location")},ie=function(t){return t.getResponseHeader("X-Up-Method")},me=function(){var e,n,r,o,u,i;for(i=arguments[0],o=2<=arguments.length?t.call(arguments,1):[],e={},n=0,u=o.length;u>n;n++)r=o[n],i.hasOwnProperty(r)&&(e[r]=i[r]);return e},Y=function(t){return!(t.metaKey||t.shiftKey||t.ctrlKey)},Z=function(t){var e;return e=V(t.button)||0===t.button,e&&Y(t)},ke=function(){var t;return t=e.Deferred(),t.resolve(),t},xe=function(){return ke().promise()},pe=function(){return{is:function(){return!1},attr:function(){},find:function(){return[]}}},we=function(){var n,r;return n=1<=arguments.length?t.call(arguments,0):[],r=e.when.apply(e,n),r.resolve=function(){return k(n,function(t){return"function"==typeof t.resolve?t.resolve():void 0})},r},Te=function(t,e){var n,r,o;r=[];for(n in e)o=e[n],r.push(K(t.attr(n))?t.attr(n,o):void 0);return r},be=function(t,e){var n;return n=t.indexOf(e),n>=0?(t.splice(n,1),e):void 0},x=function(){return e([])},ae=function(t){var n,r,o,u,a,s,l;for(a={},l=[],r=[],o=0,u=t.length;u>o;o++)s=t[o],X(s)?l.push(s):r.push(s);return a.parsed=r,l.length&&(n=l.join(", "),a.parsed.push(n)),a.select=function(){return a.find(void 0)},a.find=function(t){var n,r,o,u,i,s;for(r=x(),i=a.parsed,o=0,u=i.length;u>o;o++)s=i[o],n=t?t.find(s):e(s),r=r.add(n);return r},a.findWithSelf=function(t){var e;return e=a.find(t),a.doesMatch(t)&&(e=e.add(t)),e},a.doesMatch=function(t){var n;return n=e(t),i(a.parsed,function(t){return n.is(t)})},a.seekUp=function(t){var n,r,o;for(o=e(t),n=o,r=void 0;n.length;){if(a.doesMatch(n)){r=n;break}n=n.parent()}return r||x()},a},a=function(e){var n,r,o,u,i,a,s,l,c,p,f,m;return null==e&&(e={}),f=void 0,r=function(){return f={}},r(),s=function(){var n;return n=1<=arguments.length?t.call(arguments,0):[],e.log?(n[0]="["+e.log+"] "+n[0],b.apply(null,n)):void 0},a=function(){return Object.keys(f)},l=function(){return K(e.size)?void 0:F(e.size)?e.size():H(e.size)?e.size:C("Invalid size config: %o",e.size)},o=function(){return K(e.expiry)?void 0:F(e.expiry)?e.expiry():H(e.expiry)?e.expiry:C("Invalid expiry config: %o",e.expiry)},c=function(t){return e.key?e.key(t):t.toString()},$e=function(){var t,e,n,r;return r=d(a()),n=l(),n&&r.length>n&&(t=null,e=null,k(r,function(n){var r,o;return r=f[n],o=r.timestamp,!e||e>o?(t=n,e=o):void 0}),t)?delete f[t]:void 0},n=function(t,e){var n;return n=u(t),L(n)?p(e,n):void 0},m=function(){return(new Date).valueOf()},p=function(t,e){var n;return n=c(t),f[n]={timestamp:m(),value:e}},be=function(t){var e;return e=c(t),delete f[e]},i=function(t){var e,n;return e=o(),e?(n=m()-t.timestamp,n<o()):!0},u=function(t,e){var n,r;return null==e&&(e=void 0),r=c(t),(n=f[r])?i(n)?(s("Cache hit for %o",t),n.value):(s("Discarding stale cache entry for %o",t),be(t),e):(s("Cache miss for %o",t),e)},{alias:n,get:u,set:p,remove:be,clear:r,keys:a}},p=function(t){var e;return null==t&&(t={}),e={},e.reset=function(){return P(e,t)},e.reset(),Object.preventExtensions(e),e},Ue=function(t){var e,n;return t=De(t),e=t.parentNode,n=Oe(t.childNodes),k(n,function(n){return e.insertBefore(n,t)}),e.removeChild(t)},fe=function(t){var e,n;for(e=void 0;(t=t.parent())&&t.length;)if(n=t.css("position"),"absolute"===n||"relative"===n||t.is("body")){e=t;break}return e},$=function(t,n){var r,o,u,i;return r=e(t),o=fe(r),u=r.position(),i=o.offset(),r.css({position:"absolute",left:u.left-i.left,top:u.top-i.top+n.scrollTop(),right:"",bottom:""})},{offsetParent:fe,fixedToAbsolute:$,presentAttr:ye,createElement:h,normalizeUrl:ce,normalizeMethod:le,createElementFromHtml:v,$createElementFromSelector:n,createSelectorFromElement:g,ajax:u,extend:P,copy:d,merge:ue,options:ve,option:he,error:C,debug:b,warn:Re,each:k,map:ne,identity:j,times:Ee,any:i,detect:w,select:Ce,compact:c,uniq:je,last:te,isNull:N,isDefined:L,isUndefined:V,isGiven:I,isMissing:K,isPresent:B,isBlank:z,presence:ge,isObject:q,isFunction:F,isString:X,isElement:W,isJQuery:Q,isPromise:J,isDeferred:M,isHash:_,ifGiven:U,isUnmodifiedKeyEvent:Y,isUnmodifiedMouseEvent:Z,nullJquery:pe,unJquery:De,nextFrame:se,measure:re,temporaryCss:Pe,cssAnimate:y,finishCssAnimate:O,forceCompositing:D,escapePressed:T,copyAttributes:m,findWithSelf:E,contains:f,startsWith:Ae,endsWith:S,isArray:R,toArray:Oe,castedAttr:s,locationFromXhr:ee,methodFromXhr:ie,clientSize:l,only:me,trim:$e,resolvedPromise:xe,resolvedDeferred:ke,resolvableWhen:we,setMissingAttrs:Te,remove:be,memoize:oe,scrollbarWidth:Se,config:p,cache:a,unwrapElement:Ue,multiSelector:ae,emptyJQuery:x,evalConsoleTemplate:A}}($),up.error=up.util.error,up.warn=up.util.warn,up.debug=up.util.debug}.call(this),function(){var t=[].slice;up.browser=function(e){var n,r,o,u,i,a,s,l,c,p,f,d,m,h;return m=up.util,p=function(t,n){var r,o,u,i,a,s;return null==n&&(n={}),a=m.option(n.method,"get").toLowerCase(),"get"===a?location.href=t:e.rails?(s=n.target,u=e.rails.csrfToken(),o=e.rails.csrfParam(),r=e("<form method='post' action='"+t+"'></form>"),i="<input name='_method' value='"+a+"' type='hidden' />",m.isDefined(o)&&m.isDefined(u)&&(i+="<input name='"+o+"' value='"+u+"' type='hidden' />"),s&&r.attr("target",s),r.hide().append(i).appendTo("body"),r.submit()):error("Can't fake a "+a.toUpperCase()+" request without Rails UJS")},d=function(){var e,n,r;return r=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],m.isDefined(console[r])||(r="log"),o()?console[r].apply(console,e):(n=m.evalConsoleTemplate.apply(m,e),console[r](n))},h=function(){return location.href},u=m.memoize(function(){return m.isDefined(history.pushState)&&"get"===i()}),a=m.memoize(function(){return m.isUndefined(document.addEventListener)}),s=m.memoize(function(){return a()||-1!==navigator.appVersion.indexOf("MSIE 9.")}),n=m.memoize(function(){return"transition"in document.documentElement.style}),r=m.memoize(function(){return"oninput"in document.createElement("input")}),o=m.memoize(function(){return!s()}),l=m.memoize(function(){var t,n,r,o;return o=e.fn.jquery,r=o.split("."),t=parseInt(r[0]),n=parseInt(r[1]),t>=2||1===t&&n>=9}),f=function(t){var e,n;return n=null!=(e=document.cookie.match(new RegExp(t+"=(\\w+)")))?e[1]:void 0,m.isPresent(n)&&(document.cookie=t+"=; expires=Thu, 01-Jan-70 00:00:01 GMT; path=/"),n},i=m.memoize(function(){return(f("_up_request_method")||"get").toLowerCase()}),c=function(){return!a()&&l()},{url:h,loadPage:p,canPushState:u,canCssAnimation:n,canInputEvent:r,canLogSubstitution:o,isSupported:c,puts:d}}(jQuery)}.call(this),function(){var t=[].slice;up.bus=function(e){var n,r,o,u,i,a,s,l,c,p,f;return p=up.util,i=[],n=null,f=function(t){return function(n){var r;return r=n.$element||e(this),t.apply(r.get(0),[n,r,up.syntax.data(r)])}},u=function(){var n,r,o,u,a;return r=1<=arguments.length?t.call(arguments,0):[],up.browser.isSupported()?(u=p.copy(r),a=u.length-1,o=u[a],u[a]=f(o),i.push(u),n=e(document),n.on.apply(n,u),function(){return n.off.apply(n,u)}):function(){}},r=function(t,n){var r,o;return null==n&&(n={}),o=e.Event(t,n),r=n.$element||e(document),p.debug("Emitting %o on %o with props %o",t,r,n),r.trigger(o),o},a=function(){var e,n;return e=1<=arguments.length?t.call(arguments,0):[],n=r.apply(null,e),!n.isDefaultPrevented()},s=function(t){return u("keydown","body",function(e){return p.escapePressed(e)?t(e):void 0})},c=function(){return n=p.copy(i)},l=function(){var t,r,o,u;for(r=0,o=i.length;o>r;r++)t=i[r],p.contains(n,t)||(u=e(document)).off.apply(u,t);return i=p.copy(n)},o=function(){return up.emit("up:framework:reset")},u("up:framework:boot",c),u("up:framework:reset",l),{on:u,emit:r,nobodyPrevents:a,onEscape:s,emitReset:o}}(jQuery),up.on=up.bus.on,up.emit=up.bus.emit,up.reset=up.bus.emitReset}.call(this),function(){var t=[].slice;up.syntax=function(e){var n,r,o,u,i,a,s,l,c,p,f,d,m;return m=up.util,n="up-destroyable",r="up-destroyer",a=[],l=null,i=function(){var e,n,r;return r=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],up.browser.isSupported()?(i=e.pop(),n=m.options(e[0],{batch:!1}),a.push({selector:r,callback:i,batch:n.batch})):void 0},o=function(t,e,o){var u;return m.debug("Applying compiler %o on %o",t.selector,o),u=t.callback.apply(o,[e,s(e)]),m.isFunction(u)?(e.addClass(n),e.data(r,u)):void 0},u=function(t){var n,r,u,s;for(m.debug("Compiling fragment %o",t),s=[],r=0,u=a.length;u>r;r++)i=a[r],n=m.findWithSelf(t,i.selector),s.push(n.length?i.batch?o(i,n,n.get()):n.each(function(){return o(i,e(this),this)}):void 0);return s},c=function(t){return m.findWithSelf(t,"."+n).each(function(){var t,n;return t=e(this),(n=t.data(r))()})},s=function(t){var n,r;return n=e(t),r=n.attr("up-data"),m.isString(r)&&""!==m.trim(r)?JSON.parse(r):{}},d=function(){return l=m.copy(a)},f=function(){return a=m.copy(l)},p=function(t){var n;return n=e(t),up.emit("up:fragment:inserted",{$element:n}),n},up.on("ready",function(){return p(document.body)}),up.on("up:fragment:inserted",function(t){return u(t.$element)}),up.on("up:fragment:destroy",function(t){return c(t.$element)}),up.on("up:framework:boot",d),up.on("up:framework:reset",f),{compiler:i,hello:p,data:s}}(jQuery),up.compiler=up.syntax.compiler,up.hello=up.syntax.hello,up.ready=function(){return up.util.error("up.ready no longer exists. Please use up.hello instead.")},up.awaken=function(){return up.util.error("up.awaken no longer exists. Please use up.compiler instead.")}}.call(this),function(){up.history=function(t){var e,n,r,o,u,i,a,s,l,c,p,f,d,m,h,v;return v=up.util,n=v.config({popTargets:["body"],restoreScroll:!0}),c=void 0,i=void 0,m=function(){return n.reset(),c=void 0,i=void 0},a=function(t){return v.normalizeUrl(t,{hash:!0})},r=function(){return a(up.browser.url())},o=function(t){return a(t)===r()},s=function(t){return i&&(c=i,i=void 0),i=t},d=function(t,e){return u("replace",t,e)},p=function(t,e){return u("push",t,e)},u=function(t,n,u){var i,a;return u=v.options(u,{force:!1}),u.force||!o(n)?up.browser.canPushState()?(i=t+"State",a=e(),v.debug("Changing history to URL %o (%o)",n,t),window.history[i](a,"",n),s(r())):v.error("This browser doesn't support history.pushState"):void 0},e=function(){return{fromUp:!0}},h=function(t){var e,o;return o=r(),v.debug("Restoring state %o (now on "+o+")",t),e=n.popTargets.join(", "),up.replace(e,o,{history:!1,reveal:!1,transition:"none",saveScroll:!1,restoreScroll:n.restoreScroll})},l=function(t){var e;return v.debug("History state popped to URL %o",r()),s(r()),up.layout.saveScroll({url:c}),e=t.originalEvent.state,(null!=e?e.fromUp:void 0)?h(e):v.debug("Discarding unknown state %o",e)},up.browser.canPushState()&&(f=function(){return t(window).on("popstate",l),d(r(),{force:!0})},"undefined"!=typeof jasmine&&null!==jasmine?f():setTimeout(f,100)),up.compiler("[up-back]",function(t){return v.isPresent(c)?(v.setMissingAttrs(t,{"up-href":c,"up-restore-scroll":""}),t.removeAttr("up-back"),up.link.makeFollowable(t)):void 0}),up.on("up:framework:reset",m),{config:n,defaults:function(){return v.error("up.history.defaults(...) no longer exists. Set values on he up.history.config property instead.")},push:p,replace:d,url:r,previousUrl:function(){return c},normalizeUrl:a}}(jQuery)}.call(this),function(){var slice=[].slice;up.layout=function($){var SCROLL_PROMISE_KEY,anchoredRight,config,finishScrolling,fixedChildren,lastScrollTops,measureObstruction,reset,restoreScroll,reveal,revealOrRestoreScroll,saveScroll,scroll,scrollTops,u,viewportOf,viewportSelector,viewports,viewportsWithin;return u=up.util,config=u.config({duration:0,viewports:[document,".up-modal","[up-viewport]"],fixedTop:["[up-fixed~=top]"],fixedBottom:["[up-fixed~=bottom]"],anchoredRight:["[up-anchored~=right]","[up-fixed~=top]","[up-fixed~=bottom]","[up-fixed~=right]"],snap:50,substance:150,easing:"swing"}),lastScrollTops=u.cache({size:30,key:up.history.normalizeUrl}),reset=function(){return config.reset(),lastScrollTops.clear()},SCROLL_PROMISE_KEY="up-scroll-promise",scroll=function(t,e,n){var r,o,i,a,s;return r=$(t),n=u.options(n),i=u.option(n.duration,config.duration),a=u.option(n.easing,config.easing),finishScrolling(r),i>0?(o=$.Deferred(),r.data(SCROLL_PROMISE_KEY,o),o.then(function(){return r.removeData(SCROLL_PROMISE_KEY),r.finish()}),s={scrollTop:e},r.get(0)===document&&(r=$("html, body")),r.animate(s,{duration:i,easing:a,complete:function(){return o.resolve()}}),o):(r.scrollTop(e),u.resolvedDeferred())},finishScrolling=function(t){return $(t).each(function(){var t;return(t=$(this).data(SCROLL_PROMISE_KEY))?t.resolve():void 0})},anchoredRight=function(){return u.multiSelector(config.anchoredRight).select()},measureObstruction=function(){var t,e,n,r;return n=function(t,e){var n,r;return n=$(t),r=n.css(e),u.isPresent(r)||u.error("Fixed element %o must have a CSS attribute %o",n,e),parseInt(r)+n.height()},e=function(){var t,e,o,u;for(o=$(config.fixedTop.join(", ")),u=[],t=0,e=o.length;e>t;t++)r=o[t],u.push(n(r,"top"));return u}(),t=function(){var t,e,o,u;for(o=$(config.fixedBottom.join(", ")),u=[],t=0,e=o.length;e>t;t++)r=o[t],u.push(n(r,"bottom"));return u}(),{top:Math.max.apply(Math,[0].concat(slice.call(e))),bottom:Math.max.apply(Math,[0].concat(slice.call(t)))}},reveal=function(t,e){var n,r,o,i,a,s,l,c,p,f,d,m,h,v;return u.debug("Revealing %o",t),e=u.options(e),n=$(t),r=e.viewport?$(e.viewport):viewportOf(n),m=u.option(e.snap,config.snap),v=r.is(document),h=v?u.clientSize().height:r.height(),p=r.scrollTop(),s=p,c=void 0,l=void 0,v?(l=measureObstruction(),c=0):(l={top:0,bottom:0},c=p),f=function(){return s+l.top},d=function(){return s+h-l.bottom-1},o=u.measure(n,{relative:r}),i=o.top+c,a=i+Math.min(o.height,config.substance)-1,a>d()&&(s+=a-d()),(i<f()||e.top)&&(s=i-l.top),m>s&&(s=0),s!==p?scroll(r,s,e):u.resolvedDeferred()},viewportSelector=function(){return u.multiSelector(config.viewports)},viewportOf=function(t){var e,n;return e=$(t),n=viewportSelector().seekUp(e),n.length||u.error("Could not find viewport for %o",e),n},viewportsWithin=function(t){var e;return e=$(t),viewportSelector().findWithSelf(e)},viewports=function(){return viewportSelector().select()},scrollTops=function(){var t,e,n,r,o,u,i;for(u={},o=config.viewports,e=0,r=o.length;r>e;e++)i=o[e],t=$(i),t.length&&(n=i,i===document&&(n="document"),u[n]=t.scrollTop());return u},fixedChildren=function(t){var e,n;return null==t&&(t=void 0),t||(t=document.body),n=$(t),e=n.find("[up-fixed]"),u.isPresent(config.fixedTop)&&(e=e.add(n.find(config.fixedTop.join(", ")))),u.isPresent(config.fixedBottom)&&(e=e.add(n.find(config.fixedBottom.join(", ")))),e},saveScroll=function(t){var e,n;return null==t&&(t={}),n=u.option(t.url,up.history.url()),e=u.option(t.tops,scrollTops()),u.debug("Saving scroll positions for URL %o: %o",n,e),lastScrollTops.set(n,e)},restoreScroll=function(t){var e,n,r,o,i,a,s,l,c;null==t&&(t={}),c=up.history.url(),o=void 0,t.around?(n=viewportsWithin(t.around),e=viewportOf(t.around),o=e.add(n)):o=viewports(),l=lastScrollTops.get(c),u.debug("Restoring scroll positions for URL %o (viewports are %o, saved tops are %o)",c,o,l);for(i in l)s=l[i],a="document"===i?document:i,r=o.filter(a),scroll(r,s,{duration:0});return u.resolvedDeferred()},revealOrRestoreScroll=function(t,e){var n;return n=$(t),e.restoreScroll?restoreScroll({around:n}):e.reveal?reveal(n):u.resolvedDeferred()},up.on("up:framework:reset",reset),{knife:eval("undefined"!=typeof Knife&&null!==Knife?Knife.point:void 0),reveal:reveal,scroll:scroll,finishScrolling:finishScrolling,config:config,defaults:function(){return u.error("up.layout.defaults(...) no longer exists. Set values on he up.layout.config property instead.")},viewportOf:viewportOf,viewportsWithin:viewportsWithin,viewports:viewports,scrollTops:scrollTops,saveScroll:saveScroll,restoreScroll:restoreScroll,revealOrRestoreScroll:revealOrRestoreScroll,anchoredRight:anchoredRight,fixedChildren:fixedChildren}}(jQuery),up.scroll=up.layout.scroll,up.reveal=up.layout.reveal}.call(this),function(){up.flow=function(t){var e,n,r,o,u,i,a,s,l,c,p,f,d,m,h,v;return v=up.util,d=function(e,n){var r;return r=t(e),v.isPresent(n)&&(n=v.normalizeUrl(n)),r.attr("up-source",n)},m=function(e){var n;return n=t(e).closest("[up-source]"),v.presence(n.attr("up-source"))||up.browser.url()},f=function(e,n,r){var o,u,i;return v.debug("Replace %o with %o (options %o)",e,n,r),r=v.options(r),i=v.presence(e)?e:v.createSelectorFromElement(t(e)),up.browser.canPushState()||r.history===!1?(u={url:n,method:r.method,selector:i,cache:r.cache,preload:r.preload},o=up.proxy.ajax(u),o.done(function(t,e,o){var s,l;return(s=v.locationFromXhr(o))&&(v.debug("Location from server: %o",s),l={url:s,method:v.methodFromXhr(o),selector:i},up.proxy.alias(u,l),n=s),r.history!==!1&&(r.history=n),r.source!==!1&&(r.source=n),r.preload?void 0:a(i,t,r)}),o.fail(v.error),o):(r.preload||up.browser.loadPage(n,v.only(r,"method")),v.resolvedPromise())},a=function(t,e,n){var r,u,i,a,s,p,f,d;for(n=v.options(n,{historyMethod:"push"}),n.source=v.option(n.source,n.history),p=c(e),n.title||(n.title=p.title()),n.saveScroll!==!1&&up.layout.saveScroll(),s=l(t,n),f=[],i=0,a=s.length;a>i;i++)d=s[i],u=o(d.selector),r=p.find(d.selector).first(),f.push(h(u,r,d.pseudoClass,d.transition,n));return f},o=function(t){return u(".up-popup "+t)||u(".up-modal "+t)||u(t)||i(t)},i=function(t){var e;return e="Could not find selector %o in current body HTML","#"===e[0]&&(e+=" (avoid using IDs)"),v.error(e,t)},c=function(e){var n;return n=v.createElementFromHtml(e),{title:function(){var t;return null!=(t=n.querySelector("title"))?t.textContent:void 0},find:function(r){var o;return(o=n.querySelector(r))?t(o):v.error("Could not find selector %o in response %o",r,e)}}},r=function(t,n){return"function"==typeof n.insert&&n.insert(t),n.history&&(n.title&&(document.title=n.title),up.history[n.historyMethod](n.history)),n.source!==!1&&d(t,n.source),e(t),up.hello(t)},h=function(t,e,o,u,i){var a,s;return u||(u="none"),up.motion.finish(t),o?(s="before"===o?"prepend":"append",a=e.contents().wrap('<span class="up-insertion"></span>').parent(),t[s](a),v.copyAttributes(e,t),r(a.children(),i),up.layout.revealOrRestoreScroll(a,i).then(function(){return up.animate(a,u,i)}).then(function(){v.unwrapElement(a)})):n(t,{animation:function(){return e.insertBefore(t),r(e,i),t.is("body")&&"none"!==u&&v.error("Cannot apply transitions to body-elements (%o)",u),up.morph(t,e,u,i)}})},l=function(t,e){var n,r,o,u,i,a,s,l,c,p,f;for(p=e.transition||e.animation||"none",n=/\ *,\ */,r=t.split(n),v.isPresent(p)&&(f=p.split(n)),a=[],o=u=0,i=r.length;i>u;o=++u)s=r[o],l=s.match(/^(.+?)(?:\:(before|after))?$/),c=f[o]||v.last(f),a.push({selector:l[1],pseudoClass:l[2],transition:c});return a},e=function(t){var e,n;return n="[autofocus]:last",e=v.findWithSelf(t,n),e.length&&e.get(0)!==document.activeElement?e.focus():void 0},s=function(t){var e;return e=".up-ghost, .up-destroying",0===t.closest(e).length},u=function(e){var n,r,o,u,i,a;for(u=t(e).get(),r=void 0,i=0,a=u.length;a>i;i++)if(o=u[i],n=t(o),s(n)){r=n;break}return r},n=function(e,n){var r,o,u;return r=t(e),up.bus.nobodyPrevents("up:fragment:destroy",{$element:r})?(n=v.options(n,{animation:"none"}),o=up.motion.animateOptions(n),r.addClass("up-destroying"),v.isPresent(n.url)&&up.history.push(n.url),v.isPresent(n.title)&&(document.title=n.title),u=v.presence(n.animation,v.isDeferred)||up.motion.animate(r,n.animation,o),u.then(function(){return up.emit("up:fragment:destroyed",{$element:r}),r.remove()}),u):t.Deferred()},p=function(t,e){var n;return e=v.options(e,{cache:!1}),n=e.url||m(t),f(t,n,e)},up.on("ready",function(){return d(document.body,up.browser.url())}),{replace:f,reload:p,destroy:n,implant:a,first:u}}(jQuery),up.replace=up.flow.replace,up.reload=up.flow.reload,up.destroy=up.flow.destroy,up.first=up.flow.first}.call(this),function(){up.motion=function(t){var e,n,r,o,u,i,a,s,l,c,p,f,d,m,h,v,g,y,b,w,k,x,S;return x=up.util,u={},s={},k={},l={},a=x.config({duration:300,delay:0,easing:"ease"}),v=function(){return u=x.copy(s),k=x.copy(l),a.reset()},n=function(e,o,u){var a;return a=t(e),p(a),u=r(u),("none"===o||o===!1)&&m(),x.isFunction(o)?i(o(a,u),o):x.isString(o)?n(a,c(o),u):x.isHash(o)?x.cssAnimate(a,o,u):x.error("Unknown animation type %o",o)},r=function(t,e){var n;return null==e&&(e=null),t=x.options(t),n={},n.easing=x.option(t.easing,null!=e?e.attr("up-easing"):void 0,a.easing),n.duration=Number(x.option(t.duration,null!=e?e.attr("up-duration"):void 0,a.duration)),n.delay=Number(x.option(t.delay,null!=e?e.attr("up-delay"):void 0,a.delay)),n},c=function(t){return u[t]||x.error("Unknown animation %o",t)},e="up-ghosting-promise",S=function(t,n,r,o){var u,i,a,s,l,c,p;return s=void 0,i=void 0,l=void 0,a=void 0,u=up.layout.viewportOf(t),x.temporaryCss(n,{display:"none"},function(){return s=h(t,u),s.$ghost.addClass("up-destroying"),s.$bounds.addClass("up-destroying"),l=u.scrollTop()}),x.temporaryCss(t,{display:"none"},function(){return up.layout.revealOrRestoreScroll(n,r),i=h(n,u),a=u.scrollTop()}),s.moveTop(a-l),t.hide(),p=x.temporaryCss(n,{opacity:"0"}),c=o(s.$ghost,i.$ghost),t.data(e,c),n.data(e,c),c.then(function(){return t.removeData(e),n.removeData(e),p(),s.$bounds.remove(),i.$bounds.remove()}),c},p=function(e){return t(e).each(function(){var e;return e=t(this),x.finishCssAnimate(e),f(e)})},f=function(t){var n;return(n=t.data(e))?(x.debug("Canceling existing ghosting on %o",t),"function"==typeof n.resolve?n.resolve():void 0):void 0},i=function(t,e){return x.isDeferred(t)?t:x.error("Did not return a promise with .then and .resolve methods: %o",e)},d=function(e,o,a,s){var l,c,f,m,h,v,b;return x.debug("Morphing %o to %o (using %o)",e,o,a),c=t(e),l=t(o),h=x.only(s,"reveal","restoreScroll"),h=x.extend(h,r(s)),up.browser.canCssAnimation()?(p(c),p(l),"none"===a||a===!1||(f=u[a])?(m=y(c,l,h),m.then(function(){return n(l,f||"none",s)}),m):(b=x.presence(a,x.isFunction)||k[a])?S(c,l,h,function(t,e){var n;return n=b(t,e,h),i(n,a)}):x.isString(a)&&a.indexOf("/")>=0?(v=a.split("/"),b=function(t,e,r){return g(n(t,v[0],r),n(e,v[1],r))},d(c,l,b,h)):x.error("Unknown transition %o",a)):y(c,l,h)},y=function(t,e,n){return t.hide(),up.layout.revealOrRestoreScroll(e,n)},h=function(e,n){var r,o,u,i,a,s,l,c,p;for(i=x.measure(e,{relative:!0,inner:!0}),u=e.clone(),u.find("script").remove(),u.css({position:"static"===e.css("position")?"static":"relative",top:"",right:"",bottom:"",left:"",width:"100%",height:"100%"}),u.addClass("up-ghost"),r=t('<div class="up-bounds"></div>'),r.css({position:"absolute"}),r.css(i),p=i.top,c=function(t){return 0!==t?(p+=t,r.css({top:p})):void 0},u.appendTo(r),r.insertBefore(e),c(e.offset().top-u.offset().top),o=up.layout.fixedChildren(u),s=0,l=o.length;l>s;s++)a=o[s],x.fixedToAbsolute(a,n);return{$ghost:u,$bounds:r,moveTop:c}},w=function(t,e){return k[t]=e},o=function(t,e){return u[t]=e},b=function(){return s=x.copy(u),l=x.copy(k)},g=x.resolvableWhen,m=x.resolvedDeferred,o("none",m),o("fade-in",function(t,e){return t.css({opacity:0}),n(t,{opacity:1},e)}),o("fade-out",function(t,e){return t.css({opacity:1}),n(t,{opacity:0},e)}),o("move-to-top",function(t,e){var r,o;return r=x.measure(t),o=r.top+r.height,t.css({"margin-top":"0px"}),n(t,{"margin-top":"-"+o+"px"},e)}),o("move-from-top",function(t,e){var r,o;return r=x.measure(t),o=r.top+r.height,t.css({"margin-top":"-"+o+"px"}),n(t,{"margin-top":"0px"},e)}),o("move-to-bottom",function(t,e){var r,o;return r=x.measure(t),o=x.clientSize().height-r.top,t.css({"margin-top":"0px"}),n(t,{"margin-top":o+"px"},e)}),o("move-from-bottom",function(t,e){var r,o;return r=x.measure(t),o=x.clientSize().height-r.top,t.css({"margin-top":o+"px"}),n(t,{"margin-top":"0px"},e)}),o("move-to-left",function(t,e){var r,o;return r=x.measure(t),o=r.left+r.width,t.css({"margin-left":"0px"}),n(t,{"margin-left":"-"+o+"px"},e)}),o("move-from-left",function(t,e){var r,o;return r=x.measure(t),o=r.left+r.width,t.css({"margin-left":"-"+o+"px"}),n(t,{"margin-left":"0px"},e)}),o("move-to-right",function(t,e){var r,o;return r=x.measure(t),o=x.clientSize().width-r.left,t.css({"margin-left":"0px"}),n(t,{"margin-left":o+"px"},e)}),o("move-from-right",function(t,e){var r,o;return r=x.measure(t),o=x.clientSize().width-r.left,t.css({"margin-left":o+"px"}),n(t,{"margin-left":"0px"},e)}),o("roll-down",function(t,e){var r,o;return r=t.height(),o=x.temporaryCss(t,{height:"0px",overflow:"hidden"}),n(t,{height:r+"px"},e).then(o)}),w("none",m),w("move-left",function(t,e,r){return g(n(t,"move-to-left",r),n(e,"move-from-right",r))}),w("move-right",function(t,e,r){return g(n(t,"move-to-right",r),n(e,"move-from-left",r))}),w("move-up",function(t,e,r){return g(n(t,"move-to-top",r),n(e,"move-from-bottom",r))}),w("move-down",function(t,e,r){return g(n(t,"move-to-bottom",r),n(e,"move-from-top",r))}),w("cross-fade",function(t,e,r){return g(n(t,"fade-out",r),n(e,"fade-in",r))}),up.on("up:framework:boot",b),up.on("up:framework:reset",v),{morph:d,animate:n,animateOptions:r,finish:p,transition:w,animation:o,config:a,defaults:function(){return x.error("up.motion.defaults(...) no longer exists. Set values on he up.motion.config property instead.")},none:m,when:g,prependCopy:h}
2
- }(jQuery),up.transition=up.motion.transition,up.animation=up.motion.animation,up.morph=up.motion.morph,up.animate=up.motion.animate}.call(this),function(){up.proxy=function(t){var e,n,r,o,u,i,a,s,l,c,p,f,d,m,h,v,g,y,b,w,k,x,S,C,T,A,P,E,O;return O=up.util,e=void 0,C=void 0,i=void 0,x=void 0,a=void 0,m=O.config({busyDelay:300,preloadDelay:75,cacheSize:70,cacheExpiry:3e5}),l=function(t){return k(t),[t.url,t.method,t.data,t.selector].join("|")},s=O.cache({size:function(){return m.cacheSize},expiry:function(){return m.cacheExpiry},key:l,log:"up.proxy"}),h=s.get,P=s.set,T=s.remove,d=s.clear,p=function(){return clearTimeout(C),C=null},c=function(){return clearTimeout(i),i=null},A=function(){return e=null,p(),c(),x=0,m.reset(),a=!1,s.clear()},A(),o=s.alias,k=function(t){return t._normalized||(t.method=O.normalizeMethod(t.method),t.url&&(t.url=O.normalizeUrl(t.url)),t.selector||(t.selector="body"),t._normalized=!0),t},r=function(t){var e,n,r,o,u;return e=t.cache===!0,n=t.cache===!1,u=O.only(t,"url","method","data","selector","_normalized"),r=!0,g(u)||e?(o=h(u))&&!n?r="pending"===o.state():(o=y(u),P(u,o),o.fail(function(){return T(u)})):(d(),o=y(u)),r&&!t.preload&&(w(),o.always(b)),o},n=["GET","OPTIONS","HEAD"],v=function(){return 0===x},u=function(){return x>0},w=function(){var t,e;return e=v(),x+=1,e?(t=function(){return u()?(up.emit("up:proxy:busy"),a=!0):void 0},m.busyDelay>0?i=setTimeout(t,m.busyDelay):t()):void 0},b=function(){return x-=1,v()&&a?(up.emit("up:proxy:idle"),a=!1):void 0},y=function(t){var e;return O.debug("Loading URL %o",t.url),up.emit("up:proxy:load",t),e=O.ajax(t),e.always(function(){return up.emit("up:proxy:receive",t)}),e},g=function(t){return k(t),O.contains(n,t.method)},f=function(t){var n,r;return r=parseInt(O.presentAttr(t,"up-delay"))||m.preloadDelay,t.is(e)?void 0:(e=t,p(),n=function(){return S(t),e=null},E(n,r))},E=function(t,e){return C=setTimeout(t,e)},S=function(e,n){var r,o;return r=t(e),n=O.options(n),o=up.link.followMethod(r,n),g({method:o})?(O.debug("Preloading %o",r),n.preload=!0,up.follow(r,n)):(O.debug("Won't preload %o due to unsafe method %o",r,o),O.resolvedPromise())},up.on("mouseover mousedown touchstart","[up-preload]",function(t,e){return up.link.childClicked(t,e)?void 0:f(e)}),up.on("up:framework:reset",A),{preload:S,ajax:r,get:h,alias:o,clear:d,remove:T,idle:v,busy:u,config:m,defaults:function(){return O.error("up.proxy.defaults(...) no longer exists. Set values on he up.proxy.config property instead.")}}}(jQuery)}.call(this),function(){up.link=function($){var childClicked,follow,followMethod,makeFollowable,shouldProcessLinkEvent,u,visit;return u=up.util,visit=function(t,e){var n;return e=u.options(e),n=u.option(e.target,"body"),up.replace(n,t,e)},follow=function(t,e){var n,r,o;return n=$(t),e=u.options(e),o=u.option(n.attr("up-href"),n.attr("href")),r=u.option(e.target,n.attr("up-target"),"body"),e.transition=u.option(e.transition,u.castedAttr(n,"up-transition"),u.castedAttr(n,"up-animation")),e.history=u.option(e.history,u.castedAttr(n,"up-history")),e.reveal=u.option(e.reveal,u.castedAttr(n,"up-reveal"),!0),e.cache=u.option(e.cache,u.castedAttr(n,"up-cache")),e.restoreScroll=u.option(e.restoreScroll,u.castedAttr(n,"up-restore-scroll")),e.method=followMethod(n,e),e=u.merge(e,up.motion.animateOptions(e,n)),up.replace(r,o,e)},followMethod=function(t,e){var n;return n=$(t),e=u.options(e),u.option(e.method,n.attr("up-method"),n.attr("data-method"),"get").toUpperCase()},up.on("click","a[up-target], [up-href][up-target]",function(t,e){return shouldProcessLinkEvent(t,e)?e.is("[up-instant]")?t.preventDefault():(t.preventDefault(),follow(e)):void 0}),up.on("mousedown","a[up-instant], [up-href][up-instant]",function(t,e){return shouldProcessLinkEvent(t,e)?(t.preventDefault(),follow(e)):void 0}),childClicked=function(t,e){var n,r;return n=$(t.target),r=n.closest("a, [up-href]"),r.length&&e.find(r).length},shouldProcessLinkEvent=function(t,e){return u.isUnmodifiedMouseEvent(t)&&!childClicked(t,e)},makeFollowable=function(t){var e;return e=$(t),u.isMissing(e.attr("up-target"))&&u.isMissing(e.attr("up-follow"))?e.attr("up-follow",""):void 0},up.on("click","a[up-follow], [up-href][up-follow]",function(t,e){return shouldProcessLinkEvent(t,e)?e.is("[up-instant]")?t.preventDefault():(t.preventDefault(),follow(e)):void 0}),up.compiler("[up-expand]",function(t){var e,n,r,o,i,a,s,l;for(o=t.find("a, [up-href]").get(0),o||u.error("No link to expand within %o",t),l=/^up-/,a={},a["up-href"]=$(o).attr("href"),s=o.attributes,n=0,r=s.length;r>n;n++)e=s[n],i=e.name,i.match(l)&&(a[i]=e.value);return u.setMissingAttrs(t,a),t.removeAttr("up-expand"),makeFollowable(t)}),up.compiler("[up-dash]",function(t){var e,n;return n=u.castedAttr(t,"up-dash"),e={"up-preload":"true","up-instant":"true"},n===!0?e["up-follow"]="":e["up-target"]=n,u.setMissingAttrs(t,e),t.removeAttr("up-dash")}),{knife:eval("undefined"!=typeof Knife&&null!==Knife?Knife.point:void 0),visit:visit,follow:follow,makeFollowable:makeFollowable,childClicked:childClicked,followMethod:followMethod}}(jQuery),up.visit=up.link.visit,up.follow=up.link.follow}.call(this),function(){up.form=function($){var observe,submit,u;return u=up.util,submit=function(t,e){var n,r,o,i,a,s,l,c,p,f,d,m;return n=$(t).closest("form"),e=u.options(e),c=u.option(e.target,n.attr("up-target"),"body"),r=u.option(e.failTarget,n.attr("up-fail-target"),function(){return u.createSelectorFromElement(n)}),i=u.option(e.history,u.castedAttr(n,"up-history"),!0),p=u.option(e.transition,u.castedAttr(n,"up-transition")),o=u.option(e.failTransition,u.castedAttr(n,"up-fail-transition"),p),a=u.option(e.method,n.attr("up-method"),n.attr("data-method"),n.attr("method"),"post").toUpperCase(),s={},s.reveal=u.option(e.reveal,u.castedAttr(n,"up-reveal"),!0),s.cache=u.option(e.cache,u.castedAttr(n,"up-cache")),s.restoreScroll=u.option(e.restoreScroll,u.castedAttr(n,"up-restore-scroll")),s=u.extend(s,up.motion.animateOptions(e,n)),m=u.option(e.cache,u.castedAttr(n,"up-cache")),d=u.option(e.url,n.attr("action"),up.browser.url()),n.addClass("up-active"),up.browser.canPushState()||i===!1?(l={url:d,method:a,data:n.serialize(),selector:c,cache:m},f=function(t){var e;return d=void 0,u.isGiven(i)&&(i===!1||u.isString(i)?d=i:(e=u.locationFromXhr(t))?d=e:"GET"===l.type&&(d=l.url+"?"+l.data)),u.option(d,!1)},up.proxy.ajax(l).always(function(){return n.removeClass("up-active")}).done(function(t,e,n){var r;return r=u.merge(s,{history:f(n),transition:p}),up.flow.implant(c,t,r)}).fail(function(t){var e,n;return n=t.responseText,e=u.merge(s,{transition:o}),up.flow.implant(r,n,e)})):void n.get(0).submit()},observe=function(fieldOrSelector,options){var $field,callback,callbackPromise,callbackTimer,changeEvents,check,clearTimer,codeOnChange,delay,knownValue,nextCallback,runNextCallback;return $field=$(fieldOrSelector),options=u.options(options),delay=u.option($field.attr("up-delay"),options.delay,0),delay=parseInt(delay),knownValue=null,callback=null,callbackTimer=null,(codeOnChange=$field.attr("up-observe"))?callback=function(value,$field){return eval(codeOnChange)}:options.change?callback=options.change:u.error("up.observe: No change callback given"),callbackPromise=u.resolvedPromise(),nextCallback=null,runNextCallback=function(){var t;return nextCallback?(t=nextCallback(),nextCallback=null,t):void 0},check=function(){var t,e;return e=$field.val(),t=u.isNull(knownValue),knownValue===e||(knownValue=e,t)?void 0:(clearTimer(),nextCallback=function(){return callback.apply($field.get(0),[e,$field])},callbackTimer=setTimeout(function(){return callbackPromise.then(function(){var t;return t=runNextCallback(),callbackPromise=u.isPromise(t)?t:u.resolvedPromise()})},delay))},clearTimer=function(){return clearTimeout(callbackTimer)},changeEvents=up.browser.canInputEvent()?"input change":"input change keypress paste cut click propertychange",$field.on(changeEvents,check),check(),clearTimer},up.on("submit","form[up-target]",function(t,e){return t.preventDefault(),submit(e)}),up.compiler("[up-observe]",function(t){return observe(t)}),{submit:submit,observe:observe}}(jQuery),up.submit=up.form.submit,up.observe=up.form.observe}.call(this),function(){up.popup=function(t){var e,n,r,o,u,i,a,s,l,c,p,f,d,m,h;return m=up.util,s=void 0,i=function(){var e;return e=t(".up-popup"),e.attr("up-covered-url")},o=m.config({openAnimation:"fade-in",closeAnimation:"fade-out",position:"bottom-right"}),f=function(){return r(),o.reset()},d=function(t,e,n){var r,o;return o=m.measure(t,{full:!0}),r=function(){switch(n){case"bottom-right":return{right:o.right,top:o.top+o.height};case"bottom-left":return{left:o.left,top:o.bottom+o.height};case"top-right":return{right:o.right,bottom:o.top};case"top-left":return{left:o.left,bottom:o.top};default:return m.error("Unknown position %o",n)}}(),e.attr("up-position",n),e.css(r),c(e)},c=function(t){var e,n,r,o,u,i,a;if(n=m.measure(t,{full:!0}),r=null,o=null,n.right<0&&(r=-n.right),n.bottom<0&&(o=-n.bottom),n.left<0&&(r=n.left),n.top<0&&(o=n.top),r&&((u=parseInt(t.css("left")))?t.css("left",u-r):(i=parseInt(t.css("right")))&&t.css("right",i+r)),o){if(a=parseInt(t.css("top")))return t.css("top",a-o);if(e=parseInt(t.css("bottom")))return t.css("bottom",e+o)}},p=function(){var e;return e=t(".up-popup"),e.attr("up-covered-url",up.browser.url()),e.attr("up-covered-title",document.title)},l=function(){var e;return e=t(".up-popup"),e.removeAttr("up-covered-url"),e.removeAttr("up-covered-title")},a=function(t,e,n){var r,o;return o=m.$createElementFromSelector(".up-popup"),n&&o.attr("up-sticky",""),r=m.$createElementFromSelector(e),r.appendTo(o),o.appendTo(document.body),p(),o.hide(),o},h=function(t,e,n,r,o){return e.show(),d(t,e,n),up.animate(e,r,o)},e=function(e,n){var u,i,s,l,c,p,f,d,v;return u=t(e),n=m.options(n),v=m.option(n.url,u.attr("href")),f=m.option(n.target,u.attr("up-popup"),"body"),p=m.option(n.position,u.attr("up-position"),o.position),l=m.option(n.animation,u.attr("up-animation"),o.openAnimation),d=m.option(n.sticky,m.castedAttr(u,"up-sticky")),c=up.browser.canPushState()?m.option(n.history,m.castedAttr(u,"up-history"),!1):!1,s=up.motion.animateOptions(n,u),r(),i=a(u,f,d),up.replace(f,v,{history:c,insert:function(){return h(u,i,p,l,s)}})},r=function(e){var n;return n=t(".up-popup"),n.length?(e=m.options(e,{animation:o.closeAnimation,url:n.attr("up-covered-url"),title:n.attr("up-covered-title")}),s=void 0,up.destroy(n,e)):m.resolvedPromise()},n=function(){return t(".up-popup").is("[up-sticky]")?void 0:(l(),r())},u=function(e){var n;return n=t(e),n.closest(".up-popup").length>0},up.on("click","a[up-popup]",function(t,n){return t.preventDefault(),n.is(".up-current")?r():e(n)}),up.on("click","body",function(e){var n;return n=t(e.target),n.closest(".up-popup").length||n.closest("[up-popup]").length?void 0:r()}),up.on("up:fragment:inserted",function(t,e){var r;return u(e)?(r=e.attr("up-source"))?s=r:void 0:n()}),up.bus.onEscape(function(){return r()}),up.on("click","[up-close]",function(t,e){return e.closest(".up-popup").length?(r(),t.preventDefault()):void 0}),up.on("up:framework:reset",f),{attach:e,close:r,url:function(){return s},coveredUrl:i,config:o,defaults:function(){return m.error("up.popup.defaults(...) no longer exists. Set values on he up.popup.config property instead.")},contains:u,open:function(){return up.error("up.popup.open no longer exists. Please use up.popup.attach instead.")},source:function(){return up.error("up.popup.source no longer exists. Please use up.popup.url instead.")}}}(jQuery)}.call(this),function(){up.modal=function(t){var e,n,r,o,u,i,a,s,l,c,p,f,d,m,h,v,g,y;return h=up.util,r=h.config({maxWidth:null,minWidth:null,width:null,height:null,openAnimation:"fade-in",closeAnimation:"fade-out",closeLabel:"\xd7",template:function(t){return'<div class="up-modal">\n <div class="up-modal-dialog">\n <div class="up-modal-close" up-close>'+t.closeLabel+'</div>\n <div class="up-modal-content"></div>\n </div>\n</div>'}}),a=void 0,u=function(){var e;return e=t(".up-modal"),e.attr("up-covered-url")},f=function(){return n(),a=void 0,r.reset()},m=function(){var t;return t=r.template,h.isFunction(t)?t(r):t},p=function(){var e;return e=t(".up-modal"),e.attr("up-covered-url",up.browser.url()),e.attr("up-covered-title",document.title)},s=function(){var e;return e=t(".up-modal"),e.removeAttr("up-covered-url"),e.removeAttr("up-covered-title")},i=function(e){var n,r,o,u;return o=t(m()),e.sticky&&o.attr("up-sticky",""),o.attr("up-covered-url",up.browser.url()),o.attr("up-covered-title",document.title),r=o.find(".up-modal-dialog"),h.isPresent(e.width)&&r.css("width",e.width),h.isPresent(e.maxWidth)&&r.css("max-width",e.maxWidth),h.isPresent(e.height)&&r.css("height",e.height),n=o.find(".up-modal-content"),u=h.$createElementFromSelector(e.selector),u.appendTo(n),o.appendTo(document.body),p(),o.hide(),o},v=[],d=function(){var e,n,r,o;return r=h.scrollbarWidth(),e=parseInt(t("body").css("padding-right")),n=r+e,o=h.temporaryCss(t("body"),{"padding-right":n+"px","overflow-y":"hidden"}),v.push(o),up.layout.anchoredRight().each(function(){var e,n,o,u;return e=t(this),n=parseInt(e.css("right")),o=r+n,u=h.temporaryCss(e,{right:o}),v.push(u)})},g=function(t,e,n){var r;return d(),t.show(),r=up.animate(t,e,n),r.then(function(){return up.emit("up:modal:opened")})},l=function(e,n){return n=h.options(n),n.$link=t(e),c(n)},y=function(t,e){return e=h.options(e),e.url=t,c(e)},c=function(e){var o,u,a,s,l,c,p,f,d,m,v;return e=h.options(e),o=h.option(e.$link,h.nullJquery()),m=h.option(e.url,o.attr("up-href"),o.attr("href")),f=h.option(e.target,o.attr("up-modal"),"body"),v=h.option(e.width,o.attr("up-width"),r.width),p=h.option(e.maxWidth,o.attr("up-max-width"),r.maxWidth),l=h.option(e.height,o.attr("up-height"),r.height),s=h.option(e.animation,o.attr("up-animation"),r.openAnimation),d=h.option(e.sticky,h.castedAttr(o,"up-sticky")),c=up.browser.canPushState()?h.option(e.history,h.castedAttr(o,"up-history"),!0):!1,a=up.motion.animateOptions(e,o),n(),up.bus.nobodyPrevents("up:modal:open",{url:m})?(u=i({selector:f,width:v,maxWidth:p,height:l,sticky:d}),up.replace(f,m,{history:c,insert:function(){return g(u,s,a)}})):t.Deferred()},n=function(e){var n,o;return n=t(".up-modal"),n.length?up.bus.nobodyPrevents("up:modal:close",{$element:n})?(e=h.options(e,{animation:r.closeAnimation,url:n.attr("up-covered-url"),title:n.attr("up-covered-title")}),a=void 0,o=up.destroy(n,e),o.then(function(){for(var t;t=v.pop();)t();return up.emit("up:modal:closed")}),o):t.Deferred():h.resolvedDeferred()},e=function(){return t(".up-modal").is("[up-sticky]")?void 0:(s(),n())},o=function(e){var n;return n=t(e),n.closest(".up-modal").length>0},up.on("click","a[up-modal]",function(t,e){return t.preventDefault(),e.is(".up-current")?n():l(e)}),up.on("click","body",function(e){var r;return r=t(e.target),r.closest(".up-modal-dialog").length||r.closest("[up-modal]").length?void 0:n()}),up.on("up:fragment:inserted",function(t,n){var r;if(o(n)){if(r=n.attr("up-source"))return a=r}else if(!up.popup.contains(n))return e()}),up.bus.onEscape(function(){return n()}),up.on("click","[up-close]",function(t,e){return e.closest(".up-modal").length?(n(),t.preventDefault()):void 0}),up.on("up:framework:reset",f),{visit:y,follow:l,open:function(){return up.error("up.modal.open no longer exists. Please use either up.modal.follow or up.modal.visit.")},close:n,url:function(){return a},coveredUrl:u,config:r,defaults:function(){return h.error("up.modal.defaults(...) no longer exists. Set values on he up.modal.config property instead.")},contains:o,source:function(){return up.error("up.popup.source no longer exists. Please use up.popup.url instead.")}}}(jQuery)}.call(this),function(){up.tooltip=function(t){var e,n,r,o,u,i,a;return a=up.util,r=a.config({position:"top",openAnimation:"fade-in",closeAnimation:"fade-out"}),u=function(){return r.reset()},i=function(t,e,n){var r,o,u;return o=a.measure(t),u=a.measure(e),r=function(){switch(n){case"top":return{left:o.left+.5*(o.width-u.width),top:o.top-u.height};case"bottom":return{left:o.left+.5*(o.width-u.width),top:o.top+o.height};default:return a.error("Unknown position %o",n)}}(),e.attr("up-position",n),e.css(r)},o=function(t){var e;return e=a.$createElementFromSelector(".up-tooltip"),a.isGiven(t.text)?e.text(t.text):e.html(t.html),e.appendTo(document.body),e},e=function(e,u){var s,l,c,p,f,d,m;return null==u&&(u={}),s=t(e),f=a.option(u.html,s.attr("up-tooltip-html")),m=a.option(u.text,s.attr("up-tooltip")),d=a.option(u.position,s.attr("up-position"),r.position),p=a.option(u.animation,a.castedAttr(s,"up-animation"),r.openAnimation),c=up.motion.animateOptions(u,s),n(),l=o({text:m,html:f}),i(s,l,d),up.animate(l,p,c)},n=function(e){var n;return n=t(".up-tooltip"),n.length?(e=a.options(e,{animation:r.closeAnimation}),e=a.merge(e,up.motion.animateOptions(e)),up.destroy(n,e)):void 0},up.compiler("[up-tooltip], [up-tooltip-html]",function(t){return t.on("mouseover",function(){return e(t)}),t.on("mouseout",function(){return n()})}),up.on("click","body",function(){return n()}),up.on("up:framework:reset",n),up.bus.onEscape(function(){return n()}),up.on("up:framework:reset",u),{attach:e,close:n,open:function(){return a.error("up.tooltip.open no longer exists. Use up.tooltip.attach instead.")}}}(jQuery)}.call(this),function(){up.navigation=function(t){var e,n,r,o,u,i,a,s,l,c,p,f,d,m,h,v,g;return h=up.util,i=h.config({currentClasses:["up-current"]}),p=function(){return i.reset()},a=function(){var t;return t=i.currentClasses,t=t.concat(["up-current"]),t=h.uniq(t),t.join(" ")},e="up-active",n=["a","[up-href]","[up-alias]"],o=n.join(", "),u=function(){var t,e,r;for(r=[],t=0,e=n.length;e>t;t++)m=n[t],r.push(m+"[up-instant]");return r}().join(", "),r="."+e,c=function(t){return h.isPresent(t)?h.normalizeUrl(t,{search:!1,stripTrailingSlash:!0}):void 0},d=function(t){var e,n,r,o,u,i,a,s,l,p;for(s=[],i=["href","up-href","up-alias"],n=0,o=i.length;o>n;n++)if(e=i[n],l=h.presentAttr(t,e))for(p="up-alias"===e?l.split(" "):[l],r=0,u=p.length;u>r;r++)a=p[r],"#"!==a&&(a=c(a),s.push(a));return s},g=function(t){var e,n,r,o;return t=h.compact(t),r=function(t){return"*"===t.substr(-1)?n(t.slice(0,-1)):e(t)},e=function(e){return h.contains(t,e)},n=function(e){return h.detect(t,function(t){return 0===t.indexOf(e)})},o=function(t){return h.detect(t,r)},{matchesAny:o}},l=function(){var e,n;return e=g([c(up.browser.url()),c(up.modal.url()),c(up.modal.coveredUrl()),c(up.popup.url()),c(up.popup.coveredUrl())]),n=a(),h.each(t(o),function(r){var o,u;return o=t(r),u=d(o),e.matchesAny(u)?o.addClass(n):o.hasClass(n)&&0===o.closest(".up-destroying").length?o.removeClass(n):void 0})},f=function(t){return v(),t=s(t),t.addClass(e)},s=function(t){return h.presence(t.parents(o))||t},v=function(){return t(r).removeClass(e)},up.on("click",o,function(t,e){return h.isUnmodifiedMouseEvent(t)&&!e.is("[up-instant]")?f(e):void 0}),up.on("mousedown",u,function(t,e){return h.isUnmodifiedMouseEvent(t)?f(e):void 0}),up.on("up:fragment:inserted",function(){return v(),l()}),up.on("up:fragment:destroyed",function(t,e){return e.is(".up-modal, .up-popup")?l():void 0}),up.on("up:framework:reset",p),{config:i,defaults:function(){return h.error("up.navigation.defaults(...) no longer exists. Set values on he up.navigation.config property instead.")}}}(jQuery)}.call(this),function(){up.browser.isSupported()&&(up.emit("up:framework:boot"),up.emit("up:framework:booted"))}.call(this),function(){}.call(this);
1
+ (function(){window.up={}}).call(this),function(){var t=[].slice;up.util=function(e){var n,r,o,u,i,a,s,l,c,p,f,d,m,h,v,g,y,b,w,k,x,S,C,T,A,P,E,O,$,D,U,j,R,z,M,L,W,F,I,_,Q,K,N,H,q,B,J,G,X,V,Y,Z,te,ee,ne,re,oe,ue,ie,ae,se,le,ce,pe,fe,de,me,he,ve,ge,ye,be,we,ke,xe,Se,Ce,Te,Ae,Pe,Ee,Oe,$e,De,Ue,je,Re,ze,Me;return oe=function(e){var n,r;return n=void 0,r=!1,function(){var o;return o=1<=arguments.length?t.call(arguments,0):[],r?n:(r=!0,n=e.apply(null,o))}},u=function(t){return t=d(t),t.selector&&(t.headers={"X-Up-Selector":t.selector}),e.ajax(t)},G=function(t,e){return(""===e||"80"===e)&&"http:"===t||"443"===e&&"https:"===t},ce=function(t,e){var n,r,o;return n=ge(t),r=n.protocol+"//"+n.hostname,G(n.protocol,n.port)||(r+=":"+n.port),o=n.pathname,"/"!==o[0]&&(o="/"+o),(null!=e?e.stripTrailingSlash:void 0)===!0&&(o=o.replace(/\/$/,"")),r+=o,(null!=e?e.hash:void 0)===!0&&(r+=n.hash),(null!=e?e.search:void 0)!==!1&&(r+=n.search),r},ge=function(t){var n;return n=null,X(t)?(n=e("<a>").attr({href:t}).get(0),z(n.hostname)&&(n.href=n.href)):n=Ue(t),n},le=function(t){return t?t.toUpperCase():"GET"},n=function(t){var n,r,o,u,i,a,s,l,c,p,f,d,m,h,v,g;for(v=t.split(/[ >]/),o=null,p=f=0,m=v.length;m>f;p=++f){for(a=v[p],i=a.match(/(^|\.|\#)[A-Za-z0-9\-_]+/g),g="div",u=[],c=null,d=0,h=i.length;h>d;d++)switch(s=i[d],s[0]){case".":u.push(s.substr(1));break;case"#":c=s.substr(1);break;default:g=s}l="<"+g,u.length&&(l+=' class="'+u.join(" ")+'"'),c&&(l+=' id="'+c+'"'),l+=">",n=e(l),r&&n.appendTo(r),0===p&&(o=n),r=n}return o},h=function(t,e){var n;return n=document.createElement(t),B(e)&&(n.innerHTML=e),n},b=function(){var e,n,r;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],n="[UP] "+n,(r=up.browser).puts.apply(r,["debug",n].concat(t.call(e)))},Me=function(){var e,n,r;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],n="[UP] "+n,(r=up.browser).puts.apply(r,["warn",n].concat(t.call(e)))},C=function(){var n,r,o,u;throw r=1<=arguments.length?t.call(arguments,0):[],r[0]="[UP] "+r[0],(u=up.browser).puts.apply(u,["error"].concat(t.call(r))),o=A.apply(null,r),n=ye(e(".up-error"))||e('<div class="up-error"></div>').prependTo("body"),n.addClass("up-error"),n.text(o),new Error(o)},o=/\%[odisf]/g,A=function(){var e,n,r,u;return e=1<=arguments.length?t.call(arguments,0):[],u=e[0],n=0,r=80,u.replace(o,function(){var t,o;return n+=1,t=e[n],o=typeof t,"string"===o?(t=t.replace(/\s+/g," "),t.length>r&&(t=t.substr(0,r)+"\u2026"),t='"'+t+'"'):t="undefined"===o?"undefined":"number"===o||"function"===o?t.toString():JSON.stringify(t),t.length>r&&(t=t.substr(0,r)+" \u2026",("object"===o||"function"===o)&&(t+=" }")),t})},g=function(t){var e,n,r,o,u,i,a;for(b("Creating selector from element %o",t),n=(e=t.attr("class"))?e.split(" "):[],r=t.attr("id"),a=t.prop("tagName").toLowerCase(),r&&(a+="#"+r),o=0,i=n.length;i>o;o++)u=n[o],a+="."+u;return a},v=function(t){var e,n,r,o,u,i,a,s,l,c,p,f;return l=function(t){return"<"+t+"(?: [^>]*)?>"},i=function(t){return"</"+t+">"},e="(?:.|\\n)*?",u=function(t){return"("+t+")"},f=new RegExp(l("head")+e+l("title")+u(e)+i("title")+e+i("body"),"i"),o=new RegExp(l("body")+u(e)+i("body"),"i"),(r=t.match(o))?(s=document.createElement("html"),n=h("body",r[1]),s.appendChild(n),(p=t.match(f))&&(a=h("head"),s.appendChild(a),c=h("title",p[1]),a.appendChild(c)),s):h("div",t)},P=e.extend,De=e.trim,k=function(t,e){var n,r,o,u,i;for(i=[],n=o=0,u=t.length;u>o;n=++o)r=t[n],i.push(e(r,n));return i},ne=k,U=function(t){return t},Oe=function(t,e){var n,r,o,u;for(u=[],n=r=0,o=t-1;o>=0?o>=r:r>=o;n=o>=0?++r:--r)u.push(e(n));return u},N=function(t){return null===t},V=function(t){return void 0===t},L=function(t){return!V(t)},K=function(t){return V(t)||N(t)},I=function(t){return!K(t)},z=function(t){return K(t)||q(t)&&0===Object.keys(t).length||0===t.length},ye=function(t,e){return null==e&&(e=B),e(t)?t:null},B=function(t){return!z(t)},F=function(t){return"function"==typeof t},X=function(t){return"string"==typeof t},H=function(t){return"number"==typeof t},_=function(t){return"object"==typeof t&&!!t},q=function(t){return _(t)||"function"==typeof t},W=function(t){return!(!t||1!==t.nodeType)},Q=function(t){return t instanceof jQuery},J=function(t){return q(t)&&F(t.then)},M=function(t){return J(t)&&F(t.resolve)},j=function(t){return I(t)?t:void 0},R=Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)},$e=function(t){return Array.prototype.slice.call(t)},d=function(t){return R(t)?t.slice():P({},t)},Ue=function(t){return Q(t)?t.get(0):t},ue=function(t,e){return P(d(t),e)},ve=function(t,e){var n,r,o,u;if(o=t?d(t):{},e)for(r in e)n=e[r],u=o[r],I(u)?q(n)&&q(u)&&(o[r]=ve(u,n)):o[r]=n;return o},he=function(){var e,n,r,o,u,i;for(n=1<=arguments.length?t.call(arguments,0):[],u=void 0,r=0,o=n.length;o>r;r++)if(e=n[r],i=e,F(i)&&(i=i()),I(i)){u=i;break}return u},w=function(t,e){var n,r,o,u;for(u=void 0,r=0,o=t.length;o>r;r++)if(n=t[r],e(n)){u=n;break}return u},i=function(t,e){var n;return n=w(t,e),L(n)},c=function(t){return Te(t,I)},je=function(t){var e;return e={},Te(t,function(t){return e.hasOwnProperty(t)?!1:e[t]=!0})},Te=function(t,e){var n;return n=[],k(t,function(t){return e(t)?n.push(t):void 0}),n},be=function(){var e,n,r,o;return e=arguments[0],r=2<=arguments.length?t.call(arguments,1):[],o=function(){var t,o,u;for(u=[],t=0,o=r.length;o>t;t++)n=r[t],u.push(e.attr(n));return u}(),w(o,B)},se=function(t){return setTimeout(t,0)},te=function(t){return t[t.length-1]},l=function(){var t;return t=document.documentElement,{width:t.clientWidth,height:t.clientHeight}},Ce=oe(function(){var t,n,r;return t=e("<div>").css({position:"absolute",top:"0",left:"0",width:"50px",height:"50px",overflowY:"scroll"}),t.appendTo(document.body),n=t.get(0),r=n.offsetWidth-n.clientWidth,t.remove(),r}),de=function(t){var e;return e=void 0,function(){return null!=t&&(e=t()),t=void 0,e}},Ee=function(t,e,n){var r,o;return o=t.css(Object.keys(e)),t.css(e),r=function(){return t.css(o)},n?(n(),r()):de(r)},D=function(t){var e,n;return n=t.css(["transform","-webkit-transform"]),z(n)||"none"===n.transform?(e=function(){return t.css(n)},t.css({transform:"translateZ(0)","-webkit-transform":"translateZ(0)"})):e=function(){},e},y=function(t,n,o){var u,i,a,s,l,c;return u=e(t),up.browser.canCssAnimation()?(o=ve(o,{duration:300,delay:0,easing:"ease"}),i=e.Deferred(),s={"transition-property":Object.keys(n).join(", "),"transition-duration":o.duration+"ms","transition-delay":o.delay+"ms","transition-timing-function":o.easing},l=D(u),c=Ee(u,s),u.css(n),i.then(l),i.then(c),u.data(r,i),i.then(function(){return u.removeData(r)}),a=setTimeout(function(){return i.resolve()},o.duration+o.delay),i.then(function(){return clearTimeout(a)}),i):(u.css(n),xe())},r="up-animation-promise",O=function(t){return e(t).each(function(){var t;return(t=e(this).data(r))?t.resolve():void 0})},re=function(t,n){var r,o,u,i,a,s;return n=ve(n,{relative:!1,inner:!1,full:!1}),n.relative?n.relative===!0?i=t.position():(r=e(n.relative),a=t.offset(),r.is(document)?i=a:(u=r.offset(),i={left:a.left-u.left,top:a.top-u.top})):i=t.offset(),o={left:i.left,top:i.top},n.inner?(o.width=t.width(),o.height=t.height()):(o.width=t.outerWidth(),o.height=t.outerHeight()),n.full&&(s=l(),o.right=s.width-(o.left+o.width),o.bottom=s.height-(o.top+o.height)),o},m=function(t,e){var n,r,o,u,i;for(u=t.get(0).attributes,i=[],r=0,o=u.length;o>r;r++)n=u[r],i.push(n.specified?e.attr(n.name,n.value):void 0);return i},E=function(t,e){return t.find(e).addBack(e)},T=function(t){return 27===t.keyCode},Pe=function(t,e){return 0===t.indexOf(e)},S=function(t,e){return t.indexOf(e)===t.length-e.length},f=function(t,e){return t.indexOf(e)>=0},s=function(t,e){var n;switch(n=t.attr(e)){case"false":return!1;case"true":return!0;case"":return!0;default:return n}},ee=function(t){return t.getResponseHeader("X-Up-Location")},ie=function(t){return t.getResponseHeader("X-Up-Method")},me=function(){var e,n,r,o,u,i;for(i=arguments[0],o=2<=arguments.length?t.call(arguments,1):[],e={},n=0,u=o.length;u>n;n++)r=o[n],i.hasOwnProperty(r)&&(e[r]=i[r]);return e},Y=function(t){return!(t.metaKey||t.shiftKey||t.ctrlKey)},Z=function(t){var e;return e=V(t.button)||0===t.button,e&&Y(t)},xe=function(){var t;return t=e.Deferred(),t.resolve(),t},Se=function(){return xe().promise()},Re=function(){return e.Deferred().promise()},pe=function(){return{is:function(){return!1},attr:function(){},find:function(){return[]}}},ke=function(){var n,r;return n=1<=arguments.length?t.call(arguments,0):[],r=e.when.apply(e,n),r.resolve=function(){return k(n,function(t){return"function"==typeof t.resolve?t.resolve():void 0})},r},Ae=function(t,e){var n,r,o;r=[];for(n in e)o=e[n],r.push(K(t.attr(n))?t.attr(n,o):void 0);return r},we=function(t,e){var n;return n=t.indexOf(e),n>=0?(t.splice(n,1),e):void 0},x=function(){return e([])},ae=function(t){var n,r,o,u,a,s,l;for(a={},l=[],r=[],o=0,u=t.length;u>o;o++)s=t[o],X(s)?l.push(s):r.push(s);return a.parsed=r,l.length&&(n=l.join(", "),a.parsed.push(n)),a.select=function(){return a.find(void 0)},a.find=function(t){var n,r,o,u,i,s;for(r=x(),i=a.parsed,o=0,u=i.length;u>o;o++)s=i[o],n=t?t.find(s):e(s),r=r.add(n);return r},a.findWithSelf=function(t){var e;return e=a.find(t),a.doesMatch(t)&&(e=e.add(t)),e},a.doesMatch=function(t){var n;return n=e(t),i(a.parsed,function(t){return n.is(t)})},a.seekUp=function(t){var n,r,o;for(o=e(t),n=o,r=void 0;n.length;){if(a.doesMatch(n)){r=n;break}n=n.parent()}return r||x()},a},a=function(e){var n,r,o,u,i,a,s,l,c,p,f,m;return null==e&&(e={}),f=void 0,r=function(){return f={}},r(),s=function(){var n;return n=1<=arguments.length?t.call(arguments,0):[],e.log?(n[0]="["+e.log+"] "+n[0],b.apply(null,n)):void 0},a=function(){return Object.keys(f)},l=function(){return K(e.size)?void 0:F(e.size)?e.size():H(e.size)?e.size:C("Invalid size config: %o",e.size)},o=function(){return K(e.expiry)?void 0:F(e.expiry)?e.expiry():H(e.expiry)?e.expiry:C("Invalid expiry config: %o",e.expiry)},c=function(t){return e.key?e.key(t):t.toString()},De=function(){var t,e,n,r;return r=d(a()),n=l(),n&&r.length>n&&(t=null,e=null,k(r,function(n){var r,o;return r=f[n],o=r.timestamp,!e||e>o?(t=n,e=o):void 0}),t)?delete f[t]:void 0},n=function(t,e){var n;return n=u(t),L(n)?p(e,n):void 0},m=function(){return(new Date).valueOf()},p=function(t,e){var n;return n=c(t),f[n]={timestamp:m(),value:e}},we=function(t){var e;return e=c(t),delete f[e]},i=function(t){var e,n;return e=o(),e?(n=m()-t.timestamp,n<o()):!0},u=function(t,e){var n,r;return null==e&&(e=void 0),r=c(t),(n=f[r])?i(n)?(s("Cache hit for %o",t),n.value):(s("Discarding stale cache entry for %o",t),we(t),e):(s("Cache miss for %o",t),e)},{alias:n,get:u,set:p,remove:we,clear:r,keys:a}},p=function(t){var e;return null==t&&(t={}),e={},e.reset=function(){return P(e,t)},e.reset(),Object.preventExtensions(e),e},ze=function(t){var e,n;return t=Ue(t),e=t.parentNode,n=$e(t.childNodes),k(n,function(n){return e.insertBefore(n,t)}),e.removeChild(t)},fe=function(t){var e,n;for(e=void 0;(t=t.parent())&&t.length;)if(n=t.css("position"),"absolute"===n||"relative"===n||t.is("body")){e=t;break}return e},$=function(t,n){var r,o,u,i;return r=e(t),o=fe(r),u=r.position(),i=o.offset(),r.css({position:"absolute",left:u.left-i.left,top:u.top-i.top+n.scrollTop(),right:"",bottom:""})},{offsetParent:fe,fixedToAbsolute:$,presentAttr:be,createElement:h,parseUrl:ge,normalizeUrl:ce,normalizeMethod:le,createElementFromHtml:v,$createElementFromSelector:n,createSelectorFromElement:g,ajax:u,extend:P,copy:d,merge:ue,options:ve,option:he,error:C,debug:b,warn:Me,each:k,map:ne,identity:U,times:Oe,any:i,detect:w,select:Te,compact:c,uniq:je,last:te,isNull:N,isDefined:L,isUndefined:V,isGiven:I,isMissing:K,isPresent:B,isBlank:z,presence:ye,isObject:q,isFunction:F,isString:X,isElement:W,isJQuery:Q,isPromise:J,isDeferred:M,isHash:_,ifGiven:j,isUnmodifiedKeyEvent:Y,isUnmodifiedMouseEvent:Z,nullJquery:pe,unJquery:Ue,nextFrame:se,measure:re,temporaryCss:Ee,cssAnimate:y,finishCssAnimate:O,forceCompositing:D,escapePressed:T,copyAttributes:m,findWithSelf:E,contains:f,startsWith:Pe,endsWith:S,isArray:R,toArray:$e,castedAttr:s,locationFromXhr:ee,methodFromXhr:ie,clientSize:l,only:me,trim:De,unresolvablePromise:Re,resolvedPromise:Se,resolvedDeferred:xe,resolvableWhen:ke,setMissingAttrs:Ae,remove:we,memoize:oe,scrollbarWidth:Ce,config:p,cache:a,unwrapElement:ze,multiSelector:ae,emptyJQuery:x,evalConsoleTemplate:A}}($),up.error=up.util.error,up.warn=up.util.warn,up.debug=up.util.debug}.call(this),function(){var t=[].slice;up.browser=function(e){var n,r,o,u,i,a,s,l,c,p,f,d,m,h;return m=up.util,p=function(t,n){var r,o,u,i,a,s;return null==n&&(n={}),a=m.option(n.method,"get").toLowerCase(),"get"===a?location.href=t:e.rails?(s=n.target,u=e.rails.csrfToken(),o=e.rails.csrfParam(),r=e("<form method='post' action='"+t+"'></form>"),i="<input name='_method' value='"+a+"' type='hidden' />",m.isDefined(o)&&m.isDefined(u)&&(i+="<input name='"+o+"' value='"+u+"' type='hidden' />"),s&&r.attr("target",s),r.hide().append(i).appendTo("body"),r.submit()):error("Can't fake a "+a.toUpperCase()+" request without Rails UJS")},d=function(){var e,n,r;return r=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],m.isDefined(console[r])||(r="log"),o()?console[r].apply(console,e):(n=m.evalConsoleTemplate.apply(m,e),console[r](n))},h=function(){return location.href},u=m.memoize(function(){return m.isDefined(history.pushState)&&"get"===i()}),a=m.memoize(function(){return m.isUndefined(document.addEventListener)}),s=m.memoize(function(){return a()||-1!==navigator.appVersion.indexOf("MSIE 9.")}),n=m.memoize(function(){return"transition"in document.documentElement.style}),r=m.memoize(function(){return"oninput"in document.createElement("input")}),o=m.memoize(function(){return!s()}),l=m.memoize(function(){var t,n,r,o;return o=e.fn.jquery,r=o.split("."),t=parseInt(r[0]),n=parseInt(r[1]),t>=2||1===t&&n>=9}),f=function(t){var e,n;return n=null!=(e=document.cookie.match(new RegExp(t+"=(\\w+)")))?e[1]:void 0,m.isPresent(n)&&(document.cookie=t+"=; expires=Thu, 01-Jan-70 00:00:01 GMT; path=/"),n},i=m.memoize(function(){return(f("_up_request_method")||"get").toLowerCase()}),c=function(){return!a()&&l()},{url:h,loadPage:p,canPushState:u,canCssAnimation:n,canInputEvent:r,canLogSubstitution:o,isSupported:c,puts:d}}(jQuery)}.call(this),function(){var t=[].slice;up.bus=function(e){var n,r,o,u,i,a,s,l,c,p,f,d;return f=up.util,a=[],r=null,d=function(t){return function(n){var r;return r=n.$element||e(this),t.apply(r.get(0),[n,r,up.syntax.data(r)])}},i=function(){var n,r,o,u,i;return r=1<=arguments.length?t.call(arguments,0):[],up.browser.isSupported()?(u=f.copy(r),i=u.length-1,o=u[i],u[i]=d(o),a.push(u),n=e(document),n.on.apply(n,u),function(){return n.off.apply(n,u)}):function(){}},o=function(t,n){var r,o;return null==n&&(n={}),o=e.Event(t,n),r=n.$element||e(document),f.debug("Emitting %o on %o with props %o",t,r,n),r.trigger(o),o},s=function(){var e,n;return e=1<=arguments.length?t.call(arguments,0):[],n=o.apply(null,e),!n.isDefaultPrevented()},l=function(t){return i("keydown","body",function(e){return f.escapePressed(e)?t(e):void 0})},p=function(){return r=f.copy(a)},c=function(){var t,n,o,u;for(n=0,o=a.length;o>n;n++)t=a[n],f.contains(r,t)||(u=e(document)).off.apply(u,t);return a=f.copy(r)},u=function(){return up.emit("up:framework:reset")},n=function(){return up.browser.isSupported()?up.emit("up:framework:boot"):void 0},i("up:framework:boot",p),i("up:framework:reset",c),{on:i,emit:o,nobodyPrevents:s,onEscape:l,emitReset:u,boot:n}}(jQuery),up.on=up.bus.on,up.emit=up.bus.emit,up.reset=up.bus.emitReset,up.boot=up.bus.boot}.call(this),function(){var t=[].slice;up.syntax=function(e){var n,r,o,u,i,a,s,l,c,p,f,d,m;return m=up.util,n="up-destroyable",r="up-destroyer",a=[],l=null,i=function(){var e,n,r;return r=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],up.browser.isSupported()?(i=e.pop(),n=m.options(e[0],{batch:!1}),a.push({selector:r,callback:i,batch:n.batch})):void 0},o=function(t,e,o){var u;return m.debug("Applying compiler %o on %o",t.selector,o),u=t.callback.apply(o,[e,s(e)]),m.isFunction(u)?(e.addClass(n),e.data(r,u)):void 0},u=function(t){var n,r,u,s;for(m.debug("Compiling fragment %o",t),s=[],r=0,u=a.length;u>r;r++)i=a[r],n=m.findWithSelf(t,i.selector),s.push(n.length?i.batch?o(i,n,n.get()):n.each(function(){return o(i,e(this),this)}):void 0);return s},f=function(t){return m.findWithSelf(t,"."+n).each(function(){var t,n;return t=e(this),(n=t.data(r))()})},s=function(t){var n,r;return n=e(t),r=n.attr("up-data"),m.isString(r)&&""!==m.trim(r)?JSON.parse(r):{}},d=function(){return l=m.copy(a)},p=function(){return a=m.copy(l)},c=function(t){var n;return n=e(t),up.emit("up:fragment:inserted",{$element:n}),n},up.on("ready",function(){return c(document.body)}),up.on("up:fragment:inserted",function(t){return u(t.$element)}),up.on("up:fragment:destroy",function(t){return f(t.$element)}),up.on("up:framework:boot",d),up.on("up:framework:reset",p),{compiler:i,hello:c,data:s}}(jQuery),up.compiler=up.syntax.compiler,up.hello=up.syntax.hello,up.ready=function(){return up.util.error("up.ready no longer exists. Please use up.hello instead.")},up.awaken=function(){return up.util.error("up.awaken no longer exists. Please use up.compiler instead.")}}.call(this),function(){up.history=function(t){var e,n,r,o,u,i,a,s,l,c,p,f,d,m,h,v;return v=up.util,n=v.config({popTargets:["body"],restoreScroll:!0}),c=void 0,i=void 0,m=function(){return n.reset(),c=void 0,i=void 0},a=function(t){return v.normalizeUrl(t,{hash:!0})},r=function(){return a(up.browser.url())},o=function(t){return a(t)===r()},s=function(t){return i&&(c=i,i=void 0),i=t},d=function(t,e){return u("replace",t,e)},p=function(t,e){return u("push",t,e)},u=function(t,n,u){var i,a;return u=v.options(u,{force:!1}),u.force||!o(n)?up.browser.canPushState()?(i=t+"State",a=e(),v.debug("Changing history to URL %o (%o)",n,t),window.history[i](a,"",n),s(r())):v.error("This browser doesn't support history.pushState"):void 0},e=function(){return{fromUp:!0}},h=function(t){var e,o;return o=r(),v.debug("Restoring state %o (now on "+o+")",t),e=n.popTargets.join(", "),up.replace(e,o,{history:!1,reveal:!1,transition:"none",saveScroll:!1,restoreScroll:n.restoreScroll})},l=function(t){var e;return v.debug("History state popped to URL %o",r()),s(r()),up.layout.saveScroll({url:c}),e=t.originalEvent.state,(null!=e?e.fromUp:void 0)?h(e):v.debug("Discarding unknown state %o",e)},up.browser.canPushState()&&(f=function(){return t(window).on("popstate",l),d(r(),{force:!0})},"undefined"!=typeof jasmine&&null!==jasmine?f():setTimeout(f,100)),up.compiler("[up-back]",function(t){return v.isPresent(c)?(v.setMissingAttrs(t,{"up-href":c,"up-restore-scroll":""}),t.removeAttr("up-back"),up.link.makeFollowable(t)):void 0}),up.on("up:framework:reset",m),{config:n,defaults:function(){return v.error("up.history.defaults(...) no longer exists. Set values on he up.history.config property instead.")},push:p,replace:d,url:r,previousUrl:function(){return c},normalizeUrl:a}}(jQuery)}.call(this),function(){var slice=[].slice;up.layout=function($){var SCROLL_PROMISE_KEY,anchoredRight,config,finishScrolling,fixedChildren,lastScrollTops,measureObstruction,reset,restoreScroll,reveal,revealOrRestoreScroll,saveScroll,scroll,scrollTops,u,viewportOf,viewportSelector,viewports,viewportsWithin;return u=up.util,config=u.config({duration:0,viewports:[document,".up-modal","[up-viewport]"],fixedTop:["[up-fixed~=top]"],fixedBottom:["[up-fixed~=bottom]"],anchoredRight:["[up-anchored~=right]","[up-fixed~=top]","[up-fixed~=bottom]","[up-fixed~=right]"],snap:50,substance:150,easing:"swing"}),lastScrollTops=u.cache({size:30,key:up.history.normalizeUrl}),reset=function(){return config.reset(),lastScrollTops.clear()},SCROLL_PROMISE_KEY="up-scroll-promise",scroll=function(t,e,n){var r,o,i,a,s;return r=$(t),n=u.options(n),i=u.option(n.duration,config.duration),a=u.option(n.easing,config.easing),finishScrolling(r),i>0?(o=$.Deferred(),r.data(SCROLL_PROMISE_KEY,o),o.then(function(){return r.removeData(SCROLL_PROMISE_KEY),r.finish()}),s={scrollTop:e},r.get(0)===document&&(r=$("html, body")),r.animate(s,{duration:i,easing:a,complete:function(){return o.resolve()}}),o):(r.scrollTop(e),u.resolvedDeferred())},finishScrolling=function(t){return $(t).each(function(){var t;return(t=$(this).data(SCROLL_PROMISE_KEY))?t.resolve():void 0})},anchoredRight=function(){return u.multiSelector(config.anchoredRight).select()},measureObstruction=function(){var t,e,n,r;return n=function(t,e){var n,r;return n=$(t),r=n.css(e),u.isPresent(r)||u.error("Fixed element %o must have a CSS attribute %o",n,e),parseInt(r)+n.height()},e=function(){var t,e,o,u;for(o=$(config.fixedTop.join(", ")),u=[],t=0,e=o.length;e>t;t++)r=o[t],u.push(n(r,"top"));return u}(),t=function(){var t,e,o,u;for(o=$(config.fixedBottom.join(", ")),u=[],t=0,e=o.length;e>t;t++)r=o[t],u.push(n(r,"bottom"));return u}(),{top:Math.max.apply(Math,[0].concat(slice.call(e))),bottom:Math.max.apply(Math,[0].concat(slice.call(t)))}},reveal=function(t,e){var n,r,o,i,a,s,l,c,p,f,d,m,h,v;return u.debug("Revealing %o",t),e=u.options(e),n=$(t),r=e.viewport?$(e.viewport):viewportOf(n),m=u.option(e.snap,config.snap),v=r.is(document),h=v?u.clientSize().height:r.height(),p=r.scrollTop(),s=p,c=void 0,l=void 0,v?(l=measureObstruction(),c=0):(l={top:0,bottom:0},c=p),f=function(){return s+l.top},d=function(){return s+h-l.bottom-1},o=u.measure(n,{relative:r}),i=o.top+c,a=i+Math.min(o.height,config.substance)-1,a>d()&&(s+=a-d()),(i<f()||e.top)&&(s=i-l.top),m>s&&(s=0),s!==p?scroll(r,s,e):u.resolvedDeferred()},viewportSelector=function(){return u.multiSelector(config.viewports)},viewportOf=function(t){var e,n;return e=$(t),n=viewportSelector().seekUp(e),n.length||u.error("Could not find viewport for %o",e),n},viewportsWithin=function(t){var e;return e=$(t),viewportSelector().findWithSelf(e)},viewports=function(){return viewportSelector().select()},scrollTops=function(){var t,e,n,r,o,u,i;for(u={},o=config.viewports,e=0,r=o.length;r>e;e++)i=o[e],t=$(i),t.length&&(n=i,i===document&&(n="document"),u[n]=t.scrollTop());return u},fixedChildren=function(t){var e,n;return null==t&&(t=void 0),t||(t=document.body),n=$(t),e=n.find("[up-fixed]"),u.isPresent(config.fixedTop)&&(e=e.add(n.find(config.fixedTop.join(", ")))),u.isPresent(config.fixedBottom)&&(e=e.add(n.find(config.fixedBottom.join(", ")))),e},saveScroll=function(t){var e,n;return null==t&&(t={}),n=u.option(t.url,up.history.url()),e=u.option(t.tops,scrollTops()),u.debug("Saving scroll positions for URL %o: %o",n,e),lastScrollTops.set(n,e)},restoreScroll=function(t){var e,n,r,o,i,a,s,l,c;null==t&&(t={}),c=up.history.url(),o=void 0,t.around?(n=viewportsWithin(t.around),e=viewportOf(t.around),o=e.add(n)):o=viewports(),l=lastScrollTops.get(c),u.debug("Restoring scroll positions for URL %o (viewports are %o, saved tops are %o)",c,o,l);for(i in l)s=l[i],a="document"===i?document:i,r=o.filter(a),scroll(r,s,{duration:0});return u.resolvedDeferred()},revealOrRestoreScroll=function(t,e){var n,r,o,i;return n=$(t),e.restoreScroll?restoreScroll({around:n}):e.reveal?(e.source&&(i=u.parseUrl(e.source),i.hash&&"#"!==i.hash&&(o=i.hash.substr(1),r=u.findWithSelf(n,"#"+o+", a[name='"+o+"']"),r.length&&(n=r))),reveal(n)):u.resolvedDeferred()},up.on("up:framework:reset",reset),{knife:eval("undefined"!=typeof Knife&&null!==Knife?Knife.point:void 0),reveal:reveal,scroll:scroll,finishScrolling:finishScrolling,config:config,defaults:function(){return u.error("up.layout.defaults(...) no longer exists. Set values on he up.layout.config property instead.")},viewportOf:viewportOf,viewportsWithin:viewportsWithin,viewports:viewports,scrollTops:scrollTops,saveScroll:saveScroll,restoreScroll:restoreScroll,revealOrRestoreScroll:revealOrRestoreScroll,anchoredRight:anchoredRight,fixedChildren:fixedChildren}}(jQuery),up.scroll=up.layout.scroll,up.reveal=up.layout.reveal}.call(this),function(){up.flow=function(t){var e,n,r,o,u,i,a,s,l,c,p,f,d,m,h,v;return v=up.util,d=function(e,n){var r;return r=t(e),v.isPresent(n)&&(n=v.normalizeUrl(n)),r.attr("up-source",n)},m=function(e){var n;return n=t(e).closest("[up-source]"),v.presence(n.attr("up-source"))||up.browser.url()},f=function(e,n,r){var o,u,i;return v.debug("Replace %o with %o (options %o)",e,n,r),r=v.options(r),i=v.presence(e)?e:v.createSelectorFromElement(t(e)),up.browser.canPushState()||r.history===!1?(u={url:n,method:r.method,selector:i,cache:r.cache,preload:r.preload},o=up.proxy.ajax(u),o.done(function(t,e,o){var s,l;return(s=v.locationFromXhr(o))&&(v.debug("Location from server: %o",s),l={url:s,method:v.methodFromXhr(o),selector:i},up.proxy.alias(u,l),n=s),r.history!==!1&&(r.history=n),r.source!==!1&&(r.source=n),r.preload?void 0:a(i,t,r)}),o.fail(v.error),o):(r.preload||up.browser.loadPage(n,v.only(r,"method")),v.unresolvablePromise())},a=function(t,e,n){var r,u,i,a,s,p,f,d;for(n=v.options(n,{historyMethod:"push"}),n.source=v.option(n.source,n.history),p=c(e),n.title||(n.title=p.title()),n.saveScroll!==!1&&up.layout.saveScroll(),s=l(t,n),f=[],i=0,a=s.length;a>i;i++)d=s[i],u=o(d.selector),r=p.find(d.selector).first(),f.push(h(u,r,d.pseudoClass,d.transition,n));return f},o=function(t){return u(".up-popup "+t)||u(".up-modal "+t)||u(t)||i(t)},i=function(t){var e;return e="Could not find selector %o in current body HTML","#"===e[0]&&(e+=" (avoid using IDs)"),v.error(e,t)},c=function(e){var n;return n=v.createElementFromHtml(e),{title:function(){var t;return null!=(t=n.querySelector("title"))?t.textContent:void 0},find:function(r){var o;return(o=n.querySelector(r))?t(o):v.error("Could not find selector %o in response %o",r,e)}}},r=function(t,n){return"function"==typeof n.insert&&n.insert(t),n.history&&(n.title&&(document.title=n.title),up.history[n.historyMethod](n.history)),n.source!==!1&&d(t,n.source),e(t),up.hello(t)},h=function(t,e,o,u,i){var a,s;return u||(u="none"),up.motion.finish(t),o?(s="before"===o?"prepend":"append",a=e.contents().wrap('<span class="up-insertion"></span>').parent(),t[s](a),v.copyAttributes(e,t),r(a.children(),i),up.layout.revealOrRestoreScroll(a,i).then(function(){return up.animate(a,u,i)}).then(function(){v.unwrapElement(a)})):n(t,{animation:function(){return e.insertBefore(t),r(e,i),t.is("body")&&"none"!==u&&v.error("Cannot apply transitions to body-elements (%o)",u),up.morph(t,e,u,i)}})},l=function(t,e){var n,r,o,u,i,a,s,l,c,p,f;for(p=e.transition||e.animation||"none",n=/\ *,\ */,r=t.split(n),v.isPresent(p)&&(f=p.split(n)),a=[],o=u=0,i=r.length;i>u;o=++u)s=r[o],l=s.match(/^(.+?)(?:\:(before|after))?$/),c=f[o]||v.last(f),a.push({selector:l[1],pseudoClass:l[2],transition:c});return a},e=function(t){var e,n;return n="[autofocus]:last",e=v.findWithSelf(t,n),e.length&&e.get(0)!==document.activeElement?e.focus():void 0},s=function(t){var e;return e=".up-ghost, .up-destroying",0===t.closest(e).length},u=function(e){var n,r,o,u,i,a;for(u=t(e).get(),r=void 0,i=0,a=u.length;a>i;i++)if(o=u[i],n=t(o),s(n)){r=n;break}return r},n=function(e,n){var r,o,u;return r=t(e),up.bus.nobodyPrevents("up:fragment:destroy",{$element:r})?(n=v.options(n,{animation:"none"}),o=up.motion.animateOptions(n),r.addClass("up-destroying"),v.isPresent(n.url)&&up.history.push(n.url),v.isPresent(n.title)&&(document.title=n.title),u=v.presence(n.animation,v.isDeferred)||up.motion.animate(r,n.animation,o),u.then(function(){return up.emit("up:fragment:destroyed",{$element:r}),r.remove()}),u):t.Deferred()},p=function(t,e){var n;return e=v.options(e,{cache:!1}),n=e.url||m(t),f(t,n,e)},up.on("ready",function(){return d(document.body,up.browser.url())}),{replace:f,reload:p,destroy:n,implant:a,first:u}}(jQuery),up.replace=up.flow.replace,up.reload=up.flow.reload,up.destroy=up.flow.destroy,up.first=up.flow.first}.call(this),function(){up.motion=function(t){var e,n,r,o,u,i,a,s,l,c,p,f,d,m,h,v,g,y,b,w,k,x,S;return x=up.util,u={},s={},k={},l={},a=x.config({duration:300,delay:0,easing:"ease"}),v=function(){return u=x.copy(s),k=x.copy(l),a.reset()},n=function(e,o,u){var a;return a=t(e),p(a),u=r(u),("none"===o||o===!1)&&m(),x.isFunction(o)?i(o(a,u),o):x.isString(o)?n(a,c(o),u):x.isHash(o)?x.cssAnimate(a,o,u):x.error("Unknown animation type %o",o)},r=function(t,e){var n;return null==e&&(e=null),t=x.options(t),n={},n.easing=x.option(t.easing,null!=e?e.attr("up-easing"):void 0,a.easing),n.duration=Number(x.option(t.duration,null!=e?e.attr("up-duration"):void 0,a.duration)),n.delay=Number(x.option(t.delay,null!=e?e.attr("up-delay"):void 0,a.delay)),n},c=function(t){return u[t]||x.error("Unknown animation %o",t)},e="up-ghosting-promise",S=function(t,n,r,o){var u,i,a,s,l,c,p;return s=void 0,i=void 0,l=void 0,a=void 0,u=up.layout.viewportOf(t),x.temporaryCss(n,{display:"none"},function(){return s=h(t,u),s.$ghost.addClass("up-destroying"),s.$bounds.addClass("up-destroying"),l=u.scrollTop()}),x.temporaryCss(t,{display:"none"},function(){return up.layout.revealOrRestoreScroll(n,r),i=h(n,u),a=u.scrollTop()}),s.moveTop(a-l),t.hide(),p=x.temporaryCss(n,{opacity:"0"}),c=o(s.$ghost,i.$ghost),t.data(e,c),n.data(e,c),c.then(function(){return t.removeData(e),n.removeData(e),p(),s.$bounds.remove(),i.$bounds.remove()}),c},p=function(e){return t(e).each(function(){var e;return e=t(this),x.finishCssAnimate(e),f(e)})},f=function(t){var n;return(n=t.data(e))?(x.debug("Canceling existing ghosting on %o",t),"function"==typeof n.resolve?n.resolve():void 0):void 0},i=function(t,e){return x.isDeferred(t)?t:x.error("Did not return a promise with .then and .resolve methods: %o",e)},d=function(e,o,a,s){var l,c,f,m,h,v,b;return x.debug("Morphing %o to %o (using %o)",e,o,a),c=t(e),l=t(o),h=x.only(s,"reveal","restoreScroll","source"),h=x.extend(h,r(s)),up.browser.canCssAnimation()?(p(c),p(l),"none"===a||a===!1||(f=u[a])?(m=y(c,l,h),m.then(function(){return n(l,f||"none",s)}),m):(b=x.presence(a,x.isFunction)||k[a])?S(c,l,h,function(t,e){var n;return n=b(t,e,h),i(n,a)}):x.isString(a)&&a.indexOf("/")>=0?(v=a.split("/"),b=function(t,e,r){return g(n(t,v[0],r),n(e,v[1],r))},d(c,l,b,h)):x.error("Unknown transition %o",a)):y(c,l,h)},y=function(t,e,n){return t.hide(),up.layout.revealOrRestoreScroll(e,n)},h=function(e,n){var r,o,u,i,a,s,l,c,p;for(i=x.measure(e,{relative:!0,inner:!0}),u=e.clone(),u.find("script").remove(),u.css({position:"static"===e.css("position")?"static":"relative",top:"",right:"",bottom:"",left:"",width:"100%",height:"100%"}),u.addClass("up-ghost"),r=t('<div class="up-bounds"></div>'),r.css({position:"absolute"}),r.css(i),p=i.top,c=function(t){return 0!==t?(p+=t,r.css({top:p})):void 0},u.appendTo(r),r.insertBefore(e),c(e.offset().top-u.offset().top),o=up.layout.fixedChildren(u),s=0,l=o.length;l>s;s++)a=o[s],x.fixedToAbsolute(a,n);return{$ghost:u,$bounds:r,moveTop:c}},w=function(t,e){return k[t]=e},o=function(t,e){return u[t]=e},b=function(){return s=x.copy(u),l=x.copy(k)},g=x.resolvableWhen,m=x.resolvedDeferred,o("none",m),o("fade-in",function(t,e){return t.css({opacity:0}),n(t,{opacity:1},e)}),o("fade-out",function(t,e){return t.css({opacity:1}),n(t,{opacity:0},e)}),o("move-to-top",function(t,e){var r,o;return r=x.measure(t),o=r.top+r.height,t.css({"margin-top":"0px"}),n(t,{"margin-top":"-"+o+"px"},e)}),o("move-from-top",function(t,e){var r,o;return r=x.measure(t),o=r.top+r.height,t.css({"margin-top":"-"+o+"px"}),n(t,{"margin-top":"0px"},e)}),o("move-to-bottom",function(t,e){var r,o;return r=x.measure(t),o=x.clientSize().height-r.top,t.css({"margin-top":"0px"}),n(t,{"margin-top":o+"px"},e)}),o("move-from-bottom",function(t,e){var r,o;return r=x.measure(t),o=x.clientSize().height-r.top,t.css({"margin-top":o+"px"}),n(t,{"margin-top":"0px"},e)}),o("move-to-left",function(t,e){var r,o;return r=x.measure(t),o=r.left+r.width,t.css({"margin-left":"0px"}),n(t,{"margin-left":"-"+o+"px"},e)}),o("move-from-left",function(t,e){var r,o;return r=x.measure(t),o=r.left+r.width,t.css({"margin-left":"-"+o+"px"}),n(t,{"margin-left":"0px"},e)}),o("move-to-right",function(t,e){var r,o;return r=x.measure(t),o=x.clientSize().width-r.left,t.css({"margin-left":"0px"}),n(t,{"margin-left":o+"px"},e)}),o("move-from-right",function(t,e){var r,o;return r=x.measure(t),o=x.clientSize().width-r.left,t.css({"margin-left":o+"px"}),n(t,{"margin-left":"0px"},e)}),o("roll-down",function(t,e){var r,o;return r=t.height(),o=x.temporaryCss(t,{height:"0px",overflow:"hidden"}),n(t,{height:r+"px"},e).then(o)}),w("none",m),w("move-left",function(t,e,r){return g(n(t,"move-to-left",r),n(e,"move-from-right",r))}),w("move-right",function(t,e,r){return g(n(t,"move-to-right",r),n(e,"move-from-left",r))}),w("move-up",function(t,e,r){return g(n(t,"move-to-top",r),n(e,"move-from-bottom",r))}),w("move-down",function(t,e,r){return g(n(t,"move-to-bottom",r),n(e,"move-from-top",r))
2
+ }),w("cross-fade",function(t,e,r){return g(n(t,"fade-out",r),n(e,"fade-in",r))}),up.on("up:framework:boot",b),up.on("up:framework:reset",v),{morph:d,animate:n,animateOptions:r,finish:p,transition:w,animation:o,config:a,defaults:function(){return x.error("up.motion.defaults(...) no longer exists. Set values on he up.motion.config property instead.")},none:m,when:g,prependCopy:h}}(jQuery),up.transition=up.motion.transition,up.animation=up.motion.animation,up.morph=up.motion.morph,up.animate=up.motion.animate}.call(this),function(){up.proxy=function(t){var e,n,r,o,u,i,a,s,l,c,p,f,d,m,h,v,g,y,b,w,k,x,S,C,T,A,P,E,O;return O=up.util,e=void 0,C=void 0,i=void 0,x=void 0,a=void 0,m=O.config({busyDelay:300,preloadDelay:75,cacheSize:70,cacheExpiry:3e5}),l=function(t){return k(t),[t.url,t.method,t.data,t.selector].join("|")},s=O.cache({size:function(){return m.cacheSize},expiry:function(){return m.cacheExpiry},key:l,log:"up.proxy"}),h=s.get,P=s.set,T=s.remove,d=s.clear,p=function(){return clearTimeout(C),C=null},c=function(){return clearTimeout(i),i=null},A=function(){return e=null,p(),c(),x=0,m.reset(),a=!1,s.clear()},A(),o=s.alias,k=function(t){return t._normalized||(t.method=O.normalizeMethod(t.method),t.url&&(t.url=O.normalizeUrl(t.url)),t.selector||(t.selector="body"),t._normalized=!0),t},r=function(t){var e,n,r,o,u;return e=t.cache===!0,n=t.cache===!1,u=O.only(t,"url","method","data","selector","_normalized"),r=!0,g(u)||e?(o=h(u))&&!n?r="pending"===o.state():(o=y(u),P(u,o),o.fail(function(){return T(u)})):(d(),o=y(u)),r&&!t.preload&&(w(),o.always(b)),o},n=["GET","OPTIONS","HEAD"],v=function(){return 0===x},u=function(){return x>0},w=function(){var t,e;return e=v(),x+=1,e?(t=function(){return u()?(up.emit("up:proxy:busy"),a=!0):void 0},m.busyDelay>0?i=setTimeout(t,m.busyDelay):t()):void 0},b=function(){return x-=1,v()&&a?(up.emit("up:proxy:idle"),a=!1):void 0},y=function(t){var e;return O.debug("Loading URL %o",t.url),up.emit("up:proxy:load",t),e=O.ajax(t),e.always(function(){return up.emit("up:proxy:received",t)}),e},g=function(t){return k(t),O.contains(n,t.method)},f=function(t){var n,r;return r=parseInt(O.presentAttr(t,"up-delay"))||m.preloadDelay,t.is(e)?void 0:(e=t,p(),n=function(){return S(t),e=null},E(n,r))},E=function(t,e){return C=setTimeout(t,e)},S=function(e,n){var r,o;return r=t(e),n=O.options(n),o=up.link.followMethod(r,n),g({method:o})?(O.debug("Preloading %o",r),n.preload=!0,up.follow(r,n)):(O.debug("Won't preload %o due to unsafe method %o",r,o),O.resolvedPromise())},up.on("mouseover mousedown touchstart","[up-preload]",function(t,e){return up.link.childClicked(t,e)?void 0:f(e)}),up.on("up:framework:reset",A),{preload:S,ajax:r,get:h,alias:o,clear:d,remove:T,idle:v,busy:u,config:m,defaults:function(){return O.error("up.proxy.defaults(...) no longer exists. Set values on he up.proxy.config property instead.")}}}(jQuery)}.call(this),function(){up.link=function($){var childClicked,follow,followMethod,makeFollowable,shouldProcessLinkEvent,u,visit;return u=up.util,visit=function(t,e){var n;return e=u.options(e),n=u.option(e.target,"body"),up.replace(n,t,e)},follow=function(t,e){var n,r,o;return n=$(t),e=u.options(e),o=u.option(n.attr("up-href"),n.attr("href")),r=u.option(e.target,n.attr("up-target"),"body"),e.transition=u.option(e.transition,u.castedAttr(n,"up-transition"),u.castedAttr(n,"up-animation")),e.history=u.option(e.history,u.castedAttr(n,"up-history")),e.reveal=u.option(e.reveal,u.castedAttr(n,"up-reveal"),!0),e.cache=u.option(e.cache,u.castedAttr(n,"up-cache")),e.restoreScroll=u.option(e.restoreScroll,u.castedAttr(n,"up-restore-scroll")),e.method=followMethod(n,e),e=u.merge(e,up.motion.animateOptions(e,n)),up.replace(r,o,e)},followMethod=function(t,e){var n;return n=$(t),e=u.options(e),u.option(e.method,n.attr("up-method"),n.attr("data-method"),"get").toUpperCase()},up.on("click","a[up-target], [up-href][up-target]",function(t,e){return shouldProcessLinkEvent(t,e)?e.is("[up-instant]")?t.preventDefault():(t.preventDefault(),follow(e)):void 0}),up.on("mousedown","a[up-instant], [up-href][up-instant]",function(t,e){return shouldProcessLinkEvent(t,e)?(t.preventDefault(),follow(e)):void 0}),childClicked=function(t,e){var n,r;return n=$(t.target),r=n.closest("a, [up-href]"),r.length&&e.find(r).length},shouldProcessLinkEvent=function(t,e){return u.isUnmodifiedMouseEvent(t)&&!childClicked(t,e)},makeFollowable=function(t){var e;return e=$(t),u.isMissing(e.attr("up-target"))&&u.isMissing(e.attr("up-follow"))?e.attr("up-follow",""):void 0},up.on("click","a[up-follow], [up-href][up-follow]",function(t,e){return shouldProcessLinkEvent(t,e)?e.is("[up-instant]")?t.preventDefault():(t.preventDefault(),follow(e)):void 0}),up.compiler("[up-expand]",function(t){var e,n,r,o,i,a,s,l;for(o=t.find("a, [up-href]").get(0),o||u.error("No link to expand within %o",t),l=/^up-/,a={},a["up-href"]=$(o).attr("href"),s=o.attributes,n=0,r=s.length;r>n;n++)e=s[n],i=e.name,i.match(l)&&(a[i]=e.value);return u.setMissingAttrs(t,a),t.removeAttr("up-expand"),makeFollowable(t)}),up.compiler("[up-dash]",function(t){var e,n;return n=u.castedAttr(t,"up-dash"),e={"up-preload":"true","up-instant":"true"},n===!0?e["up-follow"]="":e["up-target"]=n,u.setMissingAttrs(t,e),t.removeAttr("up-dash")}),{knife:eval("undefined"!=typeof Knife&&null!==Knife?Knife.point:void 0),visit:visit,follow:follow,makeFollowable:makeFollowable,childClicked:childClicked,followMethod:followMethod}}(jQuery),up.visit=up.link.visit,up.follow=up.link.follow}.call(this),function(){up.form=function($){var observe,submit,u;return u=up.util,submit=function(t,e){var n,r,o,i,a,s,l,c,p,f,d,m;return n=$(t).closest("form"),e=u.options(e),c=u.option(e.target,n.attr("up-target"),"body"),r=u.option(e.failTarget,n.attr("up-fail-target"),function(){return u.createSelectorFromElement(n)}),i=u.option(e.history,u.castedAttr(n,"up-history"),!0),p=u.option(e.transition,u.castedAttr(n,"up-transition")),o=u.option(e.failTransition,u.castedAttr(n,"up-fail-transition"),p),a=u.option(e.method,n.attr("up-method"),n.attr("data-method"),n.attr("method"),"post").toUpperCase(),s={},s.reveal=u.option(e.reveal,u.castedAttr(n,"up-reveal"),!0),s.cache=u.option(e.cache,u.castedAttr(n,"up-cache")),s.restoreScroll=u.option(e.restoreScroll,u.castedAttr(n,"up-restore-scroll")),s=u.extend(s,up.motion.animateOptions(e,n)),m=u.option(e.cache,u.castedAttr(n,"up-cache")),d=u.option(e.url,n.attr("action"),up.browser.url()),n.addClass("up-active"),up.browser.canPushState()||i===!1?(l={url:d,method:a,data:n.serialize(),selector:c,cache:m},f=function(t){var e;return d=void 0,u.isGiven(i)&&(i===!1||u.isString(i)?d=i:(e=u.locationFromXhr(t))?d=e:"GET"===l.type&&(d=l.url+"?"+l.data)),u.option(d,!1)},up.proxy.ajax(l).always(function(){return n.removeClass("up-active")}).done(function(t,e,n){var r;return r=u.merge(s,{history:f(n),transition:p}),up.flow.implant(c,t,r)}).fail(function(t){var e,n;return n=t.responseText,e=u.merge(s,{transition:o}),up.flow.implant(r,n,e)})):void n.get(0).submit()},observe=function(fieldOrSelector,options){var $field,callback,callbackPromise,callbackTimer,changeEvents,check,clearTimer,codeOnChange,delay,knownValue,nextCallback,runNextCallback;return $field=$(fieldOrSelector),options=u.options(options),delay=u.option($field.attr("up-delay"),options.delay,0),delay=parseInt(delay),knownValue=null,callback=null,callbackTimer=null,(codeOnChange=$field.attr("up-observe"))?callback=function(value,$field){return eval(codeOnChange)}:options.change?callback=options.change:u.error("up.observe: No change callback given"),callbackPromise=u.resolvedPromise(),nextCallback=null,runNextCallback=function(){var t;return nextCallback?(t=nextCallback(),nextCallback=null,t):void 0},check=function(){var t,e;return e=$field.val(),t=u.isNull(knownValue),knownValue===e||(knownValue=e,t)?void 0:(clearTimer(),nextCallback=function(){return callback.apply($field.get(0),[e,$field])},callbackTimer=setTimeout(function(){return callbackPromise.then(function(){var t;return t=runNextCallback(),callbackPromise=u.isPromise(t)?t:u.resolvedPromise()})},delay))},clearTimer=function(){return clearTimeout(callbackTimer)},changeEvents=up.browser.canInputEvent()?"input change":"input change keypress paste cut click propertychange",$field.on(changeEvents,check),check(),clearTimer},up.on("submit","form[up-target]",function(t,e){return t.preventDefault(),submit(e)}),up.compiler("[up-observe]",function(t){return observe(t)}),{submit:submit,observe:observe}}(jQuery),up.submit=up.form.submit,up.observe=up.form.observe}.call(this),function(){up.popup=function(t){var e,n,r,o,u,i,a,s,l,c,p,f,d,m,h;return m=up.util,s=void 0,i=function(){var e;return e=t(".up-popup"),e.attr("up-covered-url")},o=m.config({openAnimation:"fade-in",closeAnimation:"fade-out",position:"bottom-right"}),f=function(){return r(),o.reset()},d=function(t,e,n){var r,o;return o=m.measure(t,{full:!0}),r=function(){switch(n){case"bottom-right":return{right:o.right,top:o.top+o.height};case"bottom-left":return{left:o.left,top:o.bottom+o.height};case"top-right":return{right:o.right,bottom:o.top};case"top-left":return{left:o.left,bottom:o.top};default:return m.error("Unknown position %o",n)}}(),e.attr("up-position",n),e.css(r),c(e)},c=function(t){var e,n,r,o,u,i,a;if(n=m.measure(t,{full:!0}),r=null,o=null,n.right<0&&(r=-n.right),n.bottom<0&&(o=-n.bottom),n.left<0&&(r=n.left),n.top<0&&(o=n.top),r&&((u=parseInt(t.css("left")))?t.css("left",u-r):(i=parseInt(t.css("right")))&&t.css("right",i+r)),o){if(a=parseInt(t.css("top")))return t.css("top",a-o);if(e=parseInt(t.css("bottom")))return t.css("bottom",e+o)}},p=function(){var e;return e=t(".up-popup"),e.attr("up-covered-url",up.browser.url()),e.attr("up-covered-title",document.title)},l=function(){var e;return e=t(".up-popup"),e.removeAttr("up-covered-url"),e.removeAttr("up-covered-title")},a=function(t,e,n){var r,o;return o=m.$createElementFromSelector(".up-popup"),n&&o.attr("up-sticky",""),r=m.$createElementFromSelector(e),r.appendTo(o),o.appendTo(document.body),p(),o.hide(),o},h=function(t,e,n,r,o){return e.show(),d(t,e,n),up.animate(e,r,o)},e=function(e,n){var u,i,s,l,c,p,f,d,v;return u=t(e),n=m.options(n),v=m.option(n.url,u.attr("href")),f=m.option(n.target,u.attr("up-popup"),"body"),p=m.option(n.position,u.attr("up-position"),o.position),l=m.option(n.animation,u.attr("up-animation"),o.openAnimation),d=m.option(n.sticky,m.castedAttr(u,"up-sticky")),c=up.browser.canPushState()?m.option(n.history,m.castedAttr(u,"up-history"),!1):!1,s=up.motion.animateOptions(n,u),r(),i=a(u,f,d),up.replace(f,v,{history:c,insert:function(){return h(u,i,p,l,s)}})},r=function(e){var n;return n=t(".up-popup"),n.length?(e=m.options(e,{animation:o.closeAnimation,url:n.attr("up-covered-url"),title:n.attr("up-covered-title")}),s=void 0,up.destroy(n,e)):m.resolvedPromise()},n=function(){return t(".up-popup").is("[up-sticky]")?void 0:(l(),r())},u=function(e){var n;return n=t(e),n.closest(".up-popup").length>0},up.on("click","a[up-popup]",function(t,n){return t.preventDefault(),n.is(".up-current")?r():e(n)}),up.on("click","body",function(e){var n;return n=t(e.target),n.closest(".up-popup").length||n.closest("[up-popup]").length?void 0:r()}),up.on("up:fragment:inserted",function(t,e){var r;return u(e)?(r=e.attr("up-source"))?s=r:void 0:n()}),up.bus.onEscape(function(){return r()}),up.on("click","[up-close]",function(t,e){return e.closest(".up-popup").length?(r(),t.preventDefault()):void 0}),up.on("up:framework:reset",f),{attach:e,close:r,url:function(){return s},coveredUrl:i,config:o,defaults:function(){return m.error("up.popup.defaults(...) no longer exists. Set values on he up.popup.config property instead.")},contains:u,open:function(){return up.error("up.popup.open no longer exists. Please use up.popup.attach instead.")},source:function(){return up.error("up.popup.source no longer exists. Please use up.popup.url instead.")}}}(jQuery)}.call(this),function(){up.modal=function(t){var e,n,r,o,u,i,a,s,l,c,p,f,d,m,h,v,g,y;return h=up.util,r=h.config({maxWidth:null,minWidth:null,width:null,height:null,openAnimation:"fade-in",closeAnimation:"fade-out",closeLabel:"\xd7",template:function(t){return'<div class="up-modal">\n <div class="up-modal-dialog">\n <div class="up-modal-close" up-close>'+t.closeLabel+'</div>\n <div class="up-modal-content"></div>\n </div>\n</div>'}}),a=void 0,u=function(){var e;return e=t(".up-modal"),e.attr("up-covered-url")},f=function(){return n(),a=void 0,r.reset()},m=function(){var t;return t=r.template,h.isFunction(t)?t(r):t},p=function(){var e;return e=t(".up-modal"),e.attr("up-covered-url",up.browser.url()),e.attr("up-covered-title",document.title)},s=function(){var e;return e=t(".up-modal"),e.removeAttr("up-covered-url"),e.removeAttr("up-covered-title")},i=function(e){var n,r,o,u;return o=t(m()),e.sticky&&o.attr("up-sticky",""),o.attr("up-covered-url",up.browser.url()),o.attr("up-covered-title",document.title),r=o.find(".up-modal-dialog"),h.isPresent(e.width)&&r.css("width",e.width),h.isPresent(e.maxWidth)&&r.css("max-width",e.maxWidth),h.isPresent(e.height)&&r.css("height",e.height),n=o.find(".up-modal-content"),u=h.$createElementFromSelector(e.selector),u.appendTo(n),o.appendTo(document.body),p(),o.hide(),o},v=[],d=function(){var e,n,r,o;return r=h.scrollbarWidth(),e=parseInt(t("body").css("padding-right")),n=r+e,o=h.temporaryCss(t("body"),{"padding-right":n+"px","overflow-y":"hidden"}),v.push(o),up.layout.anchoredRight().each(function(){var e,n,o,u;return e=t(this),n=parseInt(e.css("right")),o=r+n,u=h.temporaryCss(e,{right:o}),v.push(u)})},g=function(t,e,n){var r;return d(),t.show(),r=up.animate(t,e,n),r.then(function(){return up.emit("up:modal:opened")})},l=function(e,n){return n=h.options(n),n.$link=t(e),c(n)},y=function(t,e){return e=h.options(e),e.url=t,c(e)},c=function(e){var o,u,a,s,l,c,p,f,d,m,v;return e=h.options(e),o=h.option(e.$link,h.nullJquery()),m=h.option(e.url,o.attr("up-href"),o.attr("href")),f=h.option(e.target,o.attr("up-modal"),"body"),v=h.option(e.width,o.attr("up-width"),r.width),p=h.option(e.maxWidth,o.attr("up-max-width"),r.maxWidth),l=h.option(e.height,o.attr("up-height"),r.height),s=h.option(e.animation,o.attr("up-animation"),r.openAnimation),d=h.option(e.sticky,h.castedAttr(o,"up-sticky")),c=up.browser.canPushState()?h.option(e.history,h.castedAttr(o,"up-history"),!0):!1,a=up.motion.animateOptions(e,o),n(),up.bus.nobodyPrevents("up:modal:open",{url:m})?(u=i({selector:f,width:v,maxWidth:p,height:l,sticky:d}),up.replace(f,m,{history:c,insert:function(){return g(u,s,a)}})):t.Deferred()},n=function(e){var n,o;return n=t(".up-modal"),n.length?up.bus.nobodyPrevents("up:modal:close",{$element:n})?(e=h.options(e,{animation:r.closeAnimation,url:n.attr("up-covered-url"),title:n.attr("up-covered-title")}),a=void 0,o=up.destroy(n,e),o.then(function(){for(var t;t=v.pop();)t();return up.emit("up:modal:closed")}),o):t.Deferred():h.resolvedDeferred()},e=function(){return t(".up-modal").is("[up-sticky]")?void 0:(s(),n())},o=function(e){var n;return n=t(e),n.closest(".up-modal").length>0},up.on("click","a[up-modal]",function(t,e){return t.preventDefault(),e.is(".up-current")?n():l(e)}),up.on("click","body",function(e){var r;return r=t(e.target),r.closest(".up-modal-dialog").length||r.closest("[up-modal]").length?void 0:n()}),up.on("up:fragment:inserted",function(t,n){var r;if(o(n)){if(r=n.attr("up-source"))return a=r}else if(!up.popup.contains(n))return e()}),up.bus.onEscape(function(){return n()}),up.on("click","[up-close]",function(t,e){return e.closest(".up-modal").length?(n(),t.preventDefault()):void 0}),up.on("up:framework:reset",f),{visit:y,follow:l,open:function(){return up.error("up.modal.open no longer exists. Please use either up.modal.follow or up.modal.visit.")},close:n,url:function(){return a},coveredUrl:u,config:r,defaults:function(){return h.error("up.modal.defaults(...) no longer exists. Set values on he up.modal.config property instead.")},contains:o,source:function(){return up.error("up.popup.source no longer exists. Please use up.popup.url instead.")}}}(jQuery)}.call(this),function(){up.tooltip=function(t){var e,n,r,o,u,i,a;return a=up.util,r=a.config({position:"top",openAnimation:"fade-in",closeAnimation:"fade-out"}),u=function(){return r.reset()},i=function(t,e,n){var r,o,u;return o=a.measure(t),u=a.measure(e),r=function(){switch(n){case"top":return{left:o.left+.5*(o.width-u.width),top:o.top-u.height};case"bottom":return{left:o.left+.5*(o.width-u.width),top:o.top+o.height};default:return a.error("Unknown position %o",n)}}(),e.attr("up-position",n),e.css(r)},o=function(t){var e;return e=a.$createElementFromSelector(".up-tooltip"),a.isGiven(t.text)?e.text(t.text):e.html(t.html),e.appendTo(document.body),e},e=function(e,u){var s,l,c,p,f,d,m;return null==u&&(u={}),s=t(e),f=a.option(u.html,s.attr("up-tooltip-html")),m=a.option(u.text,s.attr("up-tooltip")),d=a.option(u.position,s.attr("up-position"),r.position),p=a.option(u.animation,a.castedAttr(s,"up-animation"),r.openAnimation),c=up.motion.animateOptions(u,s),n(),l=o({text:m,html:f}),i(s,l,d),up.animate(l,p,c)},n=function(e){var n;return n=t(".up-tooltip"),n.length?(e=a.options(e,{animation:r.closeAnimation}),e=a.merge(e,up.motion.animateOptions(e)),up.destroy(n,e)):void 0},up.compiler("[up-tooltip], [up-tooltip-html]",function(t){return t.on("mouseover",function(){return e(t)}),t.on("mouseout",function(){return n()})}),up.on("click","body",function(){return n()}),up.on("up:framework:reset",n),up.bus.onEscape(function(){return n()}),up.on("up:framework:reset",u),{attach:e,close:n,open:function(){return a.error("up.tooltip.open no longer exists. Use up.tooltip.attach instead.")}}}(jQuery)}.call(this),function(){up.navigation=function(t){var e,n,r,o,u,i,a,s,l,c,p,f,d,m,h,v,g;return h=up.util,i=h.config({currentClasses:["up-current"]}),p=function(){return i.reset()},a=function(){var t;return t=i.currentClasses,t=t.concat(["up-current"]),t=h.uniq(t),t.join(" ")},e="up-active",n=["a","[up-href]","[up-alias]"],o=n.join(", "),u=function(){var t,e,r;for(r=[],t=0,e=n.length;e>t;t++)m=n[t],r.push(m+"[up-instant]");return r}().join(", "),r="."+e,c=function(t){return h.isPresent(t)?h.normalizeUrl(t,{search:!1,stripTrailingSlash:!0}):void 0},d=function(t){var e,n,r,o,u,i,a,s,l,p;for(s=[],i=["href","up-href","up-alias"],n=0,o=i.length;o>n;n++)if(e=i[n],l=h.presentAttr(t,e))for(p="up-alias"===e?l.split(" "):[l],r=0,u=p.length;u>r;r++)a=p[r],"#"!==a&&(a=c(a),s.push(a));return s},g=function(t){var e,n,r,o;return t=h.compact(t),r=function(t){return"*"===t.substr(-1)?n(t.slice(0,-1)):e(t)},e=function(e){return h.contains(t,e)},n=function(e){return h.detect(t,function(t){return 0===t.indexOf(e)})},o=function(t){return h.detect(t,r)},{matchesAny:o}},l=function(){var e,n;return e=g([c(up.browser.url()),c(up.modal.url()),c(up.modal.coveredUrl()),c(up.popup.url()),c(up.popup.coveredUrl())]),n=a(),h.each(t(o),function(r){var o,u;return o=t(r),u=d(o),e.matchesAny(u)?o.addClass(n):o.hasClass(n)&&0===o.closest(".up-destroying").length?o.removeClass(n):void 0})},f=function(t){return v(),t=s(t),t.addClass(e)},s=function(t){return h.presence(t.parents(o))||t},v=function(){return t(r).removeClass(e)},up.on("click",o,function(t,e){return h.isUnmodifiedMouseEvent(t)&&!e.is("[up-instant]")?f(e):void 0}),up.on("mousedown",u,function(t,e){return h.isUnmodifiedMouseEvent(t)?f(e):void 0}),up.on("up:fragment:inserted",function(){return v(),l()}),up.on("up:fragment:destroyed",function(t,e){return e.is(".up-modal, .up-popup")?l():void 0}),up.on("up:framework:reset",p),{config:i,defaults:function(){return h.error("up.navigation.defaults(...) no longer exists. Set values on he up.navigation.config property instead.")}}}(jQuery)}.call(this),function(){up.boot()}.call(this);
@@ -14,4 +14,6 @@
14
14
  #= require up/modal
15
15
  #= require up/tooltip
16
16
  #= require up/navigation
17
- #= require up/boot
17
+
18
+ up.boot()
19
+
@@ -32,13 +32,13 @@ up.browser = (($) ->
32
32
  error("Can't fake a #{method.toUpperCase()} request without Rails UJS")
33
33
 
34
34
  ###*
35
- Makes native `console.log`, `console.error`, etc. functions safer in multiple ways:
35
+ A cross-browser way to interact with `console.log`, `console.error`, etc.
36
36
 
37
- - Falls back to `console.log` if the output stream is not implemented
38
- - Prints substitution strings (e.g. `console.log("From %o to %o", "a", "b")`) as a single
39
- string if the browser console does not support substitution strings.
37
+ This function falls back to `console.log` if the output stream is not implemented.
38
+ It also prints substitution strings (e.g. `console.log("From %o to %o", "a", "b")`)
39
+ as a single string if the browser console does not support substitution strings.
40
40
 
41
- @method up.browser.puts
41
+ @function up.browser.puts
42
42
  @protected
43
43
  ###
44
44
  puts = (stream, args...) ->
@@ -114,10 +114,10 @@ up.browser = (($) ->
114
114
  Returns whether Up.js supports the current browser.
115
115
 
116
116
  Currently Up.js supports IE9 with jQuery 1.9+.
117
- On older browsers Up.js will prevent itself from booting, leaving you with
118
- a classic server-side application.
117
+ On older browsers Up.js will prevent itself from [booting](/up.boot),
118
+ leaving you with a classic server-side application.
119
119
 
120
- @method up.browser.isSupported
120
+ @function up.browser.isSupported
121
121
  ###
122
122
  isSupported = ->
123
123
  (!isIE8OrWorse()) && isRecentJQuery()
@@ -1,42 +1,40 @@
1
1
  ###*
2
- Framework events
3
- ================
2
+ Events
3
+ ======
4
4
 
5
- Up.js uses an internal event bus that you can use to hook into lifecycle events like "an HTML fragment into the DOM".
6
-
7
- This internal event bus might eventually be rolled into regular events that we trigger on `document`.
8
-
9
- \#\#\# `fragment:inserted` event
5
+ Up.js has a convenient way to [listen to DOM events](/up.on):
10
6
 
11
- This event is triggered after Up.js has inserted an HTML fragment into the DOM through mechanisms like [`[up-target]`](/a-up-target) or [`up.replace`](/up.replace):
12
-
13
- up.on('up:fragment:inserted', function($fragment) {
14
- console.log("Looks like we have a new %o!", $fragment);
7
+ up.on('click', 'button', function(event, $button) {
8
+ // $button is a jQuery collection containing
9
+ // the clicked <button> element
15
10
  });
16
11
 
17
- The event is triggered *before* Up has compiled the fragment with your [custom elements](/up.syntax).
18
- Upon receiving the event, Up.js will start compilation.
19
-
12
+ This is roughly equivalent to binding an event listener to `document`
13
+ using jQuery's [`on`](http://api.jquery.com/on/).
20
14
 
21
- \#\#\# `fragment:destroyed` event
15
+ - Event listeners on [unsupported browsers](/up.browser.isSupported) are silently discarded,
16
+ leaving you with an application without Javascript. This is typically preferable to
17
+ a soup of randomly broken Javascript in ancient browsers.
18
+ - A jQuery object with the target element is automatically passed to the event handler.
19
+ - You can [attach structured data](/up.on#attaching-structured-data) to observed elements.
20
+ - The call is shorter.
22
21
 
23
- This event is triggered when Up.js is destroying an HTML fragment, e.g. because it's being replaced
24
- with a new version or because someone explicitly called [`up.destroy`](/up.destroy):
22
+ Many Up.js interactions also emit DOM events that are prefixed with `up:`.
25
23
 
26
- up.on('up:fragment:destroyed', function($fragment) {
27
- console.log("Looks like we lost %o!", $fragment);
24
+ up.on('up:modal:opened', function(event) {
25
+ console.log('A new modal has just opened!');
28
26
  });
29
27
 
30
- After triggering this event, Up.js will remove the fragment from the DOM.
31
- In case the fragment destruction is animated, Up.js will complete the
32
- animation before removing the fragment from the DOM.
28
+ Events often have both present (`up:modal:open`) and past forms (`up:modal:opened`).
29
+ You can usually prevent an action by listening to the present form
30
+ and call `preventDefault()` on the `event` object:
33
31
 
34
-
35
- \#\#\# Incomplete documentation!
36
-
37
- We need to work on this page:
38
-
39
- - Decide if we wouldn't rather document events in the respective module (e.g. proxy).
32
+ up.on('up:modal:open', function(event) {
33
+ if (event.url == '/evil') {
34
+ // Prevent the modal from opening
35
+ event.preventDefault();
36
+ }
37
+ });
40
38
 
41
39
  @class up.bus
42
40
  ###
@@ -73,7 +71,7 @@ up.bus = (($) ->
73
71
  });
74
72
 
75
73
  Other than jQuery, Up.js will silently discard event listeners
76
- on [browsers that it doesn't support](/up.browser.isSupported).
74
+ on [unsupported browsers](/up.browser.isSupported).
77
75
 
78
76
 
79
77
  \#\#\#\# Attaching structured data
@@ -109,7 +107,7 @@ up.bus = (($) ->
109
107
  $(this).something();
110
108
  });
111
109
 
112
- @method up.on
110
+ @function up.on
113
111
  @param {String} events
114
112
  A space-separated list of event names to bind.
115
113
  @param {String} [selector]
@@ -157,7 +155,7 @@ up.bus = (($) ->
157
155
  up.emit('my:event', { foo: 'bar' });
158
156
  # Prints "bar" to the console
159
157
 
160
- @method up.emit
158
+ @function up.emit
161
159
  @param {String} eventName
162
160
  The name of the event.
163
161
  @param {Object} [eventProps={}]
@@ -176,11 +174,11 @@ up.bus = (($) ->
176
174
  $target.trigger(event)
177
175
  event
178
176
 
179
-
180
177
  ###*
181
- [Emits an event](/up.emit) and returns whether any listener has prevented the default action.
178
+ [Emits an event](/up.emit) and returns whether any listener
179
+ has prevented the default action.
182
180
 
183
- @method up.bus.nobodyPrevents
181
+ @function up.bus.nobodyPrevents
184
182
  @param {String} eventName
185
183
  @param {Object} eventProps
186
184
  @protected
@@ -189,10 +187,21 @@ up.bus = (($) ->
189
187
  event = emit(args...)
190
188
  not event.isDefaultPrevented()
191
189
 
192
- onEscape = (handler) ->
190
+ ###*
191
+ Registers an event listener to be called when the user
192
+ presses the `Escape` key.
193
+
194
+ @function up.bus.onEscape
195
+ @param {Function} listener
196
+ The listener function to register.
197
+ @return {Function}
198
+ A function that unbinds the event listeners when called.
199
+ @protected
200
+ ###
201
+ onEscape = (listener) ->
193
202
  live('keydown', 'body', (event) ->
194
203
  if u.escapePressed(event)
195
- handler(event)
204
+ listener(event)
196
205
  )
197
206
 
198
207
  ###*
@@ -225,11 +234,40 @@ up.bus = (($) ->
225
234
  Don't use this in production.
226
235
 
227
236
  @protected
228
- @method up.reset
237
+ @function up.reset
229
238
  ###
230
239
  emitReset = ->
231
240
  up.emit('up:framework:reset')
232
241
 
242
+ ###*
243
+ This event is [emitted](/up.emit) when Up.js is [reset](/up.reset) during unit tests.
244
+
245
+ @protected
246
+ @event up:framework:reset
247
+ ###
248
+
249
+ ###*
250
+ Boots the Up.js framework.
251
+ This is done automatically by including the Up.js Javascript.
252
+
253
+ Does nothing if the current browser is [not supported](/up.browser.isSupported).
254
+
255
+ Emits the [`up:framework:boot`](/up:framework:boot) event.
256
+
257
+ @protected
258
+ @function up.boot
259
+ ###
260
+ boot = ->
261
+ if up.browser.isSupported()
262
+ up.emit('up:framework:boot')
263
+
264
+ ###*
265
+ This event is [emitted](/up.emit) when Up.js [boots](/up.boot).
266
+
267
+ @event up:framework:boot
268
+ @protected
269
+ ###
270
+
233
271
  live 'up:framework:boot', snapshot
234
272
  live 'up:framework:reset', restoreSnapshot
235
273
 
@@ -238,9 +276,11 @@ up.bus = (($) ->
238
276
  nobodyPrevents: nobodyPrevents
239
277
  onEscape: onEscape
240
278
  emitReset: emitReset
279
+ boot: boot
241
280
 
242
281
  )(jQuery)
243
282
 
244
283
  up.on = up.bus.on
245
284
  up.emit = up.bus.emit
246
285
  up.reset = up.bus.emitReset
286
+ up.boot = up.bus.boot
@@ -54,7 +54,13 @@ up.flow = (($) ->
54
54
  Note how only `.two` has changed. The update for `.one` was
55
55
  discarded, since it didn't match the selector.
56
56
 
57
- @method up.replace
57
+ \#\#\#\# Events
58
+
59
+ Up.js will emit [`up:fragment:destroyed`](/up:fragment:destroyed) on the element
60
+ that was replaced and [`up:fragment:inserted`](/up:fragment:inserted) on the new
61
+ element that replaces it.
62
+
63
+ @function up.replace
58
64
  @param {String|Element|jQuery} selectorOrElement
59
65
  The CSS selector to update. You can also pass a DOM element or jQuery element
60
66
  here, in which case a selector will be inferred from the element's class and ID.
@@ -95,7 +101,7 @@ up.flow = (($) ->
95
101
 
96
102
  if !up.browser.canPushState() && options.history != false
97
103
  up.browser.loadPage(url, u.only(options, 'method')) unless options.preload
98
- return u.resolvedPromise()
104
+ return u.unresolvablePromise()
99
105
 
100
106
  request =
101
107
  url: url
@@ -155,7 +161,7 @@ up.flow = (($) ->
155
161
  Note how only `.two` has changed. The update for `.one` was
156
162
  discarded, since it didn't match the selector.
157
163
 
158
- @method up.flow.implant
164
+ @function up.flow.implant
159
165
  @protected
160
166
  @param {String} selector
161
167
  @param {String} html
@@ -295,7 +301,7 @@ up.flow = (($) ->
295
301
  Returns `undefined` if no element matches these conditions.
296
302
 
297
303
  @protected
298
- @method up.first
304
+ @function up.first
299
305
  @param {String} selector
300
306
  ###
301
307
  first = (selector) ->
@@ -316,8 +322,10 @@ up.flow = (($) ->
316
322
  The element is removed from the DOM.
317
323
  Note that if you choose to animate the element removal using `options.animate`,
318
324
  the element won't be removed until after the animation has completed.
325
+
326
+ Emits events [`up:fragment:destroy`](/up:fragment:destroy) and [`up:fragment:destroyed`](/up:fragment:destroyed).
319
327
 
320
- @method up.destroy
328
+ @function up.destroy
321
329
  @param {String|Element|jQuery} selectorOrElement
322
330
  @param {String} [options.url]
323
331
  @param {String} [options.title]
@@ -356,6 +364,32 @@ up.flow = (($) ->
356
364
  # callers by returning a Deferred that will never be resolved.
357
365
  $.Deferred()
358
366
 
367
+ ###*
368
+ Before a page fragment is being [destroyed](/up.destroy), this
369
+ event is [emitted](/up.emit) on the fragment.
370
+
371
+ If the destruction is animated, this event is emitted before the
372
+ animation begins.
373
+
374
+ @event up:fragment:destroy
375
+ @param {jQuery} event.$element
376
+ The page fragment that is about to be destroyed.
377
+ @param event.preventDefault()
378
+ Event listeners may call this method to prevent the fragment from being destroyed.
379
+ ###
380
+
381
+ ###*
382
+ This event is [emitted](/up.emit) right before a [destroyed](/up.destroy)
383
+ page fragment is removed from the DOM.
384
+
385
+ If the destruction is animated, this event is emitted after
386
+ the animation has ended.
387
+
388
+ @event up:fragment:destroyed
389
+ @param {jQuery} event.$element
390
+ The page fragment that is about to be removed from the DOM.
391
+ ###
392
+
359
393
  ###*
360
394
  Replaces the given element with a fresh copy fetched from the server.
361
395
 
@@ -368,7 +402,7 @@ up.flow = (($) ->
368
402
  Up.js remembers the URL from which a fragment was loaded, so you
369
403
  don't usually need to give an URL when reloading.
370
404
 
371
- @method up.reload
405
+ @function up.reload
372
406
  @param {String|Element|jQuery} selectorOrElement
373
407
  @param {Object} [options]
374
408
  See options for [`up.replace`](/up.replace)
@@ -32,7 +32,7 @@ up.form = (($) ->
32
32
  The response is parsed for a CSS selector and the matching elements will
33
33
  replace corresponding elements on the current page.
34
34
 
35
- @method up.submit
35
+ @function up.submit
36
36
  @param {Element|jQuery|String} formOrSelector
37
37
  A reference or selector for the form to submit.
38
38
  If the argument points to an element that is not a form,
@@ -177,7 +177,7 @@ up.form = (($) ->
177
177
  });
178
178
 
179
179
 
180
- @method up.observe
180
+ @function up.observe
181
181
  @param {Element|jQuery|String} fieldOrSelector
182
182
  @param {Function(value, $field)|String} options.change
183
183
  The callback to execute when the field's value changes.
@@ -273,8 +273,7 @@ up.form = (($) ->
273
273
  ...
274
274
  </form>
275
275
 
276
- @method form[up-target]
277
- @ujs
276
+ @selector form[up-target]
278
277
  @param {String} up-target
279
278
  The selector to [replace](/up.replace) if the form submission is successful (200 status code).
280
279
  @param {String} [up-fail-target]
@@ -329,10 +328,9 @@ up.form = (($) ->
329
328
 
330
329
  See up.observe.
331
330
 
332
- @method input[up-observe]
331
+ @selector input[up-observe]
333
332
  The code to run when the field's value changes.
334
- @ujs
335
- @param {String} up-observe
333
+ @param {String} up-observe
336
334
  ###
337
335
  up.compiler '[up-observe]', ($field) ->
338
336
  return observe($field)
@@ -1,6 +1,6 @@
1
1
  ###*
2
- Manipulating the browser history
3
- =======
2
+ Browser history
3
+ ===============
4
4
 
5
5
  \#\#\# Incomplete documentation!
6
6
 
@@ -17,8 +17,7 @@ up.history = (($) ->
17
17
  u = up.util
18
18
 
19
19
  ###*
20
- @method up.history.config
21
- @property
20
+ @property up.history.config
22
21
  @param {Array<String>} [config.popTargets=['body']]
23
22
  An array of CSS selectors to replace when the user goes
24
23
  back in history.
@@ -37,7 +36,7 @@ up.history = (($) ->
37
36
  were applied by [`up.history.push`](/up.history.replace) or
38
37
  [`up.history.replace`](/up.history.replace).
39
38
 
40
- @method up.history.previousUrl
39
+ @function up.history.previousUrl
41
40
  @protected
42
41
  ###
43
42
  previousUrl = undefined
@@ -54,7 +53,7 @@ up.history = (($) ->
54
53
  ###*
55
54
  Returns a normalized URL for the current history entry.
56
55
 
57
- @method up.history.url
56
+ @function up.history.url
58
57
  @protected
59
58
  ####
60
59
  currentUrl = ->
@@ -70,7 +69,7 @@ up.history = (($) ->
70
69
  nextPreviousUrl = url
71
70
 
72
71
  ###*
73
- @method up.history.replace
72
+ @function up.history.replace
74
73
  @param {String} url
75
74
  @param {Boolean} [options.force=false]
76
75
  @protected
@@ -79,7 +78,7 @@ up.history = (($) ->
79
78
  manipulate('replace', url, options)
80
79
 
81
80
  ###*
82
- @method up.history.push
81
+ @function up.history.push
83
82
  @param {String} url
84
83
  @protected
85
84
  ###
@@ -160,8 +159,7 @@ up.history = (($) ->
160
159
  Goback
161
160
  </a>
162
161
 
163
- @ujs
164
- @method [up-back]
162
+ @selector [up-back]
165
163
  ###
166
164
  up.compiler '[up-back]', ($link) ->
167
165
  if u.isPresent(previousUrl)
@@ -13,8 +13,7 @@ up.layout = (($) ->
13
13
  ###*
14
14
  Configures the application layout.
15
15
 
16
- @method up.layout.config
17
- @property
16
+ @property up.layout.config
18
17
  @param {Array<String>} [config.viewports]
19
18
  An array of CSS selectors that find viewports
20
19
  (containers that scroll their contents).
@@ -86,7 +85,7 @@ up.layout = (($) ->
86
85
  last frame before the next animation is started.
87
86
 
88
87
  @protected
89
- @method up.scroll
88
+ @function up.scroll
90
89
  @param {String|Element|jQuery} viewport
91
90
  The container element to scroll.
92
91
  @param {Number} scrollPos
@@ -134,7 +133,7 @@ up.layout = (($) ->
134
133
  u.resolvedDeferred()
135
134
 
136
135
  ###*
137
- @method up.layout.finishScrolling
136
+ @function up.layout.finishScrolling
138
137
  @private
139
138
  ###
140
139
  finishScrolling = (elementOrSelector) ->
@@ -143,7 +142,7 @@ up.layout = (($) ->
143
142
  existingScrolling.resolve()
144
143
 
145
144
  ###*
146
- @method up.layout.anchoredRight
145
+ @function up.layout.anchoredRight
147
146
  @private
148
147
  ###
149
148
  anchoredRight = ->
@@ -195,7 +194,7 @@ up.layout = (($) ->
195
194
  - give the element an attribute [`up-fixed="top"`](/up-fixed-top) or [`up-fixed="bottom"`](up-fixed-bottom)
196
195
  - [configure default options](/up.layout.config) for `fixedTop` or `fixedBottom`
197
196
 
198
- @method up.reveal
197
+ @function up.reveal
199
198
  @param {String|Element|jQuery} element
200
199
  @param {Number} [options.duration]
201
200
  @param {String} [options.easing]
@@ -270,7 +269,7 @@ up.layout = (($) ->
270
269
  Throws an error if no viewport could be found.
271
270
 
272
271
  @protected
273
- @method up.layout.viewportOf
272
+ @function up.layout.viewportOf
274
273
  @param {String|Element|jQuery} selectorOrElement
275
274
  ###
276
275
  viewportOf = (selectorOrElement) ->
@@ -284,7 +283,7 @@ up.layout = (($) ->
284
283
  given selector or element.
285
284
 
286
285
  @protected
287
- @method up.layout.viewportsWithin
286
+ @function up.layout.viewportsWithin
288
287
  @param {String|Element|jQuery} selectorOrElement
289
288
  @return jQuery
290
289
  ###
@@ -296,7 +295,7 @@ up.layout = (($) ->
296
295
  Returns a jQuery collection of all the viewports on the screen.
297
296
 
298
297
  @protected
299
- @method up.layout.viewports
298
+ @function up.layout.viewports
300
299
  ###
301
300
  viewports = ->
302
301
  viewportSelector().select()
@@ -310,7 +309,7 @@ up.layout = (($) ->
310
309
  up.layout.scrollTops()
311
310
  => { '.main': 0, '.sidebar': 73 }
312
311
 
313
- @method up.layout.scrollTops
312
+ @function up.layout.scrollTops
314
313
  @return Object<String, Number>
315
314
  @protected
316
315
  ###
@@ -325,7 +324,7 @@ up.layout = (($) ->
325
324
  topsBySelector
326
325
 
327
326
  ###*
328
- @method up.layout.fixedChildren
327
+ @function up.layout.fixedChildren
329
328
  @protected
330
329
  ###
331
330
  fixedChildren = (root = undefined) ->
@@ -346,7 +345,7 @@ up.layout = (($) ->
346
345
 
347
346
  Up.js automatically saves scroll positions whenever a fragment was updated on the page.
348
347
 
349
- @method up.layout.saveScroll
348
+ @function up.layout.saveScroll
350
349
  @param {String} [options.url]
351
350
  @param {Object<String, Number>} [options.tops]
352
351
  @protected
@@ -364,7 +363,7 @@ up.layout = (($) ->
364
363
  Up.js automatically restores scroll positions when the user presses the back button.
365
364
  You can disable this behavior by setting [`up.history.config.restoreScroll = false`](/up.history.config).
366
365
 
367
- @method up.layout.restoreScroll
366
+ @function up.layout.restoreScroll
368
367
  @param {jQuery} [options.around]
369
368
  If set, only restores viewports that are either an ancestor
370
369
  or descendant of the given element.
@@ -398,7 +397,7 @@ up.layout = (($) ->
398
397
 
399
398
  ###*
400
399
  @protected
401
- @method up.layout.revealOrRestoreScroll
400
+ @function up.layout.revealOrRestoreScroll
402
401
  @return {Deferred} A promise for when the revealing or scroll restauration ends
403
402
  ###
404
403
  revealOrRestoreScroll = (selectorOrElement, options) ->
@@ -406,6 +405,12 @@ up.layout = (($) ->
406
405
  if options.restoreScroll
407
406
  restoreScroll(around: $element)
408
407
  else if options.reveal
408
+ if options.source
409
+ parsed = u.parseUrl(options.source)
410
+ if parsed.hash && parsed.hash != '#'
411
+ id = parsed.hash.substr(1)
412
+ $target = u.findWithSelf($element, "##{id}, a[name='#{id}']")
413
+ $element = $target if $target.length
409
414
  reveal($element)
410
415
  else
411
416
  u.resolvedDeferred()
@@ -460,8 +465,7 @@ up.layout = (($) ->
460
465
  </p>
461
466
  </div>
462
467
 
463
- @method [up-viewport]
464
- @ujs
468
+ @selector [up-viewport]
465
469
  ###
466
470
 
467
471
  ###*
@@ -475,8 +479,7 @@ up.layout = (($) ->
475
479
 
476
480
  <div class="top-nav" up-fixed="top">...</div>
477
481
 
478
- @method [up-fixed=top]
479
- @ujs
482
+ @selector [up-fixed=top]
480
483
  ###
481
484
 
482
485
  ###*
@@ -490,8 +493,7 @@ up.layout = (($) ->
490
493
 
491
494
  <div class="bottom-nav" up-fixed="bottom">...</div>
492
495
 
493
- @method [up-fixed=bottom]
494
- @ujs
496
+ @selector [up-fixed=bottom]
495
497
  ###
496
498
 
497
499
  up.on 'up:framework:reset', reset