@ionic/core 8.7.16-dev.11767111768.1552e96d → 8.7.16-dev.11767365495.141917e9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/modal.js +131 -11
- package/components/popover.js +60 -10
- package/dist/cjs/ion-modal.cjs.entry.js +131 -11
- package/dist/cjs/ion-popover.cjs.entry.js +60 -10
- package/dist/collection/components/modal/gestures/sheet.js +3 -1
- package/dist/collection/components/modal/gestures/swipe-to-close.js +3 -1
- package/dist/collection/components/modal/modal.ios.css +0 -4
- package/dist/collection/components/modal/modal.js +123 -7
- package/dist/collection/components/modal/modal.md.css +0 -4
- package/dist/collection/components/popover/animations/ios.enter.js +21 -5
- package/dist/collection/components/popover/animations/md.enter.js +20 -4
- package/dist/collection/components/popover/utils.js +19 -1
- package/dist/docs.json +1 -1
- package/dist/esm/ion-modal.entry.js +131 -11
- package/dist/esm/ion-popover.entry.js +60 -10
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-301ad219.entry.js +4 -0
- package/dist/ionic/p-71fa7adc.entry.js +4 -0
- package/dist/types/components/modal/gestures/sheet.d.ts +1 -1
- package/dist/types/components/modal/gestures/swipe-to-close.d.ts +1 -1
- package/dist/types/components/modal/modal.d.ts +24 -0
- package/dist/types/components/popover/utils.d.ts +2 -0
- package/hydrate/index.js +191 -21
- package/hydrate/index.mjs +191 -21
- package/package.json +1 -1
- package/dist/ionic/p-b28af559.entry.js +0 -4
- package/dist/ionic/p-f9061316.entry.js +0 -4
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
|
+
*/
|
|
4
|
+
import{r as t,c as o,f as e,h as r,d as i,g as s}from"./p-C8IsBmNU.js";import{B as n,j as a,k as p,f as c,n as d,g as h,h as l,F as v}from"./p-DdR6rpbR.js";import{C as f,a as g,d as m}from"./p-D-eFFUkA.js";import{g as x,r as b,f as u,h as w}from"./p-CTfR9YZG.js";import{c as k}from"./p-B-hirT0v.js";import{b as y,a as D}from"./p-BFvmZNyx.js";import{g as P}from"./p-DiVJyqlX.js";import{e as T,w as $}from"./p-DUt5fQmA.js";import{c as A}from"./p-DDb5r57F.js";import"./p-ZjP4CjeZ.js";import"./p-B0q1YL7N.js";import"./p-BTEOs1at.js";const I=(t,o,e)=>{const r=o.getBoundingClientRect(),i=r.height;let s=r.width;return"cover"===t&&e&&(s=e.getBoundingClientRect().width),{contentWidth:s,contentHeight:i}},N=(t,o)=>o&&"ION-ITEM"===o.tagName?t.findIndex((t=>t===o)):-1,j=t=>{const o=x(t).querySelector("button");o&&b((()=>o.focus()))},L=(t,o,e,r,i,s,n,a,p,c,d)=>{var h;let l={top:0,left:0,width:0,height:0};if("event"===s){if(!d)return p;l={top:d.clientY,left:d.clientX,width:1,height:1}}else{const t=c||(null===(h=null==d?void 0:d.detail)||void 0===h?void 0:h.ionShadowTarget)||(null==d?void 0:d.target);if(!t)return p;const o=t.getBoundingClientRect();l={top:o.top,left:o.left,width:o.width,height:o.height}}const v=z(n,l,o,e,r,i,t),f=X(a,n,l,o,e),g=v.top+f.top,m=v.left+f.left,{arrowTop:x,arrowLeft:b}=Y(n,r,i,g,m,o,e,t),{originX:u,originY:w}=C(n,a,t);return{top:g,left:m,referenceCoordinates:l,arrowTop:x,arrowLeft:b,originX:u,originY:w}},C=(t,o,e)=>{switch(t){case"top":return{originX:O(o),originY:"bottom"};case"bottom":return{originX:O(o),originY:"top"};case"left":return{originX:"right",originY:W(o)};case"right":return{originX:"left",originY:W(o)};case"start":return{originX:e?"left":"right",originY:W(o)};case"end":return{originX:e?"right":"left",originY:W(o)}}},O=t=>{switch(t){case"start":return"left";case"center":return"center";case"end":return"right"}},W=t=>{switch(t){case"start":return"top";case"center":return"center";case"end":return"bottom"}},Y=(t,o,e,r,i,s,n,a)=>{const p={arrowTop:r+n/2-o/2,arrowLeft:i+s-o/2},c={arrowTop:r+n/2-o/2,arrowLeft:i-1.5*o};switch(t){case"top":return{arrowTop:r+n,arrowLeft:i+s/2-o/2};case"bottom":return{arrowTop:r-e,arrowLeft:i+s/2-o/2};case"left":return p;case"right":return c;case"start":return a?c:p;case"end":return a?p:c;default:return{arrowTop:0,arrowLeft:0}}},z=(t,o,e,r,i,s,n)=>{const a={top:o.top,left:o.left-e-i},p={top:o.top,left:o.left+o.width+i};switch(t){case"top":return{top:o.top-r-s,left:o.left};case"right":return p;case"bottom":return{top:o.top+o.height+s,left:o.left};case"left":return a;case"start":return n?p:a;case"end":return n?a:p}},X=(t,o,e,r,i)=>{switch(t){case"center":return E(o,e,r,i);case"end":return B(o,e,r,i);default:return{top:0,left:0}}},B=(t,o,e,r)=>{switch(t){case"start":case"end":case"left":case"right":return{top:-(r-o.height),left:0};default:return{top:0,left:-(e-o.width)}}},E=(t,o,e,r)=>{switch(t){case"start":case"end":case"left":case"right":return{top:-(r/2-o.height/2),left:0};default:return{top:0,left:-(e/2-o.width/2)}}},S=(t,o,e,r,i,s,n,a,p,c,d,h,l=0,v=0,f=0)=>{let g=l;const m=v;let x,b=e,u=o,w=c,k=d,y=!1,D=!1,P=!1,T=!1;const $=h?h.top+h.height:s/2-a/2,A=h?h.height:0;let I=!1;return b<r+p?(b=r,P=!0,w="left"):n+r+b+p>i&&(T=!0,b=i-n-r,w="right"),$+A+a>s&&("top"===t||"bottom"===t)&&($-a>0?(u=Math.max(r,$-a-A-(f-1)),g=u+a,k="bottom",I=!0,u<=r+p&&(y=!0,u=r)):(x=r,D=!0)),{top:u,left:b,bottom:x,originX:w,originY:k,checkSafeAreaTop:y,checkSafeAreaBottom:D,checkSafeAreaLeft:P,checkSafeAreaRight:T,arrowTop:g,arrowLeft:m,addPopoverBottomClass:I}},R=(t,o)=>{var e;const{event:r,size:i,trigger:s,reference:n,side:a,align:p}=o,c=t.ownerDocument,d="rtl"===c.dir,h=c.defaultView.innerWidth,l=c.defaultView.innerHeight,v=x(t),f=v.querySelector(".popover-content"),g=v.querySelector(".popover-arrow"),m=s||(null===(e=null==r?void 0:r.detail)||void 0===e?void 0:e.ionShadowTarget)||(null==r?void 0:r.target),{contentWidth:b,contentHeight:u}=I(i,f,m),{arrowWidth:w,arrowHeight:k}=(t=>{if(!t)return{arrowWidth:0,arrowHeight:0};const{width:o,height:e}=t.getBoundingClientRect();return{arrowWidth:o,arrowHeight:e}})(g),y=L(d,b,u,w,k,n,a,p,{top:l/2-u/2,left:h/2-b/2,originX:d?"right":"left",originY:"top"},s,r),D="cover"===i?0:5,P="cover"===i?0:25,{originX:T,originY:$,top:N,left:j,bottom:C,checkSafeAreaTop:O,checkSafeAreaBottom:W,checkSafeAreaLeft:Y,checkSafeAreaRight:z,arrowTop:X,arrowLeft:B,addPopoverBottomClass:E}=S(a,y.top,y.left,D,h,l,b,u,P,y.originX,y.originY,y.referenceCoordinates,y.arrowTop,y.arrowLeft,k),R=A(),H=A(),F=A();return H.addElement(v.querySelector("ion-backdrop")).fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),F.addElement(v.querySelector(".popover-arrow")).addElement(v.querySelector(".popover-content")).fromTo("opacity",.01,1),R.easing("ease").duration(100).beforeAddWrite((()=>{"cover"===i&&t.style.setProperty("--width",`${b}px`),E&&t.classList.add("popover-bottom");let o=`${N}px`,e=void 0!==C?`${C}px`:void 0,n=`${j}px`;if(O&&(o=`${N}px + var(--ion-safe-area-top, 0)`),W&&void 0!==e&&(e=`${C}px + var(--ion-safe-area-bottom, 0)`),Y&&(n=`${j}px + var(--ion-safe-area-left, 0)`),z&&(n=`${j}px - var(--ion-safe-area-right, 0)`),void 0!==e&&f.style.setProperty("bottom",`calc(${e})`),f.style.setProperty("top",`calc(${o} + var(--offset-y, 0))`),f.style.setProperty("left",`calc(${n} + var(--offset-x, 0))`),f.style.setProperty("transform-origin",`${$} ${T}`),null!==g){const t=((t,o=!1,e,r)=>!(!e&&!r||"top"!==t&&"bottom"!==t&&o))(a,y.top!==N||y.left!==j,r,s);t?(g.style.setProperty("top",`calc(${X}px + var(--offset-y, 0))`),g.style.setProperty("left",`calc(${B}px + var(--offset-x, 0))`)):g.style.setProperty("display","none")}})).addAnimation([H,F])},H=t=>{const o=x(t),e=o.querySelector(".popover-content"),r=o.querySelector(".popover-arrow"),i=A(),s=A(),n=A();return s.addElement(o.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)",0),n.addElement(o.querySelector(".popover-arrow")).addElement(o.querySelector(".popover-content")).fromTo("opacity",.99,0),i.easing("ease").afterAddWrite((()=>{t.style.removeProperty("--width"),t.classList.remove("popover-bottom"),e.style.removeProperty("top"),e.style.removeProperty("left"),e.style.removeProperty("bottom"),e.style.removeProperty("transform-origin"),r&&(r.style.removeProperty("top"),r.style.removeProperty("left"),r.style.removeProperty("display"))})).duration(300).addAnimation([s,n])},F=(t,o)=>{var e;const{event:r,size:i,trigger:s,reference:n,side:a,align:p}=o,c=t.ownerDocument,d="rtl"===c.dir,h=c.defaultView.innerWidth,l=c.defaultView.innerHeight,v=x(t),f=v.querySelector(".popover-content"),g=s||(null===(e=null==r?void 0:r.detail)||void 0===e?void 0:e.ionShadowTarget)||(null==r?void 0:r.target),{contentWidth:m,contentHeight:b}=I(i,f,g),u=L(d,m,b,0,0,n,a,p,{top:l/2-b/2,left:h/2-m/2,originX:d?"right":"left",originY:"top"},s,r),w="cover"===i?0:12,{originX:k,originY:y,top:D,left:P,bottom:T,checkSafeAreaTop:$,checkSafeAreaBottom:N}=S(a,u.top,u.left,w,h,l,m,b,0,u.originX,u.originY,u.referenceCoordinates);let j=`${D}px`,C=void 0!==T?`${T}px`:void 0;$&&(j=`${D}px + var(--ion-safe-area-top, 0)`),N&&void 0!==C&&(C=`${T}px + var(--ion-safe-area-bottom, 0)`);const O=A(),W=A(),Y=A(),z=A(),X=A();return W.addElement(v.querySelector("ion-backdrop")).fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),Y.addElement(v.querySelector(".popover-wrapper")).duration(150).fromTo("opacity",.01,1),z.addElement(f).beforeStyles({top:`calc(${j} + var(--offset-y, 0px))`,left:`calc(${P}px + var(--offset-x, 0px))`,"transform-origin":`${y} ${k}`}).beforeAddWrite((()=>{void 0!==C&&f.style.setProperty("bottom",`calc(${C})`)})).fromTo("transform","scale(0.8)","scale(1)"),X.addElement(v.querySelector(".popover-viewport")).fromTo("opacity",.01,1),O.easing("cubic-bezier(0.36,0.66,0.04,1)").duration(300).beforeAddWrite((()=>{"cover"===i&&t.style.setProperty("--width",`${m}px`),"bottom"===y&&t.classList.add("popover-bottom")})).addAnimation([W,Y,z,X])},M=t=>{const o=x(t),e=o.querySelector(".popover-content"),r=A(),i=A(),s=A();return i.addElement(o.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)",0),s.addElement(o.querySelector(".popover-wrapper")).fromTo("opacity",.99,0),r.easing("ease").afterAddWrite((()=>{t.style.removeProperty("--width"),t.classList.remove("popover-bottom"),e.style.removeProperty("top"),e.style.removeProperty("left"),e.style.removeProperty("bottom"),e.style.removeProperty("transform-origin")})).duration(150).addAnimation([i,s])},V=class{constructor(r){t(this,r),this.didPresent=o(this,"ionPopoverDidPresent",7),this.willPresent=o(this,"ionPopoverWillPresent",7),this.willDismiss=o(this,"ionPopoverWillDismiss",7),this.didDismiss=o(this,"ionPopoverDidDismiss",7),this.didPresentShorthand=o(this,"didPresent",7),this.willPresentShorthand=o(this,"willPresent",7),this.willDismissShorthand=o(this,"willDismiss",7),this.didDismissShorthand=o(this,"didDismiss",7),this.ionMount=o(this,"ionMount",7),this.parentPopover=null,this.coreDelegate=f(),this.lockController=k(),this.inline=!1,this.focusDescendantOnPresent=!1,this.presented=!1,this.hasController=!1,this.keyboardClose=!0,this.backdropDismiss=!0,this.showBackdrop=!0,this.translucent=!1,this.animated=!0,this.triggerAction="click",this.size="auto",this.dismissOnSelect=!1,this.reference="trigger",this.side="bottom",this.arrow=!0,this.isOpen=!1,this.keyboardEvents=!1,this.focusTrap=!0,this.keepContentsMounted=!1,this.onBackdropTap=()=>{this.dismiss(void 0,n)},this.onLifecycle=t=>{const o=this.usersElement,e=U[t.type];if(o&&e){const r=new CustomEvent(e,{bubbles:!1,cancelable:!1,detail:t.detail});o.dispatchEvent(r)}},this.configureTriggerInteraction=()=>{const{trigger:t,triggerAction:o,el:r,destroyTriggerInteraction:i}=this;if(i&&i(),void 0===t)return;const s=this.triggerEl=void 0!==t?document.getElementById(t):null;s?this.destroyTriggerInteraction=((t,o,e)=>{let r=[];switch(o){case"hover":let t;r=[{eventName:"mouseenter",callback:async o=>{o.stopPropagation(),t&&clearTimeout(t),t=setTimeout((()=>{b((()=>{e.presentFromTrigger(o),t=void 0}))}),100)}},{eventName:"mouseleave",callback:o=>{t&&clearTimeout(t);const r=o.relatedTarget;r&&r.closest("ion-popover")!==e&&e.dismiss(void 0,void 0,!1)}},{eventName:"click",callback:t=>t.stopPropagation()},{eventName:"ionPopoverActivateTrigger",callback:t=>e.presentFromTrigger(t,!0)}];break;case"context-menu":r=[{eventName:"contextmenu",callback:t=>{t.preventDefault(),e.presentFromTrigger(t)}},{eventName:"click",callback:t=>t.stopPropagation()},{eventName:"ionPopoverActivateTrigger",callback:t=>e.presentFromTrigger(t,!0)}];break;default:r=[{eventName:"click",callback:t=>e.presentFromTrigger(t)},{eventName:"ionPopoverActivateTrigger",callback:t=>e.presentFromTrigger(t,!0)}]}return r.forEach((({eventName:o,callback:e})=>t.addEventListener(o,e))),t.setAttribute("data-ion-popover-trigger","true"),()=>{r.forEach((({eventName:o,callback:e})=>t.removeEventListener(o,e))),t.removeAttribute("data-ion-popover-trigger")}})(s,o,r):e(`[ion-popover] - A trigger element with the ID "${t}" was not found in the DOM. The trigger element must be in the DOM when the "trigger" property is set on ion-popover.`,this.el)},this.configureKeyboardInteraction=()=>{const{destroyKeyboardInteraction:t,el:o}=this;t&&t(),this.destroyKeyboardInteraction=(t=>{const o=async o=>{var e;const r=document.activeElement;let i=[];const s=null===(e=o.target)||void 0===e?void 0:e.tagName;if("ION-POPOVER"===s||"ION-ITEM"===s){try{i=Array.from(t.querySelectorAll("ion-item:not(ion-popover ion-popover *):not([disabled])"))}catch(t){}switch(o.key){case"ArrowLeft":await t.getParentPopover()&&t.dismiss(void 0,void 0,!1);break;case"ArrowDown":o.preventDefault();const e=((t,o)=>t[N(t,o)+1])(i,r);void 0!==e&&j(e);break;case"ArrowUp":o.preventDefault();const s=((t,o)=>t[N(t,o)-1])(i,r);void 0!==s&&j(s);break;case"Home":o.preventDefault();const n=i[0];void 0!==n&&j(n);break;case"End":o.preventDefault();const a=i[i.length-1];void 0!==a&&j(a);break;case"ArrowRight":case" ":case"Enter":if(r&&r.hasAttribute("data-ion-popover-trigger")){const t=new CustomEvent("ionPopoverActivateTrigger");r.dispatchEvent(t)}}}};return t.addEventListener("keydown",o),()=>t.removeEventListener("keydown",o)})(o)},this.configureDismissInteraction=()=>{const{destroyDismissInteraction:t,parentPopover:o,triggerAction:e,triggerEl:r,el:i}=this;o&&r&&(t&&t(),this.destroyDismissInteraction=((t,o,e,r)=>{let i=[];const s=x(r).querySelector(".popover-content");return i="hover"===o?[{eventName:"mouseenter",callback:o=>{document.elementFromPoint(o.clientX,o.clientY)!==t&&e.dismiss(void 0,void 0,!1)}}]:[{eventName:"click",callback:o=>{o.target.closest("[data-ion-popover-trigger]")!==t?e.dismiss(void 0,void 0,!1):o.stopPropagation()}}],i.forEach((({eventName:t,callback:o})=>s.addEventListener(t,o))),()=>{i.forEach((({eventName:t,callback:o})=>s.removeEventListener(t,o)))}})(r,e,i,o))}}onTriggerChange(){this.configureTriggerInteraction()}onIsOpenChange(t,o){!0===t&&!1===o?this.present():!1===t&&!0===o&&this.dismiss()}connectedCallback(){const{configureTriggerInteraction:t,el:o}=this;a(o),t()}disconnectedCallback(){const{destroyTriggerInteraction:t}=this;t&&t(),this.headerResizeObserver&&(this.headerResizeObserver.disconnect(),this.headerResizeObserver=void 0)}componentWillLoad(){var t,o;const{el:e}=this,r=null!==(o=null===(t=this.htmlAttributes)||void 0===t?void 0:t.id)&&void 0!==o?o:p(e);this.parentPopover=e.closest(`ion-popover:not(#${r})`),void 0===this.alignment&&(this.alignment="ios"===y(this)?"center":"start")}componentDidLoad(){const{parentPopover:t,isOpen:o}=this;!0===o&&b((()=>this.present())),t&&u(t,"ionPopoverWillDismiss",(()=>{this.dismiss(void 0,void 0,!1)})),this.configureTriggerInteraction()}async presentFromTrigger(t,o=!1){this.focusDescendantOnPresent=o,await this.present(t),this.focusDescendantOnPresent=!1}getDelegate(t=!1){if(this.workingDelegate&&!t)return{delegate:this.workingDelegate,inline:this.inline};const o=this.inline=null!==this.el.parentNode&&!this.hasController;return{inline:o,delegate:this.workingDelegate=o?this.delegate||this.coreDelegate:this.delegate}}async present(t){const o=await this.lockController.lock();if(this.presented)return void o();const{el:e}=this,{inline:r,delegate:i}=this.getDelegate(!0);this.ionMount.emit(),this.usersElement=await g(i,e,this.component,["popover-viewport"],this.componentProps,r),this.recalculateContentOnHeaderReady(),this.keyboardEvents||this.configureKeyboardInteraction(),this.configureDismissInteraction(),w(e)?await T(this.usersElement):this.keepContentsMounted||await $(),await c(this,"popoverEnter",R,F,{event:t||this.event,size:this.size,trigger:this.triggerEl,reference:this.reference,side:this.side,align:this.alignment}),this.focusDescendantOnPresent&&d(e),o()}recalculateContentOnHeaderReady(){var t;const o=null===(t=this.el.shadowRoot)||void 0===t?void 0:t.querySelector(".popover-content");if(!o)return;const e=this.usersElement||o,r=e.querySelector("ion-header"),i=e.querySelectorAll("ion-content");r&&0!==i.length&&(this.headerResizeObserver=new ResizeObserver((async()=>{var t;if(r.offsetHeight>0){null===(t=this.headerResizeObserver)||void 0===t||t.disconnect(),this.headerResizeObserver=void 0;for(const t of i)await t.recalculateDimensions()}})),this.headerResizeObserver.observe(r))}async dismiss(t,o,e=!0){const r=await this.lockController.lock(),{destroyKeyboardInteraction:i,destroyDismissInteraction:s}=this;e&&this.parentPopover&&this.parentPopover.dismiss(t,o,e);const n=await h(this,t,o,"popoverLeave",H,M,this.event);if(n){i&&(i(),this.destroyKeyboardInteraction=void 0),s&&(s(),this.destroyDismissInteraction=void 0);const{delegate:t}=this.getDelegate();await m(t,this.usersElement)}return r(),n}async getParentPopover(){return this.parentPopover}onDidDismiss(){return l(this.el,"ionPopoverDidDismiss")}onWillDismiss(){return l(this.el,"ionPopoverWillDismiss")}render(){const t=y(this),{onLifecycle:o,parentPopover:e,dismissOnSelect:s,side:n,arrow:a,htmlAttributes:p,focusTrap:c}=this,d=D("desktop"),h=a&&!e;return r(i,Object.assign({key:"42863f748c93f709d433931d969230137b37d42d","aria-modal":"true","no-router":!0,tabindex:"-1"},p,{style:{zIndex:`${2e4+this.overlayIndex}`},class:Object.assign(Object.assign({},P(this.cssClass)),{[t]:!0,"popover-translucent":this.translucent,"overlay-hidden":!0,"popover-desktop":d,[`popover-side-${n}`]:!0,[v]:!1===c,"popover-nested":!!e}),onIonPopoverDidPresent:o,onIonPopoverWillPresent:o,onIonPopoverWillDismiss:o,onIonPopoverDidDismiss:o,onIonBackdropTap:this.onBackdropTap}),!e&&r("ion-backdrop",{key:"22b6d82178b52158b76ab3fd9a7dd738fd6e4bbf",tappable:this.backdropDismiss,visible:this.showBackdrop,part:"backdrop"}),r("div",{key:"b76335c64e992a964ed3fb91d17a992c3474b4cd",class:"popover-wrapper ion-overlay-wrapper",onClick:s?()=>this.dismiss():void 0},h&&r("div",{key:"018c846c32e7ff7fa010528e6b37a17e5f03c84c",class:"popover-arrow",part:"arrow"}),r("div",{key:"350c468c80052da3a07768bceab98fe159c35a43",class:"popover-content",part:"content"},r("slot",{key:"686443c17ac9873d33905c1cdb67e6d6da675282"}))))}get el(){return s(this)}static get watchers(){return{trigger:["onTriggerChange"],triggerAction:["onTriggerChange"],isOpen:["onIsOpenChange"]}}},U={ionPopoverDidPresent:"ionViewDidEnter",ionPopoverWillPresent:"ionViewWillEnter",ionPopoverWillDismiss:"ionViewWillLeave",ionPopoverDidDismiss:"ionViewDidLeave"};V.style={ios:':host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:fixed;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);z-index:1001}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{z-index:10}.popover-content{display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:auto;z-index:10}::slotted(.popover-viewport){--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-start:dir(rtl)){--offset-x:-5px}}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-end:dir(rtl)){--offset-x:5px}}:host{--width:200px;--max-height:90%;--box-shadow:none;--backdrop-opacity:var(--ion-backdrop-opacity, 0.08)}:host(.popover-desktop){--box-shadow:0px 4px 16px 0px rgba(0, 0, 0, 0.12)}.popover-content{border-radius:10px}:host(.popover-desktop) .popover-content{border:0.5px solid var(--ion-color-step-100, var(--ion-background-color-step-100, #e6e6e6))}.popover-arrow{display:block;position:absolute;width:20px;height:10px;overflow:hidden;z-index:11}.popover-arrow::after{top:3px;border-radius:3px;position:absolute;width:14px;height:14px;-webkit-transform:rotate(45deg);transform:rotate(45deg);background:var(--background);content:"";z-index:10}.popover-arrow::after{inset-inline-start:3px}:host(.popover-bottom) .popover-arrow{top:auto;bottom:-10px}:host(.popover-bottom) .popover-arrow::after{top:-6px}:host(.popover-side-left) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host(.popover-side-right) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host(.popover-side-top) .popover-arrow{-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host(.popover-side-start) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host-context([dir=rtl]):host(.popover-side-start) .popover-arrow,:host-context([dir=rtl]).popover-side-start .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}@supports selector(:dir(rtl)){:host(.popover-side-start:dir(rtl)) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}}:host(.popover-side-end) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host-context([dir=rtl]):host(.popover-side-end) .popover-arrow,:host-context([dir=rtl]).popover-side-end .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}@supports selector(:dir(rtl)){:host(.popover-side-end:dir(rtl)) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}}.popover-arrow,.popover-content{opacity:0}@supports ((-webkit-backdrop-filter: blur(0)) or (backdrop-filter: blur(0))){:host(.popover-translucent) .popover-content,:host(.popover-translucent) .popover-arrow::after{background:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}}',md:":host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:fixed;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);z-index:1001}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{z-index:10}.popover-content{display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:auto;z-index:10}::slotted(.popover-viewport){--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-start:dir(rtl)){--offset-x:-5px}}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-end:dir(rtl)){--offset-x:5px}}:host{--width:250px;--max-height:90%;--box-shadow:0 5px 5px -3px rgba(0, 0, 0, 0.2), 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12);--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}.popover-content{border-radius:4px;-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]) .popover-content{-webkit-transform-origin:right top;transform-origin:right top}[dir=rtl] .popover-content{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){.popover-content:dir(rtl){-webkit-transform-origin:right top;transform-origin:right top}}.popover-viewport{-webkit-transition-delay:100ms;transition-delay:100ms}.popover-wrapper{opacity:0}"};export{V as ion_popover}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* (C) Ionic http://ionicframework.com - MIT License
|
|
3
|
+
*/
|
|
4
|
+
import{r as t,c as i,f as o,w as a,e,h as r,d as s,g as n}from"./p-C8IsBmNU.js";import{f as d,i as h,d as l,r as p,a as c,p as m}from"./p-CwgG81ZD.js";import{C as f,a as u,d as b}from"./p-D-eFFUkA.js";import{e as v,g as x,r as w,b as g,h as k}from"./p-CTfR9YZG.js";import{c as y}from"./p-B-hirT0v.js";import{g as A}from"./p-CIGNaXM1.js";import{G as Y,O as D,F as S,e as E,B,j as O,k as T,f as C,g as M,h as P}from"./p-DdR6rpbR.js";import{g as j}from"./p-DiVJyqlX.js";import{e as R,w as I}from"./p-DUt5fQmA.js";import{b as L}from"./p-BFvmZNyx.js";import{KEYBOARD_DID_OPEN as $}from"./p-9eeaBrnk.js";import{c as N}from"./p-DDb5r57F.js";import{g as z}from"./p-hHmYLOfE.js";import{createGesture as W}from"./p-Cl0B-RWe.js";import{w as F}from"./p-ZjP4CjeZ.js";import"./p-B0q1YL7N.js";import"./p-BTEOs1at.js";import"./p-D13Eaw-8.js";var H;!function(t){t.Dark="DARK",t.Light="LIGHT",t.Default="DEFAULT"}(H||(H={}));const Z={getEngine(){const t=A();if(null==t?void 0:t.isPluginAvailable("StatusBar"))return t.Plugins.StatusBar},setStyle(t){const i=this.getEngine();i&&i.setStyle(t)},getStyle:async function(){const t=this.getEngine();if(!t)return H.Default;const{style:i}=await t.getInfo();return i}},V=(t,i)=>{if(1===i)return 0;const o=1/(1-i);return t*o+-i*o},G=()=>{!F||F.innerWidth>=768||Z.setStyle({style:H.Dark})},U=(t=H.Default)=>{!F||F.innerWidth>=768||Z.setStyle({style:t})},K=async(t,i)=>{"function"==typeof t.canDismiss&&await t.canDismiss(void 0,Y)&&(i.isRunning()?i.onFinish((()=>{t.dismiss(void 0,"handler")}),{oneTimeCallback:!0}):t.dismiss(void 0,"handler"))},_=t=>.00255275*2.71828**(-14.9619*t)-1.00255*2.71828**(-.0380968*t)+1,q=.915,X=(t,i)=>v(400,t/Math.abs(1.1*i),500),J=t=>{const{currentBreakpoint:i,backdropBreakpoint:o,expandToScroll:a}=t,e=void 0===o||o<i,r=e?`calc(var(--backdrop-opacity) * ${i})`:"0",s=N("backdropAnimation").fromTo("opacity",0,r);return e&&s.beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),{wrapperAnimation:N("wrapperAnimation").keyframes([{offset:0,opacity:1,transform:"translateY(100%)"},{offset:1,opacity:1,transform:`translateY(${100-100*i}%)`}]),backdropAnimation:s,contentAnimation:a?void 0:N("contentAnimation").keyframes([{offset:0,opacity:1,maxHeight:100*(1-i)+"%"},{offset:1,opacity:1,maxHeight:100*i+"%"}])}},Q=t=>{const{currentBreakpoint:i,backdropBreakpoint:o}=t,a=`calc(var(--backdrop-opacity) * ${V(i,o)})`,e=[{offset:0,opacity:a},{offset:1,opacity:0}],r=[{offset:0,opacity:a},{offset:o,opacity:0},{offset:1,opacity:0}],s=N("backdropAnimation").keyframes(0!==o?r:e);return{wrapperAnimation:N("wrapperAnimation").keyframes([{offset:0,opacity:1,transform:`translateY(${100-100*i}%)`},{offset:1,opacity:1,transform:"translateY(100%)"}]),backdropAnimation:s}},tt=(t,i)=>{const{presentingEl:o,currentBreakpoint:a,expandToScroll:e}=i,r=x(t),{wrapperAnimation:s,backdropAnimation:n,contentAnimation:d}=void 0!==a?J(i):{backdropAnimation:N().fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),wrapperAnimation:N().fromTo("transform","translateY(100vh)","translateY(0vh)"),contentAnimation:void 0};n.addElement(r.querySelector("ion-backdrop")),s.addElement(r.querySelectorAll(".modal-wrapper, .modal-shadow")).beforeStyles({opacity:1}),!e&&(null==d||d.addElement(t.querySelector(".ion-page")));const h=N("entering-base").addElement(t).easing("cubic-bezier(0.32,0.72,0,1)").duration(500).addAnimation([s]);if(d&&h.addAnimation(d),o){const t=window.innerWidth<768,i="ION-MODAL"===o.tagName&&void 0!==o.presentingElement,a=x(o),e=N().beforeStyles({transform:"translateY(0)","transform-origin":"top center",overflow:"hidden"}),r=document.body;if(t){const t=CSS.supports("width","max(0px, 1px)")?"max(30px, var(--ion-safe-area-top))":"30px",a=`translateY(${i?"-10px":t}) scale(0.915)`;e.afterStyles({transform:a}).beforeAddWrite((()=>r.style.setProperty("background-color","black"))).addElement(o).keyframes([{offset:0,filter:"contrast(1)",transform:"translateY(0px) scale(1)",borderRadius:"0px"},{offset:1,filter:"contrast(0.85)",transform:a,borderRadius:"10px 10px 0 0"}]),h.addAnimation(e)}else if(h.addAnimation(n),i){const t=`translateY(-10px) scale(${i?q:1})`;e.afterStyles({transform:t}).addElement(a.querySelector(".modal-wrapper")).keyframes([{offset:0,filter:"contrast(1)",transform:"translateY(0) scale(1)"},{offset:1,filter:"contrast(0.85)",transform:t}]);const o=N().afterStyles({transform:t}).addElement(a.querySelector(".modal-shadow")).keyframes([{offset:0,opacity:"1",transform:"translateY(0) scale(1)"},{offset:1,opacity:"0",transform:t}]);h.addAnimation([e,o])}else s.fromTo("opacity","0","1")}else h.addAnimation(n);return h},it=(t,i,o=500)=>{const{presentingEl:a,currentBreakpoint:e}=i,r=x(t),{wrapperAnimation:s,backdropAnimation:n}=void 0!==e?Q(i):{backdropAnimation:N().fromTo("opacity","var(--backdrop-opacity)",0),wrapperAnimation:N().fromTo("transform","translateY(0vh)","translateY(100vh)")};n.addElement(r.querySelector("ion-backdrop")),s.addElement(r.querySelectorAll(".modal-wrapper, .modal-shadow")).beforeStyles({opacity:1});const d=N("leaving-base").addElement(t).easing("cubic-bezier(0.32,0.72,0,1)").duration(o).addAnimation(s);if(a){const t=window.innerWidth<768,i="ION-MODAL"===a.tagName&&void 0!==a.presentingElement,o=x(a),e=N().beforeClearStyles(["transform"]).afterClearStyles(["transform"]).onFinish((t=>{1===t&&(a.style.setProperty("overflow",""),Array.from(r.querySelectorAll("ion-modal:not(.overlay-hidden)")).filter((t=>void 0!==t.presentingElement)).length<=1&&r.style.setProperty("background-color",""))})),r=document.body;if(t){const t=CSS.supports("width","max(0px, 1px)")?"max(30px, var(--ion-safe-area-top))":"30px",o=`translateY(${i?"-10px":t}) scale(0.915)`;e.addElement(a).keyframes([{offset:0,filter:"contrast(0.85)",transform:o,borderRadius:"10px 10px 0 0"},{offset:1,filter:"contrast(1)",transform:"translateY(0px) scale(1)",borderRadius:"0px"}]),d.addAnimation(e)}else if(d.addAnimation(n),i){const t=`translateY(-10px) scale(${i?q:1})`;e.addElement(o.querySelector(".modal-wrapper")).afterStyles({transform:"translate3d(0, 0, 0)"}).keyframes([{offset:0,filter:"contrast(0.85)",transform:t},{offset:1,filter:"contrast(1)",transform:"translateY(0) scale(1)"}]);const a=N().addElement(o.querySelector(".modal-shadow")).afterStyles({transform:"translateY(0) scale(1)"}).keyframes([{offset:0,opacity:"0",transform:t},{offset:1,opacity:"1",transform:"translateY(0) scale(1)"}]);d.addAnimation([e,a])}else s.fromTo("opacity","1","0")}else d.addAnimation(n);return d},ot=(t,i)=>{const{currentBreakpoint:o,expandToScroll:a}=i,e=x(t),{wrapperAnimation:r,backdropAnimation:s,contentAnimation:n}=void 0!==o?J(i):{backdropAnimation:N().fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),wrapperAnimation:N().keyframes([{offset:0,opacity:.01,transform:"translateY(40px)"},{offset:1,opacity:1,transform:"translateY(0px)"}]),contentAnimation:void 0};s.addElement(e.querySelector("ion-backdrop")),r.addElement(e.querySelector(".modal-wrapper")),!a&&(null==n||n.addElement(t.querySelector(".ion-page")));const d=N().addElement(t).easing("cubic-bezier(0.36,0.66,0.04,1)").duration(280).addAnimation([s,r]);return n&&d.addAnimation(n),d},at=(t,i)=>{const{currentBreakpoint:o}=i,a=x(t),{wrapperAnimation:e,backdropAnimation:r}=void 0!==o?Q(i):{backdropAnimation:N().fromTo("opacity","var(--backdrop-opacity)",0),wrapperAnimation:N().keyframes([{offset:0,opacity:.99,transform:"translateY(0px)"},{offset:1,opacity:0,transform:"translateY(40px)"}])};return r.addElement(a.querySelector("ion-backdrop")),e.addElement(a.querySelector(".modal-wrapper")),N().easing("cubic-bezier(0.47,0,0.745,0.715)").duration(200).addAnimation([r,e])},et=class{constructor(o){t(this,o),this.didPresent=i(this,"ionModalDidPresent",7),this.willPresent=i(this,"ionModalWillPresent",7),this.willDismiss=i(this,"ionModalWillDismiss",7),this.didDismiss=i(this,"ionModalDidDismiss",7),this.ionBreakpointDidChange=i(this,"ionBreakpointDidChange",7),this.didPresentShorthand=i(this,"didPresent",7),this.willPresentShorthand=i(this,"willPresent",7),this.willDismissShorthand=i(this,"willDismiss",7),this.didDismissShorthand=i(this,"didDismiss",7),this.ionMount=i(this,"ionMount",7),this.lockController=y(),this.triggerController=E(),this.coreDelegate=f(),this.isSheetModal=!1,this.inheritedAttributes={},this.inline=!1,this.gestureAnimationDismissing=!1,this.skipSafeAreaCoordinateDetection=!1,this.presented=!1,this.hasController=!1,this.keyboardClose=!0,this.expandToScroll=!0,this.backdropBreakpoint=0,this.handleBehavior="none",this.backdropDismiss=!0,this.showBackdrop=!0,this.animated=!0,this.isOpen=!1,this.keepContentsMounted=!1,this.focusTrap=!0,this.canDismiss=!0,this.onHandleClick=()=>{const{sheetTransition:t,handleBehavior:i}=this;"cycle"===i&&void 0===t&&this.moveToNextBreakpoint()},this.onBackdropTap=()=>{const{sheetTransition:t}=this;void 0===t&&this.dismiss(void 0,B)},this.onLifecycle=t=>{const i=this.usersElement,o=rt[t.type];if(i&&o){const a=new CustomEvent(o,{bubbles:!1,cancelable:!1,detail:t.detail});i.dispatchEvent(a)}},this.onModalFocus=t=>{const{dragHandleEl:i,el:o}=this;t.target===o&&i&&-1!==i.tabIndex&&i.focus()},this.onSlotChange=({target:t})=>{t.assignedElements().forEach((t=>{t.querySelectorAll("ion-modal").forEach((t=>{null===t.getAttribute("data-parent-ion-modal")&&t.setAttribute("data-parent-ion-modal",this.el.id)}))}))}}onIsOpenChange(t,i){!0===t&&!1===i?this.present():!1===t&&!0===i&&this.dismiss()}triggerChanged(){const{trigger:t,el:i,triggerController:o}=this;t&&o.addClickListener(i,t)}onWindowResize(){this.updateSafeAreaOverrides(),"ios"!==L(this)||!this.presentingElement||this.enterAnimation||this.leaveAnimation||(clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout((()=>{this.handleViewTransition()}),50))}breakpointsChanged(t){void 0!==t&&(this.sortedBreakpoints=t.sort(((t,i)=>t-i)))}connectedCallback(){const{el:t}=this;O(t),this.triggerChanged()}disconnectedCallback(){this.triggerController.removeClickListener(),this.cleanupViewTransitionListener(),this.cleanupParentRemovalObserver()}componentWillLoad(){var t;const{breakpoints:i,initialBreakpoint:a,el:e,htmlAttributes:r}=this,s=this.isSheetModal=void 0!==i&&void 0!==a,n=["aria-label","role"];this.inheritedAttributes=g(e,n),e.parentNode&&(this.cachedOriginalParent=e.parentNode),void 0!==r&&n.forEach((t=>{r[t]&&(this.inheritedAttributes=Object.assign(Object.assign({},this.inheritedAttributes),{[t]:r[t]}),delete r[t])})),s&&(this.currentBreakpoint=this.initialBreakpoint),void 0===i||void 0===a||i.includes(a)||o("[ion-modal] - Your breakpoints array must include the initialBreakpoint value."),(null===(t=this.htmlAttributes)||void 0===t?void 0:t.id)||T(this.el)}componentDidLoad(){!0===this.isOpen&&w((()=>this.present())),this.breakpointsChanged(this.breakpoints),this.triggerChanged()}getDelegate(t=!1){if(this.workingDelegate&&!t)return{delegate:this.workingDelegate,inline:this.inline};const i=this.inline=null!==this.el.parentNode&&!this.hasController;return{inline:i,delegate:this.workingDelegate=i?this.delegate||this.coreDelegate:this.delegate}}async checkCanDismiss(t,i){const{canDismiss:o}=this;return"function"==typeof o?o(t,i):o}async present(){const t=await this.lockController.lock();if(this.presented)return void t();const{presentingElement:i,el:o}=this;this.currentBreakpoint=this.initialBreakpoint;const{inline:e,delegate:r}=this.getDelegate(!0);this.ionMount.emit(),this.usersElement=await u(r,o,this.component,["ion-page"],this.componentProps,e),k(o)?await R(this.usersElement):this.keepContentsMounted||await I(),this.setInitialSafeAreaOverrides(i),a((()=>this.el.classList.add("show-modal")));const s=void 0!==i;s&&"ios"===L(this)&&(this.statusBarStyle=await Z.getStyle(),G()),await C(this,"modalEnter",tt,ot,{presentingEl:i,currentBreakpoint:this.initialBreakpoint,backdropBreakpoint:this.backdropBreakpoint,expandToScroll:this.expandToScroll}),"undefined"!=typeof window&&(this.keyboardOpenCallback=()=>{this.gesture&&(this.gesture.enable(!1),w((()=>{this.gesture&&this.gesture.enable(!0)})))},window.addEventListener($,this.keyboardOpenCallback));const n=void 0!==this.breakpoints&&void 0!==this.initialBreakpoint;this.isSheetModal=n,n?this.initSheetGesture():s&&this.initSwipeToClose(),this.updateSafeAreaOverrides(),this.initViewTransitionListener(),this.initParentRemovalObserver(),t()}initSwipeToClose(){var t;if("ios"!==L(this))return;const{el:i}=this,o=this.leaveAnimation||e.get("modalLeave",it),a=this.animation=o(i,{presentingEl:this.presentingElement,expandToScroll:this.expandToScroll});if(!c(i))return void m(i);const r=null!==(t=this.statusBarStyle)&&void 0!==t?t:H.Default;this.gesture=((t,i,o,a,e)=>{const r=.5,s=t.offsetHeight;let n=!1,c=!1,m=null,f=null,u=!0,b=0;const w=W({el:t,gestureName:"modalSwipeToClose",gesturePriority:D,direction:"y",threshold:10,canStart:t=>{const i=t.event.target;if(null===i||!i.closest)return!0;if(m=d(i),m){if(h(m)){const t=x(m);f=t.querySelector(".inner-scroll")}else f=m;return!m.querySelector("ion-refresher")&&0===f.scrollTop}return null===i.closest("ion-footer")},onStart:o=>{const{deltaY:a}=o;u=!m||!h(m)||m.scrollY,c=void 0!==t.canDismiss&&!0!==t.canDismiss,a>0&&m&&l(m),i.progressStart(!0,n?1:0)},onMove:t=>{const{deltaY:a}=t;a>0&&m&&l(m);const n=t.deltaY/s,d=n>=0&&c,h=d?.2:.9999,p=d?_(n/h):n,f=v(1e-4,p,h);i.progressStep(f),null==e||e(),f>=r&&b<r?U(o):f<r&&b>=r&&G(),b=f},onEnd:o=>{const e=o.velocityY,d=o.deltaY/s,h=d>=0&&c,l=h?.2:.9999,f=h?_(d/l):d,b=v(1e-4,f,l),x=!h&&(o.deltaY+1e3*e)/s>=r;let g=x?-.001:.001;x?(i.easing("cubic-bezier(0.32, 0.72, 0, 1)"),g+=z([0,0],[.32,.72],[0,1],[1,1],b)[0]):(i.easing("cubic-bezier(1, 0, 0.68, 0.28)"),g+=z([0,0],[1,0],[.68,.28],[1,1],b)[0]);const k=X(x?d*s:(1-b)*s,e);n=x,w.enable(!1),m&&p(m,u),i.onFinish((()=>{x||w.enable(!0)})).progressEnd(x?1:0,g,k),h&&b>l/4?K(t,i):x&&a()}});return w})(i,a,r,(()=>{this.gestureAnimationDismissing=!0,U(this.statusBarStyle),this.animation.onFinish((async()=>{await this.dismiss(void 0,Y),this.gestureAnimationDismissing=!1}))}),(()=>this.updateSafeAreaOverrides())),this.gesture.enable(!0)}initSheetGesture(){const{wrapperEl:t,initialBreakpoint:i,backdropBreakpoint:o}=this;if(!t||void 0===i)return;const a=this.enterAnimation||e.get("modalEnter",tt),r=this.animation=a(this.el,{presentingEl:this.presentingElement,currentBreakpoint:i,backdropBreakpoint:o,expandToScroll:this.expandToScroll});r.progressStart(!0,1);const{gesture:s,moveSheetToBreakpoint:n}=((t,i,o,a,e,r,s=[],n,l,p,c,m)=>{const f={WRAPPER_KEYFRAMES:[{offset:0,transform:"translateY(0%)"},{offset:1,transform:"translateY(100%)"}],BACKDROP_KEYFRAMES:0!==e?[{offset:0,opacity:"var(--backdrop-opacity)"},{offset:1-e,opacity:0},{offset:1,opacity:0}]:[{offset:0,opacity:"var(--backdrop-opacity)"},{offset:1,opacity:.01}],CONTENT_KEYFRAMES:[{offset:0,maxHeight:"100%"},{offset:1,maxHeight:"0%"}]},u=t.querySelector("ion-content"),b=o.clientHeight;let g=a,k=0,y=!1,A=null,Y=null,D=null,E=null;const B=s[s.length-1],O=s[0],T=r.childAnimations.find((t=>"wrapperAnimation"===t.id)),C=r.childAnimations.find((t=>"backdropAnimation"===t.id)),M=r.childAnimations.find((t=>"contentAnimation"===t.id)),P=()=>{!1!==t.focusTrap&&!1!==t.showBackdrop&&(t.style.setProperty("pointer-events","auto"),i.style.setProperty("pointer-events","auto"),t.classList.remove(S))},j=()=>{t.style.setProperty("pointer-events","none"),i.style.setProperty("pointer-events","none"),t.classList.add(S)},R=i=>{if(!Y&&(Y=Array.from(t.querySelectorAll("ion-footer")),!Y.length))return;const o=t.querySelector(".ion-page");if(E=i,"stationary"===i)Y.forEach((t=>{t.classList.remove("modal-footer-moving"),t.style.removeProperty("position"),t.style.removeProperty("width"),t.style.removeProperty("height"),t.style.removeProperty("top"),t.style.removeProperty("left"),null==o||o.style.removeProperty("padding-bottom"),null==o||o.appendChild(t)}));else{let i=0;Y.forEach(((o,a)=>{const e=o.getBoundingClientRect(),r=document.body.getBoundingClientRect();i+=o.clientHeight;const s=e.top-r.top,n=e.left-r.left;if(o.style.setProperty("--pinned-width",`${o.clientWidth}px`),o.style.setProperty("--pinned-height",`${o.clientHeight}px`),o.style.setProperty("--pinned-top",`${s}px`),o.style.setProperty("--pinned-left",`${n}px`),0===a){D=s;const i=t.querySelector("ion-header");i&&(D-=i.clientHeight)}})),Y.forEach((t=>{null==o||o.style.setProperty("padding-bottom",`${i}px`),t.classList.add("modal-footer-moving"),t.style.setProperty("position","absolute"),t.style.setProperty("width","var(--pinned-width)"),t.style.setProperty("height","var(--pinned-height)"),t.style.setProperty("top","var(--pinned-top)"),t.style.setProperty("left","var(--pinned-left)"),document.body.appendChild(t)}))}};T&&C&&(T.keyframes([...f.WRAPPER_KEYFRAMES]),C.keyframes([...f.BACKDROP_KEYFRAMES]),null==M||M.keyframes([...f.CONTENT_KEYFRAMES]),r.progressStart(!0,1-g),g>e&&!1!==t.focusTrap&&!1!==t.showBackdrop?P():j()),u&&g!==B&&n&&(u.scrollY=!1);const I=i=>{const{breakpoint:o,canDismiss:a,breakpointOffset:d,animated:h}=i,l=a&&0===o,m=l?g:o,b=0!==m;return g=0,T&&C&&(T.keyframes([{offset:0,transform:`translateY(${100*d}%)`},{offset:1,transform:`translateY(${100*(1-m)}%)`}]),C.keyframes([{offset:0,opacity:`calc(var(--backdrop-opacity) * ${V(1-d,e)})`},{offset:1,opacity:`calc(var(--backdrop-opacity) * ${V(m,e)})`}]),M&&M.keyframes([{offset:0,maxHeight:100*(1-d)+"%"},{offset:1,maxHeight:100*m+"%"}]),r.progressStep(0)),L.enable(!1),l?K(t,r):b||p(),!u||m!==s[s.length-1]&&n||(u.scrollY=!0),n||0!==m||R("stationary"),new Promise((i=>{r.onFinish((()=>{b?(n||R("stationary"),T&&C?w((()=>{T.keyframes([...f.WRAPPER_KEYFRAMES]),C.keyframes([...f.BACKDROP_KEYFRAMES]),null==M||M.keyframes([...f.CONTENT_KEYFRAMES]),r.progressStart(!0,1-m),g=m,c(g),g>e&&!1!==t.focusTrap&&!1!==t.showBackdrop?P():j(),L.enable(!0),i()})):(L.enable(!0),i())):i()}),{oneTimeCallback:!0}).progressEnd(1,0,h?500:0)}))},L=W({el:o,gestureName:"modalSheet",gesturePriority:40,direction:"y",threshold:10,canStart:t=>{const i=d(t.event.target);if(g=l(),!n&&i)return 0===(h(i)?x(i).querySelector(".inner-scroll"):i).scrollTop;if(1===g&&i){const t=h(i)?x(i).querySelector(".inner-scroll"):i;return!i.querySelector("ion-refresher")&&0===t.scrollTop}return!0},onStart:i=>{if(y=void 0!==t.canDismiss&&!0!==t.canDismiss&&0===O,!n){const t=d(i.event.target);A=t&&h(t)?x(t).querySelector(".inner-scroll"):t}n||R("moving"),i.deltaY>0&&u&&(u.scrollY=!1),w((()=>{t.focus()})),r.progressStart(!0,1-g)},onMove:t=>{if(n||null===D||null===E||(t.currentY>=D&&"moving"===E?R("stationary"):t.currentY<D&&"stationary"===E&&R("moving")),!n&&t.deltaY<=0&&A)return;t.deltaY>0&&u&&(u.scrollY=!1);const i=s.length>1?1-s[1]:void 0,o=1-g+t.deltaY/b,a=void 0!==i&&o>=i&&y,e=a?.95:.9999,d=a&&void 0!==i?i+_((o-i)/(e-i)):o;k=v(1e-4,d,e),r.progressStep(k),null==m||m()},onEnd:t=>{if(!n&&t.deltaY<=0&&A&&A.scrollTop>0)return void R("stationary");const i=g-(t.deltaY+350*t.velocityY)/b,o=s.reduce(((t,o)=>Math.abs(o-i)<Math.abs(t-i)?o:t));I({breakpoint:o,breakpointOffset:k,canDismiss:y,animated:!0})}});return{gesture:L,moveSheetToBreakpoint:I}})(this.el,this.backdropEl,t,i,o,r,this.sortedBreakpoints,this.expandToScroll,(()=>{var t;return null!==(t=this.currentBreakpoint)&&void 0!==t?t:0}),(()=>this.sheetOnDismiss()),(t=>{this.currentBreakpoint!==t&&(this.currentBreakpoint=t,this.ionBreakpointDidChange.emit({breakpoint:t})),this.updateSafeAreaOverrides()}),(()=>this.updateSafeAreaOverrides()));this.gesture=s,this.moveSheetToBreakpoint=n,this.gesture.enable(!0),(!1===this.showBackdrop||!1===this.focusTrap||o>0)&&this.setupChildRoutePassthrough()}setupChildRoutePassthrough(){var t;this.cachedPageParent=this.getOriginalPageParent();const i=this.cachedPageParent;if(!i||"ION-APP"===i.tagName)return;const o=Array.from(i.children).some((t=>{var i;return!(t===this.el||t instanceof HTMLElement&&"none"===window.getComputedStyle(t).display||"TEMPLATE"===t.tagName||"SLOT"===t.tagName||t.nodeType===Node.TEXT_NODE&&!(null===(i=t.textContent)||void 0===i?void 0:i.trim()))}));if(o)return;i.classList.add("ion-page-overlay-passthrough");const a=i.parentElement;"ION-ROUTER-OUTLET"===(null==a?void 0:a.tagName)&&"ION-APP"!==(null===(t=a.parentElement)||void 0===t?void 0:t.tagName)&&(a.style.setProperty("pointer-events","none"),a.setAttribute("data-overlay-passthrough","true"))}getOriginalPageParent(){if(!this.cachedOriginalParent)return null;let t=this.cachedOriginalParent;for(;t&&!t.classList.contains("ion-page");)t=t.parentElement;return t}cleanupChildRoutePassthrough(){const t=this.cachedPageParent;if(!t)return;t.classList.remove("ion-page-overlay-passthrough");const i=t.parentElement;(null==i?void 0:i.hasAttribute("data-overlay-passthrough"))&&(i.style.removeProperty("pointer-events"),i.removeAttribute("data-overlay-passthrough")),this.cachedPageParent=void 0}setInitialSafeAreaOverrides(t){const i=this.el.style,o=void 0!==t,a=window.innerWidth>=768;if(void 0!==this.breakpoints&&void 0!==this.initialBreakpoint)return i.setProperty("--ion-safe-area-top","0px"),i.setProperty("--ion-safe-area-left","0px"),void i.setProperty("--ion-safe-area-right","0px");if(o)return i.setProperty("--ion-safe-area-top","0px"),void(a?this.zeroAllSafeAreas():(i.setProperty("--ion-safe-area-left","0px"),i.setProperty("--ion-safe-area-right","0px"),this.applyFullscreenSafeArea()));if(!a)return void this.applyFullscreenSafeArea();const e=getComputedStyle(this.el),r=e.getPropertyValue("--width").trim(),s=e.getPropertyValue("--height").trim();"100%"===r&&"100%"===s?this.applyFullscreenSafeArea():this.zeroAllSafeAreas()}applyFullscreenSafeArea(){this.skipSafeAreaCoordinateDetection=!0,null===this.el.querySelector("ion-footer")&&this.wrapperEl&&(this.wrapperEl.style.setProperty("padding-bottom","var(--ion-safe-area-bottom, 0px)"),this.wrapperEl.style.setProperty("box-sizing","border-box"))}zeroAllSafeAreas(){const t=this.el.style;t.setProperty("--ion-safe-area-top","0px"),t.setProperty("--ion-safe-area-bottom","0px"),t.setProperty("--ion-safe-area-left","0px"),t.setProperty("--ion-safe-area-right","0px")}updateSafeAreaOverrides(){if(this.skipSafeAreaCoordinateDetection)return;const t=this.wrapperEl;if(!t)return;const i=t.getBoundingClientRect(),o=i.bottom>=window.innerHeight-2,a=i.left<=2,e=i.right>=window.innerWidth-2,r=this.el.style;i.top<=2?r.removeProperty("--ion-safe-area-top"):r.setProperty("--ion-safe-area-top","0px"),o?r.removeProperty("--ion-safe-area-bottom"):r.setProperty("--ion-safe-area-bottom","0px"),a?r.removeProperty("--ion-safe-area-left"):r.setProperty("--ion-safe-area-left","0px"),e?r.removeProperty("--ion-safe-area-right"):r.setProperty("--ion-safe-area-right","0px")}sheetOnDismiss(){this.gestureAnimationDismissing=!0,this.animation.onFinish((async()=>{this.currentBreakpoint=0,this.ionBreakpointDidChange.emit({breakpoint:this.currentBreakpoint}),await this.dismiss(void 0,Y),this.gestureAnimationDismissing=!1}))}async dismiss(t,i){var o;if(this.gestureAnimationDismissing&&i!==Y)return!1;const e=await this.lockController.lock();if(await this.dismissNestedModals(),"handler"!==i&&!await this.checkCanDismiss(t,i))return e(),!1;const{presentingElement:r}=this;void 0!==r&&"ios"===L(this)&&U(this.statusBarStyle),"undefined"!=typeof window&&this.keyboardOpenCallback&&(window.removeEventListener($,this.keyboardOpenCallback),this.keyboardOpenCallback=void 0);const s=await M(this,t,i,"modalLeave",it,at,{presentingEl:r,currentBreakpoint:null!==(o=this.currentBreakpoint)&&void 0!==o?o:this.initialBreakpoint,backdropBreakpoint:this.backdropBreakpoint,expandToScroll:this.expandToScroll});if(s){const{delegate:t}=this.getDelegate();await b(t,this.usersElement),a((()=>this.el.classList.remove("show-modal"))),this.animation&&this.animation.destroy(),this.gesture&&this.gesture.destroy(),this.cleanupViewTransitionListener(),this.cleanupParentRemovalObserver(),this.cleanupChildRoutePassthrough()}return this.currentBreakpoint=void 0,this.animation=void 0,this.skipSafeAreaCoordinateDetection=!1,e(),s}onDidDismiss(){return P(this.el,"ionModalDidDismiss")}onWillDismiss(){return P(this.el,"ionModalWillDismiss")}async setCurrentBreakpoint(t){if(!this.isSheetModal)return void o("[ion-modal] - setCurrentBreakpoint is only supported on sheet modals.");if(!this.breakpoints.includes(t))return void o(`[ion-modal] - Attempted to set invalid breakpoint value ${t}. Please double check that the breakpoint value is part of your defined breakpoints.`);const{currentBreakpoint:i,moveSheetToBreakpoint:a,canDismiss:e,breakpoints:r,animated:s}=this;i!==t&&a&&(this.sheetTransition=a({breakpoint:t,breakpointOffset:1-i,canDismiss:void 0!==e&&!0!==e&&0===r[0],animated:s}),await this.sheetTransition,this.sheetTransition=void 0)}async getCurrentBreakpoint(){return this.currentBreakpoint}async moveToNextBreakpoint(){const{breakpoints:t,currentBreakpoint:i}=this;if(!t||null==i)return!1;const o=t.filter((t=>0!==t)),a=o.indexOf(i),e=o[(a+1)%o.length];return await this.setCurrentBreakpoint(e),!0}initViewTransitionListener(){"ios"!==L(this)||!this.presentingElement||this.enterAnimation||this.leaveAnimation||(this.currentViewIsPortrait=window.innerWidth<768)}handleViewTransition(){if(!this.presented)return;const t=window.innerWidth<768;if(this.currentViewIsPortrait===t)return;this.viewTransitionAnimation&&(this.viewTransitionAnimation.destroy(),this.viewTransitionAnimation=void 0);const{presentingElement:i}=this;if(!i)return;let o;o=this.currentViewIsPortrait&&!t?((t,i,o=300)=>{const{presentingEl:a}=i;if(!a)return N("portrait-to-landscape-transition");const e="ION-MODAL"===a.tagName&&void 0!==a.presentingElement,r=x(a),s=document.body,n=N("portrait-to-landscape-transition").addElement(t).easing("cubic-bezier(0.32,0.72,0,1)").duration(o),d=N().beforeStyles({transform:"translateY(0)","transform-origin":"top center",overflow:"hidden"});if(e){const t="translateY(-10px) scale(0.915)",i="translateY(0px) scale(1)";d.addElement(a).afterStyles({transform:i}).fromTo("transform",t,i).fromTo("filter","contrast(0.85)","contrast(1)");const o=N().addElement(r.querySelector(".modal-shadow")).afterStyles({transform:i,opacity:"0"}).fromTo("transform",t,i);n.addAnimation([d,o])}else{const i=x(t),o=N().addElement(i.querySelectorAll(".modal-wrapper, .modal-shadow")).fromTo("opacity","1","1"),e=N().addElement(i.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)","var(--backdrop-opacity)"),r=`translateY(${CSS.supports("width","max(0px, 1px)")?"max(30px, var(--ion-safe-area-top))":"30px"}) scale(0.915)`;d.addElement(a).afterStyles({transform:"translateY(0px) scale(1)","border-radius":"0px"}).beforeAddWrite((()=>s.style.setProperty("background-color",""))).fromTo("transform",r,"translateY(0px) scale(1)").fromTo("filter","contrast(0.85)","contrast(1)").fromTo("border-radius","10px 10px 0 0","0px"),n.addAnimation([d,o,e])}return n})(this.el,{presentingEl:i}):((t,i,o=300)=>{const{presentingEl:a}=i;if(!a)return N("landscape-to-portrait-transition");const e="ION-MODAL"===a.tagName&&void 0!==a.presentingElement,r=x(a),s=document.body,n=N("landscape-to-portrait-transition").addElement(t).easing("cubic-bezier(0.32,0.72,0,1)").duration(o),d=N().beforeStyles({transform:"translateY(0)","transform-origin":"top center",overflow:"hidden"});if(e){const t="translateY(-10px) scale(0.915)",i="translateY(0) scale(1)";d.addElement(a).afterStyles({transform:i}).fromTo("transform",t,i);const o=N().addElement(r.querySelector(".modal-shadow")).afterStyles({transform:i,opacity:"0"}).fromTo("transform",t,i);n.addAnimation([d,o])}else{const i=x(t),o=N().addElement(i.querySelectorAll(".modal-wrapper, .modal-shadow")).fromTo("opacity","1","1"),e=N().addElement(i.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)","var(--backdrop-opacity)"),r=`translateY(${CSS.supports("width","max(0px, 1px)")?"max(30px, var(--ion-safe-area-top))":"30px"}) scale(0.915)`;d.addElement(a).afterStyles({transform:r}).beforeAddWrite((()=>s.style.setProperty("background-color","black"))).keyframes([{offset:0,transform:"translateY(0px) scale(1)",filter:"contrast(1)",borderRadius:"0px"},{offset:.2,transform:"translateY(0px) scale(1)",filter:"contrast(1)",borderRadius:"10px 10px 0 0"},{offset:1,transform:r,filter:"contrast(0.85)",borderRadius:"10px 10px 0 0"}]),n.addAnimation([d,o,e])}return n})(this.el,{presentingEl:i}),this.currentViewIsPortrait=t,this.viewTransitionAnimation=o,o.play().then((()=>{this.viewTransitionAnimation=void 0,this.reinitSwipeToClose()}))}cleanupViewTransitionListener(){this.resizeTimeout&&(clearTimeout(this.resizeTimeout),this.resizeTimeout=void 0),this.viewTransitionAnimation&&(this.viewTransitionAnimation.destroy(),this.viewTransitionAnimation=void 0)}reinitSwipeToClose(){"ios"===L(this)&&this.presentingElement&&(this.gesture&&(this.gesture.destroy(),this.gesture=void 0),this.animation&&(this.animation.progressEnd(0,0,0),this.animation.destroy(),this.animation=void 0),w((()=>{this.ensureCorrectModalPosition(),this.initSwipeToClose()})))}ensureCorrectModalPosition(){const{el:t,presentingElement:i}=this,o=x(t).querySelector(".modal-wrapper");if(o&&(o.style.transform="translateY(0vh)",o.style.opacity="1"),"ION-MODAL"===(null==i?void 0:i.tagName))if(window.innerWidth<768){const t=CSS.supports("width","max(0px, 1px)")?"max(30px, var(--ion-safe-area-top))":"30px";i.style.transform=`translateY(${t}) scale(0.915)`}else i.style.transform="translateY(0px) scale(1)"}async dismissNestedModals(){const t=document.querySelectorAll(`ion-modal[data-parent-ion-modal="${this.el.id}"]`);null==t||t.forEach((async t=>{await t.dismiss(void 0,"parent-dismissed")}))}initParentRemovalObserver(){"undefined"!=typeof MutationObserver&&"undefined"!=typeof window&&this.cachedOriginalParent&&this.cachedOriginalParent.nodeType!==Node.DOCUMENT_NODE&&this.cachedOriginalParent.nodeType!==Node.DOCUMENT_FRAGMENT_NODE&&(this.hasController||this.cachedOriginalParent===document.body||"ION-APP"===this.cachedOriginalParent.tagName||(this.parentRemovalObserver=new MutationObserver((t=>{t.forEach((t=>{"childList"===t.type&&t.removedNodes.length>0&&(Array.from(t.removedNodes).some((t=>{var i,o;const a=t===this.cachedOriginalParent,e=!!this.cachedOriginalParent&&(null===(o=(i=t).contains)||void 0===o?void 0:o.call(i,this.cachedOriginalParent));return a||e}))||this.cachedOriginalParent&&!this.cachedOriginalParent.isConnected)&&(this.dismiss(void 0,"parent-removed"),this.cachedOriginalParent=void 0)}))})),this.parentRemovalObserver.observe(document.body,{childList:!0,subtree:!0})))}cleanupParentRemovalObserver(){var t;null===(t=this.parentRemovalObserver)||void 0===t||t.disconnect(),this.parentRemovalObserver=void 0}render(){const{handle:t,isSheetModal:i,presentingElement:o,htmlAttributes:a,handleBehavior:e,inheritedAttributes:n,focusTrap:d,expandToScroll:h}=this,l=!1!==t&&i,p=L(this),c=void 0!==o&&"ios"===p,m="cycle"===e;return r(s,Object.assign({key:"6642b8a32dad449f26ac4ed60814d69afc97bf30","no-router":!0,tabIndex:m&&i&&l?0:-1},a,{style:{zIndex:`${2e4+this.overlayIndex}`},class:Object.assign({[p]:!0,"modal-default":!c&&!i,"modal-card":c,"modal-sheet":i,"modal-no-expand-scroll":i&&!h,"overlay-hidden":!0,[S]:!1===d},j(this.cssClass)),onIonBackdropTap:this.onBackdropTap,onIonModalDidPresent:this.onLifecycle,onIonModalWillPresent:this.onLifecycle,onIonModalWillDismiss:this.onLifecycle,onIonModalDidDismiss:this.onLifecycle,onFocus:this.onModalFocus}),r("ion-backdrop",{key:"8adf79ea72c0f622190ff366980621067c35795b",ref:t=>this.backdropEl=t,visible:this.showBackdrop,tappable:this.backdropDismiss,part:"backdrop"}),"ios"===p&&r("div",{key:"34f14fcd4970c04aee3b7a5305f9f220ff377f37",class:"modal-shadow"}),r("div",Object.assign({key:"a3a8e3df6a1cfe061bbd99503655015ca8cd416d",role:"dialog"},n,{"aria-modal":"true",class:"modal-wrapper ion-overlay-wrapper",part:"content",ref:t=>this.wrapperEl=t}),l&&r("button",{key:"a4ad2f6def8c20a36a9731553dfa5a98392151ef",class:"modal-handle",tabIndex:m?0:-1,"aria-label":"Activate to adjust the size of the dialog overlaying the screen",onClick:m?this.onHandleClick:void 0,part:"handle",ref:t=>this.dragHandleEl=t}),r("slot",{key:"46fb6d94814dae4a9bcdf99387d57a17c6a6a95c",onSlotchange:this.onSlotChange})))}get el(){return n(this)}static get watchers(){return{isOpen:["onIsOpenChange"],trigger:["triggerChanged"]}}},rt={ionModalDidPresent:"ionViewDidEnter",ionModalWillPresent:"ionViewWillEnter",ionModalWillDismiss:"ionViewWillLeave",ionModalDidDismiss:"ionViewDidLeave"};et.style={ios:':host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:""}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.4)}:host(.modal-card),:host(.modal-sheet){--border-radius:10px}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:10px}}.modal-wrapper{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0)}@media screen and (max-width: 767px){@supports (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - max(30px, var(--ion-safe-area-top)) - 10px)}}@supports not (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - 40px)}}:host(.modal-card) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-card){--backdrop-opacity:0;--width:100%;-ms-flex-align:end;align-items:flex-end}:host(.modal-card) .modal-shadow{display:none}:host(.modal-card) ion-backdrop{pointer-events:none}}@media screen and (min-width: 768px){:host(.modal-card){--width:calc(100% - 120px);--height:calc(100% - (120px + var(--ion-safe-area-top) + var(--ion-safe-area-bottom)));--max-width:720px;--max-height:1000px;--backdrop-opacity:0;--box-shadow:0px 0px 30px 10px rgba(0, 0, 0, 0.1);-webkit-transition:all 0.5s ease-in-out;transition:all 0.5s ease-in-out}:host(.modal-card) .modal-wrapper{-webkit-box-shadow:none;box-shadow:none}:host(.modal-card) .modal-shadow{-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}}:host(.modal-sheet) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}',md:':host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:auto;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:""}:host(.modal-sheet){--height:calc(100% - (var(--ion-safe-area-top) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:2px;--box-shadow:0 28px 48px rgba(0, 0, 0, 0.4)}}.modal-wrapper{-webkit-transform:translate3d(0, 40px, 0);transform:translate3d(0, 40px, 0);opacity:0.01}'};export{et as ion_modal}
|
|
@@ -29,7 +29,7 @@ export interface MoveSheetToBreakpointOptions {
|
|
|
29
29
|
*/
|
|
30
30
|
animated: boolean;
|
|
31
31
|
}
|
|
32
|
-
export declare const createSheetGesture: (baseEl: HTMLIonModalElement, backdropEl: HTMLIonBackdropElement, wrapperEl: HTMLElement, initialBreakpoint: number, backdropBreakpoint: number, animation: Animation, breakpoints: number[] | undefined, expandToScroll: boolean, getCurrentBreakpoint: () => number, onDismiss: () => void, onBreakpointChange: (breakpoint: number) => void) => {
|
|
32
|
+
export declare const createSheetGesture: (baseEl: HTMLIonModalElement, backdropEl: HTMLIonBackdropElement, wrapperEl: HTMLElement, initialBreakpoint: number, backdropBreakpoint: number, animation: Animation, breakpoints: number[] | undefined, expandToScroll: boolean, getCurrentBreakpoint: () => number, onDismiss: () => void, onBreakpointChange: (breakpoint: number) => void, onGestureMove?: () => void) => {
|
|
33
33
|
gesture: import("@utils/gesture").Gesture;
|
|
34
34
|
moveSheetToBreakpoint: (options: MoveSheetToBreakpointOptions) => Promise<void>;
|
|
35
35
|
};
|
|
@@ -3,4 +3,4 @@ import type { Style as StatusBarStyle } from '../../../utils/native/status-bar';
|
|
|
3
3
|
export declare const SwipeToCloseDefaults: {
|
|
4
4
|
MIN_PRESENTING_SCALE: number;
|
|
5
5
|
};
|
|
6
|
-
export declare const createSwipeToCloseGesture: (el: HTMLIonModalElement, animation: Animation, statusBarStyle: StatusBarStyle, onDismiss: () => void) => import("@utils/gesture").Gesture;
|
|
6
|
+
export declare const createSwipeToCloseGesture: (el: HTMLIonModalElement, animation: Animation, statusBarStyle: StatusBarStyle, onDismiss: () => void, onGestureMove?: () => void) => import("@utils/gesture").Gesture;
|
|
@@ -37,6 +37,7 @@ export declare class Modal implements ComponentInterface, OverlayInterface {
|
|
|
37
37
|
private parentRemovalObserver?;
|
|
38
38
|
private cachedOriginalParent?;
|
|
39
39
|
private cachedPageParent?;
|
|
40
|
+
private skipSafeAreaCoordinateDetection;
|
|
40
41
|
lastFocus?: HTMLElement;
|
|
41
42
|
animation?: Animation;
|
|
42
43
|
presented: boolean;
|
|
@@ -303,6 +304,29 @@ export declare class Modal implements ComponentInterface, OverlayInterface {
|
|
|
303
304
|
* Removes passthrough styles added by setupChildRoutePassthrough.
|
|
304
305
|
*/
|
|
305
306
|
private cleanupChildRoutePassthrough;
|
|
307
|
+
/**
|
|
308
|
+
* Sets initial safe-area overrides based on modal configuration before
|
|
309
|
+
* the modal becomes visible. This predicts whether the modal will touch
|
|
310
|
+
* screen edges to avoid a visual snap after animation completes.
|
|
311
|
+
*/
|
|
312
|
+
private setInitialSafeAreaOverrides;
|
|
313
|
+
/**
|
|
314
|
+
* Applies safe-area handling for fullscreen modals.
|
|
315
|
+
* Adds wrapper padding when no footer is present to prevent
|
|
316
|
+
* content from overlapping system navigation areas.
|
|
317
|
+
*/
|
|
318
|
+
private applyFullscreenSafeArea;
|
|
319
|
+
/**
|
|
320
|
+
* Sets all safe-area CSS variables to 0px for modals that
|
|
321
|
+
* don't touch screen edges.
|
|
322
|
+
*/
|
|
323
|
+
private zeroAllSafeAreas;
|
|
324
|
+
/**
|
|
325
|
+
* Updates safe-area CSS variable overrides based on whether the modal
|
|
326
|
+
* is touching each edge of the viewport. Called after animation
|
|
327
|
+
* and during gestures to handle dynamic position changes.
|
|
328
|
+
*/
|
|
329
|
+
private updateSafeAreaOverrides;
|
|
306
330
|
private sheetOnDismiss;
|
|
307
331
|
/**
|
|
308
332
|
* Dismiss the modal overlay after it has been presented.
|