Bücher
Titel: The Bullet that Missed
Autor: Rivhard Osman
e("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.coveredUr