unpoly-rails 0.60.2 → 0.62.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of unpoly-rails might be problematic. Click here for more details.

Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/.ruby-version +1 -2
  3. data/CHANGELOG.md +105 -0
  4. data/Rakefile +5 -1
  5. data/dist/unpoly.js +199 -80
  6. data/dist/unpoly.min.js +4 -4
  7. data/lib/assets/javascripts/unpoly/browser.coffee.erb +10 -5
  8. data/lib/assets/javascripts/unpoly/classes/body_shifter.coffee +21 -12
  9. data/lib/assets/javascripts/unpoly/classes/compile_pass.coffee +2 -2
  10. data/lib/assets/javascripts/unpoly/classes/event_listener.coffee +1 -1
  11. data/lib/assets/javascripts/unpoly/classes/follow_variant.coffee +11 -3
  12. data/lib/assets/javascripts/unpoly/classes/params.coffee.erb +2 -1
  13. data/lib/assets/javascripts/unpoly/element.coffee.erb +4 -4
  14. data/lib/assets/javascripts/unpoly/event.coffee.erb +12 -4
  15. data/lib/assets/javascripts/unpoly/form.coffee.erb +77 -15
  16. data/lib/assets/javascripts/unpoly/fragment.coffee.erb +7 -3
  17. data/lib/assets/javascripts/unpoly/link.coffee.erb +1 -1
  18. data/lib/assets/javascripts/unpoly/modal.coffee.erb +4 -2
  19. data/lib/assets/javascripts/unpoly/motion.coffee.erb +1 -1
  20. data/lib/assets/javascripts/unpoly/protocol.coffee +1 -1
  21. data/lib/assets/javascripts/unpoly/syntax.coffee.erb +3 -4
  22. data/lib/assets/javascripts/unpoly/util.coffee.erb +2 -1
  23. data/lib/assets/javascripts/unpoly/viewport.coffee.erb +26 -2
  24. data/lib/unpoly/rails/version.rb +1 -1
  25. data/package.json +1 -1
  26. data/spec_app/Gemfile +2 -4
  27. data/spec_app/Gemfile.lock +23 -27
  28. data/spec_app/app/views/css_test/modal.erb +1 -1
  29. data/spec_app/app/views/css_test/popup.erb +1 -1
  30. data/spec_app/app/views/pages/start.erb +2 -1
  31. data/spec_app/app/views/replace_test/table.erb +16 -0
  32. data/spec_app/spec/javascripts/up/event_spec.js.coffee +34 -0
  33. data/spec_app/spec/javascripts/up/form_spec.js.coffee +137 -9
  34. data/spec_app/spec/javascripts/up/fragment_spec.js.coffee +36 -1
  35. data/spec_app/spec/javascripts/up/link_spec.js.coffee +7 -2
  36. data/spec_app/spec/javascripts/up/modal_spec.js.coffee +23 -1
  37. data/spec_app/spec/javascripts/up/popup_spec.js.coffee +2 -1
  38. data/spec_app/spec/javascripts/up/util_spec.js.coffee +14 -0
  39. metadata +4 -4
@@ -1,4 +1,4 @@
1
- (function(){window.up={version:"0.60.2"}}).call(this),function(){var t=[].slice,e={}.hasOwnProperty;up.util=function(){var n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w,k,S,E,T,A,F,C,P,x,O,R,M,j,D,L,U,q,N,K,_,B,H,z,V,I,Q,W,$,X,G,J,Y,Z,te,ee,ne,re,ie,oe,ue,se,ae,le,ce,pe,he,fe,de,me,ge,ve,ye,be,we,ke,Se,Ee,Te,Ae,Fe,Ce,Pe,xe,Oe,Re,Me,je,De,Le,Ue,qe,Ne,Ke,_e,Be,He,ze,Ve,Ie,Qe,We,$e,Xe,Ge,Je;return we=function(){},s=function(){return Promise.resolve()},fe=function(e){var n,r;return r=void 0,n=!1,function(){var i;return i=1<=arguments.length?t.call(arguments,0):[],n?r:(n=!0,r=e.apply(null,i))}},re=function(t,e){return e=e.toString(),(""===e||"80"===e)&&"http:"===t||"443"===e&&"https:"===t},Se=function(t,e){var n,r,i;return r=Ae(t),n=r.protocol+"//"+r.hostname,re(r.protocol,r.port)||(n+=":"+r.port),i=r.pathname,(null!=e?e.stripTrailingSlash:void 0)===!0&&(i=i.replace(/\/$/,"")),n+=i,(null!=e?e.search:void 0)!==!1&&(n+=r.search),(null!=e?e.hash:void 0)===!0&&(n+=r.hash),n},N=function(t){var e;return e=Ae(location.href),t=Ae(t),e.protocol!==t.protocol||e.hostname!==t.hostname},Ae=function(t){var e;return W(t)?e=up.element.get(t):t.pathname?e=t:(e=document.createElement("a"),e.href=t),e.hostname||(e.href=e.href),"/"!==e.pathname[0]&&(e=Te(e,"protocol","hostname","port","pathname","search","hash"),e.pathname="/"+e.pathname),e},ke=function(t){return t?t.toUpperCase():"GET"},me=function(t){return"GET"!==t&&"HEAD"!==t},u=function(){var n,r,i,o,u,s,a;for(s=arguments[0],u=2<=arguments.length?t.call(arguments,1):[],n=0,i=u.length;i>n;n++){o=u[n];for(r in o)e.call(o,r)&&(a=o[r],s[r]=a)}return s},o=Object.assign||u,Xe=function(t){var e,n,r;n=[];for(e in t)r=t[e],n.push(r);return n},Ee=Object.values||Xe,le=function(t){return ie(t)?function(e){return e[t]}:t},pe=function(t,e){var n,r,i,o,u;if(0===t.length)return[];for(e=le(e),u=[],r=n=0,o=t.length;o>n;r=++n)i=t[r],u.push(e(i,r));return u},he=function(t,e){var n;return n=function(t,e){return t[e[0]]=e[1],t},pe(t,e).reduce(n,{})},h=pe,f=function(t,e){var n,r;for(r=[];(n=t.next())&&!n.done;)r.push(e(n.value));return r},ze=function(t,e){var n,r,i,o;for(o=[],r=n=0,i=t-1;i>=0?i>=n:n>=i;r=i>=0?++n:--n)o.push(e(r));return o},J=function(t){return null===t},ue=function(t){return void 0===t},K=function(t){return!ue(t)},X=function(t){return ue(t)||J(t)},I=function(t){return!X(t)},U=function(t){return X(t)?!0:Z(t)&&t[U.key]?t[U.key]():ie(t)||$(t)?0===t.length:te(t)?0===Object.keys(t).length:!1},U.key="up.util.isBlank",Pe=function(t,e){return null==e&&(e=ee),e(t)?t:void 0},ee=function(t){return!U(t)},V=function(t){return"function"==typeof t},ie=function(t){return"string"==typeof t||t instanceof String},q=function(t){return"boolean"==typeof t||t instanceof Boolean},Y=function(t){return"number"==typeof t||t instanceof Number},te=function(t){return"object"==typeof t&&!J(t)&&(ue(t.constructor)||t.constructor===Object)},Z=function(t){var e;return e=typeof t,"object"===e&&!J(t)||"function"===e},_=function(t){return t instanceof Element},W=function(t){return up.browser.canJQuery()&&t instanceof jQuery},ne=function(t){return Z(t)&&V(t.then)},D=Array.isArray,z=function(t){return t instanceof FormData},Ve=function(t){return D(t)?t:Array.prototype.slice.call(t)},$=function(t){return D(t)||G(t)||j(t)||W(t)||Q(t)},G=function(t){return t instanceof NodeList},Q=function(t){return t instanceof HTMLCollection},j=function(t){return"[object Arguments]"===Object.prototype.toString.call(t)},Ge=function(t){return $(t)?t:X(t)?[]:[t]},c=function(t,e){var n,r,i;if(Z(t)&&t[c.key]?t=t[c.key]():$(t)?(t=Array.prototype.slice.call(t),n=!0):te(t)&&(t=o({},t),n=!0),n&&e)for(r in t)i=t[r],t[r]=c(i,!0);return t},c.key="up.util.copy",Date.prototype[c.key]=function(){return new Date(+this)},p=function(t){return c(t,!0)},de=function(){var e;return e=1<=arguments.length?t.call(arguments,0):[],o.apply(null,[{}].concat(t.call(e)))},ye=function(t,e){return e?de(e,t):t?c(t):{}},F=function(t,e){var n,r,i,o;for(o=void 0,r=0,i=t.length;i>r;r++)if(n=t[r],e(n)){o=n;break}return o},_e=function(t,e){return!!C(t,e)},C=function(t,e){var n,r,i,o,u;for(e=le(e),i=r=0,o=t.length;o>r;i=++r)if(n=t[i],u=e(n,i))return u;return void 0},b=function(t,e){var n,r,i,o,u;for(e=le(e),u=!0,i=r=0,o=t.length;o>r;i=++r)if(n=t[i],!e(n,i)){u=!1;break}return u},a=function(t){return A(t,I)},Qe=function(t){return t.length<2?t:Ne(i(t))},We=function(t,e){var n;return t.length<2?t:(e=le(e),n=new Set,A(t,function(t,r){var i;return i=e(t,r),n.has(i)?!1:(n.add(i),!0)}))},Ne=function(t){var e;return e=[],t.forEach(function(t){return e.push(t)}),e},i=function(t){var e;return e=new Set,t.forEach(function(t){return e.add(t)}),e},A=function(t,e){var n;return e=le(e),n=[],h(t,function(t,r){return e(t,r)?n.push(t):void 0}),n},Me=function(t,e){return e=le(e),A(t,function(t,n){return!e(t,n)})},M=function(t,e){return A(t,function(t){return l(e,t)})},Ue=function(t,e){return setTimeout(e,t)},Re=function(t){return setTimeout(t,0)},Oe=function(t){return Promise.resolve().then(t)},ce=function(t){return t[t.length-1]},g=function(t){var e;return e=t.key,"Escape"===e||"Esc"===e},l=function(t,e){return t.indexOf(e)>=0},Te=function(){var e,n,r,i,o,u;for(i=arguments[0],o=2<=arguments.length?t.call(arguments,1):[],e={},n=0,r=o.length;r>n;n++)u=o[n],u in i&&(e[u]=i[u]);return e},w=function(){var e,n,r,i,o,u;for(i=arguments[0],o=2<=arguments.length?t.call(arguments,1):[],e=c(i),n=0,r=o.length;r>n;n++)u=o[n],delete e[u];return e},se=function(t){return!(t.metaKey||t.shiftKey||t.ctrlKey)},ae=function(t){var e;return e=ue(t.button)||0===t.button,e&&se(t)},$e=function(){return new Promise(we)},De=function(t,e){var n;return n=t.indexOf(e),n>=0?(t.splice(n,1),e):void 0},y=function(){var e,n;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],V(n)?n.apply(null,e):n},T=function(){var e,n,r,i,o,u;throw e=1<=arguments.length?t.call(arguments,0):[],D(e[0])?(r=e[0],u=e[1]||{}):(r=e,u={}),(i=up.log).error.apply(i,r),up.event.onReady(function(){return up.toast.open(r,u)}),n=(o=up.log).sprintf.apply(o,r),new Error(n)},n={"&":"&","<":"<",">":">",'"':"""},m=function(t){return t.replace(/[&<>"]/g,function(t){return n[t]})},v=function(t){return t.replace(/[\\^$*+?.()|[\]{}]/g,"\\$&")},Ce=function(t,e){var n;return n=t[e],delete t[e],n},Le=function(t,e,n){return t[n]=Ce(t,e)},S=function(t,e){var n;return n=ce(t),e(n)?t.pop():void 0},k=function(t){return S(t,V)},E=function(t){return S(t,te)||{}},Fe=function(){var e,n;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],function(){var r;return r=1<=arguments.length?t.call(arguments,0):[],n.apply(this,e.concat(r))}},R=function(t){return t},xe=function(e){var n,r;return n=ve(),r=function(){var r,i;return r=1<=arguments.length?t.call(arguments,0):[],i=e.apply(null,r),n.resolve(i),i},r.promise=n.promise(),r},qe=function(t){return 1===t.length?t[0]:function(){return pe(t,function(t){return t()})}},O=function(t){var e,n,r;return e=t.getBoundingClientRect(),n=e.left+.5*e.width,r=.5*up.viewport.rootWidth(),r>n?"left":"right"},x=function(t){var e,n,r,i;for(e=[],n=0,r=t.length;r>n;n++)i=t[n],$(i)?e.push.apply(e,i):e.push(i);return e},P=function(t,e){return x(pe(t,e))},oe=function(t){return!!t},r=function(t,e){return t.then(e,e)},ge=function(t){return null!=t?t["catch"](we):void 0},ve=function(){var t,e,n;return n=void 0,e=void 0,t=new Promise(function(t,r){return n=t,e=r}),t.resolve=n,t.reject=e,t.promise=function(){return t},t},je=function(t){var e;try{return t()}catch(n){return e=n,Promise.reject(e)}},He=function(t,e){var n,r,i,o,u;for(e=le(e),u=0,i=0,o=t.length;o>i;i++)n=t[i],r=e(n),I(r)&&(u+=r);return u},L=function(t){return Object.prototype.hasOwnProperty(t)},B=function(t,e){var n,r;return(null!=t?t.valueOf:void 0)&&(t=t.valueOf()),(null!=e?e.valueOf:void 0)&&(e=e.valueOf()),typeof t!=typeof e?!1:$(t)&&$(e)?H(t,e):Z(t)&&t[B.key]?t[B.key](e):te(t)&&te(e)?(n=Object.keys(t),r=Object.keys(e),H(n,r)?b(n,function(n){return B(t[n],e[n])}):!1):t===e},B.key="up.util.isEqual",H=function(t,e){return t.length===e.length&&b(t,function(t,n){return B(t,e[n])})},Be=function(t,e){var n;return null==e&&(e=" "),n=t.split(e),n=pe(n,function(t){return t.trim()}),n=A(n,ee)},d=function(t,e){return e.length>t.length?!1:t.substring(t.length-e.length)===e},Ke=function(t){return.5>t?2*t*t:t*(4-2*t)-1},Je=function(t,e){return t instanceof e?t:new e(t)},be=0,Ie=function(){return be++},{parseUrl:Ae,normalizeUrl:Se,normalizeMethod:ke,methodAllowsPayload:me,assign:o,assignPolyfill:u,copy:c,deepCopy:p,merge:de,options:ye,fail:T,each:h,eachIterator:f,map:pe,flatMap:P,mapObject:he,times:ze,findResult:C,some:_e,any:function(){return up.legacy.warn("up.util.any() has been renamed to up.util.some()"),_e.apply(null,arguments)},every:b,all:function(){return up.legacy.warn("up.util.all() has been renamed to up.util.every()"),b.apply(null,arguments)},detect:function(){return up.legacy.warn("up.util.find() has been renamed to up.util.find()"),F.apply(null,arguments)},find:F,select:function(){return up.legacy.warn("up.util.select() has been renamed to up.util.filter()"),A.apply(null,arguments)},filter:A,reject:Me,intersect:M,compact:a,uniq:Qe,uniqBy:We,last:ce,isNull:J,isDefined:K,isUndefined:ue,isGiven:I,isMissing:X,isPresent:ee,isBlank:U,presence:Pe,isObject:Z,isFunction:V,isString:ie,isBoolean:q,isNumber:Y,isElement:_,isJQuery:W,isPromise:ne,isOptions:te,isArray:D,isFormData:z,isNodeList:G,isArguments:j,isList:$,isUnmodifiedKeyEvent:se,isUnmodifiedMouseEvent:ae,timer:Ue,setTimer:function(){return up.legacy.warn("up.util.setTimer() has been renamed to up.util.timer()"),Ue.apply(null,arguments)},escapePressed:g,contains:l,toArray:Ve,only:Te,except:w,unresolvablePromise:$e,remove:De,memoize:fe,error:T,pluckKey:Ce,renameKey:Le,extractOptions:E,extractCallback:k,noop:we,asyncNoop:s,identity:R,escapeHtml:m,escapeRegexp:v,sequence:qe,previewable:xe,evalOption:y,horizontalScreenHalf:O,flatten:x,isTruthy:oe,newDeferred:ve,always:r,muteRejection:ge,rejectOnError:je,isBasicObjectProperty:L,isCrossDomain:N,selectorForElement:function(){return up.legacy.warn("up.util.selectorForElement() has been renamed to up.element.toSelector()"),up.element.toSelector.apply(null,arguments)},nextFrame:function(){return up.legacy.warn("up.util.nextFrame() has been renamed to up.util.task()"),Re.apply(null,arguments)},task:Re,microtask:Oe,isEqual:B,splitValues:Be,endsWith:d,sum:He,wrapList:Ge,wrapValue:Je,simpleEase:Ke,values:Ee,partial:Fe,arrayToSet:i,setToArray:Ne,uid:Ie}}(),up.fail=up.util.fail}.call(this),function(){var t,e=[].slice;t=up.util,up.legacy=function(){var n,r,i,o;return n=function(e,n,r){return n in e?(i("Property { %s } has been renamed to { %s } (found in %o)",n,r,e),t.renameKey(e,n,r)):void 0},r=function(t,e){return Object.defineProperty(up,t,{get:function(){return i("up."+t+" has been renamed to up."+e),up[e]}})},o={},i=function(){var t,n,r;return n=arguments[0],t=2<=arguments.length?e.call(arguments,1):[],n="[DEPRECATION] "+n,n=(r=up.log).sprintf.apply(r,[n].concat(e.call(t))),o[n]?void 0:(o[n]=!0,up.warn(n))},{renamedModule:r,fixKey:n,warn:i}}()}.call(this),function(){up.browser=function(){var t,e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w;return y=up.util,m=function(t,e){var n,r;return r=y.merge(e,{url:t}),n=new up.Request(r),n.navigate()},v=function(t){return t.submit()},b=function(){return location.href},h=y.memoize(function(){return!window.atob}),f=y.memoize(function(){return"ActiveXObject"in window}),p=function(){return y.isDefined(history.pushState)&&"get"===up.protocol.initialRequestMethod()},r=y.memoize(function(){return"transition"in document.documentElement.style}),s=y.memoize(function(){return"oninput"in document.createElement("input")}),c=y.memoize(function(){return!!window.Promise}),u=y.memoize(function(){return!!window.FormData}),a=y.memoize(function(){return u()&&!!FormData.prototype.entries}),o=y.memoize(function(){return!!window.DOMParser}),e=y.memoize(function(){return window.console&&console.debug&&console.info&&console.warn&&console.error&&console.group&&console.groupCollapsed&&console.groupEnd}),i=y.memoize(function(){return!!window.customElements}),l=y.memoize(function(){return!!window.jQuery}),t=y.memoize(function(){return"requestAnimationFrame"in window}),n=y.memoize(function(){return"scrollRestoration"in history}),g=function(t){var e,n;return n=null!=(e=document.cookie.match(new RegExp(t+"=(\\w+)")))?e[1]:void 0,y.isPresent(n)&&(document.cookie=t+"=; expires=Thu, 01-Jan-70 00:00:01 GMT; path=/"),n},w=function(t){return t.preload||y.isBlank(t.confirm)||window.confirm(t.confirm)?Promise.resolve():Promise.reject(new Error("User canceled action"))},d=function(){return!h()&&e()&&o()&&u()&&r()&&s()&&c()&&t()},{url:b,navigate:m,submitForm:v,canPushState:p,canFormData:u,canInspectFormData:a,canCustomElements:i,canJQuery:l,canControlScrollRestoration:n,whenConfirmed:w,isSupported:d,popCookie:g,isIE11:f}}()}.call(this),function(){var t;t=up.util,up.Selector=function(){function e(t,e){this.selector=t,this.filterFn=e}var n,r;return n=new RegExp("\\:has\\(([^\\)]+)\\)$"),r=up.browser.isIE11()?"msMatchesSelector":"matches",e.prototype.matches=function(t){var e;return e=t[r](this.selector),this.filterFn&&e&&(e=this.filterFn(t)),e},e.prototype.descendants=function(e){var n;return n=e.querySelectorAll(this.selector),this.filterFn&&(n=t.filter(n,this.filterFn)),n},e.prototype.descendant=function(e){var n;return this.filterFn?(n=e.querySelectorAll(this.selector),t.find(n,this.filterFn)):e.querySelector(this.selector)},e.prototype.subtree=function(t){var e;return e=[],this.matches(t)&&e.push(t),e.push.apply(e,this.descendants(t)),e},e.prototype.closest=function(t){return t.closest&&!this.filterFn?t.closest(this.selector):this.closestPolyfill(t)},e.prototype.closestPolyfill=function(t){return this.matches(t,this.selector)?t:this.ancestor(t)},e.prototype.ancestor=function(t){var e;return(e=t.parentElement)?this.matches(e)?e:this.ancestor(e):void 0},e.parse=function(t){var e;return e=null,t=t.replace(n,function(t,n){return e=function(t){return t.querySelector(n)},""}),new this(t,e)},e}()}.call(this),function(){var t=[].slice;up.element=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w,k,S,E,T,A,F,C,P,x,O,R,M,j,D,L,U,q,N,K,_,B,H,z,V,I,Q,W,$,X,G,J,Y;return G=up.util,n={getAttribute:function(){return void 0}},q=function(t){return up.Selector.parse(t)},b=function(){var e,n,r,i;return e=1<=arguments.length?t.call(arguments,0):[],i=e.pop(),n=null!=(r=e[0])?r:document,q(i).descendant(n)},i=function(){var e,n,r,i;return e=1<=arguments.length?t.call(arguments,0):[],i=e.pop(),n=null!=(r=e[0])?r:document,q(i).descendants(n)},Q=function(t,e){return q(e).subtree(t)},l=function(t,e){return q(e).closest(t)},R=function(t,e){return q(e).matches(t)},o=function(t,e){return q(e).ancestor(t)},S=function(t){return G.isElement(t)?t:G.isString(t)?b(t):G.isJQuery(t)?(t.length>1&&up.fail("up.element.get(): Cannot cast multiple elements (%o) to a single element",t),t[0]):t},k=function(){var e;return e=1<=arguments.length?t.call(arguments,0):[],G.flatMap(e,Y)},Y=function(t){return G.isString(t)?i(t):G.wrapList(t)},N=function(t){var e;return t.remove?t.remove():(e=t.parentNode)?e.removeChild(t):void 0},A=function(t){return t.style.display="none"},I=function(t){return t.style.display=""},$=function(t,e){return null==e&&(e=!x(t)),e?I(t):A(t)},X=function(t,e,n){var r;return r=t.classList,null==n&&(n=!r.contains(e)),n?r.add(e):r.remove(e)},B=function(t,e){var n,r,i;r=[];for(n in e)i=e[n],r.push(t.setAttribute(n,i));return r},M=function(t){var e,n;return n="meta"+u("name",t),null!=(e=b(n))?e.getAttribute("content"):void 0},C=function(t,e){return t.insertAdjacentElement("beforebegin",e)},K=function(t,e){return t.parentElement.replaceChild(e,t)},m=function(t,e){var n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y;for(n=[],m=t.replace(/\[([\w-]+)(?:=(["'])?([^"'\]]*?)\2)?\]/g,function(t,e,r,i){return n.push(i||""),"["+e+"]"}),u=m.split(/[ >]+/),d=void 0,i=void 0,h=void 0,s=0,c=u.length;c>s;s++){if(o=u[s],v=void 0,o=o.replace(/^[\w-]+/,function(t){return v=t,""}),i=document.createElement(v||"div"),d||(d=i),o=o.replace(/\#([\w-]+)/,function(t,e){return i.id=e,""}),o=o.replace(/\.([\w-]+)/g,function(t,e){return i.classList.add(e),""}),n.length&&(o=o.replace(/\[([\w-]+)\]/g,function(t,e){return i.setAttribute(e,n.shift()),""})),""!==o)throw new Error("Cannot parse selector: "+t);null!=h&&h.appendChild(i),h=i}if(e){if(r=G.pluckKey(e,"class"))for(f=G.wrapList(r),a=0,p=f.length;p>a;a++)l=f[a],d.classList.add(l);(g=G.pluckKey(e,"style"))&&H(d,g),(y=G.pluckKey(e,"text"))&&(d.innerText=y),B(d,e)}return d},r=function(t,e,n){var r;return r=m(e,n),t.appendChild(r),r},W=function(t){var e,n,r,i,o,s,a,l,c;if(G.isString(t))return t;if(t=S(t),l=void 0,P(t))l=v(t);else if(c=t.getAttribute("up-id"))l=u("up-id",c);else if(i=t.getAttribute("id"))l=i.match(/^[a-z0-9\-_]+$/i)?"#"+i:u("id",i);else if(a=t.getAttribute("name"))l=v(t)+u("name",a);else if(n=G.presence(j(t)))for(l="",r=0,s=n.length;s>r;r++)o=n[r],l+="."+o;else l=(e=t.getAttribute("aria-label"))?u("aria-label",e):v(t);return l},P=function(t){return R(t,"html, body, head, title")},v=function(t){return t.tagName.toLowerCase()},u=function(t,e){return e=e.replace(/"/g,'\\"'),"["+t+'="'+e+'"]'},j=function(t){var e,n;return e=t.className,n=G.splitValues(e),G.reject(n,function(t){return t.match(/^up-/)})},f=function(t){var e;return e=new DOMParser,e.parseFromString(t,"text/html")},d=function(t){var e;return e=f(t),e.body.children[0]},E=function(){return document.documentElement},U=function(t){return t.offsetHeight},h=function(t){var e;return e=V(t,{transition:"none"}),U(t),e},T=function(t){var e,n,r,i;return i=G.isOptions(t)?t:c(t),r=i.transitionProperty,e=i.transitionDuration,n="none"===r||"all"===r&&0===e,!n},w=function(t){var e,n;return e=t.getBoundingClientRect(),t.style.position="absolute",n=t.offsetParent.getBoundingClientRect(),H(t,{left:e.left-p(t,"margin-left")-n.left,top:e.top-p(t,"margin-top")-n.top,right:"",bottom:""})},z=function(t,e){var n,r,i;r=[];for(n in e)i=e[n],r.push(G.isMissing(t.getAttribute(n))?t.setAttribute(n,i):void 0);return r},J=function(t){var e,n;return e=t.parentNode,n=G.toArray(t.childNodes),G.each(n,function(n){return e.insertBefore(n,t)}),e.removeChild(t)},s=function(t,e,n){var r;switch(r=t.getAttribute(e)){case"false":return!1;case"true":case"":case e:return!0;default:if(n)return r}},a=function(t,e){return s(t,e,!0)},L=function(t,e){var n;return n=t.getAttribute(e),(null!=n?n.match(/^[\d\.]+$/):void 0)?parseFloat(n):void 0},O=function(t,e){var n,r;return(n="function"==typeof t.getAttribute&&null!=(r=t.getAttribute(e))?r.trim():void 0)?JSON.parse(n):void 0},V=function(t,e){var n;return n=F(t,Object.keys(e)),H(t,e),function(){return H(t,n)}},c=function(t,e){var n;return n=window.getComputedStyle(t),y(n,e)},p=function(t,e){var n;return n=c(t,e),G.isGiven(n)?parseFloat(n):void 0},F=function(t,e){var n;return n=t.style,y(n,e)},y=function(e,n){return G.isString(n)?e[n]:G.only.apply(G,[e].concat(t.call(n)))},H=function(t,e){var n,r,i,o;i=t.style,r=[];for(n in e)o=e[n],o=D(n,o),r.push(i[n]=o);return r},D=function(t,n){return G.isMissing(n)?n="":e.has(t.toLowerCase().replace(/-/,""))&&(n=g(n)),n},e=G.arrayToSet(["top","right","bottom","left","padding","paddingtop","paddingright","paddingbottom","paddingleft","margin","margintop","marginright","marginbottom","marginleft","borderwidth","bordertopwidth","borderrightwidth","borderbottomwidth","borderleftwidth","width","height","maxwidth","maxheight","minwidth","minheight"]),g=function(t){return G.isNumber(t)||G.isString(t)&&/^\d+$/.test(t)?t.toString()+"px":t},_=function(t,e){var n,r;return G.isString(t)?(r=t,G.contains(r,"&")&&(G.isPresent(e)?(n=W(e),r=r.replace(/\&/,n)):up.fail("Found origin reference (%s) in selector %s, but no origin was given","&",r))):r=W(t),r},x=function(t){return!!(t.offsetWidth||t.offsetHeight||t.getClientRects().length)},{first:b,all:i,subtree:Q,closest:l,matches:R,ancestor:o,get:S,list:k,remove:N,toggle:$,toggleClass:X,hide:A,show:I,metaContent:M,replace:K,insertBefore:C,createFromSelector:m,setAttrs:B,affix:r,toSelector:W,isSingleton:P,attributeSelector:u,createDocumentFromHtml:f,createFromHtml:d,root:E,paint:U,concludeCssTransition:h,hasCssTransition:T,fixedToAbsolute:w,setMissingAttrs:z,unwrap:J,booleanAttr:s,numberAttr:L,jsonAttr:O,booleanOrStringAttr:a,setTemporaryStyle:V,style:c,styleNumber:p,inlineStyle:F,setStyle:H,resolveSelector:_,none:function(){return n},isVisible:x}}()}.call(this),function(){var t;t=up.element,up.BodyShifter=function(){function e(){this.unshiftFns=[]}return e.prototype.shift=function(){var e,n,r,i,o,u,s,a,l,c,p,h;if(up.viewport.rootHasVerticalScrollbar()){for(n=document.body,l=up.viewport.rootOverflowElement(),h=up.viewport.scrollbarWidth(),r=t.styleNumber(n,"paddingRight"),i=h+r,this.unshiftFns.push(t.setTemporaryStyle(n,{paddingRight:i})),this.unshiftFns.push(t.setTemporaryStyle(l,{overflowY:"hidden"})),c=up.viewport.anchoredRight(),p=[],s=0,a=c.length;a>s;s++)e=c[s],o=t.styleNumber(e,"right"),u=h+o,p.push(this.unshiftFns.push(t.setTemporaryStyle(e,{right:u})));return p}},e.prototype.unshift=function(){var t,e;for(t=[];e=this.unshiftFns.pop();)t.push(e());return t},e}()}.call(this),function(){var t,e=function(t,e){return function(){return t.apply(e,arguments)}},n=[].slice;t=up.util,up.Cache=function(){function r(t){this.config=null!=t?t:{},this.get=e(this.get,this),this.isFresh=e(this.isFresh,this),this.remove=e(this.remove,this),this.set=e(this.set,this),this.timestamp=e(this.timestamp,this),this.alias=e(this.alias,this),this.makeRoomForAnotherKey=e(this.makeRoomForAnotherKey,this),this.keys=e(this.keys,this),this.log=e(this.log,this),this.clear=e(this.clear,this),this.isCachable=e(this.isCachable,this),this.isEnabled=e(this.isEnabled,this),this.normalizeStoreKey=e(this.normalizeStoreKey,this),this.expiryMillis=e(this.expiryMillis,this),this.maxKeys=e(this.maxKeys,this),this.store=this.config.store||new up.store.Memory}return r.prototype.maxKeys=function(){return t.evalOption(this.config.size)},r.prototype.expiryMillis=function(){return t.evalOption(this.config.expiry)},r.prototype.normalizeStoreKey=function(t){return this.config.key?this.config.key(t):t.toString()},r.prototype.isEnabled=function(){return 0!==this.maxKeys()&&0!==this.expiryMillis()},r.prototype.isCachable=function(t){return this.config.cachable?this.config.cachable(t):!0},r.prototype.clear=function(){return this.store.clear()},r.prototype.log=function(){var t;return t=1<=arguments.length?n.call(arguments,0):[],this.config.logPrefix?(t[0]="["+this.config.logPrefix+"] "+t[0],up.puts.apply(up,t)):void 0},r.prototype.keys=function(){return this.store.keys()},r.prototype.makeRoomForAnotherKey=function(){var e,n,r,i;return i=t.copy(this.keys()),e=this.maxKeys(),e&&i.length>=e&&(n=void 0,r=void 0,t.each(i,function(t){return function(e){var i,o;return i=t.store.get(e),o=i.timestamp,!r||r>o?(n=e,r=o):void 0}}(this)),n)?this.store.remove(n):void 0},r.prototype.alias=function(e,n){var r;return r=this.get(e,{silent:!0}),t.isDefined(r)?this.set(n,r):void 0},r.prototype.timestamp=function(){return(new Date).valueOf()},r.prototype.set=function(t,e){var n,r;return this.isEnabled()&&this.isCachable(t)?(this.makeRoomForAnotherKey(),n=this.normalizeStoreKey(t),this.log("Setting entry %o to %o",n,e),r={timestamp:this.timestamp(),value:e},this.store.set(n,r)):void 0},r.prototype.remove=function(t){var e;return this.isCachable(t)?(e=this.normalizeStoreKey(t),this.store.remove(e)):void 0},r.prototype.isFresh=function(t){var e,n;return e=this.expiryMillis(),e?(n=this.timestamp()-t.timestamp,e>n):!0},r.prototype.get=function(t,e){var n;return null==e&&(e={}),this.isCachable(t)&&(n=this.store.get(this.normalizeStoreKey(t)))?this.isFresh(n)?(e.silent||this.log("Cache hit for '%s'",t),n.value):(e.silent||this.log("Discarding stale cache entry for '%s'",t),void this.remove(t)):void(e.silent||this.log("Cache miss for '%s'",t))},r}()}.call(this),function(){var t,e=[].slice;t=up.util,up.Record=function(){function n(e){t.assign(this,this.attributes(e))}return n.prototype.fields=function(){throw"Return an array of property names"},n.prototype.attributes=function(n){return null==n&&(n=this),t.only.apply(t,[n].concat(e.call(this.fields())))},n.prototype[""+t.copy.key]=function(){return this.variant()},n.prototype.variant=function(e){var n;return null==e&&(e={}),n=t.merge(this.attributes(),e),new this.constructor(n)},n.prototype[""+t.isEqual.key]=function(e){return e&&this.constructor===e.constructor&&t.isEqual(this.attributes(),e.attributes())},n}()}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}};e=up.util,t=up.element,up.CompilePass=function(){function r(t,e,r){this.root=t,this.compilers=e,null==r&&(r={}),this.isInSkippedSubtree=n(this.isInSkippedSubtree,this),this.skipSubtrees=r.skip,this.skipSubtrees.length&&this.root.querySelector("[up-keep]")||(this.skipSubtrees=void 0)}return r.prototype.compile=function(){return up.log.group("Compiling fragment %o",this.root,function(t){return function(){var e,n,r,i,o;for(i=t.compilers,o=[],n=0,r=i.length;r>n;n++)e=i[n],o.push(t.runCompiler(e));return o}}(this))},r.prototype.runCompiler=function(t){var n;return n=this.select(t.selector),n.length?up.log.group(t.isDefault?void 0:"Compiling '%s' on %d element(s)",t.selector,n.length,function(r){return function(){var i,o,u,s,a,l,c,p;if(t.batch)r.compileBatch(t,n);else for(i=0,s=n.length;s>i;i++)l=n[i],r.compileOneElement(t,l);if(u=t.keep){for(p=e.isString(u)?u:"",c=[],o=0,a=n.length;a>o;o++)l=n[o],c.push(l.setAttribute("up-keep",p));return c}}}(this)):void 0},r.prototype.compileOneElement=function(t,e){var n,r,i,o,u;return o=t.jQuery?jQuery(e):e,n=[o],1!==t.length&&(r=up.syntax.data(e),n.push(r)),u=t.apply(e,n),(i=this.destructorPresence(u))?up.destructor(e,i):void 0},r.prototype.compileBatch=function(t,n){var r,i,o,u;return o=t.jQuery?jQuery(n):n,r=[o],1!==t.length&&(i=e.map(n,up.syntax.data),r.push(i)),u=t.apply(n,r),this.destructorPresence(u)?up.fail("Compilers with { batch: true } cannot return destructors"):void 0},r.prototype.destructorPresence=function(t){return e.isFunction(t)||e.isArray(t)&&e.every(t,e.isFunction)?t:void 0},r.prototype.select=function(n){var r;return e.isFunction(n)&&(n=n()),r=t.subtree(this.root,n),this.skipSubtrees&&(r=e.reject(r,this.isInSkippedSubtree)),r},r.prototype.isInSkippedSubtree=function(t){var n;return e.contains(this.skipSubtrees,t)?!0:(n=t.parentElement)?this.isInSkippedSubtree(n):!1},r}()}.call(this),function(){var t;t=up.util,up.Config=function(){function e(t){this.blueprint=t,this.reset()}return e.prototype.reset=function(){return t.assign(this,t.deepCopy(this.blueprint))},e}()}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}};e=up.util,t=up.element,up.CssTransition=function(){function r(t,r,i){this.element=t,this.lastFrameKebab=r,this.startMotion=n(this.startMotion,this),this.resumeOldTransition=n(this.resumeOldTransition,this),this.pauseOldTransition=n(this.pauseOldTransition,this),this.finish=n(this.finish,this),this.onTransitionEnd=n(this.onTransitionEnd,this),this.listenToTransitionEnd=n(this.listenToTransitionEnd,this),this.stopFallbackTimer=n(this.stopFallbackTimer,this),this.startFallbackTimer=n(this.startFallbackTimer,this),this.onFinishEvent=n(this.onFinishEvent,this),this.listenToFinishEvent=n(this.listenToFinishEvent,this),this.start=n(this.start,this),this.lastFrameKeysKebab=Object.keys(this.lastFrameKebab),e.some(this.lastFrameKeysKebab,function(t){return t.match(/A-Z/)})&&up.fail("Animation keys must be kebab-case"),this.finishEvent=i.finishEvent,this.duration=i.duration,this.delay=i.delay,this.totalDuration=this.delay+this.duration,this.easing=i.easing,this.finished=!1}return r.prototype.start=function(){return 0===this.lastFrameKeysKebab.length?(this.finished=!0,Promise.resolve()):(this.deferred=e.newDeferred(),this.pauseOldTransition(),this.startTime=new Date,this.startFallbackTimer(),this.listenToFinishEvent(),this.listenToTransitionEnd(),this.startMotion(),this.deferred.promise())},r.prototype.listenToFinishEvent=function(){return this.finishEvent?this.stopListenToFinishEvent=this.element.addEventListener(this.finishEvent,this.onFinishEvent):void 0},r.prototype.onFinishEvent=function(t){return t.stopPropagation(),this.finish()},r.prototype.startFallbackTimer=function(){var t;return t=100,this.fallbackTimer=e.timer(this.totalDuration+t,function(t){return function(){return t.finish()}}(this))},r.prototype.stopFallbackTimer=function(){return clearTimeout(this.fallbackTimer)},r.prototype.listenToTransitionEnd=function(){return this.stopListenToTransitionEnd=up.on(this.element,"transitionend",this.onTransitionEnd)},r.prototype.onTransitionEnd=function(t){var n,r;if(t.target===this.element&&(r=new Date-this.startTime,r>.25*this.totalDuration&&(n=t.propertyName,e.contains(this.lastFrameKeysKebab,n))))return this.finish()},r.prototype.finish=function(){return this.finished?void 0:(this.finished=!0,this.stopFallbackTimer(),"function"==typeof this.stopListenToFinishEvent&&this.stopListenToFinishEvent(),"function"==typeof this.stopListenToTransitionEnd&&this.stopListenToTransitionEnd(),t.concludeCssTransition(this.element),this.resumeOldTransition(),this.deferred.resolve())},r.prototype.pauseOldTransition=function(){var e,n,r;return e=t.style(this.element,["transitionProperty","transitionDuration","transitionDelay","transitionTimingFunction"]),t.hasCssTransition(e)?("all"!==e.transitionProperty&&(r=e.transitionProperty.split(/\s*,\s*/),n=t.style(this.element,r),this.setOldTransitionTargetFrame=t.setTemporaryStyle(this.element,n)),this.setOldTransition=t.concludeCssTransition(this.element)):void 0},r.prototype.resumeOldTransition=function(){return"function"==typeof this.setOldTransitionTargetFrame&&this.setOldTransitionTargetFrame(),"function"==typeof this.setOldTransition?this.setOldTransition():void 0},r.prototype.startMotion=function(){return t.setStyle(this.element,{transitionProperty:Object.keys(this.lastFrameKebab).join(", "),transitionDuration:this.duration+"ms",transitionDelay:this.delay+"ms",transitionTimingFunction:this.easing}),t.setStyle(this.element,this.lastFrameKebab)},r}()}.call(this),function(){var t,e=function(t,e){return function(){return t.apply(e,arguments)}},n=[].slice;t=up.util,up.DivertibleChain=function(){function r(){this.asap=e(this.asap,this),this.poke=e(this.poke,this),this.allTasks=e(this.allTasks,this),this.promise=e(this.promise,this),this.reset=e(this.reset,this),this.reset()}return r.prototype.reset=function(){return this.queue=[],this.currentTask=void 0},r.prototype.promise=function(){var e;return e=t.last(this.allTasks()),(null!=e?e.promise:void 0)||Promise.resolve()},r.prototype.allTasks=function(){var t;return t=[],this.currentTask&&t.push(this.currentTask),t=t.concat(this.queue)},r.prototype.poke=function(){var e;return!this.currentTask&&(this.currentTask=this.queue.shift())?(e=this.currentTask(),t.always(e,function(t){return function(){return t.currentTask=void 0,t.poke()}}(this))):void 0},r.prototype.asap=function(){var e;return e=1<=arguments.length?n.call(arguments,0):[],this.queue=t.map(e,t.previewable),this.poke(),this.promise()},r}()}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}};e=up.util,t=up.element,up.EventListener=function(){function r(t,e,r,i,o){this.element=t,this.eventName=e,this.selector=r,this.callback=i,null==o&&(o={}),this.nativeCallback=n(this.nativeCallback,this),this.unbind=n(this.unbind,this),this.jQuery=o.jQuery,this.key=this.constructor.key(this.eventName,this.selector,this.callback),this.isDefault=up.framework.isBooting()}return r.prototype.bind=function(){var t,e;return e=(t=this.element).upEventListeners||(t.upEventListeners={}),e[this.key]&&up.fail("up.on(): The %o callback %o cannot be registered more than once",this.eventName,this.callback),e[this.key]=this,this.element.addEventListener(this.eventName,this.nativeCallback)},r.prototype.unbind=function(){var t;return(t=this.element.upEventListeners)&&delete t[this.key],this.element.removeEventListener(this.eventName,this.nativeCallback)},r.prototype.nativeCallback=function(e){var n,r,i,o,u;return i=e.target,this.selector&&(i=t.closest(i,this.selector)),i?(o=this.jQuery?jQuery(i):i,n=[e,o],u=this.callback.length,1!==u&&2!==u&&(r=up.syntax.data(i),n.push(r)),this.callback.apply(i,n)):void 0},r.parseArgs=function(t){var n,r,i,o;return t=e.copy(t),n=t.pop(),n.upUid||(n.upUid=e.uid()),r=t[0].addEventListener?[t.shift()]:e.isJQuery(t[0])||e.isList(t[0])&&t[0][0].addEventListener?t.shift():[document],i=e.splitValues(t.shift()),o=t[0],{elements:r,eventNames:i,selector:o,callback:n}},r.bind=function(t,n){var r,i,o,u,s,a,l,c,p,h,f;
2
- for(c=this.parseArgs(t),f=[],p=c.elements,o=0,s=p.length;s>o;o++)for(r=p[o],h=c.eventNames,u=0,a=h.length;a>u;u++)i=h[u],l=new this(r,i,c.selector,c.callback,n),l.bind(),f.push(l.unbind);return e.sequence(f)},r.key=function(t,e,n){return[t,e,n.upUid].join("|")},r.unbind=function(t){var e,n,r,i,o,u,s,a,l,c;for(a=this.parseArgs(t),l=a.elements,c=[],r=0,o=l.length;o>r;r++)e=l[r],s=e.upEventListeners,c.push(function(){var t,e,r,o;for(r=a.eventNames,o=[],t=0,e=r.length;e>t;t++)n=r[t],i=this.key(n,a.selector,a.callback),o.push(s&&(u=s[i])?u.unbind():void 0);return o}.call(this));return c},r.unbindNonDefault=function(t){var n,r,i,o,u,s;if(u=t.upEventListeners){for(o=e.values(u),s=[],n=0,r=o.length;r>n;n++)i=o[n],s.push(i.isDefault?void 0:i.unbind());return s}},r}()}.call(this),function(){var t,e=function(t,e){return function(){return t.apply(e,arguments)}};t=up.util,up.ExtractCascade=function(){function n(n,r){this.oldPlanNotFound=e(this.oldPlanNotFound,this),this.matchingPlanNotFound=e(this.matchingPlanNotFound,this),this.bestMatchingSteps=e(this.bestMatchingSteps,this),this.bestPreflightSelector=e(this.bestPreflightSelector,this),this.detectPlan=e(this.detectPlan,this),this.matchingPlan=e(this.matchingPlan,this),this.newPlan=e(this.newPlan,this),this.oldPlan=e(this.oldPlan,this);var i,o;this.options=t.options(r,{humanizedTarget:"selector",layer:"auto"}),null==(i=this.options).transition&&(i.transition=this.options.animation),null==(o=this.options).hungry&&(o.hungry=!0),this.candidates=this.buildCandidates(n),this.plans=t.map(this.candidates,function(e){return function(n,r){var i,o;return i=t.copy(e.options),r>0&&(i.transition=null!=(o=up.fragment.config.fallbackTransition)?o:e.options.transition),new up.ExtractPlan(n,i)}}(this))}return n.prototype.buildCandidates=function(e){var n;return n=[e,this.options.fallback,up.fragment.config.fallbacks],n=t.flatten(n),n=t.filter(n,t.isTruthy),n=t.uniq(n),(this.options.fallback===!1||this.options.provideTarget)&&(n=[n[0]]),n},n.prototype.oldPlan=function(){return this.detectPlan("oldExists")},n.prototype.newPlan=function(){return this.detectPlan("newExists")},n.prototype.matchingPlan=function(){return this.detectPlan("matchExists")},n.prototype.detectPlan=function(e){return t.find(this.plans,function(t){return t[e]()})},n.prototype.bestPreflightSelector=function(){var t;return t=this.options.provideTarget?this.plans[0]:this.oldPlan(),t?(t.resolveNesting(),t.selector()):this.oldPlanNotFound()},n.prototype.bestMatchingSteps=function(){var t;return(t=this.matchingPlan())?(t.addHungrySteps(),t.resolveNesting(),t.steps):this.matchingPlanNotFound()},n.prototype.matchingPlanNotFound=function(){var t,e;return this.newPlan()?this.oldPlanNotFound():(e=this.oldPlan()?"Could not find "+this.options.humanizedTarget+" in response":"Could not match "+this.options.humanizedTarget+" in current page and response",this.options.inspectResponse&&(t={label:"Open response",callback:this.options.inspectResponse}),up.fail([e+" (tried %o)",this.candidates],{action:t}))},n.prototype.oldPlanNotFound=function(){var t;return t=this.options.layer,"auto"===t&&(t="page, modal or popup"),up.fail("Could not find "+this.options.humanizedTarget+" in current "+t+" (tried %o)",this.candidates)},n}()}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}};e=up.util,t=up.element,up.ExtractPlan=function(){function r(e,r){this.addHungrySteps=n(this.addHungrySteps,this),this.parseSteps=n(this.parseSteps,this),this.selector=n(this.selector,this),this.resolveNesting=n(this.resolveNesting,this),this.addSteps=n(this.addSteps,this),this.matchExists=n(this.matchExists,this),this.newExists=n(this.newExists,this),this.oldExists=n(this.oldExists,this),this.findNew=n(this.findNew,this),this.findOld=n(this.findOld,this);var i;this.reveal=r.reveal,this.origin=r.origin,this.hungry=r.hungry,this.transition=r.transition,this.response=r.response,this.oldLayer=r.layer,i=t.resolveSelector(e,this.origin),this.parseSteps(i)}return r.prototype.findOld=function(){return e.each(this.steps,function(t){return function(e){return e.oldElement=up.fragment.first(e.selector,{layer:t.oldLayer})}}(this))},r.prototype.findNew=function(){return e.each(this.steps,function(t){return function(e){return e.newElement=t.response.first(e.selector)}}(this))},r.prototype.oldExists=function(){return this.findOld(),e.every(this.steps,function(t){return t.oldElement})},r.prototype.newExists=function(){return this.findNew(),e.every(this.steps,function(t){return t.newElement})},r.prototype.matchExists=function(){return this.oldExists()&&this.newExists()},r.prototype.addSteps=function(t){return this.steps=this.steps.concat(t)},r.prototype.resolveNesting=function(){var t;if(!(this.steps.length<2))return t=e.copy(this.steps),t=e.uniqBy(t,function(t){return t.oldElement}),t=e.filter(t,function(){return function(n,r){return e.every(t,function(t,e){var i,o;return e===r?!0:(i=n.oldElement,o=t.oldElement,t.pseudoClass||!o.contains(i))})}}(this)),t[0].reveal=this.steps[0].reveal,this.steps=t},r.prototype.selector=function(){return e.map(this.steps,"expression").join(", ")},r.prototype.parseSteps=function(t){var n,r;return n=/\ *,\ */,this.steps=[],r=t.split(n),e.each(r,function(t){return function(e,n){var r,i,o,u;return i=e.match(/^(.+?)(?:\:(before|after))?$/),i||up.fail('Could not parse selector literal "%s"',e),u=i[1],"html"===u&&(u="body"),o=i[2],r=0===n?t.reveal:!1,t.steps.push({expression:e,selector:u,pseudoClass:o,transition:t.transition,origin:t.origin,reveal:r})}}(this))},r.prototype.addHungrySteps=function(){var e,n,r,i,o,u,s,a,l;if(r=[],this.hungry)for(e=t.all(up.radio.hungrySelector()),l=null!=(s=up.radio.config.hungryTransition)?s:this.transition,i=0,o=e.length;o>i;i++)n=e[i],a=t.toSelector(n),(u=this.response.first(a))&&r.push({selector:a,oldElement:n,newElement:u,transition:l,reveal:!1,origin:null});return this.addSteps(r)},r}()}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}};e=up.util,t=up.element,up.FieldObserver=function(){function r(e,r,i){this.callback=i,this.check=n(this.check,this),this.readFieldValues=n(this.readFieldValues,this),this.requestCallback=n(this.requestCallback,this),this.isNewValues=n(this.isNewValues,this),this.scheduleValues=n(this.scheduleValues,this),this.scheduleTimer=n(this.scheduleTimer,this),this.cancelTimer=n(this.cancelTimer,this),this.stop=n(this.stop,this),this.start=n(this.start,this),this.fields=t.list(e),this.delay=r.delay,this.batch=r.batch}return r.prototype.start=function(){return this.scheduledValues=null,this.processedValues=this.readFieldValues(),this.currentTimer=void 0,this.callbackRunning=!1,this.unbind=up.on(this.fields,"input change",this.check)},r.prototype.stop=function(){return this.unbind(),this.cancelTimer()},r.prototype.cancelTimer=function(){return clearTimeout(this.currentTimer),this.currentTimer=void 0},r.prototype.scheduleTimer=function(){return this.cancelTimer(),this.currentTimer=e.timer(this.delay,function(t){return function(){return t.currentTimer=void 0,t.requestCallback()}}(this))},r.prototype.scheduleValues=function(t){return this.scheduledValues=t,this.scheduleTimer()},r.prototype.isNewValues=function(t){return!e.isEqual(t,this.processedValues)&&!e.isEqual(this.scheduledValues,t)},r.prototype.requestCallback=function(){var t,n,r,i,o;if(null!==this.scheduledValues&&!this.currentTimer&&!this.callbackRunning){if(r=this.changedValues(this.processedValues,this.scheduledValues),this.processedValues=this.scheduledValues,this.scheduledValues=null,this.callbackRunning=!0,t=[],this.batch)t.push(this.callback(r));else for(i in r)o=r[i],t.push(this.callback(o,i));return n=Promise.all(t),e.always(n,function(t){return function(){return t.callbackRunning=!1,t.requestCallback()}}(this))}},r.prototype.changedValues=function(t,n){var r,i,o,u,s,a,l;for(r={},u=Object.keys(t),u=u.concat(Object.keys(n)),u=e.uniq(u),i=0,s=u.length;s>i;i++)o=u[i],l=t[o],a=n[o],e.isEqual(l,a)||(r[o]=a);return r},r.prototype.readFieldValues=function(){return up.Params.fromFields(this.fields).toObject()},r.prototype.check=function(){var t;return t=this.readFieldValues(),this.isNewValues(t)?this.scheduleValues(t):void 0},r}()}.call(this),function(){}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}},r=[].slice;e=up.util,t=up.element,up.FollowVariant=function(){function i(t,r){this.matchesLink=n(this.matchesLink,this),this.followLink=n(this.followLink,this),this.fullSelector=n(this.fullSelector,this),this.onMousedown=n(this.onMousedown,this),this.onClick=n(this.onClick,this),this.followNow=r.follow,this.preloadLink=r.preload,this.selectors=e.splitValues(t,",")}return i.prototype.onClick=function(e,n){return up.link.shouldProcessEvent(e,n)?t.matches(n,"[up-instant]")?up.event.halt(e):(up.event.consumeAction(e),this.followLink(n)):up.link.allowDefault(e)},i.prototype.onMousedown=function(t,e){return up.link.shouldProcessEvent(t,e)?(up.event.consumeAction(t),this.followLink(e)):void 0},i.prototype.fullSelector=function(t){var e;return null==t&&(t=""),e=[],this.selectors.forEach(function(n){var r,i,o,u,s;for(o=["a","[up-href]"],u=[],r=0,i=o.length;i>r;r++)s=o[r],u.push(e.push(""+s+n+t));return u}),e.join(", ")},i.prototype.registerEvents=function(){return up.on("click",this.fullSelector(),function(t){return function(){var n;return n=1<=arguments.length?r.call(arguments,0):[],e.muteRejection(t.onClick.apply(t,n))}}(this)),up.on("mousedown",this.fullSelector("[up-instant]"),function(t){return function(){var n;return n=1<=arguments.length?r.call(arguments,0):[],e.muteRejection(t.onMousedown.apply(t,n))}}(this))},i.prototype.followLink=function(t,n){var r;return null==n&&(n={}),r=up.event.whenEmitted("up:link:follow",{log:"Following link",target:t}),r=r.then(function(e){return function(){return n.preload||up.feedback.start(t),e.followNow(t,n)}}(this)),n.preload||e.always(r,function(){return up.feedback.stop(t)}),r},i.prototype.matchesLink=function(e){return t.matches(e,this.fullSelector())},i}()}.call(this),function(){var t,e;e=up.util,t=up.element,up.HtmlParser=function(){function n(e){this.html=e,this.wrapNoscriptInHtml(),this.parsedDoc=t.createDocumentFromHtml(this.html)}return n.prototype.title=function(){var t;return null!=(t=this.parsedDoc.querySelector("head title"))?t.textContent:void 0},n.prototype.first=function(e){return t.first(this.parsedDoc,e)},n.prototype.prepareForInsertion=function(t){return this.unwrapNoscriptInElement(t)},n.prototype.wrapNoscriptInHtml=function(){var t;return t=/]*>((.|\s)*?)<\/noscript>/gi,this.html=this.html.replace(t,function(t){return function(n,r){return t.didWrapNoscript=!0,'
'}}(this))},n.prototype.unwrapNoscriptInElement=function(t){var e,n,r,i,o,u,s;if(this.didWrapNoscript){for(s=t.querySelectorAll(".up-noscript"),i=[],e=0,n=s.length;n>e;e++)u=s[e],o=u.getAttribute("data-html"),r=document.createElement("noscript"),r.textContent=o,i.push(u.parentNode.replaceChild(r,u));return i}},n}()}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}};e=up.util,t=up.element,up.MotionController=function(){function r(t){this.reset=n(this.reset,this),this.whileForwardingFinishEvent=n(this.whileForwardingFinishEvent,this),this.unmarkCluster=n(this.unmarkCluster,this),this.markCluster=n(this.markCluster,this),this.whenElementFinished=n(this.whenElementFinished,this),this.emitFinishEvent=n(this.emitFinishEvent,this),this.finishOneElement=n(this.finishOneElement,this),this.isActive=n(this.isActive,this),this.expandFinishRequest=n(this.expandFinishRequest,this),this.finish=n(this.finish,this),this.startFunction=n(this.startFunction,this),this.activeClass="up-"+t,this.dataKey="up-"+t+"-finished",this.selector="."+this.activeClass,this.finishEvent="up:"+t+":finish",this.finishCount=0,this.clusterCount=0}return r.prototype.startFunction=function(n,r,i){var o,u;return null==i&&(i={}),n=t.list(n),o=function(){return e.muteRejection(r())},i.trackMotion=null!=(u=i.trackMotion)?u:up.motion.isEnabled(),i.trackMotion===!1?e.microtask(o):(i.trackMotion=!1,this.finish(n).then(function(t){return function(){var e;return e=t.whileForwardingFinishEvent(n,o),e=e.then(function(){return t.unmarkCluster(n)}),t.markCluster(n,e),e}}(this)))},r.prototype.startMotion=function(t,e,n){var r,i,o,u;return null==n&&(n={}),o=function(){return e.start()},r=function(){return e.finish()},u=up.on(t,this.finishEvent,r),i=this.startFunction(t,o,n),i=i.then(u)},r.prototype.finish=function(t){var n;return this.finishCount++,0!==this.clusterCount&&up.motion.isEnabled()?(t=this.expandFinishRequest(t),n=e.map(t,this.finishOneElement),Promise.all(n)):Promise.resolve()},r.prototype.expandFinishRequest=function(n){return n?e.flatMap(n,function(e){return function(n){return t.list(t.closest(n,e.selector),t.all(n,e.selector))}}(this)):t.all(this.selector)},r.prototype.isActive=function(t){return t.classList.contains(this.activeClass)},r.prototype.finishOneElement=function(t){return this.emitFinishEvent(t),this.whenElementFinished(t)},r.prototype.emitFinishEvent=function(t,n){return null==n&&(n={}),n=e.merge({target:t,log:!1},n),up.emit(this.finishEvent,n)},r.prototype.whenElementFinished=function(t){return t[this.dataKey]||Promise.resolve()},r.prototype.markCluster=function(t,e){var n,r,i,o;for(this.clusterCount++,o=[],r=0,i=t.length;i>r;r++)n=t[r],n.classList.add(this.activeClass),o.push(n[this.dataKey]=e);return o},r.prototype.unmarkCluster=function(t){var e,n,r,i;for(this.clusterCount--,i=[],n=0,r=t.length;r>n;n++)e=t[n],e.classList.remove(this.activeClass),i.push(delete e[this.dataKey]);return i},r.prototype.whileForwardingFinishEvent=function(t,n){var r,i;return t.length<2?n():(r=function(n){return function(r){return r.forwarded?void 0:e.each(t,function(t){return t!==r.target&&n.isActive(t)?n.emitFinishEvent(t,{forwarded:!0}):void 0})}}(this),i=up.on(t,this.finishEvent,r),n().then(i))},r.prototype.reset=function(){return this.finish().then(function(t){return function(){return t.finishCount=0,t.clusterCount=0}}(this))},r}()}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}};e=up.util,t=up.element,up.Params=function(){function r(t){this.arrayEntryToQuery=n(this.arrayEntryToQuery,this),this.clear(),this.addAll(t)}return r.prototype.clear=function(){return this.entries=[]},r.prototype[""+e.copy.key]=function(){return new up.Params(this)},r.prototype.toObject=function(){var t,n,r,i,o,u,s;for(o={},u=this.entries,n=0,r=u.length;r>n;n++)t=u[n],i=t.name,s=t.value,e.isBasicObjectProperty(i)||(this.isArrayKey(i)?(o[i]||(o[i]=[]),o[i].push(s)):o[i]=s);return o},r.prototype.toArray=function(){return this.entries},r.prototype.toFormData=function(){var t,e,n,r,i;for(e=new FormData,i=this.entries,n=0,r=i.length;r>n;n++)t=i[n],e.append(t.name,t.value);return e},r.prototype.toQuery=function(){var t;return t=e.map(this.entries,this.arrayEntryToQuery),t=e.compact(t),t.join("&")},r.prototype.arrayEntryToQuery=function(t){var n,r;return r=t.value,this.isPrimitiveValue(r)?(n=encodeURIComponent(t.name),e.isGiven(r)&&(n+="=",n+=encodeURIComponent(r)),n):void 0},r.prototype.isPrimitiveValue=function(t){return e.isMissing(t)||e.isString(t)||e.isNumber(t)||e.isBoolean(t)},r.prototype.toURL=function(t){var n,r;return n=[t,this.toQuery()],n=e.filter(n,e.isPresent),r=e.contains(t,"?")?"&":"?",n.join(r)},r.prototype.add=function(t,e){return this.entries.push({name:t,value:e})},r.prototype.addAll=function(t){var n,r;return e.isMissing(t)?void 0:t instanceof this.constructor?(n=this.entries).push.apply(n,t.entries):e.isArray(t)?(r=this.entries).push.apply(r,t):e.isString(t)?this.addAllFromQuery(t):e.isFormData(t)?this.addAllFromFormData(t):e.isObject(t)?this.addAllFromObject(t):up.fail("Unsupport params type: %o",t)},r.prototype.addAllFromObject=function(t){var n,r,i,o,u;r=[];for(n in t)i=t[n],u=e.isArray(i)?i:[i],r.push(function(){var t,e,r;for(r=[],t=0,e=u.length;e>t;t++)o=u[t],r.push(this.add(n,o));return r}.call(this));return r},r.prototype.addAllFromQuery=function(t){var n,r,i,o,u,s,a,l;for(u=t.split("&"),a=[],n=0,r=u.length;r>n;n++)o=u[n],o?(s=o.split("="),i=s[0],l=s[1],i=decodeURIComponent(i),l=e.isGiven(l)?decodeURIComponent(l):null,a.push(this.add(i,l))):a.push(void 0);return a},r.prototype.addAllFromFormData=function(t){return e.eachIterator(t.entries(),function(t){return function(e){return t.add.apply(t,e)}}(this))},r.prototype.set=function(t,e){return this["delete"](t),this.add(t,e)},r.prototype["delete"]=function(t){return this.entries=e.reject(this.entries,this.matchEntryFn(t))},r.prototype.matchEntryFn=function(t){return function(e){return e.name===t}},r.prototype.get=function(t){return this.isArrayKey(t)?this.getAll(t):this.getFirst(t)},r.prototype.getFirst=function(t){var n;return n=e.find(this.entries,this.matchEntryFn(t)),null!=n?n.value:void 0},r.prototype.getAll=function(t){var n;return this.isArrayKey(t)?this.getAll(t):(n=e.map(this.entries,this.matchEntryFn(t)),e.map(n,"value"))},r.prototype.isArrayKey=function(t){return e.endsWith(t,"[]")},r.prototype[""+e.isBlank.key]=function(){return 0===this.entries.length},r.fromForm=function(e){var n;return(e=t.get(e))?(n=up.form.submissionFields(e),this.fromFields(n)):void 0},r.fromFields=function(t){var n,r,i,o,u;for(o=new this,u=e.wrapList(t),r=0,i=u.length;i>r;r++)n=u[r],o.addField(n);return o},r.prototype.addField=function(e){var n,r,i,o,u,s,a,l,c,p,h,f,d,m;if(l=new this.constructor,(e=t.get(e))&&(s=e.name)&&!e.disabled){if(d=e.tagName,m=e.type,"SELECT"===d){for(c=e.querySelectorAll("option"),h=[],r=0,o=c.length;o>r;r++)a=c[r],h.push(a.selected?this.add(s,a.value):void 0);return h}if("checkbox"!==m&&"radio"!==m){if("file"===m){for(p=e.files,f=[],i=0,u=p.length;u>i;i++)n=p[i],f.push(this.add(s,n));return f}return this.add(s,e.value)}if(e.checked)return this.add(s,e.value)}},r.prototype[""+e.isEqual.key]=function(t){return t&&this.constructor===t.constructor&&e.isEqual(this.entries,t.entries)},r.fromURL=function(t){var n,r,i;return n=new this,i=e.parseUrl(t),(r=i.search)&&(r=r.replace(/^\?/,""),n.addAll(r)),n},r.stripURL=function(t){return e.normalizeUrl(t,{search:!1})},r.wrap=function(t){return e.wrapValue(t,this)},r}()}.call(this),function(){var t=up.util;up.Rect=function(e){t.assign(this,t.only(e,"left","top","width","height"))},up.Rect.prototype={get bottom(){return this.top+this.height},get right(){return this.left+this.width}},up.Rect.fromElement=function(t){return new up.Rect(t.getBoundingClientRect())}}(),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}},r=function(t,e){function n(){this.constructor=t}for(var r in e)i.call(e,r)&&(t[r]=e[r]);return n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype,t},i={}.hasOwnProperty;e=up.util,t=up.element,up.Request=function(i){function o(t){this.cacheKey=n(this.cacheKey,this),this.isCachable=n(this.isCachable,this),this.buildResponse=n(this.buildResponse,this),this.isCrossDomain=n(this.isCrossDomain,this),this.csrfToken=n(this.csrfToken,this),this.navigate=n(this.navigate,this),this.send=n(this.send,this),this.isSafe=n(this.isSafe,this),this.transferSearchToParams=n(this.transferSearchToParams,this),this.transferParamsToUrl=n(this.transferParamsToUrl,this),this.extractHashFromUrl=n(this.extractHashFromUrl,this),this.normalize=n(this.normalize,this),up.legacy.fixKey(t,"data","params"),o.__super__.constructor.call(this,t),this.normalize()}return r(o,i),o.prototype.fields=function(){return["method","url","params","target","failTarget","headers","timeout","preload","cache"]},o.prototype.normalize=function(){return this.params=new up.Params(this.params),this.method=e.normalizeMethod(this.method),this.headers||(this.headers={}),this.extractHashFromUrl(),e.methodAllowsPayload(this.method)?void 0:this.transferParamsToUrl()},o.prototype.extractHashFromUrl=function(){var t;return t=e.parseUrl(this.url),this.hash=e.presence(t.hash),this.url=e.normalizeUrl(t,{hash:!1})},o.prototype.transferParamsToUrl=function(){return e.isBlank(this.params)?void 0:(this.url=this.params.toURL(this.url),this.params.clear())},o.prototype.transferSearchToParams=function(){var t;return t=up.Params.fromURL(this.url),e.isBlank(t)?void 0:(this.params.addAll(t),this.url=e.normalizeUrl(this.url,{search:!1}))},o.prototype.isSafe=function(){return up.proxy.isSafeMethod(this.method)},o.prototype.send=function(){return new Promise(function(t){return function(n,r){var i,o,u,s,a,l,c,p,h,f,d;l=new XMLHttpRequest,c=e.copy(t.headers),d=t.url,h=e.copy(t.params),p=up.proxy.wrapMethod(t.method,h),f=null,e.isBlank(h)||(delete c["Content-Type"],f=h.toFormData()),u=up.protocol.config,t.target&&(c[u.targetHeader]=t.target),t.failTarget&&(c[u.failTargetHeader]=t.failTarget),t.isCrossDomain()||c["X-Requested-With"]||(c["X-Requested-With"]="XMLHttpRequest"),(i=t.csrfToken())&&(c[u.csrfHeader]=i),l.open(p,d);for(o in c)a=c[o],l.setRequestHeader(o,a);return s=function(){var e;return e=t.buildResponse(l),e.isSuccess()?n(e):r(e)},l.onload=s,l.onerror=s,l.ontimeout=s,t.timeout&&(l.timeout=t.timeout),l.send(f)}}(this))},o.prototype.navigate=function(){var n,r,i,o,u;return this.transferSearchToParams(),o=t.affix(document.body,"form.up-page-loader"),n=function(e){return t.affix(o,"input[type=hidden]",e)},"GET"===this.method?u="GET":(n({name:up.protocol.config.methodParam,value:this.method}),u="POST"),t.setAttrs(o,{method:u,action:this.url}),(r=up.protocol.csrfParam())&&(i=this.csrfToken())&&n({name:r,value:i}),e.each(this.params.toArray(),n),t.hide(o),up.browser.submitForm(o)},o.prototype.csrfToken=function(){return this.isSafe()||this.isCrossDomain()?void 0:up.protocol.csrfToken()},o.prototype.isCrossDomain=function(){return e.isCrossDomain(this.url)},o.prototype.buildResponse=function(t){var e,n,r;return n={method:this.method,url:this.url,text:t.responseText,status:t.status,request:this,xhr:t},(r=up.protocol.locationFromXhr(t))&&(n.url=r,n.method=null!=(e=up.protocol.methodFromXhr(t))?e:"GET"),n.title=up.protocol.titleFromXhr(t),new up.Response(n)},o.prototype.isCachable=function(){return this.isSafe()&&!e.isFormData(this.params)},o.prototype.cacheKey=function(){return[this.url,this.method,this.params.toQuery(),this.target].join("|")},o.wrap=function(t){return e.wrapValue(t,this)},o}(up.Record)}.call(this),function(){var t,e=function(t,e){return function(){return t.apply(e,arguments)}},n=function(t,e){function n(){this.constructor=t}for(var i in e)r.call(e,i)&&(t[i]=e[i]);return n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype,t},r={}.hasOwnProperty;t=up.util,up.Response=function(r){function i(t){this.getHeader=e(this.getHeader,this),this.isFatalError=e(this.isFatalError,this),this.isError=e(this.isError,this),this.isSuccess=e(this.isSuccess,this),i.__super__.constructor.call(this,t)}return n(i,r),i.prototype.fields=function(){return["method","url","text","status","request","xhr","title"]},i.prototype.isSuccess=function(){return this.status&&this.status>=200&&this.status<=299},i.prototype.isError=function(){return!this.isSuccess()},i.prototype.isFatalError=function(){return this.isError()&&t.isBlank(this.text)},i.prototype.getHeader=function(t){return this.xhr.getResponseHeader(t)},i}(up.Record)}.call(this),function(){var t;t=up.element,up.RevealMotion=function(){function e(t,e){var n,r,i,o,u,s,a,l,c,p,h,f;this.element=t,null==e&&(e={}),n=up.viewport.config,this.viewport=null!=(r=e.viewport)?r:up.viewport.closest(this.element),up.legacy.fixKey(n,"snap","revealSnap"),f=n.revealSnap,this.snap=null!=(i=null!=(o=e.snap)?o:e.revealSnap)?i:f,this.snap===!1?this.snap=0:this.snap===!0&&(this.snap=f),this.padding=null!=(u=null!=(s=e.padding)?s:e.revealPadding)?u:n.revealPadding,this.top=e.top,this.fixedTop=null!=(a=e.fixedTop)?a:n.fixedTop,this.fixedBottom=null!=(l=e.fixedBottom)?l:n.fixedBottom,this.speed=null!=(c=null!=(p=e.speed)?p:e.scrollSpeed)?c:n.scrollSpeed,this.behavior=null!=(h=e.behavior)?h:e.scrollBehavior}return e.prototype.start=function(){var t,e,n,r,i;return e=up.Rect.fromElement(this.element),i=this.getViewportRect(this.viewport),this.addPadding(e),this.substractObstructions(i),i.height<=0?Promise.reject(new Error("Viewport has no visible area")):(r=this.viewport.scrollTop,n=r,this.top||e.height>i.height?(t=e.top-i.top,n+=t):e.topi.bottom&&(n+=e.bottom-i.bottom),nr;r++)s=l[r],a=up.Rect.fromElement(s),n=a.bottom-e.top,n>0&&(e.top+=n,e.height-=n);for(c=t.list.apply(t,this.fixedBottom),p=[],i=0,u=c.length;u>i;i++)s=c[i],a=up.Rect.fromElement(s),n=e.bottom-a.top,p.push(n>0?e.height-=n:void 0);return p},e.prototype.finish=function(){var t;return null!=(t=this.scrollMotion)?t.finish():void 0},e}()}.call(this),function(){var t,e=function(t,e){return function(){return t.apply(e,arguments)}};t=up.util,up.ScrollMotion=function(){function n(t,n,i){var o,u,s,a;this.scrollable=t,this.targetTop=n,null==i&&(i={}),this.finish=e(this.finish,this),this.cancel=e(this.cancel,this),this.animationFrame=e(this.animationFrame,this),this.start=e(this.start,this),this.behavior=null!=(o=null!=(u=i.behavior)?u:i.scrollBehavior)?o:"auto",this.speed=(null!=(s=null!=(a=i.speed)?a:i.scrollSpeed)?s:up.viewport.config.scrollSpeed)*r}var r;return r=.065,n.prototype.start=function(){return new Promise(function(t){return function(e,n){return t.resolve=e,t.reject=n,"smooth"===t.behavior&&up.motion.isEnabled()?t.startAnimation():t.finish()}}(this))},n.prototype.startAnimation=function(){return this.startTime=Date.now(),this.startTop=this.scrollable.scrollTop,this.topDiff=this.targetTop-this.startTop,this.duration=Math.sqrt(Math.abs(this.topDiff))/this.speed,requestAnimationFrame(this.animationFrame)},n.prototype.animationFrame=function(){var e,n,r;if(!this.settled)return this.frameTop&&Math.abs(this.frameTop-this.scrollable.scrollTop)>1.5&&this.cancel("Animation aborted due to user intervention"),e=Date.now(),n=e-this.startTime,r=Math.min(n/this.duration,1),this.frameTop=this.startTop+t.simpleEase(r)*this.topDiff,Math.abs(this.targetTop-this.frameTop)<.3?this.finish():(this.scrollable.scrollTop=this.frameTop,requestAnimationFrame(this.animationFrame))},n.prototype.cancel=function(t){return this.settled=!0,this.reject(new Error(t))},n.prototype.finish=function(){return this.settled=!0,this.scrollable.scrollTop=this.targetTop,this.resolve()},n}()}.call(this),function(){var t,e=function(t,e){return function(){return t.apply(e,arguments)}};up.store||(up.store={}),t=up.util,up.store.Memory=function(){function n(){this.values=e(this.values,this),this.keys=e(this.keys,this),this.remove=e(this.remove,this),this.set=e(this.set,this),this.get=e(this.get,this),this.clear=e(this.clear,this),this.clear()}return n.prototype.clear=function(){return this.data={}},n.prototype.get=function(t){return this.data[t]},n.prototype.set=function(t,e){return this.data[t]=e},n.prototype.remove=function(t){return delete this.data[t]},n.prototype.keys=function(){return Object.keys(this.data)},n.prototype.values=function(){return t.values(this.data)},n}()}.call(this),function(){var t,e=function(t,e){return function(){return t.apply(e,arguments)}},n=function(t,e){function n(){this.constructor=t}for(var i in e)r.call(e,i)&&(t[i]=e[i]);return n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype,t},r={}.hasOwnProperty;t=up.util,up.store.Session=function(t){function r(t){this.saveToSessionStorage=e(this.saveToSessionStorage,this),this.loadFromSessionStorage=e(this.loadFromSessionStorage,this),this.remove=e(this.remove,this),this.set=e(this.set,this),this.clear=e(this.clear,this),this.rootKey=t,this.loadFromSessionStorage()}return n(r,t),r.prototype.clear=function(){return r.__super__.clear.call(this),this.saveToSessionStorage()},r.prototype.set=function(t,e){return r.__super__.set.call(this,t,e),this.saveToSessionStorage()},r.prototype.remove=function(t){return r.__super__.remove.call(this,t),this.saveToSessionStorage()},r.prototype.loadFromSessionStorage=function(){var t;try{(t="undefined"!=typeof sessionStorage&&null!==sessionStorage?sessionStorage.getItem(this.rootKey):void 0)&&(this.data=JSON.parse(t))}catch(e){}return this.data||(this.data={})},r.prototype.saveToSessionStorage=function(){var t;t=JSON.stringify(this.data);try{return"undefined"!=typeof sessionStorage&&null!==sessionStorage?sessionStorage.setItem(this.rootKey,t):void 0}catch(e){}},r}(up.store.Memory)}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}};e=up.util,t=up.element,up.Tether=function(){function r(e){this.sync=n(this.sync,this),this.scheduleSync=n(this.scheduleSync,this);var r;this.anchor=e.anchor,r=e.position.split("-"),this.position=r[0],this.align=r[1],this.align?up.legacy.warn("The position value %o is deprecated. Use %o instead.",e.position,this.describeConstraints()):this.align=e.align,this.alignAxis="top"===this.position||"bottom"===this.position?"horizontal":"vertical",this.viewport=up.viewport.closest(this.anchor),this.parent=this.viewport===t.root()?document.body:this.viewport,this.syncOnScroll=!this.viewport.contains(this.anchor.offsetParent),this.root=t.affix(this.parent,".up-bounds"),this.setBoundsOffset(0,0),this.changeEventSubscription("on")}return r.prototype.destroy=function(){return t.remove(this.root),this.changeEventSubscription("off")},r.prototype.changeEventSubscription=function(t){return up[t](window,"resize",this.scheduleSync),this.syncOnScroll?up[t](this.viewport,"scroll",this.scheduleSync):void 0},r.prototype.scheduleSync=function(){return clearTimeout(this.syncTimer),this.syncTimer=e.task(this.sync)},r.prototype.sync=function(){var t,n,r,i;switch(r=this.root.getBoundingClientRect(),t=this.anchor.getBoundingClientRect(),n=void 0,i=void 0,this.alignAxis){case"horizontal":i=function(){switch(this.position){case"top":return t.top-r.height;case"bottom":return t.top+t.height}}.call(this),n=function(){switch(this.align){case"left":return t.left;case"center":return t.left+.5*(t.width-r.width);case"right":return t.left+t.width-r.width}}.call(this);break;case"vertical":i=function(){switch(this.align){case"top":return t.top;case"center":return t.top+.5*(t.height-r.height);case"bottom":return t.top+t.height-r.height}}.call(this),n=function(){switch(this.position){case"left":return t.left-r.width;case"right":return t.left+t.width}}.call(this)}return e.isDefined(n)||e.isDefined(i)?this.moveTo(n,i):up.fail("Invalid tether constraints: %o",this.describeConstraints())},r.prototype.describeConstraints=function(){return{position:this.position,align:this.align}},r.prototype.moveTo=function(t,e){var n;return n=this.root.getBoundingClientRect(),this.setBoundsOffset(t-n.left+this.offsetLeft,e-n.top+this.offsetTop)},r.prototype.setBoundsOffset=function(e,n){return this.offsetLeft=e,this.offsetTop=n,t.setStyle(this.root,{left:e,top:n})},r}()}.call(this),function(){var t,e=function(t,e){return function(){return t.apply(e,arguments)}};t=up.util,up.UrlSet=function(){function n(n,r){this.urls=n,null==r&&(r={}),this[""+t.isEqual.key]=e(this[""+t.isEqual.key],this),this.matchesAny=e(this.matchesAny,this),this.doesMatchPattern=e(this.doesMatchPattern,this),this.doesMatchFully=e(this.doesMatchFully,this),this.matches=e(this.matches,this),this.normalizeUrl=r.normalizeUrl||t.normalizeUrl,this.urls=t.map(this.urls,this.normalizeUrl),this.urls=t.compact(this.urls)}return n.prototype.matches=function(t){return t.indexOf("*")>=0?this.doesMatchPattern(t):this.doesMatchFully(t)},n.prototype.doesMatchFully=function(e){return t.contains(this.urls,e)},n.prototype.doesMatchPattern=function(e){var n;return n="__ASTERISK__",e=e.replace(/\*/g,n),e=t.escapeRegexp(e),e=e.replace(new RegExp(n,"g"),".*?"),e=new RegExp("^"+e+"$"),t.find(this.urls,function(t){return e.test(t)})},n.prototype.matchesAny=function(e){return t.find(e,this.matches)},n.prototype[""+t.isEqual.key]=function(e){return t.isEqual(this.urls,null!=e?e.urls:void 0)},n}()}.call(this),function(){up.framework=function(){var t,e,n,r;return r=up.util,n=!0,e=function(){return up.emit("up:framework:reset",{log:"Resetting framework"})
3
- },t=function(){return up.browser.isSupported()?(up.emit("up:framework:booted",{log:"Framework booted"}),n=!1,up.event.onReady(function(){return r.task(function(){return up.emit("up:app:boot",{log:"Booting user application"}),up.emit("up:app:booted",{log:"User application booted"})})})):"function"==typeof console.log?console.log("Unpoly doesn't support this browser. Framework was not booted."):void 0},{reset:e,boot:t,isBooting:function(){return n}}}()}.call(this),function(){var t=[].slice;up.event=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g;return d=up.util,u=up.element,f=function(){var t,e,n,r,i;for(r=[window,document,document.documentElement,document.body],i=[],e=0,n=r.length;n>e;e++)t=r[e],i.push(up.EventListener.unbindNonDefault(t));return i},n=function(){var e;return e=1<=arguments.length?t.call(arguments,0):[],r(e)},e=function(){var e;return e=1<=arguments.length?t.call(arguments,0):[],r(e,{jQuery:!0})},r=function(t,e){return up.browser.isSupported()?up.EventListener.bind(t,e):function(){}},m=function(){var e;return e=1<=arguments.length?t.call(arguments,0):[],up.EventListener.unbind(e)},s=function(){var e,n,r,o,s,a;return e=1<=arguments.length?t.call(arguments,0):[],e[0].addEventListener?s=e.shift():d.isJQuery(e[0])&&(s=u.get(e.shift())),r=e[0],o=e[1]||{},(a=d.pluckKey(o,"target"))&&(s=a),null==s&&(s=document),l(r,o),n=i(r,o),s.dispatchEvent(n),n},i=function(t,e){var n;return n=document.createEvent("Event"),n.initEvent(t,!0,!0),d.assign(n,e),up.browser.isIE11()&&(n.preventDefault=function(){return Object.defineProperty(n,"defaultPrevented",{get:function(){return!0}})}),n},l=function(e,n){var r,i,o;if(up.log.isEnabled())return r=d.pluckKey(n,"log"),d.isArray(r)?(o=r,r=o[0],i=2<=o.length?t.call(o,1):[]):i=[],d.isString(r)?d.isPresent(n)?up.puts.apply(up,[r+" (%s (%o))"].concat(t.call(i),[e],[n])):up.puts.apply(up,[r+" (%s)"].concat(t.call(i),[e])):r===!0?d.isPresent(n)?up.puts("Event %s (%o)",e,n):up.puts("Event %s",e):void 0},c=function(){var e,n;return e=1<=arguments.length?t.call(arguments,0):[],n=s.apply(null,e),!n.defaultPrevented},g=function(){var e;return e=1<=arguments.length?t.call(arguments,0):[],new Promise(function(t,n){return c.apply(null,e)?t():n(new Error("Event "+e[0]+" was prevented"))})},p=function(t){return n("keydown","body",function(e){return d.escapePressed(e)?t(e):void 0})},a=function(t){return t.stopImmediatePropagation(),t.stopPropagation(),t.preventDefault()},o=function(t){return a(t),"up:action:consumed"!==t.type?s(t.target,"up:action:consumed",{log:!1}):void 0},h=function(t){return"loading"!==document.readyState?t():document.addEventListener("DOMContentLoaded",t)},n("up:framework:reset",f),{on:n,$on:e,off:m,emit:s,nobodyPrevents:c,whenEmitted:g,onEscape:p,halt:a,consumeAction:o,onReady:h}}(),up.on=up.event.on,up.$on=up.event.$on,up.off=up.event.off,up.$off=up.event.off,up.emit=up.event.emit,up.legacy.renamedModule("bus","event")}.call(this),function(){}.call(this),function(){up.protocol=function(){var t,e,n,r,i,o,u,s,a,l;return l=up.util,r=up.element,o=function(e){return e.getResponseHeader(t.locationHeader)||e.responseURL},a=function(e){return e.getResponseHeader(t.titleHeader)},u=function(e){var n;return(n=e.getResponseHeader(t.methodHeader))?l.normalizeMethod(n):void 0},i=l.memoize(function(){var e;return e=up.browser.popCookie(t.methodCookie),(e||"get").toLowerCase()}),up.on("up:framework:booted",i),t=new up.Config({targetHeader:"X-Up-Target",failTargetHeader:"X-Up-Fail-Target",locationHeader:"X-Up-Location",validateHeader:"X-Up-Validate",titleHeader:"X-Up-Title",methodHeader:"X-Up-Method",methodCookie:"_up_method",methodParam:"_method",csrfParam:function(){return r.metaContent("csrf-param")},csrfToken:function(){return r.metaContent("csrf-token")},csrfHeader:"X-CSRF-Token"}),e=function(){return l.evalOption(t.csrfParam)},n=function(){return l.evalOption(t.csrfToken)},s=function(){return t.reset()},up.on("up:framework:reset",s),{config:t,reset:s,locationFromXhr:o,titleFromXhr:a,methodFromXhr:u,csrfParam:e,csrfToken:n,initialRequestMethod:i}}()}.call(this),function(){var t=[].slice;up.log=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w;return b=up.util,n=up.browser,d=new up.store.Session("up.log"),i=new up.Config({prefix:"[UP] ",enabled:d.get("enabled"),collapse:!1}),f=function(){return i.reset()},c=function(t){return""+i.prefix+t},r=function(){var e,n;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],console[n].apply(console,e)},e=/\%[odisf]/g,y=function(t){var e,n,r,i,o,u,s,a;if(o=200,n="",b.isString(t))s=t.replace(/[\n\r\t ]+/g," "),s=s.replace(/^[\n\r\t ]+/,""),s=s.replace(/[\n\r\t ]$/,""),s='"'+s+'"',n='"';else if(b.isUndefined(t))s="undefined";else if(b.isNumber(t)||b.isFunction(t))s=t.toString();else if(b.isArray(t))s="["+b.map(t,y).join(", ")+"]",n="]";else if(b.isJQuery(t))s="$("+b.map(t,y).join(", ")+")",n=")";else if(b.isElement(t)){for(s="<"+t.tagName.toLowerCase(),u=["id","name","class"],r=0,i=u.length;i>r;r++)e=u[r],(a=t.getAttribute(e))&&(s+=" "+e+'="'+a+'"');s+=">",n=">"}else s=JSON.stringify(t);return s.length>o&&(s=s.substr(0,o)+" \u2026",s+=n),s},g=function(){var e,n;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],v.apply(null,[b.identity,n].concat(t.call(e)))},v=function(){var n,r,i,o;return r=arguments[0],o=arguments[1],n=3<=arguments.length?t.call(arguments,2):[],b.isBlank(o)?"":(i=0,o.replace(e,function(){var t;return t=n[i],t=r(y(t)),i+=1,t}))},o=function(){var e,n;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],i.enabled&&n?console.debug.apply(console,[c(n)].concat(t.call(e))):void 0},h=function(){var e,n;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],i.enabled&&n?console.log.apply(console,[c(n)].concat(t.call(e))):void 0},w=function(){var e,n;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],n?console.warn.apply(console,[c(n)].concat(t.call(e))):void 0},l=function(){var e,n,r,o;if(o=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],n=e.pop(),!i.enabled||!o)return n();r=i.collapse?"groupCollapsed":"group",console[r].apply(console,[c(o)].concat(t.call(e)));try{return n()}finally{o&&console.groupEnd()}},a=function(){var e,n;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],n?console.error.apply(console,[c(n)].concat(t.call(e))):void 0},p=function(){var t;return t=" __ _____ ___ ___ / /_ __\n"+("/ // / _ \\/ _ \\/ _ \\/ / // / "+up.version+"\n")+"\\___/_//_/ .__/\\___/_/\\_. / \n / / / /\n\n",t+=i.enabled?"Call `up.log.disable()` to disable logging for this session.":"Call `up.log.enable()` to enable logging for this session.",console.log(t)},up.on("up:framework:booted",p),up.on("up:framework:reset",f),m=function(t){return d.set("enabled",t),i.enabled=t},s=function(){return m(!0)},u=function(){return m(!1)},{puts:h,sprintf:g,sprintfWithFormattedArgs:v,puts:h,debug:o,error:a,warn:w,group:l,config:i,enable:s,disable:u,isEnabled:function(){return i.enabled}}}(),up.puts=up.log.puts,up.warn=up.log.warn}.call(this),function(){var t=[].slice;up.toast=function(){var e,n,r,i,o,u,s,a,l,c;return c=up.util,i=up.element,e=function(t){return""+c.escapeHtml(t)+""},l=new up.Config({element:null}),a=function(){return r(),l.reset()},u=function(n){var r;return c.isArray(n)?(n[0]=c.escapeHtml(n[0]),n=(r=up.log).sprintfWithFormattedArgs.apply(r,[e].concat(t.call(n)))):n=c.escapeHtml(n),n},o=function(){return!!l.element},n=function(t,e){var n,r;return r=l.element.querySelector(".up-toast-actions"),n=i.affix(r,".up-toast-action"),n.innerText=t,n.addEventListener("click",e)},s=function(t,e){var o;return null==e&&(e={}),r(),t=u(t),l.element=i.createFromHtml('
\n
'+t+'
\n
\n
'),(o=e.action||e.inspect)&&n(o.label,o.callback),n("Close",r),document.body.appendChild(l.element)},r=function(){return o()?(i.remove(l.element),l.element=null):void 0},up.on("up:framework:reset",a),{open:s,close:r,reset:a,isOpen:o}}()}.call(this),function(){var t=[].slice;up.syntax=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y;return y=up.util,s=up.element,e={"[up-back]":-100,"[up-drawer]":-200,"[up-dash]":-200,"[up-expand]":-300,"[data-method]":-400,"[data-confirm]":-400},o=[],l=[],h=function(){var e,r;return e=1<=arguments.length?t.call(arguments,0):[],r=n(e),a(o,r)},d=function(){var e,n;return e=1<=arguments.length?t.call(arguments,0):[],n=h.apply(null,e),n.jQuery=!0,n},g=function(){var e,r;return e=1<=arguments.length?t.call(arguments,0):[],r=n(e),up.framework.isBooting()&&(r.priority=u(r.selector)||up.fail("Unregistered priority for system macro %o",r.selector)),a(l,r)},m=function(){var e,n;return e=1<=arguments.length?t.call(arguments,0):[],n=g.apply(null,e),n.jQuery=!0,n},u=function(t){var n,r;for(r in e)if(n=e[r],t.indexOf(r)>=0)return n},c=function(t){var e,n,r;return r=t.shift(),e=t.pop(),n=y.extractOptions(t),[r,n,e]},n=function(t){var e,n,r,i;return r=c(t),i=r[0],n=r[1],e=r[2],n=y.options(n,{selector:i,isDefault:up.framework.isBooting(),priority:0,batch:!1,keep:!1,jQuery:!1}),y.assign(e,n)},a=function(t,e){var n,r;for(r=0;(n=t[r])&&n.priority>=e.priority;)r+=1;return t.splice(r,0,e),e},i=function(t,e){var n,r;return r=l.concat(o),n=new up.CompilePass(t,r,e),n.compile()},f=function(t,e){var n;return(n=t.upDestructors)||(n=[],t.upDestructors=n,t.classList.add("up-can-clean")),y.isArray(e)?n.push.apply(n,e):n.push(e)},r=function(t){var e;return e=s.subtree(t,".up-can-clean"),y.each(e,function(t){var e,n,r,i,o;if(n=t.upDestructors){for(o=[],r=0,i=n.length;i>r;r++)e=n[r],o.push(e());return o}})},p=function(t){var e;return e=s.get(t),s.jsonAttr(e,"up-data")||{}},v=function(){return o=y.filter(o,"isDefault"),l=y.filter(l,"isDefault")},up.on("up:framework:reset",v),{compiler:h,macro:g,$compiler:d,$macro:m,destructor:f,compile:i,clean:r,data:p}}(),up.compiler=up.syntax.compiler,up.$compiler=up.syntax.$compiler,up.destructor=up.syntax.destructor,up.macro=up.syntax.macro,up.$macro=up.syntax.$macro}.call(this),function(){up.history=function(){var t,e,n,r,i,o,u,s,a,l,c,p,h,f,d,m;return m=up.util,r=up.element,e=new up.Config({enabled:!0,popTargets:["body"],restoreScroll:!0}),c=void 0,u=void 0,f=function(){return e.reset(),c=void 0,u=void 0},s=function(t,e){return e||(e={}),e.hash=!0,m.normalizeUrl(t,e)},n=function(t){return s(up.browser.url(),t)},i=function(t){var e;return e={stripTrailingSlash:!0},s(t,e)===n(e)},a=function(t){return u&&(c=u,u=void 0),u=t},h=function(t){return o("replaceState",t)?up.emit("up:history:replaced",{url:t}):void 0},p=function(t,e){return e=m.options(e,{force:!1}),t=s(t),!e.force&&i(t)||!up.event.nobodyPrevents("up:history:push",{url:t,log:"Adding history entry for "+t})?void 0:o("pushState",t)?up.emit("up:history:pushed",{url:t,log:"Advanced to location "+t}):up.emit("up:history:muted",{url:t,log:"Did not advance to "+t+" (history is unavailable)"})},o=function(r,i){var o;return up.browser.canPushState()&&e.enabled?(o=t(),window.history[r](o,"",i),a(n()),!0):!1},t=function(){return{fromUp:!0}},d=function(t){var r,i,o;return(null!=t?t.fromUp:void 0)?(o=n(),up.emit("up:history:restore",{url:o,log:"Restoring location "+o}),r=e.popTargets.join(", "),i=up.replace(r,o,{history:!1,title:!0,reveal:!1,saveScroll:!1,restoreScroll:e.restoreScroll,layer:"page"}),i.then(function(){return o=n(),up.emit("up:history:restored",{url:o,log:"Restored location "+o})})):up.puts("Ignoring a state not pushed by Unpoly (%o)",t)},l=function(t){var e;return a(n()),up.viewport.saveScroll({url:c}),e=t.state,d(e)},up.on("up:app:boot",function(){var t;return up.browser.canPushState()?(t=function(){return up.browser.canControlScrollRestoration()&&(window.history.scrollRestoration="manual"),window.addEventListener("popstate",l),h(n(),{force:!0})},"undefined"!=typeof jasmine&&null!==jasmine?t():setTimeout(t,100)):void 0}),up.macro("a[up-back], [up-href][up-back]",function(t){return m.isPresent(c)?(r.setMissingAttrs(t,{"up-href":c,"up-restore-scroll":""}),t.removeAttribute("up-back"),up.link.makeFollowable(t)):void 0}),up.on("up:framework:reset",f),{config:e,push:p,replace:h,url:n,isUrl:i,previousUrl:function(){return c},normalizeUrl:s}}()}.call(this),function(){var t=[].slice;up.viewport=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w,k,S,E,T,A,F,C,P,x,O,R,M,j,D,L;return D=up.util,u=up.element,o=new up.Config({duration:0,viewports:[".up-modal-viewport","[up-viewport]","[up-fixed]"],fixedTop:["[up-fixed~=top]"],fixedBottom:["[up-fixed~=bottom]"],anchoredRight:["[up-anchored~=right]","[up-fixed~=top]","[up-fixed~=bottom]","[up-fixed~=right]"],revealSnap:50,revealPadding:0,scrollSpeed:1}),m=new up.Cache({size:30,key:up.history.normalizeUrl}),j=new up.MotionController("scrolling"),y=function(){return o.reset(),m.clear(),j.reset()},P=function(t,e,n){var r;return r=new up.ScrollMotion(t,e,n),j.startMotion(t,r,n)},s=function(t){var e;return up.motion.isEnabled()?(e=i(t),j.finish(e)):Promise.resolve()},r=function(){var t;return t=o.anchoredRight.join(","),u.all(t)},g=function(){var e,n,r,i,s,a,l;return r=function(t,e){var n;return n=D.sum(e,function(e){return u.styleNumber(t,e)})||0,n+t.offsetHeight},s=function(t){return r(t,["top","margin-top"])},i=function(t){return r(t,["bottom","margin-bottom"])},l=u.all(o.fixedTop.join(", ")),n=u.all(o.fixedBottom.join(", ")),a=D.map(l,s),e=D.map(n,i),{top:Math.max.apply(Math,[0].concat(t.call(a))),bottom:Math.max.apply(Math,[0].concat(t.call(e)))}},w=function(t,e){var n,r;return n=u.get(t),r=new up.RevealMotion(n,e),j.startMotion(n,r,e)},x=function(t,e){var n,r,i,o,s,a;return null==e&&(e={}),r=e.hash,o=e.reveal,i=e.restoreScroll,s=D.only(e,"scrollBehavior","scrollSpeed"),i?(n=D.presence(i,D.isObject),b({around:t,scrollTops:n})):r&&o===!0?k(r,s):o?(D.isElement(o)||D.isJQuery(o)?t=u.get(o):D.isString(o)&&(a=u.resolveSelector(o,e.origin),t=up.fragment.first(a)),t?w(t,s):void 0):Promise.resolve()},k=function(t){var e;return t&&(e=a(t))?w(e,{top:!0}):Promise.resolve()},n=function(){return[A()].concat(t.call(o.viewports)).join(",")},i=function(t){var e;return e=u.get(t),u.closest(e,n())},f=function(t){var e;return e=u.get(t),u.subtree(e,n())},p=function(t){var e;return e=u.get(t),u.list(i(e),f(e))},c=function(){return u.all(n())},A=function(){var t;return(t=document.scrollingElement)?t.tagName:"html"},h=function(){return document.querySelector(A())},F=function(){return u.root().clientWidth},E=function(){return u.root().clientHeight},d=function(t){return u.matches(t,A())},S=function(){return window.innerWidth>document.documentElement.offsetWidth},T=function(){var t,e,n;return t=document.body,n=document.documentElement,e=D.find([n,t],L),e||h()},L=function(t){var e;return e=u.style(t,"overflow-y"),"auto"===e||"scroll"===e},M=D.memoize(function(){var t,e,n;return e={position:"absolute",top:"0",left:"0",width:"100px",height:"100px",overflowY:"scroll"},t=up.element.affix(document.body,"[up-viewport]",{style:e}),n=t.offsetWidth-t.clientWidth,up.element.remove(t),n}),O=function(t){return u.toSelector(t)},R=function(){return D.mapObject(c(),function(t){return[O(t),t.scrollTop]})},l=function(t){var e;return null==t&&(t=document),e=["[up-fixed]"].concat(o.fixedTop).concat(o.fixedBottom),t.querySelectorAll(e.join(","))},C=function(t){var e,n,r,i;return null==t&&(t={}),i=null!=(e=t.url)?e:up.history.url(),r=null!=(n=t.tops)?n:R(),m.set(i,r)},b=function(t){var e,n,r;return null==t&&(t={}),n=up.history.url(),r=t.around?p(t.around):c(),e=t.scrollTops||m.get(n)||{},up.log.group("Restoring scroll positions for URL %s to %o",n,e,function(){var t;return t=D.map(r,function(t){var n,r;return n=O(t),r=e[n]||0,P(t,r,{duration:0})}),Promise.all(t)})},e=function(t,e){var n,r,i,o,s,a,c,p;return null==e&&(e={}),i=u.get(t),c=up.viewport.closest(i),p=c.getBoundingClientRect(),a=i.getBoundingClientRect(),r=new up.Rect({left:a.left-p.left,top:a.top-p.top,width:a.width,height:a.height}),"function"==typeof e.afterMeasure&&e.afterMeasure(),u.setStyle(i,{position:"static"===i.style.position?"static":"relative",top:"auto",right:"auto",bottom:"auto",left:"auto",width:"100%",height:"100%"}),n=u.createFromSelector(".up-bounds"),u.insertBefore(i,n),n.appendChild(i),o=function(t,e){return r.left+=t,r.top+=e,u.setStyle(n,r)},o(0,0),s=i.getBoundingClientRect(),o(a.left-s.left,a.top-s.top),D.each(l(i),u.fixedToAbsolute),{bounds:n,moveBounds:o}},a=function(t){var e;return(t=v(t))?(e=[u.attributeSelector("up-id",t),u.attributeSelector("id",t),"a"+u.attributeSelector("name",t)].join(","),up.fragment.first(e)):void 0},v=function(t){return t&&"#"===t[0]&&(t=t.substr(1)),D.presence(t)},up.on("up:app:booted",function(){return k(location.hash)}),up.on("up:framework:reset",y),{reveal:w,revealHash:k,firstHashTarget:a,scroll:P,config:o,closest:i,subtree:f,around:p,all:c,rootSelector:A,root:h,rootWidth:F,rootHeight:E,rootHasVerticalScrollbar:S,rootOverflowElement:T,isRoot:d,scrollbarWidth:M,scrollTops:R,saveScroll:C,restoreScroll:b,scrollAfterInsertFragment:x,anchoredRight:r,fixedElements:l,absolutize:e}}(),up.scroll=up.viewport.scroll,up.reveal=up.viewport.reveal,up.revealHash=up.viewport.revealHash,up.legacy.renamedModule("layout","viewport")}.call(this),function(){var t=[].slice;up.fragment=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w,k,S,E,T,A,F,C,P,x,O,R;return O=up.util,u=up.element,r=new up.Config({fallbacks:["body"],fallbackTransition:null}),E=function(){return r.reset()},T=function(t,e){return e!==!1?(O.isPresent(e)&&(e=O.normalizeUrl(e)),t.setAttribute("up-source",e)):void 0},C=function(t){var e;return e=u.get(t),(e=u.closest(e,"[up-source]"))?e.getAttribute("up-source"):up.browser.url()},S=function(t,e,r){var i,o,u,s,a,l,c,p,h,f,d;if(r=O.options(r),r.inspectResponse=u=function(){return up.browser.navigate(e,O.only(r,"method","params"))},!up.browser.canPushState()&&r.history!==!1)return r.preload||u(),O.unresolvablePromise();d=O.merge(r,{humanizedTarget:"target"}),o=O.merge(r,{humanizedTarget:"failure target",provideTarget:void 0,restoreScroll:!1}),O.renameKey(o,"failTransition","transition"),O.renameKey(o,"failLayer","layer"),O.renameKey(o,"failReveal","reveal");try{a=n(t,d),s=n(r.failTarget,o)}catch(m){return i=m,Promise.reject(i)}return f=O.only(r,"method","data","params","cache","preload","headers","timeout"),O.assign(f,{url:e,target:a,failTarget:s}),h=new up.Request(f),c=function(t){return w(!0,a,h,t,d)},l=function(t){var e,n;return n=function(){return Promise.reject(t)},t.isFatalError()?n():(e=w(!1,s,h,t,o),O.always(e,n))},p=up.request(h),r.preload||(p=p.then(c,l)),p},w=function(t,e,n,r,i){var o,u,s,a;return a=r.url,u=a,(o=n.hash)&&(i.hash=o,u+=o),s="GET"===r.method,t?s?(i.history===!1||O.isString(i.history)||(i.history=u),i.source===!1||O.isString(i.source)||(i.source=a)):(O.isString(i.history)||(i.history=!1),O.isString(i.source)||(i.source="keep")):s?(i.history!==!1&&(i.history=u),i.source!==!1&&(i.source=a)):(i.history=!1,i.source="keep"),A(i)&&r.title&&(i.title=r.title),c(e,r.text,i)},A=function(t){return!(t.title===!1||O.isString(t.title)||t.history===!1&&t.title!==!0)},c=function(t,n,r){return up.log.group("Extracting %s from %d bytes of HTML",t,null!=n?n.length:void 0,function(){return r=O.options(r,{historyMethod:"push",keep:!0,layer:"auto"}),r.saveScroll!==!1&&up.viewport.saveScroll(),O.rejectOnError(function(){var i,o,u,s,a,l,c;for("function"==typeof r.provideTarget&&r.provideTarget(),s=new up.HtmlParser(n),i=e(t,s,r),A(r)&&(a=s.title())&&(r.title=a),R(r),c=[],o=0,u=i.length;u>o;o++)l=i[o],up.log.group("Swapping fragment %s",l.selector,function(){var t,e;return t=O.merge(r,O.only(l,"origin","reveal")),s.prepareForInsertion(l.newElement),e=P(l.oldElement,l.newElement,l.pseudoClass,l.transition,t),c.push(e)});return Promise.all(c)})})},n=function(t,e){var n;return n=new up.ExtractCascade(t,e),n.bestPreflightSelector()},e=function(t,e,n){var r;return n=O.merge(n,{response:e}),r=new up.ExtractCascade(t,n),r.bestMatchingSteps()},R=function(t){return t=O.options(t,{historyMethod:"push"}),t.history&&up.history[t.historyMethod](t.history),O.isString(t.title)?document.title=t.title:void 0},P=function(t,e,n,r,i){var o,a,c,h,f,d,g,v,b,w;if(r||(r="none"),"keep"===i.source&&(i=O.merge(i,{source:C(t)})),T(e,i.source),n){for(w=u.createFromSelector(".up-insertion");a=e.firstChild;)w.appendChild(a);for("before"===n?t.insertAdjacentElement("afterbegin",w):t.insertAdjacentElement("beforeend",w),b=w.children,c=0,f=b.length;f>c;c++)o=b[c],m(o,i);return v=up.viewport.scrollAfterInsertFragment(w,i),v=O.always(v,up.animate(w,r,i)),v=v.then(function(){return u.unwrap(w)})}return(h=p(t,e,i))?(l(h),Promise.resolve()):(i.keepPlans=x(t,e,i),g=t.parentNode,d=O.merge(i,{beforeStart:function(){return y(t)},afterInsert:function(){return up.hello(e,i)},beforeDetach:function(){return up.syntax.clean(t)},afterDetach:function(){return u.remove(t),s(t,{parent:g,log:!1})}}),up.morph(t,e,r,d))},x=function(t,e,n){var r,i,o,s,a,l,c;if(i=[],n.keep)for(c=t.querySelectorAll("[up-keep]"),r=0,a=c.length;a>r;r++)o=c[r],(l=p(o,e,O.merge(n,{descendantsOnly:!0})))&&(s=o.cloneNode(!0),u.replace(o,s),u.replace(l.newElement,o),i.push(l));return i},p=function(t,e,n){var r,i,o,s,a;return n.keep&&(i=t,(s=u.booleanOrStringAttr(i,"up-keep"))&&(O.isString(s)||(s="&"),s=u.resolveSelector(s,i),o=n.descendantsOnly?u.first(e,s):u.subtree(e,s)[0],o&&u.matches(o,"[up-keep]")&&(a={oldElement:i,newElement:o,newData:up.syntax.data(o)},r={target:i,newFragment:o,newData:a.newData,log:["Keeping element %o",i]},up.event.nobodyPrevents("up:fragment:keep",r))))?a:void 0},m=function(t,e){var n,r,i,o,s,c;for(n=u.get(t),e=O.options(e,{keepPlans:[]}),i=[],c=e.keepPlans,r=0,o=c.length;o>r;r++)s=c[r],l(s),i.push(s.oldElement);return up.syntax.compile(n,{skip:i}),a(n,e),n},a=function(t,e){return up.emit(t,"up:fragment:inserted",{log:["Inserted fragment %o",t],origin:e.origin})},l=function(t){var e,n;return n=t.oldElement,e={target:n,newFragment:t.newElement,newData:t.newData,log:["Kept fragment %o",n]},up.emit("up:fragment:kept",e)},s=function(t,e){var n,r;return F(t,e)&&(n=["Destroyed fragment %o",t]),r=e.parent||up.fail("Missing { parent } option"),up.emit(r,"up:fragment:destroyed",{fragment:t,parent:r,log:n})},g=function(t){return!u.closest(t,".up-destroying")},h=function(){var e,n,r,i,o,s,a;return e=1<=arguments.length?t.call(arguments,0):[],r=O.extractOptions(e),a=e.pop(),s=e[0]||document,n=null!=(o=r.layer)?o:"auto",i=r.origin,a=u.resolveSelector(a,i),"auto"===n?d(s,a,i):f(s,a,n)},d=function(t,e,n){var r,i;return r=["popup","modal","page"],n&&(i=v(n),O.remove(r,i),r.unshift(i)),O.findResult(r,function(n){return f(t,e,n)})},f=function(t,e,n){var r;return r=u.all(t,e),O.findResult(r,function(t){return g(t)&&b(t,n)?t:void 0})},v=function(t){return up.popup.contains(t)?"popup":up.modal.contains(t)?"modal":"page"},b=function(t,e){return!e||v(t)===e},i=function(t,e){return null==e&&(e=document.body),u.affix(e,t,{"class":"up-placeholder"})},o=function(t,e){var n,r,i;return r=u.get(t),e=O.options(e,{animation:!1}),r?(y(r),R(e),n=function(){var t;return t=up.motion.animateOptions(e),up.motion.animate(r,e.animation,t)},i=function(){var t;return t=r.parentNode,up.syntax.clean(r),u.remove(r),s(r,{parent:t,log:e.log})},n().then(i)):Promise.resolve()},F=function(t,e){return e.log!==!1&&!u.matches(t,".up-placeholder, .up-tooltip, .up-modal, .up-popup")},y=function(t){return t.classList.add("up-destroying")},k=function(t,e){var n;return e=O.options(e,{cache:!1}),n=e.url||C(t),S(t,n,e)},up.on("up:app:boot",function(){var t;return t=document.body,T(t,up.browser.url()),m(t)}),up.on("up:framework:reset",E),{createPlaceholder:i,replace:S,reload:k,destroy:o,extract:c,first:h,source:C,hello:m,config:r,layerOf:v}}(),up.replace=up.fragment.replace,up.extract=up.fragment.extract,up.reload=up.fragment.reload,up.destroy=up.fragment.destroy,up.hello=up.fragment.hello,up.first=function(){var e,n;return e=1<=arguments.length?t.call(arguments,0):[],up.legacy.warn("up.first() has been renamed to up.fragment.first()"),(n=up.fragment).first.apply(n,e)},up.legacy.renamedModule("flow","fragment"),up.legacy.renamedModule("dom","fragment")}.call(this),function(){var t=[].slice;up.motion=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w,k,S,E,T,A,F,C,P;return C=up.util,l=up.element,y={},s={},b={},a={},v=new up.MotionController("motion"),u=new up.Config({duration:300,delay:0,easing:"ease",enabled:!0}),S=function(){return v.reset(),y=C.copy(s),b=C.copy(a),u.reset()},d=function(){return u.enabled},n=function(t,e,n){var r,o,u,s;return o=l.get(t),n=i(n),r=c(e),s=P(o,e,n),s?(u=function(){return r(o,n)},v.startFunction(o,u,n)):E(o,e)},P=function(t,e,n){return n=i(n),d()&&!m(e)&&n.duration>0&&!l.isSingleton(t)},E=function(t,e){return C.isOptions(e)&&l.setStyle(t,e),Promise.resolve()},e=0,r=function(t,e,n){var r;return n=C.merge(n,{finishEvent:v.finishEvent}),r=new up.CssTransition(t,e,n),r.start()},i=function(){var e,n,r,i,o,s,a,c,p,h,f,d,m,g,v;return e=1<=arguments.length?t.call(arguments,0):[],v=null!=(o=e.shift())?o:{},i=C.extractOptions(e),r=e.pop()||l.none(),n={},n.easing=null!=(s=null!=(a=null!=(c=v.easing)?c:r.getAttribute("up-easing"))?a:i.easing)?s:u.easing,n.duration=null!=(p=null!=(h=null!=(f=v.duration)?f:l.numberAttr(r,"up-duration"))?h:i.duration)?p:u.duration,n.delay=null!=(d=null!=(m=null!=(g=v.delay)?g:l.numberAttr(r,"up-delay"))?m:i.delay)?d:u.delay,n.trackMotion=v.trackMotion,n},p=function(t){return y[t]||up.fail("Unknown animation %o",t)},f=function(t){return v.finish(t)},g=function(t,e,n,r){var o,u,s,a,c,p,f,d,m,g,y,b;return r=C.options(r),C.assign(r,i(r)),t=l.get(t),e=l.get(e),g=h(n),b=P(t,g,r),a=C.pluckKey(r,"beforeStart")||C.noop,u=C.pluckKey(r,"afterInsert")||C.noop,s=C.pluckKey(r,"beforeDetach")||C.noop,o=C.pluckKey(r,"afterDetach")||C.noop,a(),f=function(){var t;return t=C.merge(r,{scrollBehavior:"auto"}),up.viewport.scrollAfterInsertFragment(e,t)},b?v.isActive(t)&&r.trackMotion===!1?g(t,e,r):(up.puts("Morphing %o to %o with transition %o",t,e,n),y=up.viewport.closest(t),d=y.scrollTop,c=up.viewport.absolutize(t,{afterMeasure:function(){return l.insertBefore(t,e),u()}}),m=function(){var n;return n=f(),n=n.then(function(){var n;return n=y.scrollTop,c.moveBounds(0,n-d),g(t,e,r)}),n=n.then(function(){return s(),l.remove(c.bounds),o()})},v.startFunction([t,e],m,r)):(s(),A(t,e),u(),o(),p=f())},h=function(t){var e;return m(t)?void 0:C.isFunction(t)?t:C.isArray(t)?o.apply(null,t):C.isString(t)?t.indexOf("/")>=0?o.apply(null,t.split("/")):(e=b[t])?h(e):void 0:up.fail("Unknown transition %o",t)},o=function(t,e){var n,r;return m(t)&&m(t)?void 0:(r=c(t)||C.asyncNoop,n=c(e)||C.asyncNoop,function(t,e,i){return Promise.all([r(t,i),n(e,i)])})},c=function(t){return m(t)?void 0:C.isFunction(t)?t:C.isString(t)?p(t):C.isOptions(t)?function(e,n){return r(e,t,n)}:up.fail("Unknown animation %o",t)},A=function(t,e){return l.replace(t,e)},k=function(t,e){return b[t]=h(e)},w=function(t,e){return y[t]=c(e)},T=function(){return s=C.copy(y),a=C.copy(b)},m=function(t){return!t||"none"===t||C.isBlank(t)},w("fade-in",function(t,e){return l.setStyle(t,{opacity:0}),r(t,{opacity:1},e)}),w("fade-out",function(t,e){return l.setStyle(t,{opacity:1}),r(t,{opacity:0},e)}),F=function(t,e){return{transform:"translate("+t+"px, "+e+"px)"}},w("move-to-top",function(t,e){var n,i;return l.setStyle(t,F(0,0)),n=t.getBoundingClientRect(),i=n.top+n.height,r(t,F(0,-i),e)}),w("move-from-top",function(t,e){var n,i;return l.setStyle(t,F(0,0)),n=t.getBoundingClientRect(),i=n.top+n.height,l.setStyle(t,F(0,-i)),r(t,F(0,0),e)}),w("move-to-bottom",function(t,e){var n,i;return l.setStyle(t,F(0,0)),n=t.getBoundingClientRect(),i=l.root().clientHeight-n.top,r(t,F(0,i),e)}),w("move-from-bottom",function(t,e){var n,i;return l.setStyle(t,F(0,0)),n=t.getBoundingClientRect(),i=up.viewport.rootHeight()-n.top,l.setStyle(t,F(0,i)),r(t,F(0,0),e)}),w("move-to-left",function(t,e){var n,i;return l.setStyle(t,F(0,0)),n=t.getBoundingClientRect(),i=n.left+n.width,r(t,F(-i,0),e)}),w("move-from-left",function(t,e){var n,i;return l.setStyle(t,F(0,0)),n=t.getBoundingClientRect(),i=n.left+n.width,l.setStyle(t,F(-i,0)),r(t,F(0,0),e)}),w("move-to-right",function(t,e){var n,i;return l.setStyle(t,F(0,0)),n=t.getBoundingClientRect(),i=up.viewport.rootWidth()-n.left,r(t,F(i,0),e)}),w("move-from-right",function(t,e){var n,i;return l.setStyle(t,F(0,0)),n=t.getBoundingClientRect(),i=up.viewport.rootWidth()-n.left,l.setStyle(t,F(i,0)),r(t,F(0,0),e)}),w("roll-down",function(t,e){var r,i,o;return i=l.style(t,"height"),o=l.setTemporaryStyle(t,{height:"0px",overflow:"hidden"}),r=n(t,{height:i},e),r.then(o),r}),k("move-left",["move-to-left","move-from-right"]),k("move-right",["move-to-right","move-from-left"]),k("move-up",["move-to-top","move-from-bottom"]),k("move-down",["move-to-bottom","move-from-top"]),k("cross-fade",["fade-out","fade-in"]),up.on("up:framework:booted",T),up.on("up:framework:reset",S),{morph:g,animate:n,animateOptions:i,finish:f,finishCount:function(){return v.finishCount},transition:k,animation:w,config:u,isEnabled:d,isNone:m}}(),up.transition=up.motion.transition,up.animation=up.motion.animation,up.morph=up.motion.morph,up.animate=up.motion.animate}.call(this),function(){var t=[].slice;up.proxy=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w,k,S,E,T,A,F,C,P,x,O,R,M,j,D,L,U;return D=up.util,a=up.element,L=void 0,S=void 0,O=void 0,y=void 0,R=void 0,T=[],s=new up.Config({slowDelay:300,preloadDelay:75,cacheSize:70,cacheExpiry:3e5,maxRequests:4,wrapMethods:["PATCH","PUT","DELETE"],safeMethods:["GET","OPTIONS","HEAD"]}),r=new up.Cache({size:function(){return s.cacheSize},expiry:function(){return s.cacheExpiry},key:function(t){return up.Request.wrap(t).cacheKey()},cachable:function(t){return up.Request.wrap(t).isCachable()}}),l=function(t){var e,n,i,o,u,s,a;for(t=up.Request.wrap(t),n=[t],"html"!==t.target&&(s=t.variant({target:"html"}),n.push(s),"body"!==t.target&&(u=t.variant({target:"body"}),n.push(u))),i=0,o=n.length;o>i;i++)if(e=n[i],a=r.get(e))return a},i=function(){return clearTimeout(S),S=null},o=function(){return clearTimeout(O),O=null},C=function(){return L=null,i(),o(),y=0,s.reset(),r.clear(),R=!1,T=[]},C(),v=function(){var e,n,r,i,o,s;return e=1<=arguments.length?t.call(arguments,0):[],D.isString(e[0])&&(s=e.shift()),o=e.shift()||{},s&&(o.url=s),i=up.Request.wrap(o),i.isSafe()||u(),n=i.cache===!1,!n&&(r=l(i))?up.puts("Re-using cached response for %s %s",i.method,i.url):(r=m(i),x(i,r),r["catch"](function(){return F(i)})),i.preload||(g(),D.always(r,d)),r},e=function(){var e;return e=1<=arguments.length?t.call(arguments,0):[],up.legacy.warn("up.ajax() has been deprecated. Use up.request() instead."),new Promise(function(t,n){var r;return r=function(e){return t(e.text)},v.apply(null,e).then(r,n)})},p=function(){return 0===y},c=function(){return y>0},g=function(){var t;return y+=1,O?void 0:(t=function(){return c()?(up.emit("up:proxy:slow",{log:"Proxy is slow to respond"}),R=!0):void 0},O=D.timer(s.slowDelay,t))},d=function(){return y-=1,p()&&(o(),R)?(up.emit("up:proxy:recover",{log:"Proxy has recovered from slow response"}),R=!1):void 0},m=function(t){return y
4
- },up.compiler("a[up-preload], [up-href][up-preload]",function(t){return up.link.isSafe(t)?(t.addEventListener("mouseenter",function(e){return up.link.shouldProcessEvent(e,t)?k(t):void 0}),t.addEventListener("mouseleave",function(){return j(t)})):void 0}),up.on("up:framework:reset",C),{preload:w,ajax:e,request:v,get:l,alias:n,clear:u,remove:F,isIdle:p,isBusy:c,isSafeMethod:h,wrapMethod:U,config:s}}(),up.ajax=up.proxy.ajax,up.request=up.proxy.request}.call(this),function(){up.link=function(){var t,e,n,r,i,o,u,s,a,l,c,p,h,f,d,m;return d=up.util,o=up.element,m=function(t,e){var n,r;return null==e&&(e={}),r=null!=(n=e.target)?n:"body",up.replace(r,t,e)},u=function(t,e){var n,r;return n=o.get(t),r=a(n),r.followLink(n,e)},r=function(t,e){var n,r,i,u,a,l,c;return e=d.options(e),c=null!=(n=null!=(r=e.url)?r:t.getAttribute("up-href"))?n:t.getAttribute("href"),l=null!=(i=e.target)?i:t.getAttribute("up-target"),null==e.failTarget&&(e.failTarget=t.getAttribute("up-fail-target")),null==e.fallback&&(e.fallback=t.getAttribute("up-fallback")),null==e.transition&&(e.transition=o.booleanOrStringAttr(t,"up-transition")),null==e.failTransition&&(e.failTransition=o.booleanOrStringAttr(t,"up-fail-transition")),null==e.history&&(e.history=o.booleanOrStringAttr(t,"up-history")),null==e.reveal&&(e.reveal=null!=(u=o.booleanOrStringAttr(t,"up-reveal"))?u:!0),null==e.failReveal&&(e.failReveal=null!=(a=o.booleanOrStringAttr(t,"up-fail-reveal"))?a:!0),null==e.cache&&(e.cache=o.booleanAttr(t,"up-cache")),null==e.restoreScroll&&(e.restoreScroll=o.booleanAttr(t,"up-restore-scroll")),e.method=s(t,e),null==e.origin&&(e.origin=t),null==e.layer&&(e.layer=t.getAttribute("up-layer")),null==e.failLayer&&(e.failLayer=t.getAttribute("up-fail-layer")),null==e.confirm&&(e.confirm=t.getAttribute("up-confirm")),null==e.scrollBehavior&&(e.scrollBehavior=t.getAttribute("up-scroll-behavior")),null==e.scrollSpeed&&(e.scrollSpeed=t.getAttribute("up-scroll-speed")),e=d.merge(e,up.motion.animateOptions(e,t)),up.browser.whenConfirmed(e).then(function(){return up.replace(l,c,e)})},i=function(t,e){return e=d.options(e),e.preload=!0,r(t,e)},s=function(t,e){var n,r,i,o;return null==e&&(e={}),n=null!=(r=null!=(i=null!=(o=e.method)?o:t.getAttribute("up-method"))?i:t.getAttribute("data-method"))?r:"GET",n.toUpperCase()},n=function(){},l=[],e=function(t,e){var n;return n=new up.FollowVariant(t,e),l.push(n),n.registerEvents(),n},c=function(t){return t=o.get(t),!!a(t,{"default":!1})},a=function(e,n){var r;return null==n&&(n={}),r=d.find(l,function(t){return t.matchesLink(e)}),n["default"]!==!1&&(r||(r=t)),r},h=function(t){return c(t)?void 0:t.setAttribute("up-follow","")},f=function(t,e){var n,r,i;return i=t.target,d.isUnmodifiedMouseEvent(t)?i===e?!0:(r="a, [up-href], "+up.form.fieldSelector(),n=o.closest(i,r),!n||n===e):!1},p=function(t,e){var n;return n=s(t,e),up.proxy.isSafeMethod(n)},t=e("[up-target], [up-follow]",{follow:function(t,e){return r(t,e)},preload:function(t,e){return i(t,e)}}),up.macro("[up-dash]",function(t){var e,n;return n=o.booleanOrStringAttr(t,"up-dash"),t.removeAttribute("up-dash"),e={"up-preload":"","up-instant":""},n===!0?h(t):e["up-target"]=n,o.setMissingAttrs(t,e)}),up.macro("[up-expand]",function(t){var e,n,r,i,u,s,a,l,c,p;if(c=t.getAttribute("up-expand")||"a, [up-href]",r=o.all(t,c),n=r[0]){for(p=/^up-/,a={},a["up-href"]=n.getAttribute("href"),l=n.attributes,i=0,u=l.length;u>i;i++)e=l[i],s=e.name,s.match(p)&&(a[s]=e.value);return o.setMissingAttrs(t,a),t.removeAttribute("up-expand"),h(t)}}),{visit:m,follow:u,makeFollowable:h,isSafe:p,isFollowable:c,shouldProcessEvent:f,followMethod:s,addFollowVariant:e,followVariantForLink:a,allowDefault:n}}(),up.visit=up.link.visit,up.follow=up.link.follow}.call(this),function(){var t=[].slice;up.form=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w;return b=up.util,i=up.element,r=new up.Config({validateTargets:["fieldset:has(&)","label:has(&)","form:has(&)"],fields:["select","input:not([type=submit]):not([type=image])","button[type]:not([type=submit])","textarea"],submitButtons:["input[type=submit]","input[type=image]","button[type=submit]","button:not([type])"],observeDelay:0}),h=function(){return r.reset()},o=function(){return r.fields.join(",")},u=function(t){return i.subtree(t,o())},s=function(t){var e,n;return n=u(t),(e=m(t))&&(n=b.toArray(n),n.push(e)),n},m=function(t){var e,n;return n=d(),e=document.activeElement,e&&i.matches(e,n)&&t.contains(e)?e:i.first(t,n)},d=function(){return r.submitButtons.join(",")},f=function(t,e){var n,r,o,u,s,a,l,c,p,h,f,d,m,g;return e=b.options(e),n=i.get(t),n=i.closest(n,"form"),m=null!=(r=null!=(o=e.target)?o:n.getAttribute("up-target"))?r:"body",null==e.failTarget&&(e.failTarget=null!=(s=n.getAttribute("up-fail-target"))?s:i.toSelector(n)),null==e.reveal&&(e.reveal=null!=(a=i.booleanOrStringAttr(n,"up-reveal"))?a:!0),null==e.failReveal&&(e.failReveal=null!=(l=i.booleanOrStringAttr(n,"up-fail-reveal"))?l:!0),null==e.fallback&&(e.fallback=n.getAttribute("up-fallback")),null==e.history&&(e.history=null!=(c=i.booleanOrStringAttr(n,"up-history"))?c:!0),null==e.transition&&(e.transition=i.booleanOrStringAttr(n,"up-transition")),null==e.failTransition&&(e.failTransition=i.booleanOrStringAttr(n,"up-fail-transition")),null==e.method&&(e.method=b.normalizeMethod(null!=(p=null!=(h=null!=(f=n.getAttribute("up-method"))?f:n.getAttribute("data-method"))?h:n.getAttribute("method"))?p:"post")),null==e.cache&&(e.cache=i.booleanAttr(n,"up-cache")),null==e.restoreScroll&&(e.restoreScroll=i.booleanAttr(n,"up-restore-scroll")),null==e.origin&&(e.origin=n),null==e.layer&&(e.layer=n.getAttribute("up-layer")),null==e.failLayer&&(e.failLayer=n.getAttribute("up-fail-layer")),e.params=up.Params.fromForm(n),e=b.merge(e,up.motion.animateOptions(e,n)),e.validate&&(e.headers||(e.headers={}),e.transition=!1,e.failTransition=!1,e.headers[up.protocol.config.validateHeader]=e.validate),g=null!=(d=null!=(u=e.url)?u:n.getAttribute("action"))?d:up.browser.url(),"GET"===e.method&&(g=up.Params.stripURL(g)),up.event.whenEmitted("up:form:submit",{log:"Submitting form",target:n}).then(function(){var t;return up.feedback.start(n),up.browser.canPushState()||e.history===!1?(t=up.replace(m,g,e),b.always(t,function(){return up.feedback.stop(n)}),t):(n.submit(),b.unresolvablePromise())})},c=function(){var e,n,o,s,a,l,c,h,f,d;return o=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],o=i.list(o),s=b.flatMap(o,u),n=null!=(c=null!=(h=b.extractCallback(e))?h:p(o[0]))?c:up.fail("up.observe: No change callback given"),l=b.extractOptions(e),l.delay=null!=(f=null!=(d=l.delay)?d:i.numberAttr(o[0],"up-delay"))?f:r.observeDelay,a=new up.FieldObserver(s,l,n),a.start(),a.stop},p=function(t){var e;return(e=t.getAttribute("up-observe"))?new Function("value","name",e):void 0},e=function(t,e){return c(t,e,function(){return f(t)})},l=function(t,e){var n,o;return n=null!=(o=e.target)?o:t.getAttribute("up-validate"),n||(n=b.findResult(r.validateTargets,function(t){var n;return n=i.resolveSelector(t,e.origin),i.first(n)?n:void 0})),n||up.fail("Could not find validation target for %o (tried defaults %o)",t,r.validateTargets),i.resolveSelector(n,e.origin)},w=function(t,e){var n,r,o;return n=i.get(t),e=b.options(e),e.origin=n,e.target=l(n,e),e.failTarget=e.target,null==e.reveal&&(e.reveal=null!=(o=i.booleanOrStringAttr(n,"up-reveal"))?o:!1),e.history=!1,e.validate=n.getAttribute("name")||":none",e=b.merge(e,up.motion.animateOptions(e,n)),r=up.submit(n,e)},y=function(t){var e,r,o,u,s,a;return s=void 0,u=void 0,i.matches(t,"input[type=checkbox]")?t.checked?(s=t.value,u=":checked"):u=":unchecked":i.matches(t,"input[type=radio]")?(r=n(t),o=t.getAttribute("name"),e=r.querySelector("input[type=radio]"+i.attributeSelector("name",o)+":checked"),e?(u=":checked",s=e.value):u=":unchecked"):s=t.value,a=[],b.isPresent(s)?(a.push(s),a.push(":present")):a.push(":blank"),b.isPresent(u)&&a.push(u),a},v=function(t,e){var r,o,u,s;return null==e&&(e={}),s=null!=(u=e.target)?u:t.getAttribute("up-switch"),o=n(t),b.isPresent(s)||up.fail("No switch target given for %o",t),r=y(t),b.each(i.all(o,s),function(t){return g(t,r)})},g=function(t,e){var n,r,o;return e||(e=y(a(t))),(n=t.getAttribute("up-hide-for"))?(n=b.splitValues(n),r=0===b.intersect(e,n).length):(o=(o=t.getAttribute("up-show-for"))?b.splitValues(o):[":present",":checked"],r=b.intersect(e,o).length>0),i.toggle(t,r),t.classList.add("up-switched")},a=function(t){var e,r,o;return e=n(t),o=i.all(e,"[up-switch]"),r=b.find(o,function(e){var n;return n=e.getAttribute("up-switch"),i.matches(t,n)}),r||b.fail("Could not find [up-switch] field for %o",t)},n=function(t){return i.closest(t,"form, body")},up.on("submit","form[up-target]",function(t,e){return up.event.consumeAction(t),b.muteRejection(f(e))}),up.on("change","[up-validate]",function(t,e){return b.muteRejection(w(e))}),up.compiler("[up-switch]",function(t){return v(t)}),up.on("change","[up-switch]",function(t,e){return v(e)}),up.compiler("[up-show-for]:not(.up-switched), [up-hide-for]:not(.up-switched)",function(t){return g(t)}),up.compiler("[up-observe]",function(t){return c(t)}),up.compiler("[up-autosubmit]",function(t){return e(t)}),up.compiler("[autofocus]",{batch:!0},function(t){return b.last(t).focus()}),up.on("up:framework:reset",h),{config:r,submit:f,observe:c,validate:w,autosubmit:e,fieldSelector:o,fields:u,submissionFields:s}}(),up.submit=up.form.submit,up.observe=up.form.observe,up.autosubmit=up.form.autosubmit,up.validate=up.form.validate}.call(this),function(){up.popup=function(){var t,e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y;return v=up.util,c=up.element,u=new up.Config({openAnimation:"fade-in",closeAnimation:"fade-out",openDuration:150,closeDuration:100,openEasing:null,closeEasing:null,position:"bottom",align:"left",history:!1}),d=new up.Config({phase:"closed",anchor:null,popup:null,content:null,tether:null,position:null,align:null,sticky:null,url:null,coveredUrl:null,coveredTitle:null}),r=new up.DivertibleChain,f=function(){var t;return null!=(t=d.tether)&&t.destroy(),d.reset(),r.reset(),u.reset()},l=function(){return d.coveredTitle=null,d.coveredUrl=null},a=function(t){return d.tether=new up.Tether(v.only(d,"anchor","position","align")),d.popup=c.affix(d.tether.root,".up-popup",{"up-position":d.position,"up-align":d.align}),d.content=c.affix(d.popup,".up-popup-content"),up.fragment.createPlaceholder(t,d.content),c.hide(d.popup)},y=function(){return c.show(d.popup)},m=function(){var t;return null!=(t=d.tether)?t.sync():void 0},p=function(){return"opened"===d.phase||"opening"===d.phase},t=function(t,n){return r.asap(o,function(){return e(t,n)})},e=function(t,e){var n,r,i,o,s,l,p,h,f,g,b,w,k,S,E,T,A,F,C;return r=c.get(t),null==e&&(e={}),C=null!=(p=null!=(h=v.pluckKey(e,"url"))?h:r.getAttribute("up-href"))?p:r.getAttribute("href"),s=v.pluckKey(e,"html"),C||s||up.fail("up.popup.attach() requires either an { url } or { html } option"),F=null!=(g=v.pluckKey(e,"target"))?g:r.getAttribute("up-popup")||up.fail("No target selector given for [up-popup]"),l=null!=(b=null!=(w=e.position)?w:r.getAttribute("up-position"))?b:u.position,n=null!=(k=null!=(S=e.align)?S:r.getAttribute("up-align"))?k:u.align,null==e.animation&&(e.animation=null!=(E=r.getAttribute("up-animation"))?E:u.openAnimation),null==e.sticky&&(e.sticky=null!=(T=c.booleanAttr(r,"up-sticky"))?T:u.sticky),e.history=up.browser.canPushState()?null!=(A=null!=(f=e.history)?f:c.booleanOrStringAttr(r,"up-history"))?A:u.history:!1,null==e.confirm&&(e.confirm=r.getAttribute("up-confirm")),e.method=up.link.followMethod(r,e),e.layer="popup",null==e.failTarget&&(e.failTarget=r.getAttribute("up-fail-target")),null==e.failLayer&&(e.failLayer=r.getAttribute("up-fail-layer")),e.provideTarget=function(){return a(F)},i=up.motion.animateOptions(e,r,{duration:u.openDuration,easing:u.openEasing}),o=v.merge(e,{animation:!1}),e.preload&&C?up.replace(F,C,e):up.browser.whenConfirmed(e).then(function(){return up.event.whenEmitted("up:popup:open",{url:C,anchor:r,log:"Opening popup"}).then(function(){var t;return d.phase="opening",d.anchor=r,d.position=l,d.align=n,e.history&&(d.coveredUrl=up.browser.url(),d.coveredTitle=document.title),d.sticky=e.sticky,t=s?up.extract(F,s,o):up.replace(F,C,o),t=t.then(function(){return y(),m(),up.animate(d.popup,e.animation,i)}),t=t.then(function(){return d.phase="opened",up.emit(d.popup,"up:popup:opened",{anchor:d.anchor,log:"Popup opened"})})})})},i=function(t){return r.asap(function(){return o(t)})},o=function(t){var e;return p()?(t=v.options(t,{animation:u.closeAnimation,history:d.coveredUrl,title:d.coveredTitle}),e=up.motion.animateOptions(t,{duration:u.closeDuration,easing:u.closeEasing}),v.assign(t,e),up.event.whenEmitted("up:popup:close",{anchor:d.anchor,log:"Closing popup"}).then(function(){return d.phase="closing",d.url=null,d.coveredUrl=null,d.coveredTitle=null,up.destroy(d.popup,t).then(function(){return d.phase="closed",d.tether.destroy(),d.tether=null,d.popup=null,d.content=null,d.anchor=null,d.sticky=null,up.emit("up:popup:closed",{anchor:d.anchor,log:"Popup closed"})})})):Promise.resolve()},h=function(t,n){return n=v.options(n),n.preload=!0,e(t,n)},g=function(e,n){return e.classList.contains("up-current")?i():t(e,n)},n=function(){return d.sticky?void 0:(l(),i())},s=function(t){var e;return e=c.get(t),!!c.closest(e,".up-popup")},up.link.addFollowVariant("[up-popup]",{follow:function(t,e){return g(t,e)},preload:function(t,e){return h(t,e)}}),up.on("click up:action:consumed",function(t){var e;return e=t.target,c.closest(e,".up-popup, [up-popup]")?void 0:v.muteRejection(i())}),up.on("up:fragment:inserted",function(t,e){var r;if(s(e)){if(r=e.getAttribute("up-source"))return d.url=r}else if(t.origin&&s(t.origin))return v.muteRejection(n())}),up.event.onEscape(function(){return v.muteRejection(i())}),up.on("click",".up-popup [up-close]",function(t){return v.muteRejection(i()),up.event.consumeAction(t)}),up.on("up:history:restore",function(){return v.muteRejection(i())}),up.on("up:framework:reset",f),{attach:t,close:i,url:function(){return d.url},coveredUrl:function(){return d.coveredUrl},config:u,contains:s,isOpen:p,sync:m}}()}.call(this),function(){up.modal=function(){var t,e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w,k,S,E,T,A,F,C,P,x;return F=up.util,c=up.element,u=new up.Config({maxWidth:null,width:null,height:null,history:!0,openAnimation:"fade-in",closeAnimation:"fade-out",openDuration:null,closeDuration:null,openEasing:null,closeEasing:null,backdropOpenAnimation:"fade-in",backdropCloseAnimation:"fade-out",closeLabel:"\xd7",closable:!0,sticky:!1,flavor:"default",position:null,template:function(t){return'
\n
\n
\n
\n
\n
'+t.closeLabel+"
\n
\n
\n
"}}),m=new up.Config({"default":{}}),T=new up.Config({phase:"closed",anchorElement:null,modalElement:null,sticky:null,closable:null,flavor:null,url:null,coveredUrl:null,coveredTitle:null,position:null}),n=new up.BodyShifter,r=new up.DivertibleChain,E=function(){return T.modalElement&&c.remove(T.modalElement),n.unshift(),T.reset(),r.reset(),u.reset(),m.reset()},A=function(){var t;return t=f("template"),F.evalOption(t,{closeLabel:f("closeLabel")})},l=function(){return T.coveredTitle=null,T.coveredUrl=null},k=function(t){var e;return e=".up-modal-"+t,T.modalElement.querySelector(e)},a=function(t,e){var n,r,i,o,u;return o=A(),T.modalElement=u=c.createFromHtml(o),u.setAttribute("up-flavor",T.flavor),F.isPresent(T.position)&&u.setAttribute("up-position",T.position),i=F.only(e,"width","maxWidth","height"),c.setStyle(k("dialog"),i),T.closable||(n=k("close"),c.remove(n)),r=k("content"),up.fragment.createPlaceholder(t,r),c.hide(u),document.body.appendChild(u)},C=function(){return c.show(T.modalElement)},v=function(){return"opened"===T.phase||"opening"===T.phase},g=function(t,e){return e=F.options(e),e.link=c.get(t),b(e)},S=function(t,e){return e=F.options(e),e.link=t,e.preload=!0,w(e)},x=function(t,e){return e=F.options(e),e.url=t,b(e)},p=function(t,e,n){return n=F.options(n),n.html=e,null==n.history&&(n.history=!1),n.target=t,b(n)},b=function(t){return r.asap(o,function(){return w(t)})},w=function(e){var r,i,o,s,l,p,h,d,m,g,v,y,b,w,k,S,E,A,x;return e=F.options(e),o=F.pluckKey(e,"link")||c.none(),x=null!=(s=null!=(l=F.pluckKey(e,"url"))?l:o.getAttribute("up-href"))?s:o.getAttribute("href"),i=F.pluckKey(e,"html"),A=null!=(g=F.pluckKey(e,"target"))?g:o.getAttribute("up-modal"),P(A),null==e.flavor&&(e.flavor=null!=(v=o.getAttribute("up-flavor"))?v:u.flavor),null==e.position&&(e.position=null!=(y=o.getAttribute("up-position"))?y:f("position",e.flavor)),e.position=F.evalOption(e.position,{link:o}),null==e.width&&(e.width=null!=(b=o.getAttribute("up-width"))?b:f("width",e.flavor)),null==e.maxWidth&&(e.maxWidth=null!=(w=o.getAttribute("up-max-width"))?w:f("maxWidth",e.flavor)),null==e.height&&(e.height=null!=(k=o.getAttribute("up-height"))?k:f("height")),null==e.animation&&(e.animation=null!=(S=o.getAttribute("up-animation"))?S:f("openAnimation",e.flavor)),e.animation=F.evalOption(e.animation,{position:e.position}),null==e.backdropAnimation&&(e.backdropAnimation=null!=(E=o.getAttribute("up-backdrop-animation"))?E:f("backdropOpenAnimation",e.flavor)),e.backdropAnimation=F.evalOption(e.backdropAnimation,{position:e.position}),null==e.sticky&&(e.sticky=null!=(p=c.booleanAttr(o,"up-sticky"))?p:f("sticky",e.flavor)),null==e.closable&&(e.closable=null!=(h=c.booleanAttr(o,"up-closable"))?h:f("closable",e.flavor)),null==e.confirm&&(e.confirm=o.getAttribute("up-confirm")),e.method=up.link.followMethod(o,e),e.layer="modal",null==e.failTarget&&(e.failTarget=o.getAttribute("up-fail-target")),null==e.failLayer&&(e.failLayer=null!=(d=o.getAttribute("up-fail-layer"))?d:"auto"),r=up.motion.animateOptions(e,o,{duration:f("openDuration",e.flavor),easing:f("openEasing",e.flavor)}),null==e.history&&(e.history=null!=(m=c.booleanOrStringAttr(o,"up-history"))?m:f("history",e.flavor)),up.browser.canPushState()||(e.history=!1),e.provideTarget=function(){return a(A,e)},e.preload?up.replace(A,x,e):up.browser.whenConfirmed(e).then(function(){return up.event.whenEmitted("up:modal:open",{url:x,log:"Opening modal"}).then(function(){var o,u;return T.phase="opening",T.flavor=e.flavor,T.sticky=e.sticky,T.closable=e.closable,T.position=e.position,e.history&&(T.coveredUrl=up.browser.url(),T.coveredTitle=document.title),o=F.merge(e,{animation:!1}),u=i?up.extract(A,i,o):up.replace(A,x,o),u=u.then(function(){return n.shift(),C(),t(e.animation,e.backdropAnimation,r)}),u=u.then(function(){return T.phase="opened",up.emit("up:modal:opened",{log:"Modal opened"})})})})},P=function(t){return F.isBlank(t)?up.fail("Cannot open a modal without a target selector"):"body"===t?up.fail("Cannot open the in a modal"):void 0},i=function(t){return r.asap(function(){return o(t)})},o=function(e){var r,i,o,u,s,a;return e=F.options(e),v()?(a=null!=(u=e.animation)?u:f("closeAnimation"),a=F.evalOption(a,{position:T.position}),i=null!=(s=e.backdropAnimation)?s:f("backdropCloseAnimation"),i=F.evalOption(i,{position:T.position}),r=up.motion.animateOptions(e,{duration:f("closeDuration"),easing:f("closeEasing")}),o=F.options(F.except(e,"animation","duration","easing","delay"),{history:T.coveredUrl,title:T.coveredTitle}),up.event.whenEmitted(T.modalElement,"up:modal:close",{log:"Closing modal"}).then(function(){var e;return T.phase="closing",T.url=null,T.coveredUrl=null,T.coveredTitle=null,e=t(a,i,r),e=e.then(function(){return up.destroy(T.modalElement,o)}),e=e.then(function(){return n.unshift(),T.phase="closed",T.modalElement=null,T.flavor=null,T.sticky=null,T.closable=null,T.position=null,up.emit("up:modal:closed",{log:"Modal closed"})})})):Promise.resolve()},y=function(t){return null==t&&(t=!0),c.toggleClass(T.modalElement,"up-modal-animating",t)},t=function(t,e,n){var r;return up.motion.isNone(t)?Promise.resolve():(y(),r=Promise.all([up.animate(k("viewport"),t,n),up.animate(k("backdrop"),e,n)]),r=r.then(function(){return y(!1)}))},e=function(){return T.sticky?void 0:(l(),i())},s=function(t){var e;return e=c.get(t),!!c.closest(e,".up-modal")},h=function(t,e){return null==e&&(e={}),up.legacy.warn("up.modal.flavor() is deprecated. Use the up.modal.flavors property instead."),F.assign(d(t),e)},d=function(t){return m[t]||(m[t]={})},f=function(t,e){var n;return null==e&&(e=T.flavor),e&&(n=d(e)[t]),F.isMissing(n)&&(n=u[t]),n},up.link.addFollowVariant("[up-modal]",{follow:function(t,e){return g(t,e)},preload:function(t,e){return S(t,e)}}),up.on("click",".up-modal",function(t){var e;if(T.closable)return e=t.target,c.closest(e,".up-modal-dialog")||c.closest(e,"[up-modal]")?void 0:(up.event.consumeAction(t),F.muteRejection(i()))}),up.on("up:fragment:inserted",function(t,n){var r;if(s(n)){if(r=n.getAttribute("up-source"))return T.url=r}else if(t.origin&&s(t.origin)&&!up.popup.contains(n))return F.muteRejection(e())}),up.event.onEscape(function(){return T.closable?F.muteRejection(i()):void 0}),up.on("click",".up-modal [up-close]",function(t){return F.muteRejection(i()),up.event.consumeAction(t)}),up.macro("a[up-drawer], [up-href][up-drawer]",function(t){var e;return e=t.getAttribute("up-drawer"),c.setAttrs(t,{"up-modal":e,"up-flavor":"drawer"})}),m.drawer={openAnimation:function(t){switch(t.position){case"left":return"move-from-left";case"right":return"move-from-right"}},closeAnimation:function(t){switch(t.position){case"left":return"move-to-left";case"right":return"move-to-right"}},position:function(t){return F.isPresent(t.link)?F.horizontalScreenHalf(t.link):"left"}},up.on("up:history:restore",function(){return F.muteRejection(i())}),up.on("up:framework:reset",E),{visit:x,follow:g,extract:p,close:i,url:function(){return T.url},coveredUrl:function(){return T.coveredUrl},config:u,flavors:m,contains:s,isOpen:v,flavor:h}}()}.call(this),function(){up.tooltip=function(){var t,e,n,r,i,o,u,s,a,l,c,p,h;return h=up.util,s=up.element,o=new up.Config({position:"top",align:"center",openAnimation:"fade-in",closeAnimation:"fade-out",openDuration:100,closeDuration:50,openEasing:null,closeEasing:null}),c=new up.Config({phase:"closed",anchor:null,tooltip:null,content:null,tether:null,position:null,align:null}),n=new up.DivertibleChain,l=function(){var t;return null!=(t=c.tether)&&t.destroy(),c.reset(),n.reset(),o.reset()},u=function(t){return c.tether=new up.Tether(h.only(c,"anchor","position","align")),c.tooltip=s.affix(c.tether.root,".up-tooltip",{"up-position":c.position,"up-align":c.align}),c.content=s.affix(c.tooltip,".up-tooltip-content"),t.text?c.content.innerText=t.text:c.content.innerHTML=t.html},p=function(){var t;return null!=(t=c.tether)?t.sync():void 0},t=function(t,r){return n.asap(i,function(){return e(t,r)})},e=function(t,e){var n,r,i,a,l,h,f,d,m,g,v,y,b,w,k;return null==e&&(e={}),r=s.get(t),l=null!=(f=e.html)?f:r.getAttribute("up-tooltip-html"),k=null!=(d=e.text)?d:r.getAttribute("up-tooltip"),h=null!=(m=null!=(g=e.position)?g:r.getAttribute("up-position"))?m:o.position,n=null!=(v=null!=(y=e.align)?y:r.getAttribute("up-align"))?v:o.align,a=null!=(b=null!=(w=e.animation)?w:s.booleanOrStringAttr(r,"up-animation"))?b:o.openAnimation,i=up.motion.animateOptions(e,r,{duration:o.openDuration,easing:o.openEasing}),c.phase="opening",c.anchor=r,c.position=h,c.align=n,u({text:k,html:l}),p(),up.animate(c.tooltip,a,i).then(function(){return c.phase="opened"})},r=function(t){return n.asap(function(){return i(t)})},i=function(t){var e;return a()?(t=h.options(t,{animation:o.closeAnimation}),e=up.motion.animateOptions(t,{duration:o.closeDuration,easing:o.closeEasing}),h.assign(t,e),c.phase="closing",up.destroy(c.tooltip,t).then(function(){return c.phase="closed",c.tether.destroy(),c.tether=null,c.tooltip=null,c.content=null,c.anchor=null})):Promise.resolve()},a=function(){return"opening"===c.phase||"opened"===c.phase},up.compiler("[up-tooltip], [up-tooltip-html]",function(e){return e.addEventListener("mouseenter",function(){return t(e)}),e.addEventListener("mouseleave",function(){return r()})}),up.on("click up:action:consumed",function(){return r()}),up.on("up:framework:reset",l),up.event.onEscape(function(){return r()}),{config:o,attach:t,isOpen:a,close:r,sync:p}}()}.call(this),function(){up.feedback=function(){var t,e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b;return m=up.util,u=up.element,i=new up.Config({currentClasses:["up-current"],navs:["[up-nav]"]}),c=void 0,o=void 0,p=function(){return i.reset(),c=void 0,o=void 0},t="up-active",e="a, [up-href]",a=function(){return i.navs.join(",")},l=function(t){return m.isPresent(t)?m.normalizeUrl(t,{stripTrailingSlash:!0}):void 0},h=function(t){var e;return(e=t.upNormalizedUrls)||(e=r(t),t.upNormalizedUrls=e),e},r=function(t){var e,n,r,i,o,u,s,a,c,p;if(c=[],up.link.isSafe(t))for(u=["href","up-href","up-alias"],n=0,i=u.length;i>n;n++)if(e=u[n],p=t.getAttribute(e))for(s=m.splitValues(p),r=0,o=s.length;o>r;r++)a=s[r],"#"!==a&&(a=l(a),c.push(a));return c},n=function(){var t;return t=[up.browser.url(),up.modal.url(),up.modal.coveredUrl(),up.popup.url(),up.popup.coveredUrl()],new up.UrlSet(t,{normalizeUrl:l})},v=function(){return c=o,o=n(),m.isEqual(o,c)?void 0:g(document.body)},g=function(t){var n,r;return n=u.subtree(t,a()),r=m.flatMap(n,function(t){return u.subtree(t,e)}),y(r)},b=function(t){var n;return u.closest(t,a())?(n=u.subtree(t,e),y(n)):g(t)},y=function(t){return o||(o=n()),m.each(t,function(t){var e,n,r,u,s,a,l,c,p,f,d;if(d=h(t),e=t.classList,o.matchesAny(d)){for(l=i.currentClasses,p=[],n=0,s=l.length;s>n;n++)u=l[n],p.push(e.add(u));return p}for(c=i.currentClasses,f=[],r=0,a=c.length;a>r;r++)u=c[r],f.push(e.remove(u));return f})},s=function(t){return t=u.get(t),u.ancestor(t,e)||t},f=function(e){return s(e).classList.add(t)},d=function(e){return s(e).classList.remove(t)},up.on("up:history:pushed up:history:replaced up:history:restored up:modal:opened up:modal:closed up:popup:opened up:popup:closed",function(){return v()}),up.on("up:fragment:inserted",function(t,e){return b(e)}),up.on("up:framework:reset",p),{config:i,start:f,stop:d}}(),up.legacy.renamedModule("navigation","feedback")}.call(this),function(){up.radio=function(){var t,e,n,r;return r=up.util,t=new up.Config({hungry:["[up-hungry]"],hungryTransition:null}),n=function(){return t.reset()},e=function(){return t.hungry.join(",")},up.on("up:framework:reset",n),{config:t,hungrySelector:e}}()}.call(this),function(){up.rails=function(){var t,e,n;return n=up.util,t=up.element,e=function(){var t;return!!(window.Rails||(null!=(t=window.jQuery)?t.rails:void 0))},n.each(["method","confirm"],function(n){var r,i;return r="data-"+n,i="up-"+n,up.macro("["+r+"]",function(n){var o;return e()&&up.link.isFollowable(n)?(o={},o[i]=n.getAttribute(r),t.setMissingAttrs(n,o),n.removeAttribute(r)):void 0})})}()}.call(this),function(){up.framework.boot()}.call(this);
1
+ (function(){window.up={version:"0.62.1"}}).call(this),function(){var t=[].slice,e={}.hasOwnProperty;up.util=function(){var n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w,k,S,E,T,A,F,C,x,P,O,R,M,j,D,L,U,q,N,K,_,B,H,z,V,I,Q,W,$,X,G,J,Y,Z,te,ee,ne,re,ie,oe,ue,se,ae,le,ce,pe,he,fe,de,me,ge,ve,ye,be,we,ke,Se,Ee,Te,Ae,Fe,Ce,xe,Pe,Oe,Re,Me,je,De,Le,Ue,qe,Ne,Ke,_e,Be,He,ze,Ve,Ie,Qe,We,$e,Xe,Ge,Je;return we=function(){},s=function(){return Promise.resolve()},fe=function(e){var n,r;return r=void 0,n=!1,function(){var i;return i=1<=arguments.length?t.call(arguments,0):[],n?r:(n=!0,r=e.apply(null,i))}},re=function(t,e){return e=e.toString(),(""===e||"80"===e)&&"http:"===t||"443"===e&&"https:"===t},Se=function(t,e){var n,r,i;return r=Ae(t),n=r.protocol+"//"+r.hostname,re(r.protocol,r.port)||(n+=":"+r.port),i=r.pathname,(null!=e?e.stripTrailingSlash:void 0)===!0&&(i=i.replace(/\/$/,"")),n+=i,(null!=e?e.search:void 0)!==!1&&(n+=r.search),(null!=e?e.hash:void 0)===!0&&(n+=r.hash),n},N=function(t){var e;return e=Ae(location.href),t=Ae(t),e.protocol!==t.protocol||e.hostname!==t.hostname},Ae=function(t){var e;return W(t)?e=up.element.get(t):t.pathname?e=t:(e=document.createElement("a"),e.href=t),e.hostname||(e.href=e.href),"/"!==e.pathname[0]&&(e=Te(e,"protocol","hostname","port","pathname","search","hash"),e.pathname="/"+e.pathname),e},ke=function(t){return t?t.toUpperCase():"GET"},me=function(t){return"GET"!==t&&"HEAD"!==t},u=function(){var n,r,i,o,u,s,a;for(s=arguments[0],u=2<=arguments.length?t.call(arguments,1):[],n=0,i=u.length;i>n;n++){o=u[n];for(r in o)e.call(o,r)&&(a=o[r],s[r]=a)}return s},o=Object.assign||u,Xe=function(t){var e,n,r;n=[];for(e in t)r=t[e],n.push(r);return n},Ee=Object.values||Xe,le=function(t){return ie(t)?function(e){return e[t]}:t},pe=function(t,e){var n,r,i,o,u;if(0===t.length)return[];for(e=le(e),u=[],r=n=0,o=t.length;o>n;r=++n)i=t[r],u.push(e(i,r));return u},he=function(t,e){var n;return n=function(t,e){return t[e[0]]=e[1],t},pe(t,e).reduce(n,{})},h=pe,f=function(t,e){var n,r;for(r=[];(n=t.next())&&!n.done;)r.push(e(n.value));return r},ze=function(t,e){var n,r,i,o;for(o=[],r=n=0,i=t-1;i>=0?i>=n:n>=i;r=i>=0?++n:--n)o.push(e(r));return o},J=function(t){return null===t},ue=function(t){return void 0===t},K=function(t){return!ue(t)},X=function(t){return ue(t)||J(t)},I=function(t){return!X(t)},U=function(t){return X(t)?!0:Z(t)&&t[U.key]?t[U.key]():ie(t)||$(t)?0===t.length:te(t)?0===Object.keys(t).length:!1},U.key="up.util.isBlank",xe=function(t,e){return null==e&&(e=ee),e(t)?t:void 0},ee=function(t){return!U(t)},V=function(t){return"function"==typeof t},ie=function(t){return"string"==typeof t||t instanceof String},q=function(t){return"boolean"==typeof t||t instanceof Boolean},Y=function(t){return"number"==typeof t||t instanceof Number},te=function(t){return"object"==typeof t&&!J(t)&&(ue(t.constructor)||t.constructor===Object)},Z=function(t){var e;return e=typeof t,"object"===e&&!J(t)||"function"===e},_=function(t){return t instanceof Element},W=function(t){return!!(null!=t?t.jquery:void 0)},ne=function(t){return Z(t)&&V(t.then)},D=Array.isArray,z=function(t){return t instanceof FormData},Ve=function(t){return D(t)?t:Array.prototype.slice.call(t)},$=function(t){return D(t)||G(t)||j(t)||W(t)||Q(t)},G=function(t){return t instanceof NodeList},Q=function(t){return t instanceof HTMLCollection},j=function(t){return"[object Arguments]"===Object.prototype.toString.call(t)},Ge=function(t){return $(t)?t:X(t)?[]:[t]},c=function(t,e){var n,r,i;if(Z(t)&&t[c.key]?t=t[c.key]():$(t)?(t=Array.prototype.slice.call(t),n=!0):te(t)&&(t=o({},t),n=!0),n&&e)for(r in t)i=t[r],t[r]=c(i,!0);return t},c.key="up.util.copy",Date.prototype[c.key]=function(){return new Date(+this)},p=function(t){return c(t,!0)},de=function(){var e;return e=1<=arguments.length?t.call(arguments,0):[],o.apply(null,[{}].concat(t.call(e)))},ye=function(t,e){return e?de(e,t):t?c(t):{}},F=function(t,e){var n,r,i,o;for(o=void 0,r=0,i=t.length;i>r;r++)if(n=t[r],e(n)){o=n;break}return o},_e=function(t,e){return!!C(t,e)},C=function(t,e){var n,r,i,o,u;for(e=le(e),i=r=0,o=t.length;o>r;i=++r)if(n=t[i],u=e(n,i))return u;return void 0},b=function(t,e){var n,r,i,o,u;for(e=le(e),u=!0,i=r=0,o=t.length;o>r;i=++r)if(n=t[i],!e(n,i)){u=!1;break}return u},a=function(t){return A(t,I)},Qe=function(t){return t.length<2?t:Ne(i(t))},We=function(t,e){var n;return t.length<2?t:(e=le(e),n=new Set,A(t,function(t,r){var i;return i=e(t,r),n.has(i)?!1:(n.add(i),!0)}))},Ne=function(t){var e;return e=[],t.forEach(function(t){return e.push(t)}),e},i=function(t){var e;return e=new Set,t.forEach(function(t){return e.add(t)}),e},A=function(t,e){var n;return e=le(e),n=[],h(t,function(t,r){return e(t,r)?n.push(t):void 0}),n},Me=function(t,e){return e=le(e),A(t,function(t,n){return!e(t,n)})},M=function(t,e){return A(t,function(t){return l(e,t)})},Ue=function(t,e){return setTimeout(e,t)},Re=function(t){return setTimeout(t,0)},Oe=function(t){return Promise.resolve().then(t)},ce=function(t){return t[t.length-1]},g=function(t){var e;return e=t.key,"Escape"===e||"Esc"===e},l=function(t,e){return t.indexOf(e)>=0},Te=function(){var e,n,r,i,o,u;for(i=arguments[0],o=2<=arguments.length?t.call(arguments,1):[],e={},n=0,r=o.length;r>n;n++)u=o[n],u in i&&(e[u]=i[u]);return e},w=function(){var e,n,r,i,o,u;for(i=arguments[0],o=2<=arguments.length?t.call(arguments,1):[],e=c(i),n=0,r=o.length;r>n;n++)u=o[n],delete e[u];return e},se=function(t){return!(t.metaKey||t.shiftKey||t.ctrlKey)},ae=function(t){var e;return e=ue(t.button)||0===t.button,e&&se(t)},$e=function(){return new Promise(we)},De=function(t,e){var n;return n=t.indexOf(e),n>=0?(t.splice(n,1),e):void 0},y=function(){var e,n;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],V(n)?n.apply(null,e):n},T=function(){var e,n,r,i,o,u;throw e=1<=arguments.length?t.call(arguments,0):[],D(e[0])?(r=e[0],u=e[1]||{}):(r=e,u={}),(i=up.log).error.apply(i,r),up.event.onReady(function(){return up.toast.open(r,u)}),n=(o=up.log).sprintf.apply(o,r),new Error(n)},n={"&":"&","<":"<",">":">",'"':"""},m=function(t){return t.replace(/[&<>"]/g,function(t){return n[t]})},v=function(t){return t.replace(/[\\^$*+?.()|[\]{}]/g,"\\$&")},Ce=function(t,e){var n;return n=t[e],delete t[e],n},Le=function(t,e,n){return t[n]=Ce(t,e)},S=function(t,e){var n;return n=ce(t),e(n)?t.pop():void 0},k=function(t){return S(t,V)},E=function(t){return S(t,te)||{}},Fe=function(){var e,n;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],function(){var r;return r=1<=arguments.length?t.call(arguments,0):[],n.apply(this,e.concat(r))}},R=function(t){return t},Pe=function(e){var n,r;return n=ve(),r=function(){var r,i;return r=1<=arguments.length?t.call(arguments,0):[],i=e.apply(null,r),n.resolve(i),i},r.promise=n.promise(),r},qe=function(t){return 1===t.length?t[0]:function(){return pe(t,function(t){return t()})}},O=function(t){var e,n,r;return e=t.getBoundingClientRect(),n=e.left+.5*e.width,r=.5*up.viewport.rootWidth(),r>n?"left":"right"},P=function(t){var e,n,r,i;for(e=[],n=0,r=t.length;r>n;n++)i=t[n],$(i)?e.push.apply(e,i):e.push(i);return e},x=function(t,e){return P(pe(t,e))},oe=function(t){return!!t},r=function(t,e){return t.then(e,e)},ge=function(t){return null!=t?t["catch"](we):void 0},ve=function(){var t,e,n;return n=void 0,e=void 0,t=new Promise(function(t,r){return n=t,e=r}),t.resolve=n,t.reject=e,t.promise=function(){return t},t},je=function(t){var e;try{return t()}catch(n){return e=n,Promise.reject(e)}},He=function(t,e){var n,r,i,o,u;for(e=le(e),u=0,i=0,o=t.length;o>i;i++)n=t[i],r=e(n),I(r)&&(u+=r);return u},L=function(t){return Object.prototype.hasOwnProperty(t)},B=function(t,e){var n,r;return(null!=t?t.valueOf:void 0)&&(t=t.valueOf()),(null!=e?e.valueOf:void 0)&&(e=e.valueOf()),typeof t!=typeof e?!1:$(t)&&$(e)?H(t,e):Z(t)&&t[B.key]?t[B.key](e):te(t)&&te(e)?(n=Object.keys(t),r=Object.keys(e),H(n,r)?b(n,function(n){return B(t[n],e[n])}):!1):t===e},B.key="up.util.isEqual",H=function(t,e){return t.length===e.length&&b(t,function(t,n){return B(t,e[n])})},Be=function(t,e){var n;return null==e&&(e=" "),n=t.split(e),n=pe(n,function(t){return t.trim()}),n=A(n,ee)},d=function(t,e){return e.length>t.length?!1:t.substring(t.length-e.length)===e},Ke=function(t){return.5>t?2*t*t:t*(4-2*t)-1},Je=function(t,e){return t instanceof e?t:new e(t)},be=0,Ie=function(){return be++},{parseUrl:Ae,normalizeUrl:Se,normalizeMethod:ke,methodAllowsPayload:me,assign:o,assignPolyfill:u,copy:c,deepCopy:p,merge:de,options:ye,fail:T,each:h,eachIterator:f,map:pe,flatMap:x,mapObject:he,times:ze,findResult:C,some:_e,any:function(){return up.legacy.warn("up.util.any() has been renamed to up.util.some()"),_e.apply(null,arguments)},every:b,all:function(){return up.legacy.warn("up.util.all() has been renamed to up.util.every()"),b.apply(null,arguments)},detect:function(){return up.legacy.warn("up.util.find() has been renamed to up.util.find()"),F.apply(null,arguments)},find:F,select:function(){return up.legacy.warn("up.util.select() has been renamed to up.util.filter()"),A.apply(null,arguments)},filter:A,reject:Me,intersect:M,compact:a,uniq:Qe,uniqBy:We,last:ce,isNull:J,isDefined:K,isUndefined:ue,isGiven:I,isMissing:X,isPresent:ee,isBlank:U,presence:xe,isObject:Z,isFunction:V,isString:ie,isBoolean:q,isNumber:Y,isElement:_,isJQuery:W,isPromise:ne,isOptions:te,isArray:D,isFormData:z,isNodeList:G,isArguments:j,isList:$,isUnmodifiedKeyEvent:se,isUnmodifiedMouseEvent:ae,timer:Ue,setTimer:function(){return up.legacy.warn("up.util.setTimer() has been renamed to up.util.timer()"),Ue.apply(null,arguments)},escapePressed:g,contains:l,toArray:Ve,only:Te,except:w,unresolvablePromise:$e,remove:De,memoize:fe,error:T,pluckKey:Ce,renameKey:Le,extractOptions:E,extractCallback:k,noop:we,asyncNoop:s,identity:R,escapeHtml:m,escapeRegexp:v,sequence:qe,previewable:Pe,evalOption:y,horizontalScreenHalf:O,flatten:P,isTruthy:oe,newDeferred:ve,always:r,muteRejection:ge,rejectOnError:je,isBasicObjectProperty:L,isCrossDomain:N,selectorForElement:function(){return up.legacy.warn("up.util.selectorForElement() has been renamed to up.element.toSelector()"),up.element.toSelector.apply(null,arguments)},nextFrame:function(){return up.legacy.warn("up.util.nextFrame() has been renamed to up.util.task()"),Re.apply(null,arguments)},task:Re,microtask:Oe,isEqual:B,splitValues:Be,endsWith:d,sum:He,wrapList:Ge,wrapValue:Je,simpleEase:Ke,values:Ee,partial:Fe,arrayToSet:i,setToArray:Ne,uid:Ie}}(),up.fail=up.util.fail}.call(this),function(){var t,e=[].slice;t=up.util,up.legacy=function(){var n,r,i,o;return n=function(e,n,r){return n in e?(i("Property { %s } has been renamed to { %s } (found in %o)",n,r,e),t.renameKey(e,n,r)):void 0},r=function(t,e){return Object.defineProperty(up,t,{get:function(){return i("up."+t+" has been renamed to up."+e),up[e]}})},o={},i=function(){var t,n,r;return n=arguments[0],t=2<=arguments.length?e.call(arguments,1):[],n="[DEPRECATION] "+n,n=(r=up.log).sprintf.apply(r,[n].concat(e.call(t))),o[n]?void 0:(o[n]=!0,up.warn(n))},{renamedModule:r,fixKey:n,warn:i}}()}.call(this),function(){var t=[].slice;up.browser=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w,k,S;return w=up.util,v=function(t,e){var n,r;return r=w.merge(e,{url:t}),n=new up.Request(r),n.navigate()},b=function(t){return t.submit()},k=function(){return location.href},d=w.memoize(function(){return!window.atob}),m=w.memoize(function(){return"ActiveXObject"in window}),f=function(){return w.isDefined(history.pushState)&&"get"===up.protocol.initialRequestMethod()},o=w.memoize(function(){return"transition"in document.documentElement.style}),l=w.memoize(function(){return"oninput"in document.createElement("input")}),h=w.memoize(function(){return!!window.Promise}),a=w.memoize(function(){return!!window.FormData}),c=w.memoize(function(){return a()&&!!FormData.prototype.entries}),s=w.memoize(function(){return!!window.DOMParser}),r=w.memoize(function(){return window.console&&console.debug&&console.info&&console.warn&&console.error&&console.group&&console.groupCollapsed&&console.groupEnd}),u=w.memoize(function(){return!!window.customElements}),n=w.memoize(function(){return"requestAnimationFrame"in window}),i=w.memoize(function(){return"scrollRestoration"in history}),p=function(){return!!window.jQuery},y=function(t){var e,n;return n=null!=(e=document.cookie.match(new RegExp(t+"=(\\w+)")))?e[1]:void 0,w.isPresent(n)&&(document.cookie=t+"=; expires=Thu, 01-Jan-70 00:00:01 GMT; path=/"),n},S=function(t){return t.preload||w.isBlank(t.confirm)||window.confirm(t.confirm)?Promise.resolve():Promise.reject(new Error("User canceled action"))},g=function(){return!d()&&r()&&s()&&a()&&o()&&l()&&h()&&n()},e=function(){var e;return e=1<=arguments.length?t.call(arguments,0):[],p()||up.fail("jQuery must be published as window.jQuery"),jQuery.apply(null,e)},{url:k,navigate:v,submitForm:b,canPushState:f,canFormData:a,canInspectFormData:c,canCustomElements:u,canControlScrollRestoration:i,canJQuery:p,whenConfirmed:S,isSupported:g,popCookie:y,jQuery:e,isIE11:m}}()}.call(this),function(){var t;t=up.util,up.Selector=function(){function e(t,e){this.selector=t,this.filterFn=e}var n,r;return n=new RegExp("\\:has\\(([^\\)]+)\\)$"),r=up.browser.isIE11()?"msMatchesSelector":"matches",e.prototype.matches=function(t){var e;return e=t[r](this.selector),this.filterFn&&e&&(e=this.filterFn(t)),e},e.prototype.descendants=function(e){var n;return n=e.querySelectorAll(this.selector),this.filterFn&&(n=t.filter(n,this.filterFn)),n},e.prototype.descendant=function(e){var n;return this.filterFn?(n=e.querySelectorAll(this.selector),t.find(n,this.filterFn)):e.querySelector(this.selector)},e.prototype.subtree=function(t){var e;return e=[],this.matches(t)&&e.push(t),e.push.apply(e,this.descendants(t)),e},e.prototype.closest=function(t){return t.closest&&!this.filterFn?t.closest(this.selector):this.closestPolyfill(t)},e.prototype.closestPolyfill=function(t){return this.matches(t,this.selector)?t:this.ancestor(t)},e.prototype.ancestor=function(t){var e;return(e=t.parentElement)?this.matches(e)?e:this.ancestor(e):void 0},e.parse=function(t){var e;return e=null,t=t.replace(n,function(t,n){return e=function(t){return t.querySelector(n)},""}),new this(t,e)},e}()}.call(this),function(){var t=[].slice;up.element=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w,k,S,E,T,A,F,C,x,P,O,R,M,j,D,L,U,q,N,K,_,B,H,z,V,I,Q,W,$,X,G,J,Y;return G=up.util,n={getAttribute:function(){return void 0}},q=function(t){return up.Selector.parse(t)},b=function(){var e,n,r,i;return e=1<=arguments.length?t.call(arguments,0):[],i=e.pop(),n=null!=(r=e[0])?r:document,q(i).descendant(n)},i=function(){var e,n,r,i;return e=1<=arguments.length?t.call(arguments,0):[],i=e.pop(),n=null!=(r=e[0])?r:document,q(i).descendants(n)},Q=function(t,e){return q(e).subtree(t)},l=function(t,e){return q(e).closest(t)},R=function(t,e){return q(e).matches(t)},o=function(t,e){return q(e).ancestor(t)},S=function(t){return G.isElement(t)?t:G.isString(t)?b(t):G.isJQuery(t)?(t.length>1&&up.fail("up.element.get(): Cannot cast multiple elements (%o) to a single element",t),t[0]):t},k=function(){var e;return e=1<=arguments.length?t.call(arguments,0):[],G.flatMap(e,Y)},Y=function(t){return G.isString(t)?i(t):G.wrapList(t)},N=function(t){var e;return t.remove?t.remove():(e=t.parentNode)?e.removeChild(t):void 0},A=function(t){return t.style.display="none"},I=function(t){return t.style.display=""},$=function(t,e){return null==e&&(e=!P(t)),e?I(t):A(t)},X=function(t,e,n){var r;return r=t.classList,null==n&&(n=!r.contains(e)),n?r.add(e):r.remove(e)},B=function(t,e){var n,r,i;r=[];for(n in e)i=e[n],r.push(t.setAttribute(n,i));return r},M=function(t){var e,n;return n="meta"+u("name",t),null!=(e=b(n))?e.getAttribute("content"):void 0},C=function(t,e){return t.insertAdjacentElement("beforebegin",e)},K=function(t,e){return t.parentElement.replaceChild(e,t)},m=function(t,e){var n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y;for(n=[],m=t.replace(/\[([\w-]+)(?:=(["'])?([^"'\]]*?)\2)?\]/g,function(t,e,r,i){return n.push(i||""),"["+e+"]"}),u=m.split(/[ >]+/),d=void 0,i=void 0,h=void 0,s=0,c=u.length;c>s;s++){if(o=u[s],v=void 0,o=o.replace(/^[\w-]+/,function(t){return v=t,""}),i=document.createElement(v||"div"),d||(d=i),o=o.replace(/\#([\w-]+)/,function(t,e){return i.id=e,""}),o=o.replace(/\.([\w-]+)/g,function(t,e){return i.classList.add(e),""}),n.length&&(o=o.replace(/\[([\w-]+)\]/g,function(t,e){return i.setAttribute(e,n.shift()),""})),""!==o)throw new Error("Cannot parse selector: "+t);null!=h&&h.appendChild(i),h=i}if(e){if(r=G.pluckKey(e,"class"))for(f=G.wrapList(r),a=0,p=f.length;p>a;a++)l=f[a],d.classList.add(l);(g=G.pluckKey(e,"style"))&&H(d,g),(y=G.pluckKey(e,"text"))&&(d.innerText=y),B(d,e)}return d},r=function(t,e,n){var r;return r=m(e,n),t.appendChild(r),r},W=function(t){var e,n,r,i,o,s,a,l,c;if(G.isString(t))return t;if(t=S(t),l=void 0,x(t))l=v(t);else if(c=t.getAttribute("up-id"))l=u("up-id",c);else if(i=t.getAttribute("id"))l=i.match(/^[a-z0-9\-_]+$/i)?"#"+i:u("id",i);else if(a=t.getAttribute("name"))l=v(t)+u("name",a);else if(n=G.presence(j(t)))for(l="",r=0,s=n.length;s>r;r++)o=n[r],l+="."+o;else l=(e=t.getAttribute("aria-label"))?u("aria-label",e):v(t);return l},x=function(t){return R(t,"html, body, head, title")},v=function(t){return t.tagName.toLowerCase()},u=function(t,e){return e=e.replace(/"/g,'\\"'),"["+t+'="'+e+'"]'},j=function(t){var e,n;return e=t.className,n=G.splitValues(e),G.reject(n,function(t){return t.match(/^up-/)})},f=function(t){var e;return e=new DOMParser,e.parseFromString(t,"text/html")},d=function(t){var e;return e=f(t),e.body.children[0]},E=function(){return document.documentElement},U=function(t){return t.offsetHeight},h=function(t){var e;return e=V(t,{transition:"none"}),U(t),e},T=function(t){var e,n,r,i;return i=G.isOptions(t)?t:c(t),r=i.transitionProperty,e=i.transitionDuration,n="none"===r||"all"===r&&0===e,!n},w=function(t){var e,n;return e=t.getBoundingClientRect(),t.style.position="absolute",n=t.offsetParent.getBoundingClientRect(),H(t,{left:e.left-p(t,"margin-left")-n.left,top:e.top-p(t,"margin-top")-n.top,right:"",bottom:""})},z=function(t,e){var n,r,i;r=[];for(n in e)i=e[n],r.push(G.isMissing(t.getAttribute(n))?t.setAttribute(n,i):void 0);return r},J=function(t){var e,n;return e=t.parentNode,n=G.toArray(t.childNodes),G.each(n,function(n){return e.insertBefore(n,t)}),e.removeChild(t)},s=function(t,e,n){var r;switch(r=t.getAttribute(e)){case"false":return!1;case"true":case"":case e:return!0;default:if(n)return r}},a=function(t,e){return s(t,e,!0)},L=function(t,e){var n;return n=t.getAttribute(e),(null!=n?n.match(/^[\d\.]+$/):void 0)?parseFloat(n):void 0},O=function(t,e){var n,r;return(n="function"==typeof t.getAttribute&&null!=(r=t.getAttribute(e))?r.trim():void 0)?JSON.parse(n):void 0},V=function(t,e){var n;return n=F(t,Object.keys(e)),H(t,e),function(){return H(t,n)}},c=function(t,e){var n;return n=window.getComputedStyle(t),y(n,e)},p=function(t,e){var n;return n=c(t,e),G.isGiven(n)?parseFloat(n):void 0},F=function(t,e){var n;return n=t.style,y(n,e)},y=function(e,n){return G.isString(n)?e[n]:G.only.apply(G,[e].concat(t.call(n)))},H=function(t,e){var n,r,i,o;i=t.style,r=[];for(n in e)o=e[n],o=D(n,o),r.push(i[n]=o);return r},D=function(t,n){return G.isMissing(n)?n="":e.has(t.toLowerCase().replace(/-/,""))&&(n=g(n)),n},e=G.arrayToSet(["top","right","bottom","left","padding","paddingtop","paddingright","paddingbottom","paddingleft","margin","margintop","marginright","marginbottom","marginleft","borderwidth","bordertopwidth","borderrightwidth","borderbottomwidth","borderleftwidth","width","height","maxwidth","maxheight","minwidth","minheight"]),g=function(t){return G.isNumber(t)||G.isString(t)&&/^\d+$/.test(t)?t.toString()+"px":t},_=function(t,e){var n,r;return G.isString(t)?(r=t,G.contains(r,"&")&&(G.isPresent(e)?(n=W(e),r=r.replace(/\&/,n)):up.fail("Found origin reference (%s) in selector %s, but no origin was given","&",r))):r=W(t),r},P=function(t){return!!(t.offsetWidth||t.offsetHeight||t.getClientRects().length)},{first:b,all:i,subtree:Q,closest:l,matches:R,ancestor:o,get:S,list:k,remove:N,toggle:$,toggleClass:X,hide:A,show:I,metaContent:M,replace:K,insertBefore:C,createFromSelector:m,setAttrs:B,affix:r,toSelector:W,isSingleton:x,attributeSelector:u,createDocumentFromHtml:f,createFromHtml:d,root:E,paint:U,concludeCssTransition:h,hasCssTransition:T,fixedToAbsolute:w,setMissingAttrs:z,unwrap:J,booleanAttr:s,numberAttr:L,jsonAttr:O,booleanOrStringAttr:a,setTemporaryStyle:V,style:c,styleNumber:p,inlineStyle:F,setStyle:H,resolveSelector:_,none:function(){return n},isVisible:P}}()}.call(this),function(){var t;t=up.element,up.BodyShifter=function(){function e(){this.unshiftFns=[]}return e.prototype.shift=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f;if(h=up.viewport.rootHasVerticalScrollbar(),l=up.viewport.rootOverflowElement(),this.unshiftFns.push(t.setTemporaryStyle(l,{overflowY:"hidden"})),h){for(n=document.body,f=up.viewport.scrollbarWidth(),r=t.styleNumber(n,"paddingRight"),i=f+r,this.unshiftFns.push(t.setTemporaryStyle(n,{paddingRight:i})),c=up.viewport.anchoredRight(),p=[],s=0,a=c.length;a>s;s++)e=c[s],o=t.styleNumber(e,"right"),u=f+o,p.push(this.unshiftFns.push(t.setTemporaryStyle(e,{right:u})));return p}},e.prototype.unshift=function(){var t,e;for(t=[];e=this.unshiftFns.pop();)t.push(e());return t},e}()}.call(this),function(){var t,e=function(t,e){return function(){return t.apply(e,arguments)}},n=[].slice;t=up.util,up.Cache=function(){function r(t){this.config=null!=t?t:{},this.get=e(this.get,this),this.isFresh=e(this.isFresh,this),this.remove=e(this.remove,this),this.set=e(this.set,this),this.timestamp=e(this.timestamp,this),this.alias=e(this.alias,this),this.makeRoomForAnotherKey=e(this.makeRoomForAnotherKey,this),this.keys=e(this.keys,this),this.log=e(this.log,this),this.clear=e(this.clear,this),this.isCachable=e(this.isCachable,this),this.isEnabled=e(this.isEnabled,this),this.normalizeStoreKey=e(this.normalizeStoreKey,this),this.expiryMillis=e(this.expiryMillis,this),this.maxKeys=e(this.maxKeys,this),this.store=this.config.store||new up.store.Memory}return r.prototype.maxKeys=function(){return t.evalOption(this.config.size)},r.prototype.expiryMillis=function(){return t.evalOption(this.config.expiry)},r.prototype.normalizeStoreKey=function(t){return this.config.key?this.config.key(t):t.toString()},r.prototype.isEnabled=function(){return 0!==this.maxKeys()&&0!==this.expiryMillis()},r.prototype.isCachable=function(t){return this.config.cachable?this.config.cachable(t):!0},r.prototype.clear=function(){return this.store.clear()},r.prototype.log=function(){var t;return t=1<=arguments.length?n.call(arguments,0):[],this.config.logPrefix?(t[0]="["+this.config.logPrefix+"] "+t[0],up.puts.apply(up,t)):void 0},r.prototype.keys=function(){return this.store.keys()},r.prototype.makeRoomForAnotherKey=function(){var e,n,r,i;return i=t.copy(this.keys()),e=this.maxKeys(),e&&i.length>=e&&(n=void 0,r=void 0,t.each(i,function(t){return function(e){var i,o;return i=t.store.get(e),o=i.timestamp,!r||r>o?(n=e,r=o):void 0}}(this)),n)?this.store.remove(n):void 0},r.prototype.alias=function(e,n){var r;return r=this.get(e,{silent:!0}),t.isDefined(r)?this.set(n,r):void 0},r.prototype.timestamp=function(){return(new Date).valueOf()},r.prototype.set=function(t,e){var n,r;return this.isEnabled()&&this.isCachable(t)?(this.makeRoomForAnotherKey(),n=this.normalizeStoreKey(t),this.log("Setting entry %o to %o",n,e),r={timestamp:this.timestamp(),value:e},this.store.set(n,r)):void 0},r.prototype.remove=function(t){var e;return this.isCachable(t)?(e=this.normalizeStoreKey(t),this.store.remove(e)):void 0},r.prototype.isFresh=function(t){var e,n;return e=this.expiryMillis(),e?(n=this.timestamp()-t.timestamp,e>n):!0},r.prototype.get=function(t,e){var n;return null==e&&(e={}),this.isCachable(t)&&(n=this.store.get(this.normalizeStoreKey(t)))?this.isFresh(n)?(e.silent||this.log("Cache hit for '%s'",t),n.value):(e.silent||this.log("Discarding stale cache entry for '%s'",t),void this.remove(t)):void(e.silent||this.log("Cache miss for '%s'",t))},r}()}.call(this),function(){var t,e=[].slice;t=up.util,up.Record=function(){function n(e){t.assign(this,this.attributes(e))}return n.prototype.fields=function(){throw"Return an array of property names"},n.prototype.attributes=function(n){return null==n&&(n=this),t.only.apply(t,[n].concat(e.call(this.fields())))},n.prototype[""+t.copy.key]=function(){return this.variant()},n.prototype.variant=function(e){var n;return null==e&&(e={}),n=t.merge(this.attributes(),e),new this.constructor(n)},n.prototype[""+t.isEqual.key]=function(e){return e&&this.constructor===e.constructor&&t.isEqual(this.attributes(),e.attributes())},n}()}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}};e=up.util,t=up.element,up.CompilePass=function(){function r(t,e,r){this.root=t,this.compilers=e,null==r&&(r={}),this.isInSkippedSubtree=n(this.isInSkippedSubtree,this),this.skipSubtrees=r.skip,this.skipSubtrees.length&&this.root.querySelector("[up-keep]")||(this.skipSubtrees=void 0)}return r.prototype.compile=function(){return up.log.group("Compiling fragment %o",this.root,function(t){return function(){var e,n,r,i,o;for(i=t.compilers,o=[],n=0,r=i.length;r>n;n++)e=i[n],o.push(t.runCompiler(e));return o}}(this))},r.prototype.runCompiler=function(t){var n;return n=this.select(t.selector),n.length?up.log.group(t.isDefault?void 0:"Compiling '%s' on %d element(s)",t.selector,n.length,function(r){return function(){var i,o,u,s,a,l,c,p;if(t.batch)r.compileBatch(t,n);else for(i=0,s=n.length;s>i;i++)l=n[i],r.compileOneElement(t,l);if(u=t.keep){for(p=e.isString(u)?u:"",c=[],o=0,a=n.length;a>o;o++)l=n[o],c.push(l.setAttribute("up-keep",p));return c}}}(this)):void 0},r.prototype.compileOneElement=function(t,e){var n,r,i,o,u;return o=t.jQuery?up.browser.jQuery(e):e,n=[o],1!==t.length&&(r=up.syntax.data(e),n.push(r)),u=t.apply(e,n),(i=this.destructorPresence(u))?up.destructor(e,i):void 0},r.prototype.compileBatch=function(t,n){var r,i,o,u;return o=t.jQuery?up.browser.jQuery(n):n,r=[o],1!==t.length&&(i=e.map(n,up.syntax.data),r.push(i)),u=t.apply(n,r),this.destructorPresence(u)?up.fail("Compilers with { batch: true } cannot return destructors"):void 0},r.prototype.destructorPresence=function(t){return e.isFunction(t)||e.isArray(t)&&e.every(t,e.isFunction)?t:void 0},r.prototype.select=function(n){var r;return e.isFunction(n)&&(n=n()),r=t.subtree(this.root,n),this.skipSubtrees&&(r=e.reject(r,this.isInSkippedSubtree)),r},r.prototype.isInSkippedSubtree=function(t){var n;return e.contains(this.skipSubtrees,t)?!0:(n=t.parentElement)?this.isInSkippedSubtree(n):!1},r}()}.call(this),function(){var t;t=up.util,up.Config=function(){function e(t){this.blueprint=t,this.reset()}return e.prototype.reset=function(){return t.assign(this,t.deepCopy(this.blueprint))},e}()}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}};e=up.util,t=up.element,up.CssTransition=function(){function r(t,r,i){this.element=t,this.lastFrameKebab=r,this.startMotion=n(this.startMotion,this),this.resumeOldTransition=n(this.resumeOldTransition,this),this.pauseOldTransition=n(this.pauseOldTransition,this),this.finish=n(this.finish,this),this.onTransitionEnd=n(this.onTransitionEnd,this),this.listenToTransitionEnd=n(this.listenToTransitionEnd,this),this.stopFallbackTimer=n(this.stopFallbackTimer,this),this.startFallbackTimer=n(this.startFallbackTimer,this),this.onFinishEvent=n(this.onFinishEvent,this),this.listenToFinishEvent=n(this.listenToFinishEvent,this),this.start=n(this.start,this),this.lastFrameKeysKebab=Object.keys(this.lastFrameKebab),e.some(this.lastFrameKeysKebab,function(t){return t.match(/A-Z/)})&&up.fail("Animation keys must be kebab-case"),this.finishEvent=i.finishEvent,this.duration=i.duration,this.delay=i.delay,this.totalDuration=this.delay+this.duration,this.easing=i.easing,this.finished=!1}return r.prototype.start=function(){return 0===this.lastFrameKeysKebab.length?(this.finished=!0,Promise.resolve()):(this.deferred=e.newDeferred(),this.pauseOldTransition(),this.startTime=new Date,this.startFallbackTimer(),this.listenToFinishEvent(),this.listenToTransitionEnd(),this.startMotion(),this.deferred.promise())},r.prototype.listenToFinishEvent=function(){return this.finishEvent?this.stopListenToFinishEvent=this.element.addEventListener(this.finishEvent,this.onFinishEvent):void 0},r.prototype.onFinishEvent=function(t){return t.stopPropagation(),this.finish()},r.prototype.startFallbackTimer=function(){var t;return t=100,this.fallbackTimer=e.timer(this.totalDuration+t,function(t){return function(){return t.finish()}}(this))},r.prototype.stopFallbackTimer=function(){return clearTimeout(this.fallbackTimer)},r.prototype.listenToTransitionEnd=function(){return this.stopListenToTransitionEnd=up.on(this.element,"transitionend",this.onTransitionEnd)},r.prototype.onTransitionEnd=function(t){var n,r;if(t.target===this.element&&(r=new Date-this.startTime,r>.25*this.totalDuration&&(n=t.propertyName,e.contains(this.lastFrameKeysKebab,n))))return this.finish()},r.prototype.finish=function(){return this.finished?void 0:(this.finished=!0,this.stopFallbackTimer(),"function"==typeof this.stopListenToFinishEvent&&this.stopListenToFinishEvent(),"function"==typeof this.stopListenToTransitionEnd&&this.stopListenToTransitionEnd(),t.concludeCssTransition(this.element),this.resumeOldTransition(),this.deferred.resolve())},r.prototype.pauseOldTransition=function(){var e,n,r;return e=t.style(this.element,["transitionProperty","transitionDuration","transitionDelay","transitionTimingFunction"]),t.hasCssTransition(e)?("all"!==e.transitionProperty&&(r=e.transitionProperty.split(/\s*,\s*/),n=t.style(this.element,r),this.setOldTransitionTargetFrame=t.setTemporaryStyle(this.element,n)),this.setOldTransition=t.concludeCssTransition(this.element)):void 0},r.prototype.resumeOldTransition=function(){return"function"==typeof this.setOldTransitionTargetFrame&&this.setOldTransitionTargetFrame(),"function"==typeof this.setOldTransition?this.setOldTransition():void 0},r.prototype.startMotion=function(){return t.setStyle(this.element,{transitionProperty:Object.keys(this.lastFrameKebab).join(", "),transitionDuration:this.duration+"ms",transitionDelay:this.delay+"ms",transitionTimingFunction:this.easing}),t.setStyle(this.element,this.lastFrameKebab)},r}()}.call(this),function(){var t,e=function(t,e){return function(){return t.apply(e,arguments)}},n=[].slice;t=up.util,up.DivertibleChain=function(){function r(){this.asap=e(this.asap,this),this.poke=e(this.poke,this),this.allTasks=e(this.allTasks,this),this.promise=e(this.promise,this),this.reset=e(this.reset,this),this.reset()}return r.prototype.reset=function(){return this.queue=[],this.currentTask=void 0},r.prototype.promise=function(){var e;return e=t.last(this.allTasks()),(null!=e?e.promise:void 0)||Promise.resolve()},r.prototype.allTasks=function(){var t;return t=[],this.currentTask&&t.push(this.currentTask),t=t.concat(this.queue)},r.prototype.poke=function(){var e;return!this.currentTask&&(this.currentTask=this.queue.shift())?(e=this.currentTask(),t.always(e,function(t){return function(){return t.currentTask=void 0,t.poke()}}(this))):void 0},r.prototype.asap=function(){var e;return e=1<=arguments.length?n.call(arguments,0):[],this.queue=t.map(e,t.previewable),this.poke(),this.promise()},r}()}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}};e=up.util,t=up.element,up.EventListener=function(){function r(t,e,r,i,o){this.element=t,this.eventName=e,this.selector=r,this.callback=i,null==o&&(o={}),this.nativeCallback=n(this.nativeCallback,this),this.unbind=n(this.unbind,this),this.jQuery=o.jQuery,this.key=this.constructor.key(this.eventName,this.selector,this.callback),this.isDefault=up.framework.isBooting()}return r.prototype.bind=function(){var t,e;return e=(t=this.element).upEventListeners||(t.upEventListeners={}),e[this.key]&&up.fail("up.on(): The %o callback %o cannot be registered more than once",this.eventName,this.callback),e[this.key]=this,this.element.addEventListener(this.eventName,this.nativeCallback)},r.prototype.unbind=function(){var t;return(t=this.element.upEventListeners)&&delete t[this.key],this.element.removeEventListener(this.eventName,this.nativeCallback)},r.prototype.nativeCallback=function(e){var n,r,i,o,u;return i=e.target,this.selector&&(i=t.closest(i,this.selector)),i?(o=this.jQuery?up.browser.jQuery(i):i,n=[e,o],u=this.callback.length,1!==u&&2!==u&&(r=up.syntax.data(i),n.push(r)),this.callback.apply(i,n)):void 0},r.parseArgs=function(t){var n,r,i,o;return t=e.copy(t),n=t.pop(),n.upUid||(n.upUid=e.uid()),r=t[0].addEventListener?[t.shift()]:e.isJQuery(t[0])||e.isList(t[0])&&t[0][0].addEventListener?t.shift():[document],i=e.splitValues(t.shift()),o=t[0],{elements:r,eventNames:i,selector:o,callback:n}
2
+ },r.bind=function(t,n){var r,i,o,u,s,a,l,c,p,h,f;for(c=this.parseArgs(t),f=[],p=c.elements,o=0,s=p.length;s>o;o++)for(r=p[o],h=c.eventNames,u=0,a=h.length;a>u;u++)i=h[u],l=new this(r,i,c.selector,c.callback,n),l.bind(),f.push(l.unbind);return e.sequence(f)},r.key=function(t,e,n){return[t,e,n.upUid].join("|")},r.unbind=function(t){var e,n,r,i,o,u,s,a,l,c;for(a=this.parseArgs(t),l=a.elements,c=[],r=0,o=l.length;o>r;r++)e=l[r],s=e.upEventListeners,c.push(function(){var t,e,r,o;for(r=a.eventNames,o=[],t=0,e=r.length;e>t;t++)n=r[t],i=this.key(n,a.selector,a.callback),o.push(s&&(u=s[i])?u.unbind():void 0);return o}.call(this));return c},r.unbindNonDefault=function(t){var n,r,i,o,u,s;if(u=t.upEventListeners){for(o=e.values(u),s=[],n=0,r=o.length;r>n;n++)i=o[n],s.push(i.isDefault?void 0:i.unbind());return s}},r}()}.call(this),function(){var t,e=function(t,e){return function(){return t.apply(e,arguments)}};t=up.util,up.ExtractCascade=function(){function n(n,r){this.oldPlanNotFound=e(this.oldPlanNotFound,this),this.matchingPlanNotFound=e(this.matchingPlanNotFound,this),this.bestMatchingSteps=e(this.bestMatchingSteps,this),this.bestPreflightSelector=e(this.bestPreflightSelector,this),this.detectPlan=e(this.detectPlan,this),this.matchingPlan=e(this.matchingPlan,this),this.newPlan=e(this.newPlan,this),this.oldPlan=e(this.oldPlan,this);var i,o;this.options=t.options(r,{humanizedTarget:"selector",layer:"auto"}),null==(i=this.options).transition&&(i.transition=this.options.animation),null==(o=this.options).hungry&&(o.hungry=!0),this.candidates=this.buildCandidates(n),this.plans=t.map(this.candidates,function(e){return function(n,r){var i,o;return i=t.copy(e.options),r>0&&(i.transition=null!=(o=up.fragment.config.fallbackTransition)?o:e.options.transition),new up.ExtractPlan(n,i)}}(this))}return n.prototype.buildCandidates=function(e){var n;return n=[e,this.options.fallback,up.fragment.config.fallbacks],n=t.flatten(n),n=t.filter(n,t.isTruthy),n=t.uniq(n),(this.options.fallback===!1||this.options.provideTarget)&&(n=[n[0]]),n},n.prototype.oldPlan=function(){return this.detectPlan("oldExists")},n.prototype.newPlan=function(){return this.detectPlan("newExists")},n.prototype.matchingPlan=function(){return this.detectPlan("matchExists")},n.prototype.detectPlan=function(e){return t.find(this.plans,function(t){return t[e]()})},n.prototype.bestPreflightSelector=function(){var t;return t=this.options.provideTarget?this.plans[0]:this.oldPlan(),t?(t.resolveNesting(),t.selector()):this.oldPlanNotFound()},n.prototype.bestMatchingSteps=function(){var t;return(t=this.matchingPlan())?(t.addHungrySteps(),t.resolveNesting(),t.steps):this.matchingPlanNotFound()},n.prototype.matchingPlanNotFound=function(){var t,e;return this.newPlan()?this.oldPlanNotFound():(e=this.oldPlan()?"Could not find "+this.options.humanizedTarget+" in response":"Could not match "+this.options.humanizedTarget+" in current page and response",this.options.inspectResponse&&(t={label:"Open response",callback:this.options.inspectResponse}),up.fail([e+" (tried %o)",this.candidates],{action:t}))},n.prototype.oldPlanNotFound=function(){var t;return t=this.options.layer,"auto"===t&&(t="page, modal or popup"),up.fail("Could not find "+this.options.humanizedTarget+" in current "+t+" (tried %o)",this.candidates)},n}()}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}};e=up.util,t=up.element,up.ExtractPlan=function(){function r(e,r){this.addHungrySteps=n(this.addHungrySteps,this),this.parseSteps=n(this.parseSteps,this),this.selector=n(this.selector,this),this.resolveNesting=n(this.resolveNesting,this),this.addSteps=n(this.addSteps,this),this.matchExists=n(this.matchExists,this),this.newExists=n(this.newExists,this),this.oldExists=n(this.oldExists,this),this.findNew=n(this.findNew,this),this.findOld=n(this.findOld,this);var i;this.reveal=r.reveal,this.origin=r.origin,this.hungry=r.hungry,this.transition=r.transition,this.response=r.response,this.oldLayer=r.layer,i=t.resolveSelector(e,this.origin),this.parseSteps(i)}return r.prototype.findOld=function(){return e.each(this.steps,function(t){return function(e){return e.oldElement=up.fragment.first(e.selector,{layer:t.oldLayer})}}(this))},r.prototype.findNew=function(){return e.each(this.steps,function(t){return function(e){return e.newElement=t.response.first(e.selector)}}(this))},r.prototype.oldExists=function(){return this.findOld(),e.every(this.steps,function(t){return t.oldElement})},r.prototype.newExists=function(){return this.findNew(),e.every(this.steps,function(t){return t.newElement})},r.prototype.matchExists=function(){return this.oldExists()&&this.newExists()},r.prototype.addSteps=function(t){return this.steps=this.steps.concat(t)},r.prototype.resolveNesting=function(){var t;if(!(this.steps.length<2))return t=e.copy(this.steps),t=e.uniqBy(t,function(t){return t.oldElement}),t=e.filter(t,function(){return function(n,r){return e.every(t,function(t,e){var i,o;return e===r?!0:(i=n.oldElement,o=t.oldElement,t.pseudoClass||!o.contains(i))})}}(this)),t[0].reveal=this.steps[0].reveal,this.steps=t},r.prototype.selector=function(){return e.map(this.steps,"expression").join(", ")},r.prototype.parseSteps=function(t){var n,r;return n=/\ *,\ */,this.steps=[],r=t.split(n),e.each(r,function(t){return function(e,n){var r,i,o,u;return i=e.match(/^(.+?)(?:\:(before|after))?$/),i||up.fail('Could not parse selector literal "%s"',e),u=i[1],"html"===u&&(u="body"),o=i[2],r=0===n?t.reveal:!1,t.steps.push({expression:e,selector:u,pseudoClass:o,transition:t.transition,origin:t.origin,reveal:r})}}(this))},r.prototype.addHungrySteps=function(){var e,n,r,i,o,u,s,a,l;if(r=[],this.hungry)for(e=t.all(up.radio.hungrySelector()),l=null!=(s=up.radio.config.hungryTransition)?s:this.transition,i=0,o=e.length;o>i;i++)n=e[i],a=t.toSelector(n),(u=this.response.first(a))&&r.push({selector:a,oldElement:n,newElement:u,transition:l,reveal:!1,origin:null});return this.addSteps(r)},r}()}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}};e=up.util,t=up.element,up.FieldObserver=function(){function r(e,r,i){this.callback=i,this.check=n(this.check,this),this.readFieldValues=n(this.readFieldValues,this),this.requestCallback=n(this.requestCallback,this),this.isNewValues=n(this.isNewValues,this),this.scheduleValues=n(this.scheduleValues,this),this.scheduleTimer=n(this.scheduleTimer,this),this.cancelTimer=n(this.cancelTimer,this),this.stop=n(this.stop,this),this.start=n(this.start,this),this.fields=t.list(e),this.delay=r.delay,this.batch=r.batch}return r.prototype.start=function(){return this.scheduledValues=null,this.processedValues=this.readFieldValues(),this.currentTimer=void 0,this.callbackRunning=!1,this.unbind=up.on(this.fields,"input change",this.check)},r.prototype.stop=function(){return this.unbind(),this.cancelTimer()},r.prototype.cancelTimer=function(){return clearTimeout(this.currentTimer),this.currentTimer=void 0},r.prototype.scheduleTimer=function(){return this.cancelTimer(),this.currentTimer=e.timer(this.delay,function(t){return function(){return t.currentTimer=void 0,t.requestCallback()}}(this))},r.prototype.scheduleValues=function(t){return this.scheduledValues=t,this.scheduleTimer()},r.prototype.isNewValues=function(t){return!e.isEqual(t,this.processedValues)&&!e.isEqual(this.scheduledValues,t)},r.prototype.requestCallback=function(){var t,n,r,i,o;if(null!==this.scheduledValues&&!this.currentTimer&&!this.callbackRunning){if(r=this.changedValues(this.processedValues,this.scheduledValues),this.processedValues=this.scheduledValues,this.scheduledValues=null,this.callbackRunning=!0,t=[],this.batch)t.push(this.callback(r));else for(i in r)o=r[i],t.push(this.callback(o,i));return n=Promise.all(t),e.always(n,function(t){return function(){return t.callbackRunning=!1,t.requestCallback()}}(this))}},r.prototype.changedValues=function(t,n){var r,i,o,u,s,a,l;for(r={},u=Object.keys(t),u=u.concat(Object.keys(n)),u=e.uniq(u),i=0,s=u.length;s>i;i++)o=u[i],l=t[o],a=n[o],e.isEqual(l,a)||(r[o]=a);return r},r.prototype.readFieldValues=function(){return up.Params.fromFields(this.fields).toObject()},r.prototype.check=function(){var t;return t=this.readFieldValues(),this.isNewValues(t)?this.scheduleValues(t):void 0},r}()}.call(this),function(){}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}},r=[].slice;e=up.util,t=up.element,up.FollowVariant=function(){function i(t,r){this.matchesLink=n(this.matchesLink,this),this.followLink=n(this.followLink,this),this.fullSelector=n(this.fullSelector,this),this.onMousedown=n(this.onMousedown,this),this.onClick=n(this.onClick,this),this.followNow=r.follow,this.preloadLink=r.preload,this.selectors=e.splitValues(t,",")}return i.prototype.onClick=function(e,n){return up.link.shouldProcessEvent(e,n)?t.matches(n,"[up-instant]")&&n.upInstantSupported?(up.event.halt(e),void(n.upInstantSupported=!1)):(up.event.consumeAction(e),this.followLink(n)):up.link.allowDefault(e)},i.prototype.onMousedown=function(t,e){return up.link.shouldProcessEvent(t,e)?(e.upInstantSupported=!0,up.event.consumeAction(t),this.followLink(e)):void 0},i.prototype.fullSelector=function(t){var e;return null==t&&(t=""),e=[],this.selectors.forEach(function(n){var r,i,o,u,s;for(o=["a","[up-href]"],u=[],r=0,i=o.length;i>r;r++)s=o[r],u.push(e.push(""+s+n+t));return u}),e.join(", ")},i.prototype.registerEvents=function(){return up.on("click",this.fullSelector(),function(t){return function(){var n;return n=1<=arguments.length?r.call(arguments,0):[],e.muteRejection(t.onClick.apply(t,n))}}(this)),up.on("mousedown",this.fullSelector("[up-instant]"),function(t){return function(){var n;return n=1<=arguments.length?r.call(arguments,0):[],e.muteRejection(t.onMousedown.apply(t,n))}}(this))},i.prototype.followLink=function(t,n){var r;return null==n&&(n={}),r=up.event.whenEmitted("up:link:follow",{log:"Following link",target:t}),r=r.then(function(e){return function(){return n.preload||up.feedback.start(t),e.followNow(t,n)}}(this)),n.preload||e.always(r,function(){return up.feedback.stop(t)}),r},i.prototype.matchesLink=function(e){return t.matches(e,this.fullSelector())},i}()}.call(this),function(){var t,e;e=up.util,t=up.element,up.HtmlParser=function(){function n(e){this.html=e,this.wrapNoscriptInHtml(),this.parsedDoc=t.createDocumentFromHtml(this.html)}return n.prototype.title=function(){var t;return null!=(t=this.parsedDoc.querySelector("head title"))?t.textContent:void 0},n.prototype.first=function(e){return t.first(this.parsedDoc,e)},n.prototype.prepareForInsertion=function(t){return this.unwrapNoscriptInElement(t)},n.prototype.wrapNoscriptInHtml=function(){var t;return t=/]*>((.|\s)*?)<\/noscript>/gi,this.html=this.html.replace(t,function(t){return function(n,r){return t.didWrapNoscript=!0,'
'}}(this))},n.prototype.unwrapNoscriptInElement=function(t){var e,n,r,i,o,u,s;if(this.didWrapNoscript){for(s=t.querySelectorAll(".up-noscript"),i=[],e=0,n=s.length;n>e;e++)u=s[e],o=u.getAttribute("data-html"),r=document.createElement("noscript"),r.textContent=o,i.push(u.parentNode.replaceChild(r,u));return i}},n}()}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}};e=up.util,t=up.element,up.MotionController=function(){function r(t){this.reset=n(this.reset,this),this.whileForwardingFinishEvent=n(this.whileForwardingFinishEvent,this),this.unmarkCluster=n(this.unmarkCluster,this),this.markCluster=n(this.markCluster,this),this.whenElementFinished=n(this.whenElementFinished,this),this.emitFinishEvent=n(this.emitFinishEvent,this),this.finishOneElement=n(this.finishOneElement,this),this.isActive=n(this.isActive,this),this.expandFinishRequest=n(this.expandFinishRequest,this),this.finish=n(this.finish,this),this.startFunction=n(this.startFunction,this),this.activeClass="up-"+t,this.dataKey="up-"+t+"-finished",this.selector="."+this.activeClass,this.finishEvent="up:"+t+":finish",this.finishCount=0,this.clusterCount=0}return r.prototype.startFunction=function(n,r,i){var o,u;return null==i&&(i={}),n=t.list(n),o=function(){return e.muteRejection(r())},i.trackMotion=null!=(u=i.trackMotion)?u:up.motion.isEnabled(),i.trackMotion===!1?e.microtask(o):(i.trackMotion=!1,this.finish(n).then(function(t){return function(){var e;return e=t.whileForwardingFinishEvent(n,o),e=e.then(function(){return t.unmarkCluster(n)}),t.markCluster(n,e),e}}(this)))},r.prototype.startMotion=function(t,e,n){var r,i,o,u;return null==n&&(n={}),o=function(){return e.start()},r=function(){return e.finish()},u=up.on(t,this.finishEvent,r),i=this.startFunction(t,o,n),i=i.then(u)},r.prototype.finish=function(t){var n;return this.finishCount++,0!==this.clusterCount&&up.motion.isEnabled()?(t=this.expandFinishRequest(t),n=e.map(t,this.finishOneElement),Promise.all(n)):Promise.resolve()},r.prototype.expandFinishRequest=function(n){return n?e.flatMap(n,function(e){return function(n){return t.list(t.closest(n,e.selector),t.all(n,e.selector))}}(this)):t.all(this.selector)},r.prototype.isActive=function(t){return t.classList.contains(this.activeClass)},r.prototype.finishOneElement=function(t){return this.emitFinishEvent(t),this.whenElementFinished(t)},r.prototype.emitFinishEvent=function(t,n){return null==n&&(n={}),n=e.merge({target:t,log:!1},n),up.emit(this.finishEvent,n)},r.prototype.whenElementFinished=function(t){return t[this.dataKey]||Promise.resolve()},r.prototype.markCluster=function(t,e){var n,r,i,o;for(this.clusterCount++,o=[],r=0,i=t.length;i>r;r++)n=t[r],n.classList.add(this.activeClass),o.push(n[this.dataKey]=e);return o},r.prototype.unmarkCluster=function(t){var e,n,r,i;for(this.clusterCount--,i=[],n=0,r=t.length;r>n;n++)e=t[n],e.classList.remove(this.activeClass),i.push(delete e[this.dataKey]);return i},r.prototype.whileForwardingFinishEvent=function(t,n){var r,i;return t.length<2?n():(r=function(n){return function(r){return r.forwarded?void 0:e.each(t,function(t){return t!==r.target&&n.isActive(t)?n.emitFinishEvent(t,{forwarded:!0}):void 0})}}(this),i=up.on(t,this.finishEvent,r),n().then(i))},r.prototype.reset=function(){return this.finish().then(function(t){return function(){return t.finishCount=0,t.clusterCount=0}}(this))},r}()}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}};e=up.util,t=up.element,up.Params=function(){function r(t){this.arrayEntryToQuery=n(this.arrayEntryToQuery,this),this.clear(),this.addAll(t)}return r.prototype.clear=function(){return this.entries=[]},r.prototype[""+e.copy.key]=function(){return new up.Params(this)},r.prototype.toObject=function(){var t,n,r,i,o,u,s;for(o={},u=this.entries,n=0,r=u.length;r>n;n++)t=u[n],i=t.name,s=t.value,e.isBasicObjectProperty(i)||(this.isArrayKey(i)?(o[i]||(o[i]=[]),o[i].push(s)):o[i]=s);return o},r.prototype.toArray=function(){return this.entries},r.prototype.toFormData=function(){var t,e,n,r,i;for(e=new FormData,i=this.entries,n=0,r=i.length;r>n;n++)t=i[n],e.append(t.name,t.value);return e},r.prototype.toQuery=function(){var t;return t=e.map(this.entries,this.arrayEntryToQuery),t=e.compact(t),t.join("&")},r.prototype.arrayEntryToQuery=function(t){var n,r;return r=t.value,this.isPrimitiveValue(r)?(n=encodeURIComponent(t.name),e.isGiven(r)&&(n+="=",n+=encodeURIComponent(r)),n):void 0},r.prototype.isPrimitiveValue=function(t){return e.isMissing(t)||e.isString(t)||e.isNumber(t)||e.isBoolean(t)},r.prototype.toURL=function(t){var n,r;return n=[t,this.toQuery()],n=e.filter(n,e.isPresent),r=e.contains(t,"?")?"&":"?",n.join(r)},r.prototype.add=function(t,e){return this.entries.push({name:t,value:e})},r.prototype.addAll=function(t){var n,r;return e.isMissing(t)||(t instanceof this.constructor?(n=this.entries).push.apply(n,t.entries):e.isArray(t)?(r=this.entries).push.apply(r,t):e.isString(t)?this.addAllFromQuery(t):e.isFormData(t)?this.addAllFromFormData(t):e.isObject(t)?this.addAllFromObject(t):up.fail("Unsupport params type: %o",t)),this},r.prototype.addAllFromObject=function(t){var n,r,i,o,u;r=[];for(n in t)i=t[n],u=e.isArray(i)?i:[i],r.push(function(){var t,e,r;for(r=[],t=0,e=u.length;e>t;t++)o=u[t],r.push(this.add(n,o));return r}.call(this));return r},r.prototype.addAllFromQuery=function(t){var n,r,i,o,u,s,a,l;for(u=t.split("&"),a=[],n=0,r=u.length;r>n;n++)o=u[n],o?(s=o.split("="),i=s[0],l=s[1],i=decodeURIComponent(i),l=e.isGiven(l)?decodeURIComponent(l):null,a.push(this.add(i,l))):a.push(void 0);return a},r.prototype.addAllFromFormData=function(t){return e.eachIterator(t.entries(),function(t){return function(e){return t.add.apply(t,e)}}(this))},r.prototype.set=function(t,e){return this["delete"](t),this.add(t,e)},r.prototype["delete"]=function(t){return this.entries=e.reject(this.entries,this.matchEntryFn(t))},r.prototype.matchEntryFn=function(t){return function(e){return e.name===t}},r.prototype.get=function(t){return this.isArrayKey(t)?this.getAll(t):this.getFirst(t)},r.prototype.getFirst=function(t){var n;return n=e.find(this.entries,this.matchEntryFn(t)),null!=n?n.value:void 0},r.prototype.getAll=function(t){var n;return this.isArrayKey(t)?this.getAll(t):(n=e.map(this.entries,this.matchEntryFn(t)),e.map(n,"value"))},r.prototype.isArrayKey=function(t){return e.endsWith(t,"[]")},r.prototype[""+e.isBlank.key]=function(){return 0===this.entries.length},r.fromForm=function(e){var n;return(e=t.get(e))?(n=up.form.submissionFields(e),this.fromFields(n)):void 0},r.fromFields=function(t){var n,r,i,o,u;for(o=new this,u=e.wrapList(t),r=0,i=u.length;i>r;r++)n=u[r],o.addField(n);return o},r.prototype.addField=function(e){var n,r,i,o,u,s,a,l,c,p,h,f,d,m;if(l=new this.constructor,(e=t.get(e))&&(s=e.name)&&!e.disabled){if(d=e.tagName,m=e.type,"SELECT"===d){for(c=e.querySelectorAll("option"),h=[],r=0,o=c.length;o>r;r++)a=c[r],h.push(a.selected?this.add(s,a.value):void 0);return h}if("checkbox"!==m&&"radio"!==m){if("file"===m){for(p=e.files,f=[],i=0,u=p.length;u>i;i++)n=p[i],f.push(this.add(s,n));return f}return this.add(s,e.value)}if(e.checked)return this.add(s,e.value)}},r.prototype[""+e.isEqual.key]=function(t){return t&&this.constructor===t.constructor&&e.isEqual(this.entries,t.entries)},r.fromURL=function(t){var n,r,i;return n=new this,i=e.parseUrl(t),(r=i.search)&&(r=r.replace(/^\?/,""),n.addAll(r)),n},r.stripURL=function(t){return e.normalizeUrl(t,{search:!1})},r.wrap=function(t){return e.wrapValue(t,this)},r}()}.call(this),function(){var t=up.util;up.Rect=function(e){t.assign(this,t.only(e,"left","top","width","height"))},up.Rect.prototype={get bottom(){return this.top+this.height},get right(){return this.left+this.width}},up.Rect.fromElement=function(t){return new up.Rect(t.getBoundingClientRect())}}(),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}},r=function(t,e){function n(){this.constructor=t}for(var r in e)i.call(e,r)&&(t[r]=e[r]);return n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype,t},i={}.hasOwnProperty;e=up.util,t=up.element,up.Request=function(i){function o(t){this.cacheKey=n(this.cacheKey,this),this.isCachable=n(this.isCachable,this),this.buildResponse=n(this.buildResponse,this),this.isCrossDomain=n(this.isCrossDomain,this),this.csrfToken=n(this.csrfToken,this),this.navigate=n(this.navigate,this),this.send=n(this.send,this),this.isSafe=n(this.isSafe,this),this.transferSearchToParams=n(this.transferSearchToParams,this),this.transferParamsToUrl=n(this.transferParamsToUrl,this),this.extractHashFromUrl=n(this.extractHashFromUrl,this),this.normalize=n(this.normalize,this),up.legacy.fixKey(t,"data","params"),o.__super__.constructor.call(this,t),this.normalize()}return r(o,i),o.prototype.fields=function(){return["method","url","params","target","failTarget","headers","timeout","preload","cache"]},o.prototype.normalize=function(){return this.params=new up.Params(this.params),this.method=e.normalizeMethod(this.method),this.headers||(this.headers={}),this.extractHashFromUrl(),e.methodAllowsPayload(this.method)?void 0:this.transferParamsToUrl()},o.prototype.extractHashFromUrl=function(){var t;return t=e.parseUrl(this.url),this.hash=e.presence(t.hash),this.url=e.normalizeUrl(t,{hash:!1})},o.prototype.transferParamsToUrl=function(){return e.isBlank(this.params)?void 0:(this.url=this.params.toURL(this.url),this.params.clear())},o.prototype.transferSearchToParams=function(){var t;return t=up.Params.fromURL(this.url),e.isBlank(t)?void 0:(this.params.addAll(t),this.url=e.normalizeUrl(this.url,{search:!1}))},o.prototype.isSafe=function(){return up.proxy.isSafeMethod(this.method)},o.prototype.send=function(){return new Promise(function(t){return function(n,r){var i,o,u,s,a,l,c,p,h,f,d;l=new XMLHttpRequest,c=e.copy(t.headers),d=t.url,h=e.copy(t.params),p=up.proxy.wrapMethod(t.method,h),f=null,e.isBlank(h)||(delete c["Content-Type"],f=h.toFormData()),u=up.protocol.config,t.target&&(c[u.targetHeader]=t.target),t.failTarget&&(c[u.failTargetHeader]=t.failTarget),t.isCrossDomain()||c["X-Requested-With"]||(c["X-Requested-With"]="XMLHttpRequest"),(i=t.csrfToken())&&(c[u.csrfHeader]=i),l.open(p,d);for(o in c)a=c[o],l.setRequestHeader(o,a);return s=function(){var e;return e=t.buildResponse(l),e.isSuccess()?n(e):r(e)},l.onload=s,l.onerror=s,l.ontimeout=s,t.timeout&&(l.timeout=t.timeout),l.send(f)}}(this))},o.prototype.navigate=function(){var n,r,i,o,u;return this.transferSearchToParams(),o=t.affix(document.body,"form.up-page-loader"),n=function(e){return t.affix(o,"input[type=hidden]",e)},"GET"===this.method?u="GET":(n({name:up.protocol.config.methodParam,value:this.method}),u="POST"),t.setAttrs(o,{method:u,action:this.url}),(r=up.protocol.csrfParam())&&(i=this.csrfToken())&&n({name:r,value:i}),e.each(this.params.toArray(),n),t.hide(o),up.browser.submitForm(o)},o.prototype.csrfToken=function(){return this.isSafe()||this.isCrossDomain()?void 0:up.protocol.csrfToken()},o.prototype.isCrossDomain=function(){return e.isCrossDomain(this.url)},o.prototype.buildResponse=function(t){var e,n,r;return n={method:this.method,url:this.url,text:t.responseText,status:t.status,request:this,xhr:t},(r=up.protocol.locationFromXhr(t))&&(n.url=r,n.method=null!=(e=up.protocol.methodFromXhr(t))?e:"GET"),n.title=up.protocol.titleFromXhr(t),new up.Response(n)},o.prototype.isCachable=function(){return this.isSafe()&&!e.isFormData(this.params)},o.prototype.cacheKey=function(){return[this.url,this.method,this.params.toQuery(),this.target].join("|")},o.wrap=function(t){return e.wrapValue(t,this)},o}(up.Record)}.call(this),function(){var t,e=function(t,e){return function(){return t.apply(e,arguments)}},n=function(t,e){function n(){this.constructor=t}for(var i in e)r.call(e,i)&&(t[i]=e[i]);return n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype,t},r={}.hasOwnProperty;t=up.util,up.Response=function(r){function i(t){this.getHeader=e(this.getHeader,this),this.isFatalError=e(this.isFatalError,this),this.isError=e(this.isError,this),this.isSuccess=e(this.isSuccess,this),i.__super__.constructor.call(this,t)}return n(i,r),i.prototype.fields=function(){return["method","url","text","status","request","xhr","title"]},i.prototype.isSuccess=function(){return this.status&&this.status>=200&&this.status<=299},i.prototype.isError=function(){return!this.isSuccess()},i.prototype.isFatalError=function(){return this.isError()&&t.isBlank(this.text)},i.prototype.getHeader=function(t){return this.xhr.getResponseHeader(t)},i}(up.Record)}.call(this),function(){var t;t=up.element,up.RevealMotion=function(){function e(t,e){var n,r,i,o,u,s,a,l,c,p,h,f;this.element=t,null==e&&(e={}),n=up.viewport.config,this.viewport=null!=(r=e.viewport)?r:up.viewport.closest(this.element),up.legacy.fixKey(n,"snap","revealSnap"),f=n.revealSnap,this.snap=null!=(i=null!=(o=e.snap)?o:e.revealSnap)?i:f,this.snap===!1?this.snap=0:this.snap===!0&&(this.snap=f),this.padding=null!=(u=null!=(s=e.padding)?s:e.revealPadding)?u:n.revealPadding,this.top=e.top,this.fixedTop=null!=(a=e.fixedTop)?a:n.fixedTop,this.fixedBottom=null!=(l=e.fixedBottom)?l:n.fixedBottom,this.speed=null!=(c=null!=(p=e.speed)?p:e.scrollSpeed)?c:n.scrollSpeed,this.behavior=null!=(h=e.behavior)?h:e.scrollBehavior}return e.prototype.start=function(){var t,e,n,r,i;return e=up.Rect.fromElement(this.element),i=this.getViewportRect(this.viewport),this.addPadding(e),this.substractObstructions(i),i.height<=0?Promise.reject(new Error("Viewport has no visible area")):(r=this.viewport.scrollTop,n=r,this.top||e.height>i.height?(t=e.top-i.top,n+=t):e.topi.bottom&&(n+=e.bottom-i.bottom),nr;r++)s=l[r],a=up.Rect.fromElement(s),n=a.bottom-e.top,n>0&&(e.top+=n,e.height-=n);for(c=t.list.apply(t,this.fixedBottom),p=[],i=0,u=c.length;u>i;i++)s=c[i],a=up.Rect.fromElement(s),n=e.bottom-a.top,p.push(n>0?e.height-=n:void 0);return p},e.prototype.finish=function(){var t;return null!=(t=this.scrollMotion)?t.finish():void 0},e}()}.call(this),function(){var t,e=function(t,e){return function(){return t.apply(e,arguments)}};t=up.util,up.ScrollMotion=function(){function n(t,n,i){var o,u,s,a;this.scrollable=t,this.targetTop=n,null==i&&(i={}),this.finish=e(this.finish,this),this.cancel=e(this.cancel,this),this.animationFrame=e(this.animationFrame,this),this.start=e(this.start,this),this.behavior=null!=(o=null!=(u=i.behavior)?u:i.scrollBehavior)?o:"auto",this.speed=(null!=(s=null!=(a=i.speed)?a:i.scrollSpeed)?s:up.viewport.config.scrollSpeed)*r}var r;return r=.065,n.prototype.start=function(){return new Promise(function(t){return function(e,n){return t.resolve=e,t.reject=n,"smooth"===t.behavior&&up.motion.isEnabled()?t.startAnimation():t.finish()}}(this))},n.prototype.startAnimation=function(){return this.startTime=Date.now(),this.startTop=this.scrollable.scrollTop,this.topDiff=this.targetTop-this.startTop,this.duration=Math.sqrt(Math.abs(this.topDiff))/this.speed,requestAnimationFrame(this.animationFrame)},n.prototype.animationFrame=function(){var e,n,r;if(!this.settled)return this.frameTop&&Math.abs(this.frameTop-this.scrollable.scrollTop)>1.5&&this.cancel("Animation aborted due to user intervention"),e=Date.now(),n=e-this.startTime,r=Math.min(n/this.duration,1),this.frameTop=this.startTop+t.simpleEase(r)*this.topDiff,Math.abs(this.targetTop-this.frameTop)<.3?this.finish():(this.scrollable.scrollTop=this.frameTop,requestAnimationFrame(this.animationFrame))},n.prototype.cancel=function(t){return this.settled=!0,this.reject(new Error(t))},n.prototype.finish=function(){return this.settled=!0,this.scrollable.scrollTop=this.targetTop,this.resolve()},n}()}.call(this),function(){var t,e=function(t,e){return function(){return t.apply(e,arguments)}};up.store||(up.store={}),t=up.util,up.store.Memory=function(){function n(){this.values=e(this.values,this),this.keys=e(this.keys,this),this.remove=e(this.remove,this),this.set=e(this.set,this),this.get=e(this.get,this),this.clear=e(this.clear,this),this.clear()}return n.prototype.clear=function(){return this.data={}},n.prototype.get=function(t){return this.data[t]},n.prototype.set=function(t,e){return this.data[t]=e},n.prototype.remove=function(t){return delete this.data[t]},n.prototype.keys=function(){return Object.keys(this.data)},n.prototype.values=function(){return t.values(this.data)},n}()}.call(this),function(){var t,e=function(t,e){return function(){return t.apply(e,arguments)}},n=function(t,e){function n(){this.constructor=t}for(var i in e)r.call(e,i)&&(t[i]=e[i]);return n.prototype=e.prototype,t.prototype=new n,t.__super__=e.prototype,t},r={}.hasOwnProperty;t=up.util,up.store.Session=function(t){function r(t){this.saveToSessionStorage=e(this.saveToSessionStorage,this),this.loadFromSessionStorage=e(this.loadFromSessionStorage,this),this.remove=e(this.remove,this),this.set=e(this.set,this),this.clear=e(this.clear,this),this.rootKey=t,this.loadFromSessionStorage()}return n(r,t),r.prototype.clear=function(){return r.__super__.clear.call(this),this.saveToSessionStorage()},r.prototype.set=function(t,e){return r.__super__.set.call(this,t,e),this.saveToSessionStorage()},r.prototype.remove=function(t){return r.__super__.remove.call(this,t),this.saveToSessionStorage()},r.prototype.loadFromSessionStorage=function(){var t;try{(t="undefined"!=typeof sessionStorage&&null!==sessionStorage?sessionStorage.getItem(this.rootKey):void 0)&&(this.data=JSON.parse(t))}catch(e){}return this.data||(this.data={})},r.prototype.saveToSessionStorage=function(){var t;t=JSON.stringify(this.data);try{return"undefined"!=typeof sessionStorage&&null!==sessionStorage?sessionStorage.setItem(this.rootKey,t):void 0}catch(e){}},r}(up.store.Memory)}.call(this),function(){var t,e,n=function(t,e){return function(){return t.apply(e,arguments)}};e=up.util,t=up.element,up.Tether=function(){function r(e){this.sync=n(this.sync,this),this.scheduleSync=n(this.scheduleSync,this);var r;this.anchor=e.anchor,r=e.position.split("-"),this.position=r[0],this.align=r[1],this.align?up.legacy.warn("The position value %o is deprecated. Use %o instead.",e.position,this.describeConstraints()):this.align=e.align,this.alignAxis="top"===this.position||"bottom"===this.position?"horizontal":"vertical",this.viewport=up.viewport.closest(this.anchor),this.parent=this.viewport===t.root()?document.body:this.viewport,this.syncOnScroll=!this.viewport.contains(this.anchor.offsetParent),this.root=t.affix(this.parent,".up-bounds"),this.setBoundsOffset(0,0),this.changeEventSubscription("on")}return r.prototype.destroy=function(){return t.remove(this.root),this.changeEventSubscription("off")},r.prototype.changeEventSubscription=function(t){return up[t](window,"resize",this.scheduleSync),this.syncOnScroll?up[t](this.viewport,"scroll",this.scheduleSync):void 0},r.prototype.scheduleSync=function(){return clearTimeout(this.syncTimer),this.syncTimer=e.task(this.sync)},r.prototype.sync=function(){var t,n,r,i;switch(r=this.root.getBoundingClientRect(),t=this.anchor.getBoundingClientRect(),n=void 0,i=void 0,this.alignAxis){case"horizontal":i=function(){switch(this.position){case"top":return t.top-r.height;case"bottom":return t.top+t.height}}.call(this),n=function(){switch(this.align){case"left":return t.left;case"center":return t.left+.5*(t.width-r.width);case"right":return t.left+t.width-r.width}}.call(this);break;case"vertical":i=function(){switch(this.align){case"top":return t.top;case"center":return t.top+.5*(t.height-r.height);case"bottom":return t.top+t.height-r.height}}.call(this),n=function(){switch(this.position){case"left":return t.left-r.width;case"right":return t.left+t.width}}.call(this)}return e.isDefined(n)||e.isDefined(i)?this.moveTo(n,i):up.fail("Invalid tether constraints: %o",this.describeConstraints())},r.prototype.describeConstraints=function(){return{position:this.position,align:this.align}},r.prototype.moveTo=function(t,e){var n;return n=this.root.getBoundingClientRect(),this.setBoundsOffset(t-n.left+this.offsetLeft,e-n.top+this.offsetTop)},r.prototype.setBoundsOffset=function(e,n){return this.offsetLeft=e,this.offsetTop=n,t.setStyle(this.root,{left:e,top:n})},r}()}.call(this),function(){var t,e=function(t,e){return function(){return t.apply(e,arguments)}};t=up.util,up.UrlSet=function(){function n(n,r){this.urls=n,null==r&&(r={}),this[""+t.isEqual.key]=e(this[""+t.isEqual.key],this),this.matchesAny=e(this.matchesAny,this),this.doesMatchPattern=e(this.doesMatchPattern,this),this.doesMatchFully=e(this.doesMatchFully,this),this.matches=e(this.matches,this),this.normalizeUrl=r.normalizeUrl||t.normalizeUrl,this.urls=t.map(this.urls,this.normalizeUrl),this.urls=t.compact(this.urls)}return n.prototype.matches=function(t){return t.indexOf("*")>=0?this.doesMatchPattern(t):this.doesMatchFully(t)},n.prototype.doesMatchFully=function(e){return t.contains(this.urls,e)},n.prototype.doesMatchPattern=function(e){var n;return n="__ASTERISK__",e=e.replace(/\*/g,n),e=t.escapeRegexp(e),e=e.replace(new RegExp(n,"g"),".*?"),e=new RegExp("^"+e+"$"),t.find(this.urls,function(t){return e.test(t)})},n.prototype.matchesAny=function(e){return t.find(e,this.matches)},n.prototype[""+t.isEqual.key]=function(e){return t.isEqual(this.urls,null!=e?e.urls:void 0)
3
+ },n}()}.call(this),function(){up.framework=function(){var t,e,n,r;return r=up.util,n=!0,e=function(){return up.emit("up:framework:reset",{log:"Resetting framework"})},t=function(){return up.browser.isSupported()?(up.emit("up:framework:booted",{log:"Framework booted"}),n=!1,up.event.onReady(function(){return r.task(function(){return up.emit("up:app:boot",{log:"Booting user application"}),up.emit("up:app:booted",{log:"User application booted"})})})):"function"==typeof console.log?console.log("Unpoly doesn't support this browser. Framework was not booted."):void 0},{reset:e,boot:t,isBooting:function(){return n}}}()}.call(this),function(){var t=[].slice;up.event=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g;return d=up.util,u=up.element,f=function(){var t,e,n,r,i;for(r=[window,document,document.documentElement,document.body],i=[],e=0,n=r.length;n>e;e++)t=r[e],i.push(up.EventListener.unbindNonDefault(t));return i},n=function(){var e;return e=1<=arguments.length?t.call(arguments,0):[],r(e)},e=function(){var e;return e=1<=arguments.length?t.call(arguments,0):[],r(e,{jQuery:!0})},r=function(t,e){return up.browser.isSupported()?up.EventListener.bind(t,e):function(){}},m=function(){var e;return e=1<=arguments.length?t.call(arguments,0):[],up.EventListener.unbind(e)},s=function(){var e,n,r,o,s,a;return e=1<=arguments.length?t.call(arguments,0):[],e[0].addEventListener?s=e.shift():d.isJQuery(e[0])&&(s=u.get(e.shift())),r=e[0],o=e[1]||{},(a=d.pluckKey(o,"target"))&&(s=a),null==s&&(s=document),l(r,o),n=i(r,o),s.dispatchEvent(n),n},i=function(t,e){var n;return n=document.createEvent("Event"),n.initEvent(t,!0,!0),d.assign(n,e),up.browser.isIE11()&&(n.preventDefault=function(){return Object.defineProperty(n,"defaultPrevented",{get:function(){return!0}})}),n},l=function(e,n){var r,i,o;if(up.log.isEnabled())return r=d.pluckKey(n,"log"),d.isArray(r)?(o=r,r=o[0],i=2<=o.length?t.call(o,1):[]):i=[],d.isString(r)?d.isPresent(n)?up.puts.apply(up,[r+" (%s (%o))"].concat(t.call(i),[e],[n])):up.puts.apply(up,[r+" (%s)"].concat(t.call(i),[e])):r===!0?d.isPresent(n)?up.puts("Event %s (%o)",e,n):up.puts("Event %s",e):void 0},c=function(){var e,n;return e=1<=arguments.length?t.call(arguments,0):[],n=s.apply(null,e),!n.defaultPrevented},g=function(){var e;return e=1<=arguments.length?t.call(arguments,0):[],new Promise(function(t,n){return c.apply(null,e)?t():n(new Error("Event "+e[0]+" was prevented"))})},p=function(t){return n("keydown","body",function(e){return d.escapePressed(e)?t(e):void 0})},a=function(t){return t.stopImmediatePropagation(),t.preventDefault()},o=function(t){return a(t),"up:action:consumed"!==t.type?s(t.target,"up:action:consumed",{log:!1}):void 0},h=function(t){return"loading"!==document.readyState?t():document.addEventListener("DOMContentLoaded",t)},n("up:framework:reset",f),{on:n,$on:e,off:m,emit:s,nobodyPrevents:c,whenEmitted:g,onEscape:p,halt:a,consumeAction:o,onReady:h}}(),up.on=up.event.on,up.$on=up.event.$on,up.off=up.event.off,up.$off=up.event.off,up.emit=up.event.emit,up.legacy.renamedModule("bus","event")}.call(this),function(){}.call(this),function(){up.protocol=function(){var t,e,n,r,i,o,u,s,a,l;return l=up.util,r=up.element,o=function(e){return e.getResponseHeader(t.locationHeader)||e.responseURL},a=function(e){return e.getResponseHeader(t.titleHeader)},u=function(e){var n;return(n=e.getResponseHeader(t.methodHeader))?l.normalizeMethod(n):void 0},i=l.memoize(function(){var e;return e=up.browser.popCookie(t.methodCookie),(e||"get").toLowerCase()}),up.on("up:framework:booted",i),t=new up.Config({targetHeader:"X-Up-Target",failTargetHeader:"X-Up-Fail-Target",locationHeader:"X-Up-Location",validateHeader:"X-Up-Validate",titleHeader:"X-Up-Title",methodHeader:"X-Up-Method",methodCookie:"_up_method",methodParam:"_method",csrfParam:function(){return r.metaContent("csrf-param")},csrfToken:function(){return r.metaContent("csrf-token")},csrfHeader:"X-CSRF-Token"}),e=function(){return l.evalOption(t.csrfParam)},n=function(){return l.evalOption(t.csrfToken)},s=function(){return t.reset()},up.on("up:framework:reset",s),{config:t,reset:s,locationFromXhr:o,titleFromXhr:a,methodFromXhr:u,csrfParam:e,csrfToken:n,initialRequestMethod:i}}()}.call(this),function(){var t=[].slice;up.log=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w;return b=up.util,n=up.browser,d=new up.store.Session("up.log"),i=new up.Config({prefix:"[UP] ",enabled:d.get("enabled"),collapse:!1}),f=function(){return i.reset()},c=function(t){return""+i.prefix+t},r=function(){var e,n;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],console[n].apply(console,e)},e=/\%[odisf]/g,y=function(t){var e,n,r,i,o,u,s,a;if(o=200,n="",b.isString(t))s=t.replace(/[\n\r\t ]+/g," "),s=s.replace(/^[\n\r\t ]+/,""),s=s.replace(/[\n\r\t ]$/,""),s='"'+s+'"',n='"';else if(b.isUndefined(t))s="undefined";else if(b.isNumber(t)||b.isFunction(t))s=t.toString();else if(b.isArray(t))s="["+b.map(t,y).join(", ")+"]",n="]";else if(b.isJQuery(t))s="$("+b.map(t,y).join(", ")+")",n=")";else if(b.isElement(t)){for(s="<"+t.tagName.toLowerCase(),u=["id","name","class"],r=0,i=u.length;i>r;r++)e=u[r],(a=t.getAttribute(e))&&(s+=" "+e+'="'+a+'"');s+=">",n=">"}else s=JSON.stringify(t);return s.length>o&&(s=s.substr(0,o)+" \u2026",s+=n),s},g=function(){var e,n;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],v.apply(null,[b.identity,n].concat(t.call(e)))},v=function(){var n,r,i,o;return r=arguments[0],o=arguments[1],n=3<=arguments.length?t.call(arguments,2):[],b.isBlank(o)?"":(i=0,o.replace(e,function(){var t;return t=n[i],t=r(y(t)),i+=1,t}))},o=function(){var e,n;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],i.enabled&&n?console.debug.apply(console,[c(n)].concat(t.call(e))):void 0},h=function(){var e,n;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],i.enabled&&n?console.log.apply(console,[c(n)].concat(t.call(e))):void 0},w=function(){var e,n;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],n?console.warn.apply(console,[c(n)].concat(t.call(e))):void 0},l=function(){var e,n,r,o;if(o=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],n=e.pop(),!i.enabled||!o)return n();r=i.collapse?"groupCollapsed":"group",console[r].apply(console,[c(o)].concat(t.call(e)));try{return n()}finally{o&&console.groupEnd()}},a=function(){var e,n;return n=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],n?console.error.apply(console,[c(n)].concat(t.call(e))):void 0},p=function(){var t;return t=" __ _____ ___ ___ / /_ __\n"+("/ // / _ \\/ _ \\/ _ \\/ / // / "+up.version+"\n")+"\\___/_//_/ .__/\\___/_/\\_. / \n / / / /\n\n",t+=i.enabled?"Call `up.log.disable()` to disable logging for this session.":"Call `up.log.enable()` to enable logging for this session.",console.log(t)},up.on("up:framework:booted",p),up.on("up:framework:reset",f),m=function(t){return d.set("enabled",t),i.enabled=t},s=function(){return m(!0)},u=function(){return m(!1)},{puts:h,sprintf:g,sprintfWithFormattedArgs:v,puts:h,debug:o,error:a,warn:w,group:l,config:i,enable:s,disable:u,isEnabled:function(){return i.enabled}}}(),up.puts=up.log.puts,up.warn=up.log.warn}.call(this),function(){var t=[].slice;up.toast=function(){var e,n,r,i,o,u,s,a,l,c;return c=up.util,i=up.element,e=function(t){return""+c.escapeHtml(t)+""},l=new up.Config({element:null}),a=function(){return r(),l.reset()},u=function(n){var r;return c.isArray(n)?(n[0]=c.escapeHtml(n[0]),n=(r=up.log).sprintfWithFormattedArgs.apply(r,[e].concat(t.call(n)))):n=c.escapeHtml(n),n},o=function(){return!!l.element},n=function(t,e){var n,r;return r=l.element.querySelector(".up-toast-actions"),n=i.affix(r,".up-toast-action"),n.innerText=t,n.addEventListener("click",e)},s=function(t,e){var o;return null==e&&(e={}),r(),t=u(t),l.element=i.createFromHtml('
\n
'+t+'
\n
\n
'),(o=e.action||e.inspect)&&n(o.label,o.callback),n("Close",r),document.body.appendChild(l.element)},r=function(){return o()?(i.remove(l.element),l.element=null):void 0},up.on("up:framework:reset",a),{open:s,close:r,reset:a,isOpen:o}}()}.call(this),function(){var t=[].slice;up.syntax=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y;return y=up.util,s=up.element,e={"[up-back]":-100,"[up-drawer]":-200,"[up-dash]":-200,"[up-expand]":-300,"[data-method]":-400,"[data-confirm]":-400},o=[],l=[],h=function(){var e,r;return e=1<=arguments.length?t.call(arguments,0):[],r=n(e),a(o,r)},d=function(){var e,n;return e=1<=arguments.length?t.call(arguments,0):[],n=h.apply(null,e),n.jQuery=!0,n},g=function(){var e,r;return e=1<=arguments.length?t.call(arguments,0):[],r=n(e),up.framework.isBooting()&&(r.priority=u(r.selector)||up.fail("Unregistered priority for system macro %o",r.selector)),a(l,r)},m=function(){var e,n;return e=1<=arguments.length?t.call(arguments,0):[],n=g.apply(null,e),n.jQuery=!0,n},u=function(t){var n,r;for(r in e)if(n=e[r],t.indexOf(r)>=0)return n},c=function(t){var e,n,r;return r=t.shift(),e=t.pop(),n=y.extractOptions(t),[r,n,e]},n=function(t){var e,n,r,i;return r=c(t),i=r[0],n=r[1],e=r[2],n=y.options(n,{selector:i,isDefault:up.framework.isBooting(),priority:0,batch:!1,keep:!1,jQuery:!1}),y.assign(e,n)},a=function(t,e){var n,r;for(r=0;(n=t[r])&&n.priority>=e.priority;)r+=1;return t.splice(r,0,e),e},i=function(t,e){var n,r;return r=l.concat(o),n=new up.CompilePass(t,r,e),n.compile()},f=function(t,e){var n;return(n=t.upDestructors)||(n=[],t.upDestructors=n,t.classList.add("up-can-clean")),y.isArray(e)?n.push.apply(n,e):n.push(e)},r=function(t){var e;return e=s.subtree(t,".up-can-clean"),y.each(e,function(t){var e,n,r,i;if(n=y.pluckKey(t,"upDestructors"))for(r=0,i=n.length;i>r;r++)(e=n[r])();return t.classList.remove("up-can-clean")})},p=function(t){var e;return e=s.get(t),s.jsonAttr(e,"up-data")||{}},v=function(){return o=y.filter(o,"isDefault"),l=y.filter(l,"isDefault")},up.on("up:framework:reset",v),{compiler:h,macro:g,$compiler:d,$macro:m,destructor:f,compile:i,clean:r,data:p}}(),up.compiler=up.syntax.compiler,up.$compiler=up.syntax.$compiler,up.destructor=up.syntax.destructor,up.macro=up.syntax.macro,up.$macro=up.syntax.$macro}.call(this),function(){up.history=function(){var t,e,n,r,i,o,u,s,a,l,c,p,h,f,d,m;return m=up.util,r=up.element,e=new up.Config({enabled:!0,popTargets:["body"],restoreScroll:!0}),c=void 0,u=void 0,f=function(){return e.reset(),c=void 0,u=void 0},s=function(t,e){return e||(e={}),e.hash=!0,m.normalizeUrl(t,e)},n=function(t){return s(up.browser.url(),t)},i=function(t){var e;return e={stripTrailingSlash:!0},s(t,e)===n(e)},a=function(t){return u&&(c=u,u=void 0),u=t},h=function(t){return o("replaceState",t)?up.emit("up:history:replaced",{url:t}):void 0},p=function(t,e){return e=m.options(e,{force:!1}),t=s(t),!e.force&&i(t)||!up.event.nobodyPrevents("up:history:push",{url:t,log:"Adding history entry for "+t})?void 0:o("pushState",t)?up.emit("up:history:pushed",{url:t,log:"Advanced to location "+t}):up.emit("up:history:muted",{url:t,log:"Did not advance to "+t+" (history is unavailable)"})},o=function(r,i){var o;return up.browser.canPushState()&&e.enabled?(o=t(),window.history[r](o,"",i),a(n()),!0):!1},t=function(){return{fromUp:!0}},d=function(t){var r,i,o;return(null!=t?t.fromUp:void 0)?(o=n(),up.emit("up:history:restore",{url:o,log:"Restoring location "+o}),r=e.popTargets.join(", "),i=up.replace(r,o,{history:!1,title:!0,reveal:!1,saveScroll:!1,restoreScroll:e.restoreScroll,layer:"page"}),i.then(function(){return o=n(),up.emit("up:history:restored",{url:o,log:"Restored location "+o})})):up.puts("Ignoring a state not pushed by Unpoly (%o)",t)},l=function(t){var e;return a(n()),up.viewport.saveScroll({url:c}),e=t.state,d(e)},up.on("up:app:boot",function(){var t;return up.browser.canPushState()?(t=function(){return up.browser.canControlScrollRestoration()&&(window.history.scrollRestoration="manual"),window.addEventListener("popstate",l),h(n(),{force:!0})},"undefined"!=typeof jasmine&&null!==jasmine?t():setTimeout(t,100)):void 0}),up.macro("a[up-back], [up-href][up-back]",function(t){return m.isPresent(c)?(r.setMissingAttrs(t,{"up-href":c,"up-restore-scroll":""}),t.removeAttribute("up-back"),up.link.makeFollowable(t)):void 0}),up.on("up:framework:reset",f),{config:e,push:p,replace:h,url:n,isUrl:i,previousUrl:function(){return c},normalizeUrl:s}}()}.call(this),function(){var t=[].slice;up.viewport=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w,k,S,E,T,A,F,C,x,P,O,R,M,j,D,L;return D=up.util,u=up.element,o=new up.Config({duration:0,viewports:[".up-modal-viewport","[up-viewport]","[up-fixed]"],fixedTop:["[up-fixed~=top]"],fixedBottom:["[up-fixed~=bottom]"],anchoredRight:["[up-anchored~=right]","[up-fixed~=top]","[up-fixed~=bottom]","[up-fixed~=right]"],revealSnap:50,revealPadding:0,scrollSpeed:1}),m=new up.Cache({size:30,key:up.history.normalizeUrl}),j=new up.MotionController("scrolling"),y=function(){return o.reset(),m.clear(),j.reset()},x=function(t,e,n){var r;return r=new up.ScrollMotion(t,e,n),j.startMotion(t,r,n)},s=function(t){var e;return up.motion.isEnabled()?(e=i(t),j.finish(e)):Promise.resolve()},r=function(){var t;return t=o.anchoredRight.join(","),u.all(t)},g=function(){var e,n,r,i,s,a,l;return r=function(t,e){var n;return n=D.sum(e,function(e){return u.styleNumber(t,e)})||0,n+t.offsetHeight},s=function(t){return r(t,["top","margin-top"])},i=function(t){return r(t,["bottom","margin-bottom"])},l=u.all(o.fixedTop.join(", ")),n=u.all(o.fixedBottom.join(", ")),a=D.map(l,s),e=D.map(n,i),{top:Math.max.apply(Math,[0].concat(t.call(a))),bottom:Math.max.apply(Math,[0].concat(t.call(e)))}},w=function(t,e){var n,r;return n=u.get(t),r=new up.RevealMotion(n,e),j.startMotion(n,r,e)},P=function(t,e){var n,r,i,o,s,a;return null==e&&(e={}),r=e.hash,o=e.reveal,i=e.restoreScroll,s=D.only(e,"scrollBehavior","scrollSpeed"),i?(n=D.presence(i,D.isObject),b({around:t,scrollTops:n})):r&&o===!0?k(r,s):o?(D.isElement(o)||D.isJQuery(o)?t=u.get(o):D.isString(o)&&(a=u.resolveSelector(o,e.origin),t=up.fragment.first(a)),t?w(t,s):void 0):Promise.resolve()},k=function(t){var e;return t&&(e=a(t))?w(e,{top:!0}):Promise.resolve()},n=function(){return[A()].concat(t.call(o.viewports)).join(",")},i=function(t){var e;return e=u.get(t),u.closest(e,n())},f=function(t){var e;return e=u.get(t),u.subtree(e,n())},p=function(t){var e;return e=u.get(t),u.list(i(e),f(e))},c=function(){return u.all(n())},A=function(){var t;return(t=document.scrollingElement)?t.tagName:"html"},h=function(){return document.querySelector(A())},F=function(){return u.root().clientWidth},E=function(){return u.root().clientHeight},d=function(t){return u.matches(t,A())},S=function(){return window.innerWidth>document.documentElement.offsetWidth},T=function(){var t,e,n;return t=document.body,n=document.documentElement,e=D.find([n,t],L),e||h()},L=function(t){var e;return e=u.style(t,"overflow-y"),"auto"===e||"scroll"===e},M=D.memoize(function(){var t,e,n;return e={position:"absolute",top:"0",left:"0",width:"100px",height:"100px",overflowY:"scroll"},t=up.element.affix(document.body,"[up-viewport]",{style:e}),n=t.offsetWidth-t.clientWidth,up.element.remove(t),n}),O=function(t){return u.toSelector(t)},R=function(){return D.mapObject(c(),function(t){return[O(t),t.scrollTop]})},l=function(t){var e;return null==t&&(t=document),e=["[up-fixed]"].concat(o.fixedTop).concat(o.fixedBottom),t.querySelectorAll(e.join(","))},C=function(t){var e,n,r,i;return null==t&&(t={}),i=null!=(e=t.url)?e:up.history.url(),r=null!=(n=t.tops)?n:R(),m.set(i,r)},b=function(t){var e,n,r;return null==t&&(t={}),n=up.history.url(),r=t.around?p(t.around):c(),e=t.scrollTops||m.get(n)||{},up.log.group("Restoring scroll positions for URL %s to %o",n,e,function(){var t;return t=D.map(r,function(t){var n,r;return n=O(t),r=e[n]||0,x(t,r,{duration:0})}),Promise.all(t)})},e=function(t,e){var n,r,i,o,s,a,c,p;return null==e&&(e={}),i=u.get(t),c=up.viewport.closest(i),p=c.getBoundingClientRect(),a=i.getBoundingClientRect(),r=new up.Rect({left:a.left-p.left,top:a.top-p.top,width:a.width,height:a.height}),"function"==typeof e.afterMeasure&&e.afterMeasure(),u.setStyle(i,{position:"static"===i.style.position?"static":"relative",top:"auto",right:"auto",bottom:"auto",left:"auto",width:"100%",height:"100%"}),n=u.createFromSelector(".up-bounds"),u.insertBefore(i,n),n.appendChild(i),o=function(t,e){return r.left+=t,r.top+=e,u.setStyle(n,r)},o(0,0),s=i.getBoundingClientRect(),o(a.left-s.left,a.top-s.top),D.each(l(i),u.fixedToAbsolute),{bounds:n,moveBounds:o}},a=function(t){var e;return(t=v(t))?(e=[u.attributeSelector("up-id",t),u.attributeSelector("id",t),"a"+u.attributeSelector("name",t)].join(","),up.fragment.first(e)):void 0},v=function(t){return t&&"#"===t[0]&&(t=t.substr(1)),D.presence(t)},up.on("up:app:booted",function(){return k(location.hash)}),up.on("up:framework:reset",y),{reveal:w,revealHash:k,firstHashTarget:a,scroll:x,config:o,closest:i,subtree:f,around:p,all:c,rootSelector:A,root:h,rootWidth:F,rootHeight:E,rootHasVerticalScrollbar:S,rootOverflowElement:T,isRoot:d,scrollbarWidth:M,scrollTops:R,saveScroll:C,restoreScroll:b,scrollAfterInsertFragment:P,anchoredRight:r,fixedElements:l,absolutize:e}}(),up.scroll=up.viewport.scroll,up.reveal=up.viewport.reveal,up.revealHash=up.viewport.revealHash,up.legacy.renamedModule("layout","viewport")}.call(this),function(){var t=[].slice;up.fragment=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w,k,S,E,T,A,F,C,x,P,O,R;return O=up.util,u=up.element,r=new up.Config({fallbacks:["body"],fallbackTransition:null}),E=function(){return r.reset()},T=function(t,e){return e!==!1?(O.isPresent(e)&&(e=O.normalizeUrl(e)),t.setAttribute("up-source",e)):void 0},C=function(t){var e;return e=u.get(t),(e=u.closest(e,"[up-source]"))?e.getAttribute("up-source"):up.browser.url()},S=function(t,e,r){var i,o,u,s,a,l,c,p,h,f,d;if(r=O.options(r),r.inspectResponse=u=function(){return up.browser.navigate(e,O.only(r,"method","params"))},!up.browser.canPushState()&&r.history!==!1)return r.preload||u(),O.unresolvablePromise();d=O.merge(r,{humanizedTarget:"target"}),o=O.merge(r,{humanizedTarget:"failure target",provideTarget:void 0,restoreScroll:!1}),O.renameKey(o,"failTransition","transition"),O.renameKey(o,"failLayer","layer"),O.renameKey(o,"failReveal","reveal");try{a=n(t,d),s=n(r.failTarget,o)}catch(m){return i=m,Promise.reject(i)}return f=O.only(r,"method","data","params","cache","preload","headers","timeout"),O.assign(f,{url:e,target:a,failTarget:s}),h=new up.Request(f),c=function(t){return w(!0,a,h,t,d)},l=function(t){var e,n;return n=function(){return Promise.reject(t)},t.isFatalError()?n():(e=w(!1,s,h,t,o),O.always(e,n))},p=up.request(h),r.preload||(p=p.then(c,l)),p},w=function(t,e,n,r,i){var o,u,s,a;return a=r.url,u=a,(o=n.hash)&&(i.hash=o,u+=o),s="GET"===r.method,t?s?(i.history===!1||O.isString(i.history)||(i.history=u),i.source===!1||O.isString(i.source)||(i.source=a)):(O.isString(i.history)||(i.history=!1),O.isString(i.source)||(i.source="keep")):s?(i.history!==!1&&(i.history=u),i.source!==!1&&(i.source=a)):(i.history=!1,i.source="keep"),A(i)&&r.title&&(i.title=r.title),c(e,r.text,i)},A=function(t){return!(t.title===!1||O.isString(t.title)||t.history===!1&&t.title!==!0)},c=function(t,n,r){return up.log.group("Extracting %s from %d bytes of HTML",t,null!=n?n.length:void 0,function(){return r=O.options(r,{historyMethod:"push",keep:!0,layer:"auto"}),r.saveScroll!==!1&&up.viewport.saveScroll(),O.rejectOnError(function(){var i,o,u,s,a,l,c;for("function"==typeof r.provideTarget&&r.provideTarget(),s=new up.HtmlParser(n),i=e(t,s,r),A(r)&&(a=s.title())&&(r.title=a),R(r),c=[],o=0,u=i.length;u>o;o++)l=i[o],up.log.group("Swapping fragment %s",l.selector,function(){var t,e;return t=O.merge(r,O.only(l,"origin","reveal")),s.prepareForInsertion(l.newElement),e=x(l.oldElement,l.newElement,l.pseudoClass,l.transition,t),c.push(e)});return Promise.all(c)})})},n=function(t,e){var n;return n=new up.ExtractCascade(t,e),n.bestPreflightSelector()},e=function(t,e,n){var r;return n=O.merge(n,{response:e}),r=new up.ExtractCascade(t,n),r.bestMatchingSteps()},R=function(t){return t=O.options(t,{historyMethod:"push"}),t.history&&up.history[t.historyMethod](t.history),O.isString(t.title)?document.title=t.title:void 0},x=function(t,e,n,r,i){var o,a,c,h,f,d,g,v,b,w;if(r||(r="none"),"keep"===i.source&&(i=O.merge(i,{source:C(t)})),T(e,i.source),n){for(w=u.createFromSelector(".up-insertion");a=e.firstChild;)w.appendChild(a);for("before"===n?t.insertAdjacentElement("afterbegin",w):t.insertAdjacentElement("beforeend",w),b=w.children,c=0,f=b.length;f>c;c++)o=b[c],m(o,i);return v=up.viewport.scrollAfterInsertFragment(w,i),v=O.always(v,up.animate(w,r,i)),v=v.then(function(){return u.unwrap(w)})}return(h=p(t,e,i))?(l(h),Promise.resolve()):(i.keepPlans=P(t,e,i),g=t.parentNode,d=O.merge(i,{beforeStart:function(){return y(t)},afterInsert:function(){return up.hello(e,i)},beforeDetach:function(){return up.syntax.clean(t)},afterDetach:function(){return u.remove(t),s(t,{parent:g,log:!1})}}),up.morph(t,e,r,d))},P=function(t,e,n){var r,i,o,s,a,l,c;if(i=[],n.keep)for(c=t.querySelectorAll("[up-keep]"),r=0,a=c.length;a>r;r++)o=c[r],(l=p(o,e,O.merge(n,{descendantsOnly:!0})))&&(s=o.cloneNode(!0),u.replace(o,s),u.replace(l.newElement,o),i.push(l));return i},p=function(t,e,n){var r,i,o,s,a;return n.keep&&(i=t,(s=u.booleanOrStringAttr(i,"up-keep"))&&(O.isString(s)||(s="&"),s=u.resolveSelector(s,i),o=n.descendantsOnly?u.first(e,s):u.subtree(e,s)[0],o&&u.matches(o,"[up-keep]")&&(a={oldElement:i,newElement:o,newData:up.syntax.data(o)},r={target:i,newFragment:o,newData:a.newData,log:["Keeping element %o",i]},up.event.nobodyPrevents("up:fragment:keep",r))))?a:void 0},m=function(t,e){var n,r,i,o,s,c;for(n=u.get(t),e=O.options(e,{keepPlans:[]}),i=[],c=e.keepPlans,r=0,o=c.length;o>r;r++)s=c[r],l(s),i.push(s.oldElement);return up.syntax.compile(n,{skip:i}),a(n,e),n},a=function(t,e){return up.emit(t,"up:fragment:inserted",{log:["Inserted fragment %o",t],origin:e.origin})},l=function(t){var e,n;return n=t.oldElement,e={target:n,newFragment:t.newElement,newData:t.newData,log:["Kept fragment %o",n]},up.emit("up:fragment:kept",e)},s=function(t,e){var n,r;return F(t,e)&&(n=["Destroyed fragment %o",t]),r=e.parent||up.fail("Missing { parent } option"),up.emit(r,"up:fragment:destroyed",{fragment:t,parent:r,log:n})},g=function(t){return!u.closest(t,".up-destroying")},h=function(){var e,n,r,i,o,s,a;return e=1<=arguments.length?t.call(arguments,0):[],r=O.extractOptions(e),a=e.pop(),s=e[0]||document,n=null!=(o=r.layer)?o:"auto",i=r.origin,a=u.resolveSelector(a,i),"auto"===n?d(s,a,i):f(s,a,n)},d=function(t,e,n){var r,i;return r=["popup","modal","page"],n&&(i=v(n),O.remove(r,i),r.unshift(i)),O.findResult(r,function(n){return f(t,e,n)})},f=function(t,e,n){var r;return r=u.all(t,e),O.findResult(r,function(t){return g(t)&&b(t,n)?t:void 0})},v=function(t){return up.popup.contains(t)?"popup":up.modal.contains(t)?"modal":"page"},b=function(t,e){return!e||v(t)===e},i=function(t,e){return null==e&&(e=document.body),u.affix(e,t,{"class":"up-placeholder"})},o=function(t,e){var n,r,i;return r=u.get(t),e=O.options(e,{animation:!1}),r?(y(r),R(e),n=function(){var t;return t=up.motion.animateOptions(e),up.motion.animate(r,e.animation,t)},i=function(){var t;return t=r.parentNode,up.syntax.clean(r),up.browser.canJQuery()?jQuery(r).remove():u.remove(r),s(r,{parent:t,log:e.log})},n().then(i)):Promise.resolve()},F=function(t,e){return e.log!==!1&&!u.matches(t,".up-placeholder, .up-tooltip, .up-modal, .up-popup")},y=function(t){return t.classList.add("up-destroying"),t.setAttribute("aria-hidden","true")},k=function(t,e){var n;return e=O.options(e,{cache:!1}),n=e.url||C(t),S(t,n,e)},up.on("up:app:boot",function(){var t;return t=document.body,T(t,up.browser.url()),m(t)}),up.on("up:framework:reset",E),{createPlaceholder:i,replace:S,reload:k,destroy:o,extract:c,first:h,source:C,hello:m,config:r,layerOf:v}}(),up.replace=up.fragment.replace,up.extract=up.fragment.extract,up.reload=up.fragment.reload,up.destroy=up.fragment.destroy,up.hello=up.fragment.hello,up.first=function(){var e,n;return e=1<=arguments.length?t.call(arguments,0):[],up.legacy.warn("up.first() has been renamed to up.fragment.first()"),(n=up.fragment).first.apply(n,e)},up.legacy.renamedModule("flow","fragment"),up.legacy.renamedModule("dom","fragment")}.call(this),function(){var t=[].slice;up.motion=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w,k,S,E,T,A,F,C,x;return C=up.util,l=up.element,y={},s={},b={},a={},v=new up.MotionController("motion"),u=new up.Config({duration:300,delay:0,easing:"ease",enabled:!0}),S=function(){return v.reset(),y=C.copy(s),b=C.copy(a),u.reset()},d=function(){return u.enabled},n=function(t,e,n){var r,o,u,s;return o=l.get(t),n=i(n),r=c(e),s=x(o,e,n),s?(u=function(){return r(o,n)},v.startFunction(o,u,n)):E(o,e)},x=function(t,e,n){return n=i(n),d()&&!m(e)&&n.duration>0&&!l.isSingleton(t)},E=function(t,e){return C.isOptions(e)&&l.setStyle(t,e),Promise.resolve()},e=0,r=function(t,e,n){var r;return n=C.merge(n,{finishEvent:v.finishEvent}),r=new up.CssTransition(t,e,n),r.start()},i=function(){var e,n,r,i,o,s,a,c,p,h,f,d,m,g,v;return e=1<=arguments.length?t.call(arguments,0):[],v=null!=(o=e.shift())?o:{},i=C.extractOptions(e),r=e.pop()||l.none(),n={},n.easing=null!=(s=null!=(a=null!=(c=v.easing)?c:r.getAttribute("up-easing"))?a:i.easing)?s:u.easing,n.duration=null!=(p=null!=(h=null!=(f=v.duration)?f:l.numberAttr(r,"up-duration"))?h:i.duration)?p:u.duration,n.delay=null!=(d=null!=(m=null!=(g=v.delay)?g:l.numberAttr(r,"up-delay"))?m:i.delay)?d:u.delay,n.trackMotion=v.trackMotion,n},p=function(t){return y[t]||up.fail("Unknown animation %o",t)},f=function(t){return v.finish(t)},g=function(t,e,n,r){var o,u,s,a,c,p,f,d,m,g,y,b;return r=C.options(r),C.assign(r,i(r)),t=l.get(t),e=l.get(e),g=h(n),b=x(t,g,r),a=C.pluckKey(r,"beforeStart")||C.noop,u=C.pluckKey(r,"afterInsert")||C.noop,s=C.pluckKey(r,"beforeDetach")||C.noop,o=C.pluckKey(r,"afterDetach")||C.noop,a(),f=function(){var t;return t=C.merge(r,{scrollBehavior:"auto"}),up.viewport.scrollAfterInsertFragment(e,t)},b?v.isActive(t)&&r.trackMotion===!1?g(t,e,r):(up.puts("Morphing %o to %o with transition %o",t,e,n),y=up.viewport.closest(t),d=y.scrollTop,c=up.viewport.absolutize(t,{afterMeasure:function(){return l.insertBefore(t,e),u()}}),m=function(){var n;return n=f(),n=n.then(function(){var n;return n=y.scrollTop,c.moveBounds(0,n-d),g(t,e,r)}),n=n.then(function(){return s(),l.remove(c.bounds),o()})},v.startFunction([t,e],m,r)):(s(),A(t,e),u(),o(),p=f())},h=function(t){var e;return m(t)?void 0:C.isFunction(t)?t:C.isArray(t)?o.apply(null,t):C.isString(t)?t.indexOf("/")>=0?o.apply(null,t.split("/")):(e=b[t])?h(e):void 0:up.fail("Unknown transition %o",t)},o=function(t,e){var n,r;return m(t)&&m(t)?void 0:(r=c(t)||C.asyncNoop,n=c(e)||C.asyncNoop,function(t,e,i){return Promise.all([r(t,i),n(e,i)])})},c=function(t){return m(t)?void 0:C.isFunction(t)?t:C.isString(t)?p(t):C.isOptions(t)?function(e,n){return r(e,t,n)}:up.fail("Unknown animation %o",t)},A=function(t,e){return l.replace(t,e)},k=function(t,e){return b[t]=h(e)},w=function(t,e){return y[t]=c(e)},T=function(){return s=C.copy(y),a=C.copy(b)},m=function(t){return!t||"none"===t||C.isBlank(t)},w("fade-in",function(t,e){return l.setStyle(t,{opacity:0}),r(t,{opacity:1},e)}),w("fade-out",function(t,e){return l.setStyle(t,{opacity:1}),r(t,{opacity:0},e)}),F=function(t,e){return{transform:"translate("+t+"px, "+e+"px)"}},w("move-to-top",function(t,e){var n,i;return l.setStyle(t,F(0,0)),n=t.getBoundingClientRect(),i=n.top+n.height,r(t,F(0,-i),e)}),w("move-from-top",function(t,e){var n,i;return l.setStyle(t,F(0,0)),n=t.getBoundingClientRect(),i=n.top+n.height,l.setStyle(t,F(0,-i)),r(t,F(0,0),e)}),w("move-to-bottom",function(t,e){var n,i;return l.setStyle(t,F(0,0)),n=t.getBoundingClientRect(),i=l.root().clientHeight-n.top,r(t,F(0,i),e)}),w("move-from-bottom",function(t,e){var n,i;return l.setStyle(t,F(0,0)),n=t.getBoundingClientRect(),i=up.viewport.rootHeight()-n.top,l.setStyle(t,F(0,i)),r(t,F(0,0),e)}),w("move-to-left",function(t,e){var n,i;return l.setStyle(t,F(0,0)),n=t.getBoundingClientRect(),i=n.left+n.width,r(t,F(-i,0),e)}),w("move-from-left",function(t,e){var n,i;return l.setStyle(t,F(0,0)),n=t.getBoundingClientRect(),i=n.left+n.width,l.setStyle(t,F(-i,0)),r(t,F(0,0),e)}),w("move-to-right",function(t,e){var n,i;return l.setStyle(t,F(0,0)),n=t.getBoundingClientRect(),i=up.viewport.rootWidth()-n.left,r(t,F(i,0),e)}),w("move-from-right",function(t,e){var n,i;return l.setStyle(t,F(0,0)),n=t.getBoundingClientRect(),i=up.viewport.rootWidth()-n.left,l.setStyle(t,F(i,0)),r(t,F(0,0),e)}),w("roll-down",function(t,e){var r,i,o;return i=l.style(t,"height"),o=l.setTemporaryStyle(t,{height:"0px",overflow:"hidden"}),r=n(t,{height:i},e),r.then(o),r}),k("move-left",["move-to-left","move-from-right"]),k("move-right",["move-to-right","move-from-left"]),k("move-up",["move-to-top","move-from-bottom"]),k("move-down",["move-to-bottom","move-from-top"]),k("cross-fade",["fade-out","fade-in"]),up.on("up:framework:booted",T),up.on("up:framework:reset",S),{morph:g,animate:n,animateOptions:i,finish:f,finishCount:function(){return v.finishCount},transition:k,animation:w,config:u,isEnabled:d,isNone:m}}(),up.transition=up.motion.transition,up.animation=up.motion.animation,up.morph=up.motion.morph,up.animate=up.motion.animate}.call(this),function(){var t=[].slice;up.proxy=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w,k,S,E,T,A,F,C,x,P,O,R,M,j,D,L,U;return D=up.util,a=up.element,L=void 0,S=void 0,O=void 0,y=void 0,R=void 0,T=[],s=new up.Config({slowDelay:300,preloadDelay:75,cacheSize:70,cacheExpiry:3e5,maxRequests:4,wrapMethods:["PATCH","PUT","DELETE"],safeMethods:["GET","OPTIONS","HEAD"]}),r=new up.Cache({size:function(){return s.cacheSize},expiry:function(){return s.cacheExpiry},key:function(t){return up.Request.wrap(t).cacheKey()},cachable:function(t){return up.Request.wrap(t).isCachable()}}),l=function(t){var e,n,i,o,u,s,a;for(t=up.Request.wrap(t),n=[t],"html"!==t.target&&(s=t.variant({target:"html"}),n.push(s),"body"!==t.target&&(u=t.variant({target:"body"}),n.push(u))),i=0,o=n.length;o>i;i++)if(e=n[i],a=r.get(e))return a},i=function(){return clearTimeout(S),S=null},o=function(){return clearTimeout(O),O=null},C=function(){return L=null,i(),o(),y=0,s.reset(),r.clear(),R=!1,T=[]},C(),v=function(){var e,n,r,i,o,s;return e=1<=arguments.length?t.call(arguments,0):[],D.isString(e[0])&&(s=e.shift()),o=e.shift()||{},s&&(o.url=s),i=up.Request.wrap(o),i.isSafe()||u(),n=i.cache===!1,!n&&(r=l(i))?up.puts("Re-using cached response for %s %s",i.method,i.url):(r=m(i),P(i,r),r["catch"](function(){return F(i)})),i.preload||(g(),D.always(r,d)),r},e=function(){var e;return e=1<=arguments.length?t.call(arguments,0):[],up.legacy.warn("up.ajax() has been deprecated. Use up.request() instead."),new Promise(function(t,n){var r;return r=function(e){return t(e.text)},v.apply(null,e).then(r,n)})},p=function(){return 0===y},c=function(){return y>0},g=function(){var t;return y+=1,O?void 0:(t=function(){return c()?(up.emit("up:proxy:slow",{log:"Proxy is slow to respond"}),R=!0):void 0},O=D.timer(s.slowDelay,t))},d=function(){return y-=1,p()&&(o(),R)?(up.emit("up:proxy:recover",{log:"Proxy has recovered from slow response"}),R=!1):void 0},m=function(t){return y
4
+ return t=up.link.followVariantForLink(n),t.preloadLink(n,e)})):Promise.reject(new Error("Won't preload unsafe link"))},h=function(t){return D.contains(s.safeMethods,t)},U=function(t,e){return D.contains(s.wrapMethods,t)&&(e.add(up.protocol.config.methodParam,t),t="POST"),t},up.compiler("a[up-preload], [up-href][up-preload]",function(t){return up.link.isSafe(t)?(t.addEventListener("mouseenter",function(e){return up.link.shouldProcessEvent(e,t)?k(t):void 0}),t.addEventListener("mouseleave",function(){return j(t)})):void 0}),up.on("up:framework:reset",C),{preload:w,ajax:e,request:v,get:l,alias:n,clear:u,remove:F,isIdle:p,isBusy:c,isSafeMethod:h,wrapMethod:U,config:s}}(),up.ajax=up.proxy.ajax,up.request=up.proxy.request}.call(this),function(){up.link=function(){var t,e,n,r,i,o,u,s,a,l,c,p,h,f,d,m;return d=up.util,o=up.element,m=function(t,e){var n,r;return null==e&&(e={}),r=null!=(n=e.target)?n:"body",up.replace(r,t,e)},u=function(t,e){var n,r;return n=o.get(t),r=a(n),r.followLink(n,e)},r=function(t,e){var n,r,i,u,a,l,c;return e=d.options(e),c=null!=(n=null!=(r=e.url)?r:t.getAttribute("up-href"))?n:t.getAttribute("href"),l=null!=(i=e.target)?i:t.getAttribute("up-target"),null==e.failTarget&&(e.failTarget=t.getAttribute("up-fail-target")),null==e.fallback&&(e.fallback=t.getAttribute("up-fallback")),null==e.transition&&(e.transition=o.booleanOrStringAttr(t,"up-transition")),null==e.failTransition&&(e.failTransition=o.booleanOrStringAttr(t,"up-fail-transition")),null==e.history&&(e.history=o.booleanOrStringAttr(t,"up-history")),null==e.reveal&&(e.reveal=null!=(u=o.booleanOrStringAttr(t,"up-reveal"))?u:!0),null==e.failReveal&&(e.failReveal=null!=(a=o.booleanOrStringAttr(t,"up-fail-reveal"))?a:!0),null==e.cache&&(e.cache=o.booleanAttr(t,"up-cache")),null==e.restoreScroll&&(e.restoreScroll=o.booleanAttr(t,"up-restore-scroll")),e.method=s(t,e),null==e.origin&&(e.origin=t),null==e.layer&&(e.layer=t.getAttribute("up-layer")),null==e.failLayer&&(e.failLayer=t.getAttribute("up-fail-layer")),null==e.confirm&&(e.confirm=t.getAttribute("up-confirm")),null==e.scrollBehavior&&(e.scrollBehavior=t.getAttribute("up-scroll-behavior")),null==e.scrollSpeed&&(e.scrollSpeed=t.getAttribute("up-scroll-speed")),e=d.merge(e,up.motion.animateOptions(e,t)),up.browser.whenConfirmed(e).then(function(){return up.replace(l,c,e)})},i=function(t,e){return e=d.options(e),e.preload=!0,r(t,e)},s=function(t,e){var n,r,i,o;return null==e&&(e={}),n=null!=(r=null!=(i=null!=(o=e.method)?o:t.getAttribute("up-method"))?i:t.getAttribute("data-method"))?r:"GET",n.toUpperCase()},n=function(){},l=[],e=function(t,e){var n;return n=new up.FollowVariant(t,e),l.push(n),n.registerEvents(),n},c=function(t){return t=o.get(t),!!a(t,{"default":!1})},a=function(e,n){var r;return null==n&&(n={}),r=d.find(l,function(t){return t.matchesLink(e)}),n["default"]!==!1&&(r||(r=t)),r},h=function(t){return c(t)?void 0:t.setAttribute("up-follow","")},f=function(t,e){var n,r,i;return i=t.target,d.isUnmodifiedMouseEvent(t)?i===e?!0:(r="a, [up-href], "+up.form.fieldSelector(),n=o.closest(i,r),!n||n===e):!1},p=function(t,e){var n;return n=s(t,e),up.proxy.isSafeMethod(n)},t=e("[up-target], [up-follow]",{follow:function(t,e){return r(t,e)},preload:function(t,e){return i(t,e)}}),up.macro("[up-dash]",function(t){var e,n;return n=o.booleanOrStringAttr(t,"up-dash"),t.removeAttribute("up-dash"),e={"up-preload":"","up-instant":""},n===!0?h(t):e["up-target"]=n,o.setMissingAttrs(t,e)}),up.macro("[up-expand]",function(t){var e,n,r,i,u,s,a,l,c,p;if(c=t.getAttribute("up-expand")||"a, [up-href]",r=o.all(t,c),n=r[0]){for(p=/^up-/,a={},a["up-href"]=n.getAttribute("href"),l=n.attributes,i=0,u=l.length;u>i;i++)e=l[i],s=e.name,s.match(p)&&(a[s]=e.value);return o.setMissingAttrs(t,a),t.removeAttribute("up-expand"),h(t)}}),{visit:m,follow:u,makeFollowable:h,isSafe:p,isFollowable:c,shouldProcessEvent:f,followMethod:s,addFollowVariant:e,followVariantForLink:a,allowDefault:n}}(),up.visit=up.link.visit,up.follow=up.link.follow}.call(this),function(){var t=[].slice;up.form=function(){var e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w;return b=up.util,i=up.element,r=new up.Config({validateTargets:["[up-fieldset]:has(&)","fieldset:has(&)","label:has(&)","form:has(&)"],fields:["select","input:not([type=submit]):not([type=image])","button[type]:not([type=submit])","textarea"],submitButtons:["input[type=submit]","input[type=image]","button[type=submit]","button:not([type])"],observeDelay:0}),h=function(){return r.reset()},o=function(t){return null==t&&(t=""),r.fields.map(function(e){return e+t}).join(",")},u=function(t){var e,n,r;return t=i.get(t),e=i.subtree(t,o()),i.matches(t,"form[id]")&&(n=o(i.attributeSelector("form",t.id)),r=i.all(n),e.push.apply(e,r),e=b.uniq(e)),e},s=function(t){var e,n;return n=u(t),(e=m(t))&&(n=b.toArray(n),n.push(e)),n},m=function(t){var e,n;return n=d(),e=document.activeElement,e&&i.matches(e,n)&&t.contains(e)?e:i.first(t,n)},d=function(){return r.submitButtons.join(",")},f=function(t,e){var n,r,o,u,s,a,l,c,p,h,f,d,m,g;return e=b.options(e),n=i.get(t),n=i.closest(n,"form"),m=null!=(r=null!=(o=e.target)?o:n.getAttribute("up-target"))?r:"body",null==e.failTarget&&(e.failTarget=null!=(s=n.getAttribute("up-fail-target"))?s:i.toSelector(n)),null==e.reveal&&(e.reveal=null!=(a=i.booleanOrStringAttr(n,"up-reveal"))?a:!0),null==e.failReveal&&(e.failReveal=null!=(l=i.booleanOrStringAttr(n,"up-fail-reveal"))?l:!0),null==e.fallback&&(e.fallback=n.getAttribute("up-fallback")),null==e.history&&(e.history=null!=(c=i.booleanOrStringAttr(n,"up-history"))?c:!0),null==e.transition&&(e.transition=i.booleanOrStringAttr(n,"up-transition")),null==e.failTransition&&(e.failTransition=i.booleanOrStringAttr(n,"up-fail-transition")),null==e.method&&(e.method=b.normalizeMethod(null!=(p=null!=(h=null!=(f=n.getAttribute("up-method"))?f:n.getAttribute("data-method"))?h:n.getAttribute("method"))?p:"post")),null==e.cache&&(e.cache=i.booleanAttr(n,"up-cache")),null==e.restoreScroll&&(e.restoreScroll=i.booleanAttr(n,"up-restore-scroll")),null==e.origin&&(e.origin=n),null==e.layer&&(e.layer=n.getAttribute("up-layer")),null==e.failLayer&&(e.failLayer=n.getAttribute("up-fail-layer")),e.params=up.Params.fromForm(n).addAll(e.params),e=b.merge(e,up.motion.animateOptions(e,n)),e.validate&&(e.headers||(e.headers={}),e.transition=!1,e.failTransition=!1,e.headers[up.protocol.config.validateHeader]=e.validate),g=null!=(d=null!=(u=e.url)?u:n.getAttribute("action"))?d:up.browser.url(),"GET"===e.method&&(g=up.Params.stripURL(g)),up.event.whenEmitted("up:form:submit",{log:"Submitting form",target:n}).then(function(){var t;return up.feedback.start(n),up.browser.canPushState()||e.history===!1?(t=up.replace(m,g,e),b.always(t,function(){return up.feedback.stop(n)}),t):(n.submit(),b.unresolvablePromise())})},c=function(){var e,n,o,s,a,l,c,h,f,d;return o=arguments[0],e=2<=arguments.length?t.call(arguments,1):[],o=i.list(o),s=b.flatMap(o,u),n=null!=(c=null!=(h=b.extractCallback(e))?h:p(o[0]))?c:up.fail("up.observe: No change callback given"),l=b.extractOptions(e),l.delay=null!=(f=null!=(d=l.delay)?d:i.numberAttr(o[0],"up-delay"))?f:r.observeDelay,a=new up.FieldObserver(s,l,n),a.start(),a.stop},p=function(t){var e;return(e=t.getAttribute("up-observe"))?new Function("value","name",e):void 0},e=function(t,e){return c(t,e,function(){return f(t)})},l=function(t,e){var n,o;return n=null!=(o=e.target)?o:t.getAttribute("up-validate"),n||(n=b.findResult(r.validateTargets,function(t){var n;return n=i.resolveSelector(t,e.origin),i.first(n)?n:void 0})),n||up.fail("Could not find validation target for %o (tried defaults %o)",t,r.validateTargets),i.resolveSelector(n,e.origin)},w=function(t,e){var n,r,o;return n=i.get(t),e=b.options(e),e.origin=n,e.target=l(n,e),e.failTarget=e.target,null==e.reveal&&(e.reveal=null!=(o=i.booleanOrStringAttr(n,"up-reveal"))?o:!1),e.history=!1,e.validate=n.getAttribute("name")||":none",e=b.merge(e,up.motion.animateOptions(e,n)),r=up.submit(n,e)},y=function(t){var e,r,o,u,s,a;return s=void 0,u=void 0,i.matches(t,"input[type=checkbox]")?t.checked?(s=t.value,u=":checked"):u=":unchecked":i.matches(t,"input[type=radio]")?(r=n(t),o=t.getAttribute("name"),e=r.querySelector("input[type=radio]"+i.attributeSelector("name",o)+":checked"),e?(u=":checked",s=e.value):u=":unchecked"):s=t.value,a=[],b.isPresent(s)?(a.push(s),a.push(":present")):a.push(":blank"),b.isPresent(u)&&a.push(u),a},v=function(t,e){var r,o,u,s;return null==e&&(e={}),s=null!=(u=e.target)?u:t.getAttribute("up-switch"),o=n(t),b.isPresent(s)||up.fail("No switch target given for %o",t),r=y(t),b.each(i.all(o,s),function(t){return g(t,r)})},g=function(t,e){var n,r,o;return e||(e=y(a(t))),(n=t.getAttribute("up-hide-for"))?(n=b.splitValues(n),r=0===b.intersect(e,n).length):(o=(o=t.getAttribute("up-show-for"))?b.splitValues(o):[":present",":checked"],r=b.intersect(e,o).length>0),i.toggle(t,r),t.classList.add("up-switched")},a=function(t){var e,r,o;return e=n(t),o=i.all(e,"[up-switch]"),r=b.find(o,function(e){var n;return n=e.getAttribute("up-switch"),i.matches(t,n)}),r||b.fail("Could not find [up-switch] field for %o",t)},n=function(t){return i.closest(t,"form, body")},up.on("submit","form[up-target]",function(t,e){return up.event.consumeAction(t),b.muteRejection(f(e))}),up.on("change","[up-validate]",function(t){var e;return e=u(t.target)[0],b.muteRejection(w(e))}),up.compiler("[up-switch]",function(t){return v(t)}),up.on("change","[up-switch]",function(t,e){return v(e)}),up.compiler("[up-show-for]:not(.up-switched), [up-hide-for]:not(.up-switched)",function(t){return g(t)}),up.compiler("[up-observe]",function(t){return c(t)}),up.compiler("[up-autosubmit]",function(t){return e(t)}),up.compiler("[autofocus]",{batch:!0},function(t){return b.last(t).focus()}),up.on("up:framework:reset",h),{config:r,submit:f,observe:c,validate:w,autosubmit:e,fieldSelector:o,fields:u,submissionFields:s}}(),up.submit=up.form.submit,up.observe=up.form.observe,up.autosubmit=up.form.autosubmit,up.validate=up.form.validate}.call(this),function(){up.popup=function(){var t,e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y;return v=up.util,c=up.element,u=new up.Config({openAnimation:"fade-in",closeAnimation:"fade-out",openDuration:150,closeDuration:100,openEasing:null,closeEasing:null,position:"bottom",align:"left",history:!1}),d=new up.Config({phase:"closed",anchor:null,popup:null,content:null,tether:null,position:null,align:null,sticky:null,url:null,coveredUrl:null,coveredTitle:null}),r=new up.DivertibleChain,f=function(){var t;return null!=(t=d.tether)&&t.destroy(),d.reset(),r.reset(),u.reset()},l=function(){return d.coveredTitle=null,d.coveredUrl=null},a=function(t){return d.tether=new up.Tether(v.only(d,"anchor","position","align")),d.popup=c.affix(d.tether.root,".up-popup",{"up-position":d.position,"up-align":d.align}),d.content=c.affix(d.popup,".up-popup-content"),up.fragment.createPlaceholder(t,d.content),c.hide(d.popup)},y=function(){return c.show(d.popup)},m=function(){var t;return null!=(t=d.tether)?t.sync():void 0},p=function(){return"opened"===d.phase||"opening"===d.phase},t=function(t,n){return r.asap(o,function(){return e(t,n)})},e=function(t,e){var n,r,i,o,s,l,p,h,f,g,b,w,k,S,E,T,A,F,C;return r=c.get(t),null==e&&(e={}),C=null!=(p=null!=(h=v.pluckKey(e,"url"))?h:r.getAttribute("up-href"))?p:r.getAttribute("href"),s=v.pluckKey(e,"html"),C||s||up.fail("up.popup.attach() requires either an { url } or { html } option"),F=null!=(g=v.pluckKey(e,"target"))?g:r.getAttribute("up-popup")||up.fail("No target selector given for [up-popup]"),l=null!=(b=null!=(w=e.position)?w:r.getAttribute("up-position"))?b:u.position,n=null!=(k=null!=(S=e.align)?S:r.getAttribute("up-align"))?k:u.align,null==e.animation&&(e.animation=null!=(E=r.getAttribute("up-animation"))?E:u.openAnimation),null==e.sticky&&(e.sticky=null!=(T=c.booleanAttr(r,"up-sticky"))?T:u.sticky),e.history=up.browser.canPushState()?null!=(A=null!=(f=e.history)?f:c.booleanOrStringAttr(r,"up-history"))?A:u.history:!1,null==e.confirm&&(e.confirm=r.getAttribute("up-confirm")),e.method=up.link.followMethod(r,e),e.layer="popup",null==e.failTarget&&(e.failTarget=r.getAttribute("up-fail-target")),null==e.failLayer&&(e.failLayer=r.getAttribute("up-fail-layer")),e.provideTarget=function(){return a(F)},i=up.motion.animateOptions(e,r,{duration:u.openDuration,easing:u.openEasing}),o=v.merge(e,{animation:!1}),e.preload&&C?up.replace(F,C,e):up.browser.whenConfirmed(e).then(function(){return up.event.whenEmitted("up:popup:open",{url:C,anchor:r,log:"Opening popup"}).then(function(){var t;return d.phase="opening",d.anchor=r,d.position=l,d.align=n,e.history&&(d.coveredUrl=up.browser.url(),d.coveredTitle=document.title),d.sticky=e.sticky,t=s?up.extract(F,s,o):up.replace(F,C,o),t=t.then(function(){return y(),m(),up.animate(d.popup,e.animation,i)}),t=t.then(function(){return d.phase="opened",up.emit(d.popup,"up:popup:opened",{anchor:d.anchor,log:"Popup opened"})})})})},i=function(t){return r.asap(function(){return o(t)})},o=function(t){var e;return p()?(t=v.options(t,{animation:u.closeAnimation,history:d.coveredUrl,title:d.coveredTitle}),e=up.motion.animateOptions(t,{duration:u.closeDuration,easing:u.closeEasing}),v.assign(t,e),up.event.whenEmitted("up:popup:close",{anchor:d.anchor,log:"Closing popup"}).then(function(){return d.phase="closing",d.url=null,d.coveredUrl=null,d.coveredTitle=null,up.destroy(d.popup,t).then(function(){return d.phase="closed",d.tether.destroy(),d.tether=null,d.popup=null,d.content=null,d.anchor=null,d.sticky=null,up.emit("up:popup:closed",{anchor:d.anchor,log:"Popup closed"})})})):Promise.resolve()},h=function(t,n){return n=v.options(n),n.preload=!0,e(t,n)},g=function(e,n){return e.classList.contains("up-current")?i():t(e,n)},n=function(){return d.sticky?void 0:(l(),i())},s=function(t){var e;return e=c.get(t),!!c.closest(e,".up-popup")},up.link.addFollowVariant("[up-popup]",{follow:function(t,e){return g(t,e)},preload:function(t,e){return h(t,e)}}),up.on("click up:action:consumed",function(t){var e;return e=t.target,c.closest(e,".up-popup, [up-popup]")?void 0:v.muteRejection(i())}),up.on("up:fragment:inserted",function(t,e){var r;if(s(e)){if(r=e.getAttribute("up-source"))return d.url=r}else if(t.origin&&s(t.origin))return v.muteRejection(n())}),up.event.onEscape(function(){return v.muteRejection(i())}),up.on("click",".up-popup [up-close]",function(t){return v.muteRejection(i()),up.event.consumeAction(t)}),up.on("up:history:restore",function(){return v.muteRejection(i())}),up.on("up:framework:reset",f),{attach:t,close:i,url:function(){return d.url},coveredUrl:function(){return d.coveredUrl},config:u,contains:s,isOpen:p,sync:m}}()}.call(this),function(){up.modal=function(){var t,e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b,w,k,S,E,T,A,F,C,x,P;return F=up.util,c=up.element,u=new up.Config({maxWidth:null,width:null,height:null,history:!0,openAnimation:"fade-in",closeAnimation:"fade-out",openDuration:null,closeDuration:null,openEasing:null,closeEasing:null,backdropOpenAnimation:"fade-in",backdropCloseAnimation:"fade-out",closeLabel:"\xd7",closable:!0,sticky:!1,flavor:"default",position:null,template:function(t){return'
\n
\n
\n
\n
\n
'+t.closeLabel+"
\n
\n
\n
"}}),m=new up.Config({"default":{}}),T=new up.Config({phase:"closed",anchorElement:null,modalElement:null,sticky:null,closable:null,flavor:null,url:null,coveredUrl:null,coveredTitle:null,position:null}),n=new up.BodyShifter,r=new up.DivertibleChain,E=function(){return T.modalElement&&c.remove(T.modalElement),n.unshift(),T.reset(),r.reset(),u.reset(),m.reset()},A=function(){var t;return t=f("template"),F.evalOption(t,{closeLabel:f("closeLabel")})},l=function(){return T.coveredTitle=null,T.coveredUrl=null},k=function(t){var e;return e=".up-modal-"+t,T.modalElement.querySelector(e)},a=function(t,e){var n,r,i,o,u;return o=A(),T.modalElement=u=c.createFromHtml(o),u.setAttribute("aria-modal","true"),u.setAttribute("up-flavor",T.flavor),F.isPresent(T.position)&&u.setAttribute("up-position",T.position),i=F.only(e,"width","maxWidth","height"),c.setStyle(k("dialog"),i),T.closable||(n=k("close"),c.remove(n)),r=k("content"),up.fragment.createPlaceholder(t,r),c.hide(u),document.body.appendChild(u)},C=function(){return c.show(T.modalElement)},v=function(){return"opened"===T.phase||"opening"===T.phase},g=function(t,e){return e=F.options(e),e.link=c.get(t),b(e)},S=function(t,e){return e=F.options(e),e.link=t,e.preload=!0,w(e)},P=function(t,e){return e=F.options(e),e.url=t,b(e)},p=function(t,e,n){return n=F.options(n),n.html=e,null==n.history&&(n.history=!1),n.target=t,b(n)},b=function(t){return r.asap(o,function(){return w(t)})},w=function(e){var r,i,o,s,l,p,h,d,m,g,v,y,b,w,k,S,E,A,P;return e=F.options(e),o=F.pluckKey(e,"link")||c.none(),P=null!=(s=null!=(l=F.pluckKey(e,"url"))?l:o.getAttribute("up-href"))?s:o.getAttribute("href"),i=F.pluckKey(e,"html"),A=null!=(g=F.pluckKey(e,"target"))?g:o.getAttribute("up-modal"),x(A),null==e.flavor&&(e.flavor=null!=(v=o.getAttribute("up-flavor"))?v:u.flavor),null==e.position&&(e.position=null!=(y=o.getAttribute("up-position"))?y:f("position",e.flavor)),e.position=F.evalOption(e.position,{link:o}),null==e.width&&(e.width=null!=(b=o.getAttribute("up-width"))?b:f("width",e.flavor)),null==e.maxWidth&&(e.maxWidth=null!=(w=o.getAttribute("up-max-width"))?w:f("maxWidth",e.flavor)),null==e.height&&(e.height=null!=(k=o.getAttribute("up-height"))?k:f("height")),null==e.animation&&(e.animation=null!=(S=o.getAttribute("up-animation"))?S:f("openAnimation",e.flavor)),e.animation=F.evalOption(e.animation,{position:e.position}),null==e.backdropAnimation&&(e.backdropAnimation=null!=(E=o.getAttribute("up-backdrop-animation"))?E:f("backdropOpenAnimation",e.flavor)),e.backdropAnimation=F.evalOption(e.backdropAnimation,{position:e.position}),null==e.sticky&&(e.sticky=null!=(p=c.booleanAttr(o,"up-sticky"))?p:f("sticky",e.flavor)),null==e.closable&&(e.closable=null!=(h=c.booleanAttr(o,"up-closable"))?h:f("closable",e.flavor)),null==e.confirm&&(e.confirm=o.getAttribute("up-confirm")),e.method=up.link.followMethod(o,e),e.layer="modal",null==e.failTarget&&(e.failTarget=o.getAttribute("up-fail-target")),null==e.failLayer&&(e.failLayer=null!=(d=o.getAttribute("up-fail-layer"))?d:"auto"),null==e.cache&&(e.cache=c.booleanAttr(o,"up-cache")),r=up.motion.animateOptions(e,o,{duration:f("openDuration",e.flavor),easing:f("openEasing",e.flavor)}),null==e.history&&(e.history=null!=(m=c.booleanOrStringAttr(o,"up-history"))?m:f("history",e.flavor)),up.browser.canPushState()||(e.history=!1),e.provideTarget=function(){return a(A,e)},e.preload?up.replace(A,P,e):up.browser.whenConfirmed(e).then(function(){return up.event.whenEmitted("up:modal:open",{url:P,log:"Opening modal"}).then(function(){var o,u;return T.phase="opening",T.flavor=e.flavor,T.sticky=e.sticky,T.closable=e.closable,T.position=e.position,e.history&&(T.coveredUrl=up.browser.url(),T.coveredTitle=document.title),o=F.merge(e,{animation:!1}),u=i?up.extract(A,i,o):up.replace(A,P,o),u=u.then(function(){return n.shift(),C(),t(e.animation,e.backdropAnimation,r)}),u=u.then(function(){return T.phase="opened",up.emit("up:modal:opened",{log:"Modal opened"})})})})},x=function(t){return F.isBlank(t)?up.fail("Cannot open a modal without a target selector"):"body"===t?up.fail("Cannot open the in a modal"):void 0},i=function(t){return r.asap(function(){return o(t)})},o=function(e){var r,i,o,u,s,a;return e=F.options(e),v()?(a=null!=(u=e.animation)?u:f("closeAnimation"),a=F.evalOption(a,{position:T.position}),i=null!=(s=e.backdropAnimation)?s:f("backdropCloseAnimation"),i=F.evalOption(i,{position:T.position}),r=up.motion.animateOptions(e,{duration:f("closeDuration"),easing:f("closeEasing")}),o=F.options(F.except(e,"animation","duration","easing","delay"),{history:T.coveredUrl,title:T.coveredTitle}),up.event.whenEmitted(T.modalElement,"up:modal:close",{log:"Closing modal"}).then(function(){var e;return T.phase="closing",T.url=null,T.coveredUrl=null,T.coveredTitle=null,e=t(a,i,r),e=e.then(function(){return up.destroy(T.modalElement,o)}),e=e.then(function(){return n.unshift(),T.phase="closed",T.modalElement=null,T.flavor=null,T.sticky=null,T.closable=null,T.position=null,up.emit("up:modal:closed",{log:"Modal closed"})})})):Promise.resolve()},y=function(t){return null==t&&(t=!0),c.toggleClass(T.modalElement,"up-modal-animating",t)},t=function(t,e,n){var r;return up.motion.isNone(t)?Promise.resolve():(y(),r=Promise.all([up.animate(k("viewport"),t,n),up.animate(k("backdrop"),e,n)]),r=r.then(function(){return y(!1)}))},e=function(){return T.sticky?void 0:(l(),i())},s=function(t){var e;return e=c.get(t),!!c.closest(e,".up-modal")},h=function(t,e){return null==e&&(e={}),up.legacy.warn("up.modal.flavor() is deprecated. Use the up.modal.flavors property instead."),F.assign(d(t),e)},d=function(t){return m[t]||(m[t]={})},f=function(t,e){var n;return null==e&&(e=T.flavor),e&&(n=d(e)[t]),F.isMissing(n)&&(n=u[t]),n},up.link.addFollowVariant("[up-modal]",{follow:function(t,e){return g(t,e)},preload:function(t,e){return S(t,e)}}),up.on("click",".up-modal",function(t){var e;if(T.closable)return e=t.target,c.closest(e,".up-modal-dialog")||c.closest(e,"[up-modal]")?void 0:(up.event.consumeAction(t),F.muteRejection(i()))}),up.on("up:fragment:inserted",function(t,n){var r;if(s(n)){if(r=n.getAttribute("up-source"))return T.url=r}else if(t.origin&&s(t.origin)&&!up.popup.contains(n))return F.muteRejection(e())}),up.event.onEscape(function(){return T.closable?F.muteRejection(i()):void 0}),up.on("click",".up-modal [up-close]",function(t){return F.muteRejection(i()),up.event.consumeAction(t)}),up.macro("a[up-drawer], [up-href][up-drawer]",function(t){var e;return e=t.getAttribute("up-drawer"),c.setAttrs(t,{"up-modal":e,"up-flavor":"drawer"})}),m.drawer={openAnimation:function(t){switch(t.position){case"left":return"move-from-left";case"right":return"move-from-right"}},closeAnimation:function(t){switch(t.position){case"left":return"move-to-left";case"right":return"move-to-right"}},position:function(t){return F.isPresent(t.link)?F.horizontalScreenHalf(t.link):"left"}},up.on("up:history:restore",function(){return F.muteRejection(i())}),up.on("up:framework:reset",E),{visit:P,follow:g,extract:p,close:i,url:function(){return T.url},coveredUrl:function(){return T.coveredUrl},config:u,flavors:m,contains:s,isOpen:v,flavor:h}}()}.call(this),function(){up.tooltip=function(){var t,e,n,r,i,o,u,s,a,l,c,p,h;return h=up.util,s=up.element,o=new up.Config({position:"top",align:"center",openAnimation:"fade-in",closeAnimation:"fade-out",openDuration:100,closeDuration:50,openEasing:null,closeEasing:null}),c=new up.Config({phase:"closed",anchor:null,tooltip:null,content:null,tether:null,position:null,align:null}),n=new up.DivertibleChain,l=function(){var t;return null!=(t=c.tether)&&t.destroy(),c.reset(),n.reset(),o.reset()},u=function(t){return c.tether=new up.Tether(h.only(c,"anchor","position","align")),c.tooltip=s.affix(c.tether.root,".up-tooltip",{"up-position":c.position,"up-align":c.align}),c.content=s.affix(c.tooltip,".up-tooltip-content"),t.text?c.content.innerText=t.text:c.content.innerHTML=t.html},p=function(){var t;return null!=(t=c.tether)?t.sync():void 0},t=function(t,r){return n.asap(i,function(){return e(t,r)})},e=function(t,e){var n,r,i,a,l,h,f,d,m,g,v,y,b,w,k;return null==e&&(e={}),r=s.get(t),l=null!=(f=e.html)?f:r.getAttribute("up-tooltip-html"),k=null!=(d=e.text)?d:r.getAttribute("up-tooltip"),h=null!=(m=null!=(g=e.position)?g:r.getAttribute("up-position"))?m:o.position,n=null!=(v=null!=(y=e.align)?y:r.getAttribute("up-align"))?v:o.align,a=null!=(b=null!=(w=e.animation)?w:s.booleanOrStringAttr(r,"up-animation"))?b:o.openAnimation,i=up.motion.animateOptions(e,r,{duration:o.openDuration,easing:o.openEasing}),c.phase="opening",c.anchor=r,c.position=h,c.align=n,u({text:k,html:l}),p(),up.animate(c.tooltip,a,i).then(function(){return c.phase="opened"})},r=function(t){return n.asap(function(){return i(t)})},i=function(t){var e;return a()?(t=h.options(t,{animation:o.closeAnimation}),e=up.motion.animateOptions(t,{duration:o.closeDuration,easing:o.closeEasing}),h.assign(t,e),c.phase="closing",up.destroy(c.tooltip,t).then(function(){return c.phase="closed",c.tether.destroy(),c.tether=null,c.tooltip=null,c.content=null,c.anchor=null})):Promise.resolve()},a=function(){return"opening"===c.phase||"opened"===c.phase},up.compiler("[up-tooltip], [up-tooltip-html]",function(e){return e.addEventListener("mouseenter",function(){return t(e)}),e.addEventListener("mouseleave",function(){return r()})}),up.on("click up:action:consumed",function(){return r()}),up.on("up:framework:reset",l),up.event.onEscape(function(){return r()}),{config:o,attach:t,isOpen:a,close:r,sync:p}}()}.call(this),function(){up.feedback=function(){var t,e,n,r,i,o,u,s,a,l,c,p,h,f,d,m,g,v,y,b;return m=up.util,u=up.element,i=new up.Config({currentClasses:["up-current"],navs:["[up-nav]"]}),c=void 0,o=void 0,p=function(){return i.reset(),c=void 0,o=void 0},t="up-active",e="a, [up-href]",a=function(){return i.navs.join(",")},l=function(t){return m.isPresent(t)?m.normalizeUrl(t,{stripTrailingSlash:!0}):void 0},h=function(t){var e;return(e=t.upNormalizedUrls)||(e=r(t),t.upNormalizedUrls=e),e},r=function(t){var e,n,r,i,o,u,s,a,c,p;if(c=[],up.link.isSafe(t))for(u=["href","up-href","up-alias"],n=0,i=u.length;i>n;n++)if(e=u[n],p=t.getAttribute(e))for(s=m.splitValues(p),r=0,o=s.length;o>r;r++)a=s[r],"#"!==a&&(a=l(a),c.push(a));return c},n=function(){var t;return t=[up.browser.url(),up.modal.url(),up.modal.coveredUrl(),up.popup.url(),up.popup.coveredUrl()],new up.UrlSet(t,{normalizeUrl:l})},v=function(){return c=o,o=n(),m.isEqual(o,c)?void 0:g(document.body)},g=function(t){var n,r;return n=u.subtree(t,a()),r=m.flatMap(n,function(t){return u.subtree(t,e)}),y(r)},b=function(t){var n;return u.closest(t,a())?(n=u.subtree(t,e),y(n)):g(t)},y=function(t){return o||(o=n()),m.each(t,function(t){var e,n,r,u,s,a,l,c,p,f,d;if(d=h(t),e=t.classList,o.matchesAny(d)){for(l=i.currentClasses,p=[],n=0,s=l.length;s>n;n++)u=l[n],p.push(e.add(u));return p}for(c=i.currentClasses,f=[],r=0,a=c.length;a>r;r++)u=c[r],f.push(e.remove(u));return f})},s=function(t){return t=u.get(t),u.ancestor(t,e)||t},f=function(e){return s(e).classList.add(t)},d=function(e){return s(e).classList.remove(t)},up.on("up:history:pushed up:history:replaced up:history:restored up:modal:opened up:modal:closed up:popup:opened up:popup:closed",function(){return v()}),up.on("up:fragment:inserted",function(t,e){return b(e)}),up.on("up:framework:reset",p),{config:i,start:f,stop:d}}(),up.legacy.renamedModule("navigation","feedback")}.call(this),function(){up.radio=function(){var t,e,n,r;return r=up.util,t=new up.Config({hungry:["[up-hungry]"],hungryTransition:null}),n=function(){return t.reset()},e=function(){return t.hungry.join(",")},up.on("up:framework:reset",n),{config:t,hungrySelector:e}}()}.call(this),function(){up.rails=function(){var t,e,n;return n=up.util,t=up.element,e=function(){var t;return!!(window.Rails||(null!=(t=window.jQuery)?t.rails:void 0))},n.each(["method","confirm"],function(n){var r,i;return r="data-"+n,i="up-"+n,up.macro("["+r+"]",function(n){var o;return e()&&up.link.isFollowable(n)?(o={},o[i]=n.getAttribute(r),t.setMissingAttrs(n,o),n.removeAttribute(r)):void 0})})}()}.call(this),function(){up.framework.boot()}.call(this);
@@ -166,15 +166,16 @@ up.browser = do ->
166
166
  canCustomElements = u.memoize ->
167
167
  !!window.customElements
168
168
 
169
- canJQuery = u.memoize ->
170
- !!window.jQuery
171
-
172
169
  canAnimationFrame = u.memoize ->
173
170
  'requestAnimationFrame' of window
174
171
 
175
172
  canControlScrollRestoration = u.memoize ->
176
173
  'scrollRestoration' of history
177
174
 
175
+ # Don't memoize so a build may publish window.jQuery after Unpoly was loaded
176
+ canJQuery = ->
177
+ !!window.jQuery
178
+
178
179
  popCookie = (name) ->
179
180
  value = document.cookie.match(new RegExp(name+"=(\\w+)"))?[1]
180
181
  if u.isPresent(value)
@@ -218,6 +219,10 @@ up.browser = do ->
218
219
  canPromise() &&
219
220
  canAnimationFrame()
220
221
 
222
+ callJQuery = (args...) ->
223
+ canJQuery() or up.fail("jQuery must be published as window.jQuery")
224
+ return jQuery(args...)
225
+
221
226
  <% if ENV['JS_KNIFE'] %>knife: eval(Knife.point)<% end %>
222
227
  url: url
223
228
  navigate: navigate
@@ -226,10 +231,10 @@ up.browser = do ->
226
231
  canFormData: canFormData
227
232
  canInspectFormData: canInspectFormData
228
233
  canCustomElements: canCustomElements
229
- canJQuery: canJQuery
230
234
  canControlScrollRestoration: canControlScrollRestoration
235
+ canJQuery: canJQuery
231
236
  whenConfirmed: whenConfirmed
232
237
  isSupported: isSupported
233
238
  popCookie: popCookie
239
+ jQuery: callJQuery
234
240
  isIE11: isIE11
235
-
@@ -13,23 +13,32 @@ class up.BodyShifter
13
13
  @unshiftFns = []
14
14
 
15
15
  shift: ->
16
- return unless up.viewport.rootHasVerticalScrollbar()
17
-
18
- body = document.body
16
+ # Remember whether the root viewport has a visible scrollbar at rest.
17
+ # It will disappear when we set overflow-y: hidden below.
18
+ rootHadVerticalScrollbar = up.viewport.rootHasVerticalScrollbar()
19
+
20
+ # Even if root viewport has no scroll bar, we still want to give overflow-y: hidden
21
+ # to the <body> element. Otherwise the user could scroll the underlying page by
22
+ # scrolling over the dimmed backdrop (observable with touch emulation in Chrome DevTools).
23
+ # Note that some devices don't show a vertical scrollbar at rest for a viewport, even
24
+ # when it can be scrolled.
19
25
  overflowElement = up.viewport.rootOverflowElement()
26
+ @unshiftFns.push e.setTemporaryStyle(overflowElement, overflowY: 'hidden')
20
27
 
21
- scrollbarWidth = up.viewport.scrollbarWidth()
28
+ if rootHadVerticalScrollbar
29
+ body = document.body
22
30
 
23
- bodyRightPadding = e.styleNumber(body, 'paddingRight')
24
- bodyRightShift = scrollbarWidth + bodyRightPadding
31
+ scrollbarWidth = up.viewport.scrollbarWidth()
25
32
 
26
- @unshiftFns.push e.setTemporaryStyle(body, paddingRight: bodyRightShift)
27
- @unshiftFns.push e.setTemporaryStyle(overflowElement, overflowY: 'hidden')
33
+ bodyRightPadding = e.styleNumber(body, 'paddingRight')
34
+ bodyRightShift = scrollbarWidth + bodyRightPadding
35
+
36
+ @unshiftFns.push e.setTemporaryStyle(body, paddingRight: bodyRightShift)
28
37
 
29
- for anchor in up.viewport.anchoredRight()
30
- elementRight = e.styleNumber(anchor, 'right')
31
- elementRightShift = scrollbarWidth + elementRight
32
- @unshiftFns.push e.setTemporaryStyle(anchor, right: elementRightShift)
38
+ for anchor in up.viewport.anchoredRight()
39
+ elementRight = e.styleNumber(anchor, 'right')
40
+ elementRightShift = scrollbarWidth + elementRight
41
+ @unshiftFns.push e.setTemporaryStyle(anchor, right: elementRightShift)
33
42
 
34
43
  unshift: ->
35
44
  while unshiftFn = @unshiftFns.pop()
@@ -38,7 +38,7 @@ class up.CompilePass
38
38
  match.setAttribute('up-keep', value)
39
39
 
40
40
  compileOneElement: (compiler, element) ->
41
- elementArg = if compiler.jQuery then jQuery(element) else element
41
+ elementArg = if compiler.jQuery then up.browser.jQuery(element) else element
42
42
  compileArgs = [elementArg]
43
43
  # Do not retrieve and parse [up-data] unless the compiler function
44
44
  # expects a second argument. Note that we must pass data for an argument
@@ -53,7 +53,7 @@ class up.CompilePass
53
53
  up.destructor(element, destructorOrDestructors)
54
54
 
55
55
  compileBatch: (compiler, elements) ->
56
- elementsArgs = if compiler.jQuery then jQuery(elements) else elements
56
+ elementsArgs = if compiler.jQuery then up.browser.jQuery(elements) else elements
57
57
  compileArgs = [elementsArgs]
58
58
  # Do not retrieve and parse [up-data] unless the compiler function
59
59
  # expects a second argument. Note that we must pass data for an argument
@@ -30,7 +30,7 @@ class up.EventListener
30
30
  element = e.closest(element, @selector) if @selector
31
31
 
32
32
  if element
33
- elementArg = if @jQuery then jQuery(element) else element
33
+ elementArg = if @jQuery then up.browser.jQuery(element) else element
34
34
  args = [event, elementArg]
35
35
 
36
36
  # Do not retrieve and parse [up-data] unless the listener function
@@ -11,10 +11,14 @@ class up.FollowVariant
11
11
 
12
12
  onClick: (event, link) =>
13
13
  if up.link.shouldProcessEvent(event, link)
14
- if e.matches(link, '[up-instant]')
15
- # If the link was already processed on mousedown, we still need
16
- # to prevent this later click event's chain.
14
+ # Instant links should not have a `click` event.
15
+ # This would trigger the browsers default follow-behavior and possibly activate JS libs.
16
+ # A11Y: We also need to check whether the [up-instant] behavior did trigger on mousedown.
17
+ # Keyboard navigation will not necessarily trigger a mousedown event.
18
+ if e.matches(link, '[up-instant]') && link.upInstantSupported
17
19
  up.event.halt(event)
20
+ link.upInstantSupported = false
21
+ return # return undefined since u.muteRejection() will try to call catch() on a given value
18
22
  else
19
23
  up.event.consumeAction(event)
20
24
  @followLink(link)
@@ -24,6 +28,10 @@ class up.FollowVariant
24
28
 
25
29
  onMousedown: (event, link) =>
26
30
  if up.link.shouldProcessEvent(event, link)
31
+ # A11Y: Keyboard navigation will not necessarily trigger a mousedown event.
32
+ # We also don't want to listen to the enter key, since some screen readers
33
+ # use the enter key for something else.
34
+ link.upInstantSupported = true
27
35
  up.event.consumeAction(event)
28
36
  @followLink(link)
29
37
 
@@ -247,6 +247,7 @@ class up.Params
247
247
  @addAllFromObject(raw)
248
248
  else
249
249
  up.fail("Unsupport params type: %o", raw)
250
+ return this
250
251
 
251
252
  addAllFromObject: (object) ->
252
253
  for key, value of object
@@ -510,7 +511,7 @@ class up.Params
510
511
  params.addAll(query)
511
512
  params
512
513
 
513
- ###*
514
+ ###**
514
515
  Returns the given URL without its [query string](https://en.wikipedia.org/wiki/Query_string).
515
516
 
516
517
  \#\#\# Example
@@ -127,7 +127,7 @@ up.element = do ->
127
127
  @function up.element.closest
128
128
  @param {Element} element
129
129
  The element on which to start the search.
130
- @param {string}
130
+ @param {string} selector
131
131
  The CSS selector to match.
132
132
  @return {Element|null|undefined} element
133
133
  The matching element.
@@ -519,11 +519,11 @@ up.element = do ->
519
519
  element.className // returns 'klass'
520
520
 
521
521
  @function up.element.affix
522
- @params {Element} parent
522
+ @param {Element} parent
523
523
  The parent to which to attach the created element.
524
- @params {string} selector
524
+ @param {string} selector
525
525
  The CSS selector from which to create an element.
526
- @params {Object} attrs
526
+ @param {Object} attrs
527
527
  An object of attributes to set on the created element.
528
528
  @param {Object} attrs.text
529
529
  The [text content](https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent) of the created element.
@@ -99,7 +99,7 @@ up.event = do ->
99
99
  for [event delegation](https://davidwalsh.name/event-delegate):
100
100
 
101
101
  var form = document.querySelector('form')
102
- document.addEventListener(form, 'click', 'a', function(event, link) {
102
+ up.on(form, 'click', 'a', function(event, link) {
103
103
  console.log("Click on a link %o within %o", link, form)
104
104
  })
105
105
 
@@ -383,14 +383,22 @@ up.event = do ->
383
383
  )
384
384
 
385
385
  ###**
386
- Stops the given event from propagating and prevents the default action.
386
+ Prevents the event from bubbling up the DOM.
387
+ Also prevents other event handlers bound on the same element.
388
+ Also prevents the event's default action.
389
+
390
+ \#\#\# Example
391
+
392
+ up.on('click', 'link.disabled', function(event) {
393
+ up.event.halt(event)
394
+ })
387
395
 
388
396
  @function up.event.halt
389
- @internal
397
+ @param {Event} event
398
+ @experimental
390
399
  ###
391
400
  halt = (event) ->
392
401
  event.stopImmediatePropagation()
393
- event.stopPropagation()
394
402
  event.preventDefault()
395
403
 
396
404
  ###**
@@ -35,7 +35,7 @@ up.form = do ->
35
35
  @stable
36
36
  ###
37
37
  config = new up.Config
38
- validateTargets: ['fieldset:has(&)', 'label:has(&)', 'form:has(&)']
38
+ validateTargets: ['[up-fieldset]:has(&)', 'fieldset:has(&)', 'label:has(&)', 'form:has(&)']
39
39
  fields: ['select', 'input:not([type=submit]):not([type=image])', 'button[type]:not([type=submit])', 'textarea'],
40
40
  submitButtons: ['input[type=submit]', 'input[type=image]', 'button[type=submit]', 'button:not([type])']
41
41
  observeDelay: 0
@@ -47,15 +47,34 @@ up.form = do ->
47
47
  @function up.form.fieldSelector
48
48
  @internal
49
49
  ###
50
- fieldSelector = ->
51
- config.fields.join(',')
50
+ fieldSelector = (suffix = '') ->
51
+ config.fields.map((field) -> field + suffix).join(',')
52
52
 
53
53
  ###**
54
+ Returns a list of form fields within the given element.
55
+
56
+ You can configure what Unpoly considers a form field by adding CSS selectors to the
57
+ [`up.form.config.fields`](/up.form.config#config.fields) array.
58
+
59
+ If the given element is itself a form field, a list of that given element is returned.
60
+
54
61
  @function up.form.fields
55
- @internal
62
+ @param {Element|jQuery} root
63
+ The element to scan for contained form fields.
64
+
65
+ If the element is itself a form field, a list of that element is returned.
66
+ @return {NodeList<Element>|Array<Element>}
67
+ @experimental
56
68
  ###
57
69
  findFields = (root) ->
58
- e.subtree(root, fieldSelector())
70
+ root = e.get(root)
71
+ fields = e.subtree(root, fieldSelector())
72
+ if e.matches(root, 'form[id]')
73
+ outsideFieldSelector = fieldSelector(e.attributeSelector('form', root.id))
74
+ outsideFields = e.all(outsideFieldSelector)
75
+ fields.push(outsideFields...)
76
+ fields = u.uniq(fields)
77
+ fields
59
78
 
60
79
  # findFields = (rootOrRoots) ->
61
80
  # rootOrRoots = e.list(rootOrRoots)
@@ -179,6 +198,9 @@ up.form = do ->
179
198
  If set to `'auto'` (default), Unpoly will try to find a match in the form's layer.
180
199
  @param {string} [options.failLayer='auto']
181
200
  The name of the layer that ought to be updated if the server sends a non-200 status code.
201
+ @param {Object|FormData|string|Array|up.Params} [options.params]
202
+ Extra form [parameters](/up.Params) that will be submitted in addition to
203
+ the parameters from the form.
182
204
  @return {Promise}
183
205
  A promise for the successful form submission.
184
206
  @stable
@@ -203,7 +225,10 @@ up.form = do ->
203
225
  options.origin ?= form
204
226
  options.layer ?= form.getAttribute('up-layer')
205
227
  options.failLayer ?= form.getAttribute('up-fail-layer')
206
- options.params = up.Params.fromForm(form)
228
+
229
+ # Take params from form, but allow to pass additional params as { params }
230
+ options.params = up.Params.fromForm(form).addAll(options.params)
231
+
207
232
  options = u.merge(options, up.motion.animateOptions(options, form))
208
233
 
209
234
  if options.validate
@@ -532,7 +557,7 @@ up.form = do ->
532
557
 
533
558
  \#\#\# Redirects
534
559
 
535
- Unpoly requires an additional response headers to detect redirects,
560
+ Unpoly requires an additional response header to detect redirects,
536
561
  which are otherwise undetectable for an AJAX client.
537
562
 
538
563
  After the form's action performs a redirect, the next response should echo
@@ -766,7 +791,18 @@ up.form = do ->
766
791
  This defaults to a fieldset or form group around the validating field.
767
792
  @stable
768
793
  ###
769
- up.on 'change', '[up-validate]', (event, field) ->
794
+
795
+ ###**
796
+ Performs [server-side validation](/input-up-validate) when any fieldset within this form changes.
797
+
798
+ You can configure what Unpoly considers a fieldset by adding CSS selectors to the
799
+ [`up.form.config.validateTargets`](/up.form.config#config.validateTargets) array.
800
+
801
+ @selector form[up-validate]
802
+ @stable
803
+ ###
804
+ up.on 'change', '[up-validate]', (event) ->
805
+ field = findFields(event.target)[0]
770
806
  u.muteRejection validate(field)
771
807
 
772
808
  ###**
@@ -882,18 +918,16 @@ up.form = do ->
882
918
 
883
919
  The programmatic variant of this is the [`up.observe()`](/up.observe) function.
884
920
 
885
- \#\#\# Examples
921
+ \#\#\# Example
886
922
 
887
923
  The following would run a global `showSuggestions(value)` function
888
924
  whenever the `<input>` changes:
889
925
 
890
- <form>
891
- <input name="query" up-observe="showSuggestions(value)">
892
- </form>
926
+ <input name="query" up-observe="showSuggestions(value)">
893
927
 
894
928
  \#\#\# Callback context
895
929
 
896
- The script given to `up-observe` runs with the following context:
930
+ The script given to `[up-observe]` runs with the following context:
897
931
 
898
932
  | Name | Type | Description |
899
933
  | -------- | --------- | ------------------------------------- |
@@ -901,6 +935,20 @@ up.form = do ->
901
935
  | `this` | `Element` | The form field |
902
936
  | `$field` | `jQuery` | The form field as a jQuery collection |
903
937
 
938
+ \#\#\# Observing radio buttons
939
+
940
+ Multiple radio buttons with the same `[name]` (a radio button group)
941
+ produce a single value for the form.
942
+
943
+ To observe radio buttons group, use the `[up-observe]` attribute on an
944
+ element that contains all radio button elements with a given name:
945
+
946
+ <div up-observe="formatSelected(value)">
947
+ <input type="radio" name="format" value="html"> HTML format
948
+ <input type="radio" name="format" value="pdf"> PDF format
949
+ <input type="radio" name="format" value="txt"> Text format
950
+ </div>
951
+
904
952
  @selector input[up-observe]
905
953
  @param {string} up-observe
906
954
  The code to run when the field's value changes.
@@ -947,7 +995,7 @@ up.form = do ->
947
995
  up.compiler '[up-observe]', (formOrField) -> observe(formOrField)
948
996
 
949
997
  ###**
950
- [Observes](/up.observe) this form field and submits the form when its value changes.
998
+ Submits this field's form when this field changes its values.
951
999
 
952
1000
  Both the form and the changed field will be assigned a CSS class [`up-active`](/form-up-active)
953
1001
  while the autosubmitted form is loading.
@@ -963,6 +1011,20 @@ up.form = do ->
963
1011
  <input type="checkbox" name="archive"> Include archive
964
1012
  </form>
965
1013
 
1014
+ \#\#\# Auto-submitting radio buttons
1015
+
1016
+ Multiple radio buttons with the same `[name]` (a radio button group)
1017
+ produce a single value for the form.
1018
+
1019
+ To auto-submit radio buttons group, use the `[up-submit]` attribute on an
1020
+ element that contains all radio button elements with a given name:
1021
+
1022
+ <div up-autosubmit>
1023
+ <input type="radio" name="format" value="html"> HTML format
1024
+ <input type="radio" name="format" value="pdf"> PDF format
1025
+ <input type="radio" name="format" value="txt"> Text format
1026
+ </div>
1027
+
966
1028
  @selector input[up-autosubmit]
967
1029
  @param {string} up-delay
968
1030
  The number of miliseconds to wait after a change before the form is submitted.
@@ -970,7 +1032,7 @@ up.form = do ->
970
1032
  ###
971
1033
 
972
1034
  ###**
973
- [Observes](/up.observe) this form and submits the form when *any* field changes.
1035
+ Submits the form when *any* field changes.
974
1036
 
975
1037
  Both the form and the field will be assigned a CSS class [`up-active`](/form-up-active)
976
1038
  while the autosubmitted form is loading.
@@ -74,7 +74,7 @@ up.fragment = do ->
74
74
 
75
75
  \#\#\# Example
76
76
 
77
- Let's say your curent HTML looks like this:
77
+ Let's say your current HTML looks like this:
78
78
 
79
79
  <div class="one">old one</div>
80
80
  <div class="two">old two</div>
@@ -314,7 +314,7 @@ up.fragment = do ->
314
314
 
315
315
  \#\#\# Example
316
316
 
317
- Let's say your curent HTML looks like this:
317
+ Let's say your current HTML looks like this:
318
318
 
319
319
  <div class="one">old one</div>
320
320
  <div class="two">old two</div>
@@ -826,7 +826,10 @@ up.fragment = do ->
826
826
  wipe = ->
827
827
  parent = element.parentNode
828
828
  up.syntax.clean(element)
829
- e.remove(element)
829
+ if up.browser.canJQuery()
830
+ jQuery(element).remove()
831
+ else
832
+ e.remove(element)
830
833
  emitFragmentDestroyed(element, { parent: parent, log: options.log })
831
834
 
832
835
  animate().then(wipe)
@@ -849,6 +852,7 @@ up.fragment = do ->
849
852
  ###
850
853
  markElementAsDestroying = (element) ->
851
854
  element.classList.add('up-destroying')
855
+ element.setAttribute('aria-hidden', 'true')
852
856
 
853
857
  ###**
854
858
  This event is [emitted](/up.emit) after a page fragment was [destroyed](/up.destroy) and removed from the DOM.
@@ -16,7 +16,7 @@ This makes for an unfriendly experience:
16
16
  - State changes caused by AJAX updates get lost during the page transition.
17
17
  - Unsaved form changes get lost during the page transition.
18
18
  - The JavaScript VM is reset during the page transition.
19
- - If the page layout is composed from multiple srollable containers
19
+ - If the page layout is composed from multiple scrollable containers
20
20
  (e.g. a pane view), the scroll positions get lost during the page transition.
21
21
  - The user sees a "flash" as the browser loads and renders the new page,
22
22
  even if large portions of the old and new page are the same (navigation, layout, etc.).