@ionic/core 8.8.3 → 8.8.4-dev.11775078622.1402ffa2

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.
Files changed (81) hide show
  1. package/components/index.js +1 -1
  2. package/components/ion-action-sheet.js +1 -1
  3. package/components/ion-alert.js +1 -1
  4. package/components/ion-datetime.js +1 -1
  5. package/components/ion-loading.js +1 -1
  6. package/components/ion-menu.js +1 -1
  7. package/components/ion-modal.js +1 -1
  8. package/components/ion-picker-legacy.js +1 -1
  9. package/components/ion-popover.js +1 -1
  10. package/components/ion-select-modal.js +1 -1
  11. package/components/ion-select-popover.js +1 -1
  12. package/components/ion-select.js +1 -1
  13. package/components/ion-toast.js +1 -1
  14. package/components/p-0npDmDEs.js +4 -0
  15. package/components/p-7hlGym-0.js +4 -0
  16. package/components/p-BO_M4HrR.js +4 -0
  17. package/components/{p-D6pdfDIA.js → p-BZ6v19WN.js} +1 -1
  18. package/components/p-C5gHGV8-.js +4 -0
  19. package/components/p-CWnwVrC4.js +4 -0
  20. package/components/{p-e-EDj2CO.js → p-MT7pYfQI.js} +1 -1
  21. package/dist/cjs/index.cjs.js +1 -1
  22. package/dist/cjs/ion-action-sheet.cjs.entry.js +8 -4
  23. package/dist/cjs/ion-alert.cjs.entry.js +7 -3
  24. package/dist/cjs/ion-datetime_3.cjs.entry.js +7 -3
  25. package/dist/cjs/ion-loading.cjs.entry.js +7 -3
  26. package/dist/cjs/ion-menu_3.cjs.entry.js +1 -1
  27. package/dist/cjs/ion-modal.cjs.entry.js +9 -5
  28. package/dist/cjs/ion-popover.cjs.entry.js +7 -3
  29. package/dist/cjs/ion-select-modal.cjs.entry.js +1 -1
  30. package/dist/cjs/ion-select_3.cjs.entry.js +1 -1
  31. package/dist/cjs/ion-toast.cjs.entry.js +1 -1
  32. package/dist/cjs/{overlays-C2jiBSNQ.js → overlays-MjvhwPt2.js} +24 -0
  33. package/dist/collection/components/action-sheet/action-sheet.js +8 -4
  34. package/dist/collection/components/alert/alert.js +7 -3
  35. package/dist/collection/components/loading/loading.js +7 -3
  36. package/dist/collection/components/modal/modal.js +9 -5
  37. package/dist/collection/components/picker-legacy/picker.js +7 -3
  38. package/dist/collection/components/popover/popover.js +7 -3
  39. package/dist/collection/utils/overlays.js +23 -0
  40. package/dist/docs.json +1 -1
  41. package/dist/esm/index.js +1 -1
  42. package/dist/esm/ion-action-sheet.entry.js +8 -4
  43. package/dist/esm/ion-alert.entry.js +7 -3
  44. package/dist/esm/ion-datetime_3.entry.js +7 -3
  45. package/dist/esm/ion-loading.entry.js +7 -3
  46. package/dist/esm/ion-menu_3.entry.js +1 -1
  47. package/dist/esm/ion-modal.entry.js +9 -5
  48. package/dist/esm/ion-popover.entry.js +7 -3
  49. package/dist/esm/ion-select-modal.entry.js +1 -1
  50. package/dist/esm/ion-select_3.entry.js +1 -1
  51. package/dist/esm/ion-toast.entry.js +1 -1
  52. package/dist/esm/{overlays-F8GHPo-e.js → overlays-CCsdmuZR.js} +24 -1
  53. package/dist/ionic/index.esm.js +1 -1
  54. package/dist/ionic/ionic.esm.js +1 -1
  55. package/dist/ionic/p-2876a692.entry.js +4 -0
  56. package/dist/ionic/p-50b13f63.entry.js +4 -0
  57. package/dist/ionic/p-53399c0b.entry.js +4 -0
  58. package/dist/ionic/p-80bea9dd.entry.js +4 -0
  59. package/dist/ionic/p-Bx-dQ-64.js +4 -0
  60. package/dist/ionic/{p-7620be24.entry.js → p-c1854ee5.entry.js} +1 -1
  61. package/dist/ionic/p-c7f46ed5.entry.js +4 -0
  62. package/dist/ionic/{p-f69a5f71.entry.js → p-cfeb806a.entry.js} +1 -1
  63. package/dist/ionic/{p-4dd5e8e0.entry.js → p-e2e9d04e.entry.js} +1 -1
  64. package/dist/ionic/{p-e6c5f060.entry.js → p-f5506e4e.entry.js} +1 -1
  65. package/dist/ionic/p-f83088b5.entry.js +4 -0
  66. package/dist/types/utils/overlays.d.ts +10 -0
  67. package/hydrate/index.js +62 -15
  68. package/hydrate/index.mjs +62 -15
  69. package/package.json +1 -1
  70. package/components/p-1KVKSLu5.js +0 -4
  71. package/components/p-BVnB3eEn.js +0 -4
  72. package/components/p-CH0NYjKq.js +0 -4
  73. package/components/p-Cq8cQ0NL.js +0 -4
  74. package/components/p-DHsZWn1l.js +0 -4
  75. package/dist/ionic/p-16b65553.entry.js +0 -4
  76. package/dist/ionic/p-1b02923f.entry.js +0 -4
  77. package/dist/ionic/p-23fac490.entry.js +0 -4
  78. package/dist/ionic/p-51c11c47.entry.js +0 -4
  79. package/dist/ionic/p-5b52aa7d.entry.js +0 -4
  80. package/dist/ionic/p-7ca71c83.entry.js +0 -4
  81. package/dist/ionic/p-DTPR1Wpn.js +0 -4
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ import{p as t,H as e,e as o,f as r,h as i,d as s,t as n}from"./p-BJoMtgfR.js";import{B as a,j as p,k as c,n as d,f as l,o as h,g as v,h as f,F as g}from"./p-7hlGym-0.js";import{C as m,a as x,d as b}from"./p-BR3tZJmu.js";import{g as u,r as w,a as k,k as y}from"./p-DgbT0exM.js";import{c as P}from"./p-B-hirT0v.js";import{b as D,a as T}from"./p-CDfQnFrd.js";import{g as A}from"./p-DiVJyqlX.js";import{e as $,w as C}from"./p-9VcRUwdB.js";import{c as I}from"./p-Csw8xuz4.js";import{d as O}from"./p-CoA-aqGF.js";let L=null,W=!1;const N=t=>{if(null!==L)return L;if(null===t.body)return{top:0,bottom:0,left:0,right:0};const e=t.createElement("div");e.style.cssText="position:fixed;visibility:hidden;pointer-events:none;top:0;left:0;padding-top:var(--ion-safe-area-top,0px);padding-bottom:var(--ion-safe-area-bottom,0px);padding-left:var(--ion-safe-area-left,0px);padding-right:var(--ion-safe-area-right,0px);",t.body.appendChild(e);const o=getComputedStyle(e),r={top:parseFloat(o.paddingTop)||0,bottom:parseFloat(o.paddingBottom)||0,left:parseFloat(o.paddingLeft)||0,right:parseFloat(o.paddingRight)||0};return e.remove(),L=r,W||(W=!0,w((()=>{L=null,W=!1}))),r},j=(t,e,o)=>{const r=e.getBoundingClientRect(),i=r.height;let s=r.width;return"cover"===t&&o&&(s=o.getBoundingClientRect().width),{contentWidth:s,contentHeight:i}},z=(t,e)=>e&&"ION-ITEM"===e.tagName?t.findIndex((t=>t===e)):-1,E=t=>{const e=u(t).querySelector("button");e&&w((()=>e.focus()))},S=(t,e,o,r,i,s,n,a,p,c,d)=>{var l;let h={top:0,left:0,width:0,height:0};if("event"===s){if(!d)return p;h={top:d.clientY,left:d.clientX,width:1,height:1}}else{const t=c||(null===(l=null==d?void 0:d.detail)||void 0===l?void 0:l.ionShadowTarget)||(null==d?void 0:d.target);if(!t)return p;const e=t.getBoundingClientRect();h={top:e.top,left:e.left,width:e.width,height:e.height}}const v=R(n,h,e,o,r,i,t),f=F(a,n,h,e,o),g=v.top+f.top,m=v.left+f.left,{arrowTop:x,arrowLeft:b}=M(n,r,i,g,m,e,o,t),{originX:u,originY:w}=X(n,a,t);return{top:g,left:m,referenceCoordinates:h,arrowTop:x,arrowLeft:b,originX:u,originY:w}},X=(t,e,o)=>{switch(t){case"top":return{originX:B(e),originY:"bottom"};case"bottom":return{originX:B(e),originY:"top"};case"left":return{originX:"right",originY:Y(e)};case"right":return{originX:"left",originY:Y(e)};case"start":return{originX:o?"left":"right",originY:Y(e)};case"end":return{originX:o?"right":"left",originY:Y(e)}}},B=t=>{switch(t){case"start":return"left";case"center":return"center";case"end":return"right"}},Y=t=>{switch(t){case"start":return"top";case"center":return"center";case"end":return"bottom"}},M=(t,e,o,r,i,s,n,a)=>{const p={arrowTop:r+n/2-e/2,arrowLeft:i+s-e/2},c={arrowTop:r+n/2-e/2,arrowLeft:i-1.5*e};switch(t){case"top":return{arrowTop:r+n,arrowLeft:i+s/2-e/2};case"bottom":return{arrowTop:r-o,arrowLeft:i+s/2-e/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}}},R=(t,e,o,r,i,s,n)=>{const a={top:e.top,left:e.left-o-i},p={top:e.top,left:e.left+e.width+i};switch(t){case"top":return{top:e.top-r-s,left:e.left};case"right":return p;case"bottom":return{top:e.top+e.height+s,left:e.left};case"left":return a;case"start":return n?p:a;case"end":return n?a:p}},F=(t,e,o,r,i)=>{switch(t){case"center":return V(e,o,r,i);case"end":return H(e,o,r,i);default:return{top:0,left:0}}},H=(t,e,o,r)=>{switch(t){case"start":case"end":case"left":case"right":return{top:-(r-e.height),left:0};default:return{top:0,left:-(o-e.width)}}},V=(t,e,o,r)=>{switch(t){case"start":case"end":case"left":case"right":return{top:-(r/2-e.height/2),left:0};default:return{top:0,left:-(o/2-e.width/2)}}},J=(t,e,o,r,i,s,n,a,p,c,d,l,h=0,v=0,f=0)=>{let g,m=h,x=o,b=e,u=c,w=d,k=!1,y=!1,P=!1,D=!1;const T=l?l.top+l.height:s/2-a/2,A=l?l.height:0;let $=!1;if(x<r+p.left?(x=r,k=!0,u="left"):n+r+x+p.right>i&&(y=!0,x=i-n-r,u="right"),T+A+a>s-p.bottom&&("top"===t||"bottom"===t)){const t=T-a-A-(f-1);t>=p.top+r?(b=t,m=b+a,w="bottom",$=!0):(g=r,D=!0,b>=s-p.bottom-r&&(b=p.top+r,P=!0))}return{top:b,left:x,bottom:g,originX:u,originY:w,checkSafeAreaLeft:k,checkSafeAreaRight:y,checkSafeAreaTop:P,checkSafeAreaBottom:D,arrowTop:m,arrowLeft:v,addPopoverBottomClass:$,hideArrow:!1}},q=(t,e)=>{var o;const{event:r,size:i,trigger:s,reference:n,side:a,align:p}=e,c=t.ownerDocument,d="rtl"===c.dir,l=c.defaultView.innerWidth,h=c.defaultView.innerHeight,v=u(t),f=v.querySelector(".popover-content"),g=v.querySelector(".popover-arrow"),m=s||(null===(o=null==r?void 0:r.detail)||void 0===o?void 0:o.ionShadowTarget)||(null==r?void 0:r.target),{contentWidth:x,contentHeight:b}=j(i,f,m),{arrowWidth:w,arrowHeight:k}=(t=>{if(!t)return{arrowWidth:0,arrowHeight:0};const{width:e,height:o}=t.getBoundingClientRect();return{arrowWidth:e,arrowHeight:o}})(g),y=S(d,x,b,w,k,n,a,p,{top:h/2-b/2,left:l/2-x/2,originX:d?"right":"left",originY:"top"},s,r),P="cover"===i?0:5,D=N(c),T="cover"===i?{top:0,bottom:0,left:0,right:0}:{top:Math.max(D.top,25),bottom:Math.max(D.bottom,25),left:Math.max(D.left,25),right:Math.max(D.right,25)},{originX:A,originY:$,top:C,left:O,bottom:L,checkSafeAreaLeft:W,checkSafeAreaRight:z,checkSafeAreaTop:E,checkSafeAreaBottom:X,arrowTop:B,arrowLeft:Y,addPopoverBottomClass:M}=J(a,y.top,y.left,P,l,h,x,b,T,y.originX,y.originY,y.referenceCoordinates,y.arrowTop,y.arrowLeft,k),R=I(),F=I(),H=I();return F.addElement(v.querySelector("ion-backdrop")).fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),H.addElement(v.querySelector(".popover-arrow")).addElement(v.querySelector(".popover-content")).fromTo("opacity",.01,1),R.easing("ease").duration(100).beforeAddWrite((()=>{if("cover"===i&&t.style.setProperty("--width",`${x}px`),M&&t.classList.add("popover-bottom"),void 0!==L){let t=`${L}px`;X&&(t=`${L}px + var(--ion-safe-area-bottom, 0px)`),f.style.setProperty("bottom",`calc(${t})`)}let e=`${O}px`;W&&(e=`${O}px + var(--ion-safe-area-left, 0px)`),z&&(e=`${O}px - var(--ion-safe-area-right, 0px)`);let o=`${C}px`;if(E&&(o=`${C}px + var(--ion-safe-area-top, 0px)`),f.style.setProperty("top",`calc(${o} + var(--offset-y, 0))`),f.style.setProperty("left",`calc(${e} + var(--offset-x, 0))`),f.style.setProperty("transform-origin",`${$} ${A}`),null!==g){const t=((t,e=!1,o,r)=>!(!o&&!r||"top"!==t&&"bottom"!==t&&e))(a,y.top!==C||y.left!==O,r,s);t?(g.style.setProperty("top",`calc(${B}px + var(--offset-y, 0))`),g.style.setProperty("left",`calc(${Y}px + var(--offset-x, 0))`)):g.style.setProperty("display","none")}})).addAnimation([F,H])},G=t=>{const e=u(t),o=e.querySelector(".popover-content"),r=e.querySelector(".popover-arrow"),i=I(),s=I(),n=I();return s.addElement(e.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)",0),n.addElement(e.querySelector(".popover-arrow")).addElement(e.querySelector(".popover-content")).fromTo("opacity",.99,0),i.easing("ease").afterAddWrite((()=>{t.style.removeProperty("--width"),t.classList.remove("popover-bottom"),o.style.removeProperty("top"),o.style.removeProperty("left"),o.style.removeProperty("bottom"),o.style.removeProperty("transform-origin"),r&&(r.style.removeProperty("top"),r.style.removeProperty("left"),r.style.removeProperty("display"))})).duration(300).addAnimation([s,n])},K=(t,e)=>{var o;const{event:r,size:i,trigger:s,reference:n,side:a,align:p}=e,c=t.ownerDocument,d="rtl"===c.dir,l=c.defaultView.innerWidth,h=c.defaultView.innerHeight,v=u(t),f=v.querySelector(".popover-content"),g=s||(null===(o=null==r?void 0:r.detail)||void 0===o?void 0:o.ionShadowTarget)||(null==r?void 0:r.target),{contentWidth:m,contentHeight:x}=j(i,f,g),b=S(d,m,x,0,0,n,a,p,{top:h/2-x/2,left:l/2-m/2,originX:d?"right":"left",originY:"top"},s,r),w="cover"===i?0:12,k="cover"===i?{top:0,bottom:0,left:0,right:0}:N(c),{originX:y,originY:P,top:D,left:T,bottom:A,checkSafeAreaLeft:$,checkSafeAreaRight:C,checkSafeAreaTop:O,checkSafeAreaBottom:L,addPopoverBottomClass:W}=J(a,b.top,b.left,w,l,h,m,x,k,b.originX,b.originY,b.referenceCoordinates);let z=`${T}px`;$&&(z=`${T}px + var(--ion-safe-area-left, 0px)`),C&&(z=`${T}px - var(--ion-safe-area-right, 0px)`);let E=`${D}px`;O&&(E=`${D}px + var(--ion-safe-area-top, 0px)`);const X=I(),B=I(),Y=I(),M=I(),R=I();return B.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),M.addElement(f).beforeStyles({top:`calc(${E} + var(--offset-y, 0px))`,left:`calc(${z} + var(--offset-x, 0px))`,"transform-origin":`${P} ${y}`}).beforeAddWrite((()=>{if(void 0!==A){let t=`${A}px`;L&&(t=`${A}px + var(--ion-safe-area-bottom, 0px)`),f.style.setProperty("bottom",`calc(${t})`)}})).fromTo("transform","scale(0.8)","scale(1)"),R.addElement(v.querySelector(".popover-viewport")).fromTo("opacity",.01,1),X.easing("cubic-bezier(0.36,0.66,0.04,1)").duration(300).beforeAddWrite((()=>{"cover"===i&&t.style.setProperty("--width",`${m}px`),W&&t.classList.add("popover-bottom")})).addAnimation([B,Y,M,R])},U=t=>{const e=u(t),o=e.querySelector(".popover-content"),r=I(),i=I(),s=I();return i.addElement(e.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)",0),s.addElement(e.querySelector(".popover-wrapper")).fromTo("opacity",.99,0),r.easing("ease").afterAddWrite((()=>{t.style.removeProperty("--width"),t.classList.remove("popover-bottom"),o.style.removeProperty("top"),o.style.removeProperty("left"),o.style.removeProperty("bottom"),o.style.removeProperty("transform-origin")})).duration(150).addAnimation([i,s])},Q=t(class extends e{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),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=m(),this.lockController=P(),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,a)},this.onLifecycle=t=>{const e=this.usersElement,o=Z[t.type];if(e&&o){const r=new CustomEvent(o,{bubbles:!1,cancelable:!1,detail:t.detail});e.dispatchEvent(r)}},this.configureTriggerInteraction=()=>{const{trigger:t,triggerAction:e,el:o,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,e,o)=>{let r=[];switch(e){case"hover":let t;r=[{eventName:"mouseenter",callback:async e=>{e.stopPropagation(),t&&clearTimeout(t),t=setTimeout((()=>{w((()=>{o.presentFromTrigger(e),t=void 0}))}),100)}},{eventName:"mouseleave",callback:e=>{t&&clearTimeout(t);const r=e.relatedTarget;r&&r.closest("ion-popover")!==o&&o.dismiss(void 0,void 0,!1)}},{eventName:"click",callback:t=>t.stopPropagation()},{eventName:"ionPopoverActivateTrigger",callback:t=>o.presentFromTrigger(t,!0)}];break;case"context-menu":r=[{eventName:"contextmenu",callback:t=>{t.preventDefault(),o.presentFromTrigger(t)}},{eventName:"click",callback:t=>t.stopPropagation()},{eventName:"ionPopoverActivateTrigger",callback:t=>o.presentFromTrigger(t,!0)}];break;default:r=[{eventName:"click",callback:t=>o.presentFromTrigger(t)},{eventName:"ionPopoverActivateTrigger",callback:t=>o.presentFromTrigger(t,!0)}]}return r.forEach((({eventName:e,callback:o})=>t.addEventListener(e,o))),t.setAttribute("data-ion-popover-trigger","true"),()=>{r.forEach((({eventName:e,callback:o})=>t.removeEventListener(e,o))),t.removeAttribute("data-ion-popover-trigger")}})(s,e,o):r(`[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:e}=this;t&&t(),this.destroyKeyboardInteraction=(t=>{const e=async e=>{var o;const r=document.activeElement;let i=[];const s=null===(o=e.target)||void 0===o?void 0:o.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(e.key){case"ArrowLeft":await t.getParentPopover()&&t.dismiss(void 0,void 0,!1);break;case"ArrowDown":e.preventDefault();const o=((t,e)=>t[z(t,e)+1])(i,r);void 0!==o&&E(o);break;case"ArrowUp":e.preventDefault();const s=((t,e)=>t[z(t,e)-1])(i,r);void 0!==s&&E(s);break;case"Home":e.preventDefault();const n=i[0];void 0!==n&&E(n);break;case"End":e.preventDefault();const a=i[i.length-1];void 0!==a&&E(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",e),()=>t.removeEventListener("keydown",e)})(e)},this.configureDismissInteraction=()=>{const{destroyDismissInteraction:t,parentPopover:e,triggerAction:o,triggerEl:r,el:i}=this;e&&r&&(t&&t(),this.destroyDismissInteraction=((t,e,o,r)=>{let i=[];const s=u(r).querySelector(".popover-content");return i="hover"===e?[{eventName:"mouseenter",callback:e=>{document.elementFromPoint(e.clientX,e.clientY)!==t&&o.dismiss(void 0,void 0,!1)}}]:[{eventName:"click",callback:e=>{e.target.closest("[data-ion-popover-trigger]")!==t?o.dismiss(void 0,void 0,!1):e.stopPropagation()}}],i.forEach((({eventName:t,callback:e})=>s.addEventListener(t,e))),()=>{i.forEach((({eventName:t,callback:e})=>s.removeEventListener(t,e)))}})(r,o,i,e))}}onTriggerChange(){this.configureTriggerInteraction()}onIsOpenChange(t,e){!0===t&&!1===e?this.present():!1===t&&!0===e&&this.dismiss()}connectedCallback(){const{configureTriggerInteraction:t,el:e}=this;p(e),t()}disconnectedCallback(){const{destroyTriggerInteraction:t}=this;t&&t(),this.headerResizeObserver&&(this.headerResizeObserver.disconnect(),this.headerResizeObserver=void 0),this.presented&&c()}componentWillLoad(){var t,e;const{el:o}=this,r=null!==(e=null===(t=this.htmlAttributes)||void 0===t?void 0:t.id)&&void 0!==e?e:d(o);this.parentPopover=o.closest(`ion-popover:not(#${r})`),void 0===this.alignment&&(this.alignment="ios"===D(this)?"center":"start")}componentDidLoad(){const{parentPopover:t,isOpen:e}=this;!0===e&&w((()=>this.present())),t&&k(t,"ionPopoverWillDismiss",(()=>{this.dismiss(void 0,void 0,!1)})),this.configureTriggerInteraction()}async presentFromTrigger(t,e=!1){this.focusDescendantOnPresent=e,await this.present(t),this.focusDescendantOnPresent=!1}getDelegate(t=!1){if(this.workingDelegate&&!t)return{delegate:this.workingDelegate,inline:this.inline};const e=this.inline=null!==this.el.parentNode&&!this.hasController;return{inline:e,delegate:this.workingDelegate=e?this.delegate||this.coreDelegate:this.delegate}}async present(t){const e=await this.lockController.lock();if(this.presented)return void e();const{el:o}=this,{inline:r,delegate:i}=this.getDelegate(!0);this.ionMount.emit(),this.usersElement=await x(i,o,this.component,["popover-viewport"],this.componentProps,r),this.recalculateContentOnHeaderReady(),this.keyboardEvents||this.configureKeyboardInteraction(),this.configureDismissInteraction(),y(o)?await $(this.usersElement):this.keepContentsMounted||await C(),await l(this,"popoverEnter",q,K,{event:t||this.event,size:this.size,trigger:this.triggerEl,reference:this.reference,side:this.side,align:this.alignment}),this.focusDescendantOnPresent&&h(o),e()}recalculateContentOnHeaderReady(){var t;const e=null===(t=this.el.shadowRoot)||void 0===t?void 0:t.querySelector(".popover-content");if(!e)return;const o=this.usersElement||e,r=o.querySelector("ion-header"),i=o.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,e,o=!0){const r=await this.lockController.lock(),{destroyKeyboardInteraction:i,destroyDismissInteraction:s}=this;o&&this.parentPopover&&this.parentPopover.dismiss(t,e,o);const n=await v(this,t,e,"popoverLeave",G,U,this.event);if(n){i&&(i(),this.destroyKeyboardInteraction=void 0),s&&(s(),this.destroyDismissInteraction=void 0);const{delegate:t}=this.getDelegate();await b(t,this.usersElement)}return r(),n}async getParentPopover(){return this.parentPopover}onDidDismiss(){return f(this.el,"ionPopoverDidDismiss")}onWillDismiss(){return f(this.el,"ionPopoverWillDismiss")}render(){const t=D(this),{onLifecycle:e,parentPopover:o,dismissOnSelect:r,side:n,arrow:a,htmlAttributes:p,focusTrap:c}=this,d=T("desktop"),l=a&&!o;return i(s,Object.assign({key:"afc292b6b4eeb571c1cd832bc7ac03e0fea3dc28","aria-modal":"true","no-router":!0,tabindex:"-1"},p,{style:{zIndex:`${2e4+this.overlayIndex}`},class:Object.assign(Object.assign({},A(this.cssClass)),{[t]:!0,"popover-translucent":this.translucent,"overlay-hidden":!0,"popover-desktop":d,[`popover-side-${n}`]:!0,[g]:!1===c,"popover-nested":!!o}),onIonPopoverDidPresent:e,onIonPopoverWillPresent:e,onIonPopoverWillDismiss:e,onIonPopoverDidDismiss:e,onIonBackdropTap:this.onBackdropTap}),!o&&i("ion-backdrop",{key:"301a33645918c7feb807a6fe857e462b83291c40",tappable:this.backdropDismiss,visible:this.showBackdrop,part:"backdrop"}),i("div",{key:"f66123d36601ce61af3bce3c68c73002fe3a6d73",class:"popover-wrapper ion-overlay-wrapper",onClick:r?()=>this.dismiss():void 0},l&&i("div",{key:"39c92c94d01748d499f2db2513ecf022be2577dd",class:"popover-arrow",part:"arrow"}),i("div",{key:"827552221533f7b5676e6e313cd7517275ea76d7",class:"popover-content",part:"content"},i("slot",{key:"f874b8dfb78bfbc02e3bcad104819bf8d181d42f"}))))}get el(){return this}static get watchers(){return{trigger:[{onTriggerChange:0}],triggerAction:[{onTriggerChange:0}],isOpen:[{onIsOpenChange:0}]}}static get style(){return{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}"}}},[289,"ion-popover",{hasController:[4,"has-controller"],delegate:[16],overlayIndex:[2,"overlay-index"],enterAnimation:[16],leaveAnimation:[16],component:[1],componentProps:[16],keyboardClose:[4,"keyboard-close"],cssClass:[1,"css-class"],backdropDismiss:[4,"backdrop-dismiss"],event:[8],showBackdrop:[4,"show-backdrop"],translucent:[4],animated:[4],htmlAttributes:[16],triggerAction:[1,"trigger-action"],trigger:[1],size:[1],dismissOnSelect:[4,"dismiss-on-select"],reference:[1],side:[1],alignment:[1025],arrow:[4],isOpen:[4,"is-open"],keyboardEvents:[4,"keyboard-events"],focusTrap:[4,"focus-trap"],keepContentsMounted:[4,"keep-contents-mounted"],presented:[32],presentFromTrigger:[64],present:[64],dismiss:[64],getParentPopover:[64],onDidDismiss:[64],onWillDismiss:[64]},void 0,{trigger:[{onTriggerChange:0}],triggerAction:[{onTriggerChange:0}],isOpen:[{onIsOpenChange:0}]}]),Z={ionPopoverDidPresent:"ionViewDidEnter",ionPopoverWillPresent:"ionViewWillEnter",ionPopoverWillDismiss:"ionViewWillLeave",ionPopoverDidDismiss:"ionViewDidLeave"};function _(){"undefined"!=typeof customElements&&["ion-popover","ion-backdrop"].forEach((t=>{switch(t){case"ion-popover":customElements.get(n(t))||customElements.define(n(t),Q);break;case"ion-backdrop":customElements.get(n(t))||O()}}))}export{Q as P,_ as d}
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * (C) Ionic http://ionicframework.com - MIT License
3
+ */
4
+ import{p as t,H as i,e as o,f as e,w as a,c as r,h as s,d as n,t as d}from"./p-BJoMtgfR.js";import{a as h,i as l,d as p,r as c,f as m,p as f}from"./p-C59ryAuS.js";import{C as u,a as b,d as v}from"./p-BR3tZJmu.js";import{f as x,g as w,r as g,d as k,k as y}from"./p-DgbT0exM.js";import{c as A}from"./p-B-hirT0v.js";import{g as Y}from"./p-CIGNaXM1.js";import{G as D,O,F as E,e as S,B as C,j as M,k as T,n as B,f as P,g as I,h as R}from"./p-7hlGym-0.js";import{g as j}from"./p-DiVJyqlX.js";import{e as N,w as $}from"./p-9VcRUwdB.js";import{b as L}from"./p-CDfQnFrd.js";import{KEYBOARD_DID_OPEN as z}from"./p-D6Ynv7Xh.js";import{c as W}from"./p-Csw8xuz4.js";import{g as F}from"./p-hHmYLOfE.js";import{createGesture as H}from"./p-Cl0B-RWe.js";import{w as V}from"./p-ZjP4CjeZ.js";import{d as Z}from"./p-CoA-aqGF.js";var G;!function(t){t.Dark="DARK",t.Light="LIGHT",t.Default="DEFAULT"}(G||(G={}));const K={getEngine(){const t=Y();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 G.Default;const{style:i}=await t.getInfo();return i}},U=(t,i)=>{if(1===i)return 0;const o=1/(1-i);return t*o+-i*o},J=()=>{!V||V.innerWidth>=768||K.setStyle({style:G.Dark})},X=(t=G.Default)=>{!V||V.innerWidth>=768||K.setStyle({style:t})},_=async(t,i)=>{"function"==typeof t.canDismiss&&await t.canDismiss(void 0,D)&&(i.isRunning()?i.onFinish((()=>{t.dismiss(void 0,"handler")}),{oneTimeCallback:!0}):t.dismiss(void 0,"handler"))},q=t=>.00255275*2.71828**(-14.9619*t)-1.00255*2.71828**(-.0380968*t)+1,Q=.915,tt=(t,i)=>x(400,t/Math.abs(1.1*i),500),it=(t,i)=>{const o=window.innerHeight,e=t.getBoundingClientRect().top,a=Math.round(1e3*(1-i/(o-e)))/1e3;return Math.max(0,Math.min(1,a))},ot=t=>{const{currentBreakpoint:i,backdropBreakpoint:o,expandToScroll:e}=t,a=void 0===o||o<i,r=a?`calc(var(--backdrop-opacity) * ${i})`:"0",s=W("backdropAnimation").fromTo("opacity",0,r);return a&&s.beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),{wrapperAnimation:W("wrapperAnimation").keyframes([{offset:0,opacity:1,transform:"translateY(100%)"},{offset:1,opacity:1,transform:`translateY(${100-100*i}%)`}]),backdropAnimation:s,contentAnimation:e?void 0:W("contentAnimation").keyframes([{offset:0,opacity:1,maxHeight:100*(1-i)+"%"},{offset:1,opacity:1,maxHeight:100*i+"%"}])}},et=t=>{const{currentBreakpoint:i,backdropBreakpoint:o}=t,e=`calc(var(--backdrop-opacity) * ${U(i,o)})`,a=[{offset:0,opacity:e},{offset:1,opacity:0}],r=[{offset:0,opacity:e},{offset:o,opacity:0},{offset:1,opacity:0}],s=W("backdropAnimation").keyframes(0!==o?r:a);return{wrapperAnimation:W("wrapperAnimation").keyframes([{offset:0,opacity:1,transform:`translateY(${100-100*i}%)`},{offset:1,opacity:1,transform:"translateY(100%)"}]),backdropAnimation:s}},at=(t,i)=>{const{presentingEl:o,currentBreakpoint:e,expandToScroll:a}=i,r=w(t),{wrapperAnimation:s,backdropAnimation:n,contentAnimation:d}=void 0!==e?ot(i):{backdropAnimation:W().fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),wrapperAnimation:W().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}),!a&&(null==d||d.addElement(t.querySelector(".ion-page")));const h=W("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,e=w(o),a=W().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",e=`translateY(${i?"-10px":t}) scale(0.915)`;a.afterStyles({transform:e}).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:e,borderRadius:"10px 10px 0 0"}]),h.addAnimation(a)}else if(h.addAnimation(n),i){const t=`translateY(-10px) scale(${i?Q:1})`;a.afterStyles({transform:t}).addElement(e.querySelector(".modal-wrapper")).keyframes([{offset:0,filter:"contrast(1)",transform:"translateY(0) scale(1)"},{offset:1,filter:"contrast(0.85)",transform:t}]);const o=W().afterStyles({transform:t}).addElement(e.querySelector(".modal-shadow")).keyframes([{offset:0,opacity:"1",transform:"translateY(0) scale(1)"},{offset:1,opacity:"0",transform:t}]);h.addAnimation([a,o])}else s.fromTo("opacity","0","1")}else h.addAnimation(n);return h},rt=(t,i,o=500)=>{const{presentingEl:e,currentBreakpoint:a}=i,r=w(t),{wrapperAnimation:s,backdropAnimation:n}=void 0!==a?et(i):{backdropAnimation:W().fromTo("opacity","var(--backdrop-opacity)",0),wrapperAnimation:W().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=W("leaving-base").addElement(t).easing("cubic-bezier(0.32,0.72,0,1)").duration(o).addAnimation(s);if(e){const t=window.innerWidth<768,i="ION-MODAL"===e.tagName&&void 0!==e.presentingElement,o=w(e),a=W().beforeClearStyles(["transform"]).afterClearStyles(["transform"]).onFinish((t=>{1===t&&(e.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)`;a.addElement(e).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(a)}else if(d.addAnimation(n),i){const t=`translateY(-10px) scale(${i?Q:1})`;a.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 e=W().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([a,e])}else s.fromTo("opacity","1","0")}else d.addAnimation(n);return d},st=(t,i)=>{const{currentBreakpoint:o,expandToScroll:e}=i,a=w(t),{wrapperAnimation:r,backdropAnimation:s,contentAnimation:n}=void 0!==o?ot(i):{backdropAnimation:W().fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),wrapperAnimation:W().keyframes([{offset:0,opacity:.01,transform:"translateY(40px)"},{offset:1,opacity:1,transform:"translateY(0px)"}]),contentAnimation:void 0};s.addElement(a.querySelector("ion-backdrop")),r.addElement(a.querySelector(".modal-wrapper")),!e&&(null==n||n.addElement(t.querySelector(".ion-page")));const d=W().addElement(t).easing("cubic-bezier(0.36,0.66,0.04,1)").duration(280).addAnimation([s,r]);return n&&d.addAnimation(n),d},nt=(t,i)=>{const{currentBreakpoint:o}=i,e=w(t),{wrapperAnimation:a,backdropAnimation:r}=void 0!==o?et(i):{backdropAnimation:W().fromTo("opacity","var(--backdrop-opacity)",0),wrapperAnimation:W().keyframes([{offset:0,opacity:.99,transform:"translateY(0px)"},{offset:1,opacity:0,transform:"translateY(40px)"}])};return r.addElement(e.querySelector("ion-backdrop")),a.addElement(e.querySelector(".modal-wrapper")),W().easing("cubic-bezier(0.47,0,0.745,0.715)").duration(200).addAnimation([r,a])};let dt=null,ht=!1;const lt=(t,i)=>{t.style.setProperty("--ion-safe-area-top",i.top),t.style.setProperty("--ion-safe-area-bottom",i.bottom),t.style.setProperty("--ion-safe-area-left",i.left),t.style.setProperty("--ion-safe-area-right",i.right)},pt=t(class extends i{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.didPresent=o(this,"ionModalDidPresent",7),this.willPresent=o(this,"ionModalWillPresent",7),this.willDismiss=o(this,"ionModalWillDismiss",7),this.didDismiss=o(this,"ionModalDidDismiss",7),this.ionBreakpointDidChange=o(this,"ionBreakpointDidChange",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.ionDragStart=o(this,"ionDragStart",7),this.ionDragMove=o(this,"ionDragMove",7),this.ionDragEnd=o(this,"ionDragEnd",7),this.lockController=A(),this.triggerController=S(),this.coreDelegate=u(),this.isSheetModal=!1,this.inheritedAttributes={},this.inline=!1,this.gestureAnimationDismissing=!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,C)},this.onLifecycle=t=>{const i=this.usersElement,o=ct[t.type];if(i&&o){const e=new CustomEvent(o,{bubbles:!1,cancelable:!1,detail:t.detail});i.dispatchEvent(e)}},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.presented&&(clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout((()=>{const t=this.getSafeAreaContext();!t.isCardModal||this.enterAnimation||this.leaveAnimation||this.handleViewTransition(),t.isSheetModal&&this.updateSheetOffsetTop(),t.isSheetModal||t.isCardModal||(this.updateSafeAreaOverrides(),this.wrapperEl&&(this.wrapperEl.style.removeProperty("height"),this.wrapperEl.style.removeProperty("padding-bottom")),this.applyFullscreenSafeArea())}),50))}breakpointsChanged(t){void 0!==t&&(this.sortedBreakpoints=t.sort(((t,i)=>t-i)))}connectedCallback(){const{el:t}=this;M(t),this.triggerChanged()}disconnectedCallback(){this.triggerController.removeClickListener(),this.cleanupViewTransitionListener(),this.cleanupParentRemovalObserver(),this.cleanupSafeAreaOverrides(),this.presented&&T()}componentWillLoad(){var t;const{breakpoints:i,initialBreakpoint:o,el:a,htmlAttributes:r}=this,s=this.isSheetModal=void 0!==i&&void 0!==o,n=["aria-label","role"];this.inheritedAttributes=k(a,n),a.parentNode&&(this.cachedOriginalParent=a.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===o||i.includes(o)||e("[ion-modal] - Your breakpoints array must include the initialBreakpoint value."),(null===(t=this.htmlAttributes)||void 0===t?void 0:t.id)||B(this.el)}componentDidLoad(){!0===this.isOpen&&g((()=>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 b(r,o,this.component,["ion-page"],this.componentProps,e),y(o)?await N(this.usersElement):this.keepContentsMounted||await $(),a((()=>this.el.classList.add("show-modal"))),this.isSheetModal=void 0!==this.breakpoints&&void 0!==this.initialBreakpoint,this.setInitialSafeAreaOverrides();const s=void 0!==i;s&&"ios"===L(this)&&(this.statusBarStyle=await K.getStyle(),J()),await P(this,"modalEnter",at,st,{presentingEl:i,currentBreakpoint:this.initialBreakpoint,backdropBreakpoint:this.backdropBreakpoint,expandToScroll:this.expandToScroll}),this.updateSafeAreaOverrides(),this.applyFullscreenSafeArea(),"undefined"!=typeof window&&(this.keyboardOpenCallback=()=>{this.gesture&&(this.gesture.enable(!1),g((()=>{this.gesture&&this.gesture.enable(!0)})))},window.addEventListener(z,this.keyboardOpenCallback)),this.isSheetModal?this.initSheetGesture():s&&this.initSwipeToClose(),this.initViewTransitionListener(),this.initParentRemovalObserver(),t()}initSwipeToClose(){var t;if("ios"!==L(this))return;const{el:i}=this,o=this.leaveAnimation||r.get("modalLeave",rt),e=this.animation=o(i,{presentingEl:this.presentingElement,expandToScroll:this.expandToScroll});if(!m(i))return void f(i);const a=null!==(t=this.statusBarStyle)&&void 0!==t?t:G.Default;this.gesture=((t,i,o,e,a,r,s)=>{const n=.5,d=t.offsetHeight;let m=!1,f=!1,u=null,b=null,v=!0,g=0;const k=H({el:t,gestureName:"modalSwipeToClose",gesturePriority:O,direction:"y",threshold:10,canStart:t=>{const i=t.event.target;if(null===i||!i.closest)return!0;if(u=h(i),u){if(l(u)){const t=w(u);b=t.querySelector(".inner-scroll")}else b=u;return!u.querySelector("ion-refresher")&&0===b.scrollTop}return null===i.closest("ion-footer")},onStart:o=>{const{deltaY:e}=o;v=!u||!l(u)||u.scrollY,f=void 0!==t.canDismiss&&!0!==t.canDismiss,e>0&&u&&p(u),i.progressStart(!0,m?1:0),a()},onMove:e=>{const{deltaY:a}=e;a>0&&u&&p(u);const s=e.deltaY/d,h=s>=0&&f,l=h?.2:.9999,c=h?q(s/l):s,m=x(1e-4,c,l);i.progressStep(m),m>=n&&g<n?X(o):m<n&&g>=n&&J(),g=m;const b={currentY:e.currentY,deltaY:e.deltaY,velocityY:e.velocityY,progress:it(t,e.deltaY)};r(b)},onEnd:o=>{const a=o.velocityY,r=o.deltaY/d,h=r>=0&&f,l=h?.2:.9999,p=h?q(r/l):r,b=x(1e-4,p,l),w=!h&&(o.deltaY+1e3*a)/d>=n;let g=w?-.001:.001;w?(i.easing("cubic-bezier(0.32, 0.72, 0, 1)"),g+=F([0,0],[.32,.72],[0,1],[1,1],b)[0]):(i.easing("cubic-bezier(1, 0, 0.68, 0.28)"),g+=F([0,0],[1,0],[.68,.28],[1,1],b)[0]);const y=tt(w?r*d:(1-b)*d,a);m=w,k.enable(!1),u&&c(u,v),i.onFinish((()=>{w||k.enable(!0)})).progressEnd(w?1:0,g,y),h&&b>l/4?_(t,i):w&&e();const A={currentY:o.currentY,deltaY:o.deltaY,velocityY:o.velocityY,progress:it(t,o.deltaY)};s(A)}});return k})(i,e,a,(()=>this.cardOnDismiss()),(()=>this.onDragStart()),(t=>this.onDragMove(t)),(t=>this.onDragEnd(t))),this.gesture.enable(!0)}initSheetGesture(){const{wrapperEl:t,initialBreakpoint:i,backdropBreakpoint:o}=this;if(!t||void 0===i)return;const e=this.enterAnimation||r.get("modalEnter",at),a=this.animation=e(this.el,{presentingEl:this.presentingElement,currentBreakpoint:i,backdropBreakpoint:o,expandToScroll:this.expandToScroll});a.progressStart(!0,1);const{gesture:s,moveSheetToBreakpoint:n}=((t,i,o,e,a,r,s=[],n,d,p,c,m,f,u)=>{const b={WRAPPER_KEYFRAMES:[{offset:0,transform:"translateY(0%)"},{offset:1,transform:"translateY(100%)"}],BACKDROP_KEYFRAMES:0!==a?[{offset:0,opacity:"var(--backdrop-opacity)"},{offset:1-a,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%"}]},v=t.querySelector("ion-content"),k=o.clientHeight;let y=e,A=0,Y=!1,D=null,O=null,S=null,C=null;const M=s[s.length-1],T=s[0],B=r.childAnimations.find((t=>"wrapperAnimation"===t.id)),P=r.childAnimations.find((t=>"backdropAnimation"===t.id)),I=r.childAnimations.find((t=>"contentAnimation"===t.id)),R=()=>{!1!==t.focusTrap&&!1!==t.showBackdrop&&(t.style.setProperty("pointer-events","auto"),i.style.setProperty("pointer-events","auto"),t.classList.remove(E))},j=()=>{t.style.setProperty("pointer-events","none"),i.style.setProperty("pointer-events","none"),t.classList.add(E)},N=i=>{if(!O&&(O=Array.from(t.querySelectorAll("ion-footer")),!O.length))return;const o=t.querySelector(".ion-page");if(C=i,"stationary"===i)O.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;O.forEach(((o,e)=>{const a=o.getBoundingClientRect(),r=document.body.getBoundingClientRect();i+=o.clientHeight;const s=a.top-r.top,n=a.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===e){S=s;const i=t.querySelector("ion-header");i&&(S-=i.clientHeight)}})),O.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)}))}};B&&P&&(B.keyframes([...b.WRAPPER_KEYFRAMES]),P.keyframes([...b.BACKDROP_KEYFRAMES]),null==I||I.keyframes([...b.CONTENT_KEYFRAMES]),r.progressStart(!0,1-y),y>a&&!1!==t.focusTrap&&!1!==t.showBackdrop?R():j()),v&&y!==M&&n&&(v.scrollY=!1);const $=i=>{const{breakpoint:o,canDismiss:e,breakpointOffset:d,animated:h}=i,l=e&&0===o,m=l?y:o,f=0!==m;return y=0,B&&P&&(B.keyframes([{offset:0,transform:`translateY(${100*d}%)`},{offset:1,transform:`translateY(${100*(1-m)}%)`}]),P.keyframes([{offset:0,opacity:`calc(var(--backdrop-opacity) * ${U(1-d,a)})`},{offset:1,opacity:`calc(var(--backdrop-opacity) * ${U(m,a)})`}]),I&&I.keyframes([{offset:0,maxHeight:100*(1-d)+"%"},{offset:1,maxHeight:100*m+"%"}]),r.progressStep(0)),F.enable(!1),l?_(t,r):f||p(),!v||m!==s[s.length-1]&&n||(v.scrollY=!0),n||0!==m||N("stationary"),new Promise((i=>{r.onFinish((()=>{f?(n||N("stationary"),B&&P?g((()=>{B.keyframes([...b.WRAPPER_KEYFRAMES]),P.keyframes([...b.BACKDROP_KEYFRAMES]),null==I||I.keyframes([...b.CONTENT_KEYFRAMES]),r.progressStart(!0,1-m),y=m,c(y),y>a&&!1!==t.focusTrap&&!1!==t.showBackdrop?R():j(),F.enable(!0),i()})):(F.enable(!0),i())):i()}),{oneTimeCallback:!0}).progressEnd(1,0,h?500:0)}))},L=t=>{const i=o.getBoundingClientRect().top+t,e=z(i);return s.reduce(((t,i)=>Math.abs(i-e)<Math.abs(t-e)?i:t))},z=t=>{const i=s[s.length-1],o=W(s[0]),e=W(i),a=Math.round((o-t)/(o-e)*1e3)/1e3;return Math.max(0,Math.min(1,a))},W=i=>{const o=t.getBoundingClientRect();return window.innerHeight-o.height*i},F=H({el:o,gestureName:"modalSheet",gesturePriority:40,direction:"y",threshold:10,canStart:t=>{const i=h(t.event.target);if(y=d(),!n&&i)return 0===(l(i)?w(i).querySelector(".inner-scroll"):i).scrollTop;if(1===y&&i){const t=l(i)?w(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===T,!n){const t=h(i.event.target);D=t&&l(t)?w(t).querySelector(".inner-scroll"):t}n||N("moving"),i.deltaY>0&&v&&(v.scrollY=!1),g((()=>{t.focus()})),r.progressStart(!0,1-y),m()},onMove:t=>{if(n||null===S||null===C||(t.currentY>=S&&"moving"===C?N("stationary"):t.currentY<S&&"stationary"===C&&N("moving")),!n&&t.deltaY<=0&&D)return;t.deltaY>0&&v&&(v.scrollY=!1);const i=s.length>1?1-s[1]:void 0,o=1-y+t.deltaY/k,e=void 0!==i&&o>=i&&Y,a=e?.95:.9999,d=e&&void 0!==i?i+q((o-i)/(a-i)):o;A=x(1e-4,d,a),r.progressStep(A);const h=L(t.deltaY),l={currentY:t.currentY,deltaY:t.deltaY,velocityY:t.velocityY,progress:z(t.currentY),snapBreakpoint:h};f(l)},onEnd:t=>{const i=L(t.deltaY),o={currentY:t.currentY,deltaY:t.deltaY,velocityY:t.velocityY,progress:z(t.currentY),snapBreakpoint:i};if(!n&&t.deltaY<=0&&D&&D.scrollTop>0)return N("stationary"),void u(o);$({breakpoint:i,breakpointOffset:A,canDismiss:Y,animated:!0}),u(o)}});return{gesture:F,moveSheetToBreakpoint:$}})(this.el,this.backdropEl,t,i,o,a,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.onDragStart()),(t=>this.onDragMove(t)),(t=>this.onDragEnd(t)));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 o=this.cachedPageParent;if(!o||"ION-APP"===o.tagName)return;const e=Array.from(o.children).some((t=>{var o;return!(t===this.el||t instanceof i&&"none"===window.getComputedStyle(t).display||"TEMPLATE"===t.tagName||"SLOT"===t.tagName||t.nodeType===Node.TEXT_NODE&&!(null===(o=t.textContent)||void 0===o?void 0:o.trim()))}));if(e)return;o.classList.add("ion-page-overlay-passthrough");const a=o.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}sheetOnDismiss(){this.gestureAnimationDismissing=!0,this.animation.onFinish((async()=>{this.currentBreakpoint=0,this.ionBreakpointDidChange.emit({breakpoint:this.currentBreakpoint}),await this.dismiss(void 0,D),this.gestureAnimationDismissing=!1}))}cardOnDismiss(){this.gestureAnimationDismissing=!0,X(this.statusBarStyle),this.animation.onFinish((async()=>{await this.dismiss(void 0,D),this.gestureAnimationDismissing=!1}))}async dismiss(t,i){var o;if(this.gestureAnimationDismissing&&i!==D)return!1;clearTimeout(this.resizeTimeout),this.resizeTimeout=void 0;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)&&X(this.statusBarStyle),"undefined"!=typeof window&&this.keyboardOpenCallback&&(window.removeEventListener(z,this.keyboardOpenCallback),this.keyboardOpenCallback=void 0);const s=await I(this,t,i,"modalLeave",rt,nt,{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 v(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.cleanupSafeAreaOverrides(),this.cleanupChildRoutePassthrough()}return this.currentBreakpoint=void 0,this.animation=void 0,e(),s}onDidDismiss(){return R(this.el,"ionModalDidDismiss")}onWillDismiss(){return R(this.el,"ionModalWillDismiss")}async setCurrentBreakpoint(t){if(!this.isSheetModal)return void e("[ion-modal] - setCurrentBreakpoint is only supported on sheet modals.");if(!this.breakpoints.includes(t))return void e(`[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:o,canDismiss:a,breakpoints:r,animated:s}=this;i!==t&&o&&(this.sheetTransition=o({breakpoint:t,breakpointOffset:1-i,canDismiss:void 0!==a&&!0!==a&&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)),e=o.indexOf(i),a=o[(e+1)%o.length];return await this.setCurrentBreakpoint(a),!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:e}=i;if(!e)return W("portrait-to-landscape-transition");const a="ION-MODAL"===e.tagName&&void 0!==e.presentingElement,r=w(e),s=document.body,n=W("portrait-to-landscape-transition").addElement(t).easing("cubic-bezier(0.32,0.72,0,1)").duration(o),d=W().beforeStyles({transform:"translateY(0)","transform-origin":"top center",overflow:"hidden"});if(a){const t="translateY(-10px) scale(0.915)",i="translateY(0px) scale(1)";d.addElement(e).afterStyles({transform:i}).fromTo("transform",t,i).fromTo("filter","contrast(0.85)","contrast(1)");const o=W().addElement(r.querySelector(".modal-shadow")).afterStyles({transform:i,opacity:"0"}).fromTo("transform",t,i);n.addAnimation([d,o])}else{const i=w(t),o=W().addElement(i.querySelectorAll(".modal-wrapper, .modal-shadow")).fromTo("opacity","1","1"),a=W().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(e).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,a])}return n})(this.el,{presentingEl:i}):((t,i,o=300)=>{const{presentingEl:e}=i;if(!e)return W("landscape-to-portrait-transition");const a="ION-MODAL"===e.tagName&&void 0!==e.presentingElement,r=w(e),s=document.body,n=W("landscape-to-portrait-transition").addElement(t).easing("cubic-bezier(0.32,0.72,0,1)").duration(o),d=W().beforeStyles({transform:"translateY(0)","transform-origin":"top center",overflow:"hidden"});if(a){const t="translateY(-10px) scale(0.915)",i="translateY(0) scale(1)";d.addElement(e).afterStyles({transform:i}).fromTo("transform",t,i);const o=W().addElement(r.querySelector(".modal-shadow")).afterStyles({transform:i,opacity:"0"}).fromTo("transform",t,i);n.addAnimation([d,o])}else{const i=w(t),o=W().addElement(i.querySelectorAll(".modal-wrapper, .modal-shadow")).fromTo("opacity","1","1"),a=W().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(e).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,a])}return n})(this.el,{presentingEl:i}),this.currentViewIsPortrait=t,this.viewTransitionAnimation=o,o.play().then((()=>{this.viewTransitionAnimation=void 0,g((()=>this.updateSafeAreaOverrides())),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),g((()=>{this.ensureCorrectModalPosition(),this.initSwipeToClose()})))}ensureCorrectModalPosition(){const{el:t,presentingElement:i}=this,o=w(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 e=t===this.cachedOriginalParent,a=!!this.cachedOriginalParent&&(null===(o=(i=t).contains)||void 0===o?void 0:o.call(i,this.cachedOriginalParent));return e||a}))||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}onDragStart(){this.ionDragStart.emit()}onDragMove(t){this.ionDragMove.emit(t)}onDragEnd(t){this.ionDragEnd.emit(t)}getSafeAreaContext(){return{isSheetModal:this.isSheetModal,isCardModal:void 0!==this.presentingElement&&"ios"===L(this),presentingElement:this.presentingElement,breakpoints:this.breakpoints,currentBreakpoint:this.currentBreakpoint}}setInitialSafeAreaOverrides(){const t=this.getSafeAreaContext(),i=(t=>{const{isSheetModal:i,isCardModal:o}=t;return i?{top:"0px",bottom:"inherit",left:"0px",right:"0px"}:o?{top:"inherit",bottom:"inherit",left:"0px",right:"0px"}:V&&V.matchMedia("(min-width: 768px) and (min-height: 600px)").matches?{top:"0px",bottom:"0px",left:"0px",right:"0px"}:{top:"inherit",bottom:"inherit",left:"inherit",right:"inherit"}})(t);lt(this.el,i),t.isSheetModal&&this.updateSheetOffsetTop()}updateSheetOffsetTop(){const t=(()=>{if(null!==dt)return dt;const t=null==V?void 0:V.document;if(!(null==t?void 0:t.body))return 0;const i=t.createElement("div");i.style.cssText="position:fixed;visibility:hidden;pointer-events:none;top:0;left:0;padding-top:var(--ion-safe-area-top,0px);",t.body.appendChild(i);const o=parseFloat(getComputedStyle(i).paddingTop)||0;return i.remove(),dt=o,ht||(ht=!0,g((()=>{dt=null,ht=!1}))),o})();this.el.style.setProperty("--ion-modal-offset-top",`${t}px`)}updateSafeAreaOverrides(){const{wrapperEl:t,el:i}=this,o=this.getSafeAreaContext();if(o.isSheetModal)return;if(o.isCardModal)return;if(!t)return;const e=(t=>{var i,o;const e=t.getBoundingClientRect(),a=null!==(i=null==V?void 0:V.innerHeight)&&void 0!==i?i:0,r=null!==(o=null==V?void 0:V.innerWidth)&&void 0!==o?o:0;return{top:e.top<=5?"inherit":"0px",bottom:e.bottom>=a-5?"inherit":"0px",left:e.left<=5?"inherit":"0px",right:e.right>=r-5?"inherit":"0px"}})(t);lt(i,e)}applyFullscreenSafeArea(){const{wrapperEl:t,el:i}=this;if(!t)return;const o=this.getSafeAreaContext();if(o.isSheetModal||o.isCardModal)return;let e=!1,a=!1;for(const t of Array.from(i.children)){"ION-CONTENT"===t.tagName&&(e=!0),"ION-FOOTER"===t.tagName&&(a=!0);for(const i of Array.from(t.children))"ION-CONTENT"===i.tagName&&(e=!0),"ION-FOOTER"===i.tagName&&(a=!0)}e&&!a&&(t.style.setProperty("height","calc(var(--height) - var(--ion-safe-area-bottom, 0px))"),t.style.setProperty("padding-bottom","var(--ion-safe-area-bottom, 0px)"))}cleanupSafeAreaOverrides(){var t;(t=this.el).style.removeProperty("--ion-safe-area-top"),t.style.removeProperty("--ion-safe-area-bottom"),t.style.removeProperty("--ion-safe-area-left"),t.style.removeProperty("--ion-safe-area-right"),this.el.style.removeProperty("--ion-modal-offset-top"),this.wrapperEl&&(this.wrapperEl.style.removeProperty("height"),this.wrapperEl.style.removeProperty("padding-bottom"))}render(){const{handle:t,isSheetModal:i,presentingElement:o,htmlAttributes:e,handleBehavior:a,inheritedAttributes:r,focusTrap:d,expandToScroll:h}=this,l=!1!==t&&i,p=L(this),c=void 0!==o&&"ios"===p,m="cycle"===a;return s(n,Object.assign({key:"e6df0917ac03a8d6bf67cc9bebf075d2b804ba22","no-router":!0,tabIndex:m&&i&&l?0:-1},e,{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,[E]:!1===d},j(this.cssClass)),onIonBackdropTap:this.onBackdropTap,onIonModalDidPresent:this.onLifecycle,onIonModalWillPresent:this.onLifecycle,onIonModalWillDismiss:this.onLifecycle,onIonModalDidDismiss:this.onLifecycle,onFocus:this.onModalFocus}),s("ion-backdrop",{key:"710ed1cbb6ae9c1a1fa7ae774fd44aa3bbee8381",ref:t=>this.backdropEl=t,visible:this.showBackdrop,tappable:this.backdropDismiss,part:"backdrop"}),"ios"===p&&s("div",{key:"c9051fcd099e9b73e17f015dea6e16fbd73e4df4",class:"modal-shadow"}),s("div",Object.assign({key:"21e42d40099a569d95a4e04aa6d314c7d45c6192",role:"dialog"},r,{"aria-modal":"true",class:"modal-wrapper ion-overlay-wrapper",part:"content",ref:t=>this.wrapperEl=t}),l&&s("button",{key:"b48a6c32c9a7ebe5e070e8d9f3510d55d4bd1f9f",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}),s("slot",{key:"2a20160f66629c14e3414bbe01e5ee89101d02be",onSlotchange:this.onSlotChange})))}get el(){return this}static get watchers(){return{isOpen:[{onIsOpenChange:0}],trigger:[{triggerChanged:0}]}}static get style(){return{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-modal-offset-top, 0px) + 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-modal-offset-top, 0px) + 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}'}}},[289,"ion-modal",{hasController:[4,"has-controller"],overlayIndex:[2,"overlay-index"],delegate:[16],keyboardClose:[4,"keyboard-close"],enterAnimation:[16],leaveAnimation:[16],breakpoints:[16],expandToScroll:[4,"expand-to-scroll"],initialBreakpoint:[2,"initial-breakpoint"],backdropBreakpoint:[2,"backdrop-breakpoint"],handle:[4],handleBehavior:[1,"handle-behavior"],component:[1],componentProps:[16],cssClass:[1,"css-class"],backdropDismiss:[4,"backdrop-dismiss"],showBackdrop:[4,"show-backdrop"],animated:[4],presentingElement:[16],htmlAttributes:[16],isOpen:[4,"is-open"],trigger:[1],keepContentsMounted:[4,"keep-contents-mounted"],focusTrap:[4,"focus-trap"],canDismiss:[4,"can-dismiss"],isSheetModal:[32],presented:[32],present:[64],dismiss:[64],onDidDismiss:[64],onWillDismiss:[64],setCurrentBreakpoint:[64],getCurrentBreakpoint:[64]},[[9,"resize","onWindowResize"]],{isOpen:[{onIsOpenChange:0}],trigger:[{triggerChanged:0}]}]),ct={ionModalDidPresent:"ionViewDidEnter",ionModalWillPresent:"ionViewWillEnter",ionModalWillDismiss:"ionViewWillLeave",ionModalDidDismiss:"ionViewDidLeave"};function mt(){"undefined"!=typeof customElements&&["ion-modal","ion-backdrop"].forEach((t=>{switch(t){case"ion-modal":customElements.get(d(t))||customElements.define(d(t),pt);break;case"ion-backdrop":customElements.get(d(t))||Z()}}))}export{pt as M,mt as d}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * (C) Ionic http://ionicframework.com - MIT License
3
3
  */
4
- import{p as o,H as e,h as i,i as t,d as s,t as r}from"./p-BJoMtgfR.js";import{s as n}from"./p-Cq8cQ0NL.js";import{g as a}from"./p-DiVJyqlX.js";import{b as c}from"./p-CDfQnFrd.js";import{d as p}from"./p-cvHphHJA.js";import{d as m}from"./p-YLXPWgVj.js";import{d as l}from"./p-kvaDs24J.js";import{d}from"./p-B6FQ0cKR.js";import{d as b}from"./p-DYdpXONG.js";import{d as h}from"./p-BagjAGC0.js";import{d as f}from"./p-BSB38Tek.js";import{d as u}from"./p-Bk2zuNWT.js";import{d as v}from"./p-fpbh6w3f.js";const g=o(class extends e{constructor(o){super(),!1!==o&&this.__registerHost(),this.options=[]}findOptionFromEvent(o){const{options:e}=this;return e.find((e=>e.value===o.target.value))}callOptionHandler(o){const e=this.findOptionFromEvent(o),i=this.getValues(o);(null==e?void 0:e.handler)&&n(e.handler,i)}dismissParentPopover(){const o=this.el.closest("ion-popover");o&&o.dismiss()}setChecked(o){const{multiple:e}=this,i=this.findOptionFromEvent(o);e&&i&&(i.checked=o.detail.checked)}getValues(o){const{multiple:e,options:i}=this;if(e)return i.filter((o=>o.checked)).map((o=>o.value));const t=this.findOptionFromEvent(o);return t?t.value:void 0}renderOptions(o){const{multiple:e}=this;return!0===e?this.renderCheckboxOptions(o):this.renderRadioOptions(o)}renderCheckboxOptions(o){return o.map((o=>i("ion-item",{class:Object.assign({"item-checkbox-checked":o.checked},a(o.cssClass))},i("ion-checkbox",{value:o.value,disabled:o.disabled,checked:o.checked,justify:"start",labelPlacement:"end",onIonChange:o=>{this.setChecked(o),this.callOptionHandler(o),t(this)}},o.text))))}renderRadioOptions(o){const e=o.filter((o=>o.checked)).map((o=>o.value))[0];return i("ion-radio-group",{value:e,onIonChange:o=>this.callOptionHandler(o)},o.map((o=>i("ion-item",{class:Object.assign({"item-radio-checked":o.value===e},a(o.cssClass))},i("ion-radio",{value:o.value,disabled:o.disabled,onClick:()=>this.dismissParentPopover(),onKeyUp:o=>{" "===o.key&&this.dismissParentPopover()}},o.text)))))}render(){const{header:o,message:e,options:t,subHeader:r}=this,n=void 0!==r||void 0!==e;return i(s,{key:"0c9845a40d3fc392b0a7d64e2a6ed27d94bb7634",class:c(this)},i("ion-list",{key:"84a30f6661b0f8c00e6fa199658ed2adbcf27358"},void 0!==o&&i("ion-list-header",{key:"13f5f56bbfbc06751fa516291a2da72629b60ece"},o),n&&i("ion-item",{key:"3d39d18e720e798bbde334e79e6832091c7dfb81"},i("ion-label",{key:"d3051b0d140120b44bf5e79572f6f287e7cfb03a",class:"ion-text-wrap"},void 0!==r&&i("h3",{key:"b16805956f3316f8ec703c123b76f717488e8637"},r),void 0!==e&&i("p",{key:"2215ac4ab4146a14e75a79192e319a8016286b5f"},e))),this.renderOptions(t)))}get el(){return this}static get style(){return{ios:".sc-ion-select-popover-ios-h ion-list.sc-ion-select-popover-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}ion-list-header.sc-ion-select-popover-ios,ion-label.sc-ion-select-popover-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}.sc-ion-select-popover-ios-h{overflow-y:auto}",md:'.sc-ion-select-popover-md-h ion-list.sc-ion-select-popover-md{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}ion-list-header.sc-ion-select-popover-md,ion-label.sc-ion-select-popover-md{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}.sc-ion-select-popover-md-h{overflow-y:auto}ion-list.sc-ion-select-popover-md ion-radio.sc-ion-select-popover-md::part(container),ion-list.sc-ion-select-popover-md ion-radio.sc-ion-select-popover-md [part~="container"]{display:none}ion-list.sc-ion-select-popover-md ion-radio.sc-ion-select-popover-md::part(label),ion-list.sc-ion-select-popover-md ion-radio.sc-ion-select-popover-md [part~="label"]{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}ion-item.sc-ion-select-popover-md{--inner-border-width:0}.item-radio-checked.sc-ion-select-popover-md{--background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.08);--background-focused:var(--ion-color-primary, #0054e9);--background-focused-opacity:0.2;--background-hover:var(--ion-color-primary, #0054e9);--background-hover-opacity:0.12}.item-checkbox-checked.sc-ion-select-popover-md{--background-activated:var(--ion-item-color, var(--ion-text-color, #000));--background-focused:var(--ion-item-color, var(--ion-text-color, #000));--background-hover:var(--ion-item-color, var(--ion-text-color, #000));--color:var(--ion-color-primary, #0054e9)}'}}},[34,"ion-select-popover",{header:[1],subHeader:[1,"sub-header"],message:[1],multiple:[4],options:[16]}]);function k(){"undefined"!=typeof customElements&&["ion-select-popover","ion-checkbox","ion-icon","ion-item","ion-label","ion-list","ion-list-header","ion-radio","ion-radio-group","ion-ripple-effect"].forEach((o=>{switch(o){case"ion-select-popover":customElements.get(r(o))||customElements.define(r(o),g);break;case"ion-checkbox":customElements.get(r(o))||p();break;case"ion-icon":customElements.get(r(o))||m();break;case"ion-item":customElements.get(r(o))||l();break;case"ion-label":customElements.get(r(o))||d();break;case"ion-list":customElements.get(r(o))||b();break;case"ion-list-header":customElements.get(r(o))||h();break;case"ion-radio":customElements.get(r(o))||f();break;case"ion-radio-group":customElements.get(r(o))||u();break;case"ion-ripple-effect":customElements.get(r(o))||v()}}))}export{g as S,k as d}
4
+ import{p as o,H as e,h as i,i as t,d as s,t as r}from"./p-BJoMtgfR.js";import{s as n}from"./p-7hlGym-0.js";import{g as a}from"./p-DiVJyqlX.js";import{b as c}from"./p-CDfQnFrd.js";import{d as p}from"./p-cvHphHJA.js";import{d as m}from"./p-YLXPWgVj.js";import{d as l}from"./p-kvaDs24J.js";import{d}from"./p-B6FQ0cKR.js";import{d as b}from"./p-DYdpXONG.js";import{d as h}from"./p-BagjAGC0.js";import{d as f}from"./p-BSB38Tek.js";import{d as u}from"./p-Bk2zuNWT.js";import{d as v}from"./p-fpbh6w3f.js";const g=o(class extends e{constructor(o){super(),!1!==o&&this.__registerHost(),this.options=[]}findOptionFromEvent(o){const{options:e}=this;return e.find((e=>e.value===o.target.value))}callOptionHandler(o){const e=this.findOptionFromEvent(o),i=this.getValues(o);(null==e?void 0:e.handler)&&n(e.handler,i)}dismissParentPopover(){const o=this.el.closest("ion-popover");o&&o.dismiss()}setChecked(o){const{multiple:e}=this,i=this.findOptionFromEvent(o);e&&i&&(i.checked=o.detail.checked)}getValues(o){const{multiple:e,options:i}=this;if(e)return i.filter((o=>o.checked)).map((o=>o.value));const t=this.findOptionFromEvent(o);return t?t.value:void 0}renderOptions(o){const{multiple:e}=this;return!0===e?this.renderCheckboxOptions(o):this.renderRadioOptions(o)}renderCheckboxOptions(o){return o.map((o=>i("ion-item",{class:Object.assign({"item-checkbox-checked":o.checked},a(o.cssClass))},i("ion-checkbox",{value:o.value,disabled:o.disabled,checked:o.checked,justify:"start",labelPlacement:"end",onIonChange:o=>{this.setChecked(o),this.callOptionHandler(o),t(this)}},o.text))))}renderRadioOptions(o){const e=o.filter((o=>o.checked)).map((o=>o.value))[0];return i("ion-radio-group",{value:e,onIonChange:o=>this.callOptionHandler(o)},o.map((o=>i("ion-item",{class:Object.assign({"item-radio-checked":o.value===e},a(o.cssClass))},i("ion-radio",{value:o.value,disabled:o.disabled,onClick:()=>this.dismissParentPopover(),onKeyUp:o=>{" "===o.key&&this.dismissParentPopover()}},o.text)))))}render(){const{header:o,message:e,options:t,subHeader:r}=this,n=void 0!==r||void 0!==e;return i(s,{key:"0c9845a40d3fc392b0a7d64e2a6ed27d94bb7634",class:c(this)},i("ion-list",{key:"84a30f6661b0f8c00e6fa199658ed2adbcf27358"},void 0!==o&&i("ion-list-header",{key:"13f5f56bbfbc06751fa516291a2da72629b60ece"},o),n&&i("ion-item",{key:"3d39d18e720e798bbde334e79e6832091c7dfb81"},i("ion-label",{key:"d3051b0d140120b44bf5e79572f6f287e7cfb03a",class:"ion-text-wrap"},void 0!==r&&i("h3",{key:"b16805956f3316f8ec703c123b76f717488e8637"},r),void 0!==e&&i("p",{key:"2215ac4ab4146a14e75a79192e319a8016286b5f"},e))),this.renderOptions(t)))}get el(){return this}static get style(){return{ios:".sc-ion-select-popover-ios-h ion-list.sc-ion-select-popover-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}ion-list-header.sc-ion-select-popover-ios,ion-label.sc-ion-select-popover-ios{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}.sc-ion-select-popover-ios-h{overflow-y:auto}",md:'.sc-ion-select-popover-md-h ion-list.sc-ion-select-popover-md{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}ion-list-header.sc-ion-select-popover-md,ion-label.sc-ion-select-popover-md{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}.sc-ion-select-popover-md-h{overflow-y:auto}ion-list.sc-ion-select-popover-md ion-radio.sc-ion-select-popover-md::part(container),ion-list.sc-ion-select-popover-md ion-radio.sc-ion-select-popover-md [part~="container"]{display:none}ion-list.sc-ion-select-popover-md ion-radio.sc-ion-select-popover-md::part(label),ion-list.sc-ion-select-popover-md ion-radio.sc-ion-select-popover-md [part~="label"]{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}ion-item.sc-ion-select-popover-md{--inner-border-width:0}.item-radio-checked.sc-ion-select-popover-md{--background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.08);--background-focused:var(--ion-color-primary, #0054e9);--background-focused-opacity:0.2;--background-hover:var(--ion-color-primary, #0054e9);--background-hover-opacity:0.12}.item-checkbox-checked.sc-ion-select-popover-md{--background-activated:var(--ion-item-color, var(--ion-text-color, #000));--background-focused:var(--ion-item-color, var(--ion-text-color, #000));--background-hover:var(--ion-item-color, var(--ion-text-color, #000));--color:var(--ion-color-primary, #0054e9)}'}}},[34,"ion-select-popover",{header:[1],subHeader:[1,"sub-header"],message:[1],multiple:[4],options:[16]}]);function k(){"undefined"!=typeof customElements&&["ion-select-popover","ion-checkbox","ion-icon","ion-item","ion-label","ion-list","ion-list-header","ion-radio","ion-radio-group","ion-ripple-effect"].forEach((o=>{switch(o){case"ion-select-popover":customElements.get(r(o))||customElements.define(r(o),g);break;case"ion-checkbox":customElements.get(r(o))||p();break;case"ion-icon":customElements.get(r(o))||m();break;case"ion-item":customElements.get(r(o))||l();break;case"ion-label":customElements.get(r(o))||d();break;case"ion-list":customElements.get(r(o))||b();break;case"ion-list-header":customElements.get(r(o))||h();break;case"ion-radio":customElements.get(r(o))||f();break;case"ion-radio-group":customElements.get(r(o))||u();break;case"ion-ripple-effect":customElements.get(r(o))||v()}}))}export{g as S,k as d}
@@ -15,7 +15,7 @@ var index$2 = require('./index-CqT-2gKy.js');
15
15
  var config = require('./config-BukYi_pW.js');
16
16
  var theme = require('./theme-CeDs6Hcv.js');
17
17
  var index$3 = require('./index-CFUwM5x_.js');
18
- var overlays = require('./overlays-C2jiBSNQ.js');
18
+ var overlays = require('./overlays-MjvhwPt2.js');
19
19
  require('./index-DkNv4J_i.js');
20
20
  require('./gesture-controller-dtqlP_q4.js');
21
21
  require('./hardware-back-button-C4rMJ5uI.js');
@@ -7,7 +7,7 @@ var index = require('./index-CqT-2gKy.js');
7
7
  var buttonActive = require('./button-active-FscMI17-.js');
8
8
  var helpers = require('./helpers-CxTYJdbT.js');
9
9
  var lockController = require('./lock-controller-aDB9wrEf.js');
10
- var overlays = require('./overlays-C2jiBSNQ.js');
10
+ var overlays = require('./overlays-MjvhwPt2.js');
11
11
  var theme = require('./theme-CeDs6Hcv.js');
12
12
  var ionicGlobal = require('./ionic-global-Bc3kJi1Z.js');
13
13
  var animation = require('./animation-Dg4yiuR2.js');
@@ -385,6 +385,10 @@ const ActionSheet = class {
385
385
  this.gesture = undefined;
386
386
  }
387
387
  this.triggerController.removeClickListener();
388
+ // Clean up aria-hidden if removed without dismiss() being called
389
+ if (this.presented) {
390
+ overlays.cleanupRootFocusTrapAccessibility();
391
+ }
388
392
  }
389
393
  componentWillLoad() {
390
394
  var _a;
@@ -488,12 +492,12 @@ const ActionSheet = class {
488
492
  const cancelButton = allButtons.find((b) => b.role === 'cancel');
489
493
  const buttons = allButtons.filter((b) => b.role !== 'cancel');
490
494
  const headerID = `action-sheet-${overlayIndex}-header`;
491
- return (index.h(index.Host, Object.assign({ key: '173fcff5b1da7c33c267de4667591c946b8c8d03', role: "dialog", "aria-modal": "true", "aria-labelledby": header !== undefined ? headerID : null, tabindex: "-1" }, htmlAttributes, { style: {
495
+ return (index.h(index.Host, Object.assign({ key: 'fc8e6c837c7e16d78348a3109f5dc992f111784a', role: "dialog", "aria-modal": "true", "aria-labelledby": header !== undefined ? headerID : null, tabindex: "-1" }, htmlAttributes, { style: {
492
496
  zIndex: `${20000 + this.overlayIndex}`,
493
- }, class: Object.assign(Object.assign({ [mode]: true }, theme.getClassMap(this.cssClass)), { 'overlay-hidden': true, 'action-sheet-translucent': this.translucent }), onIonActionSheetWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }), index.h("ion-backdrop", { key: '521ede659f747864f6c974e09016436eceb7158c', tappable: this.backdropDismiss }), index.h("div", { key: '7a7946fc434bc444f16a70638f5e948c69d33fcd', tabindex: "0", "aria-hidden": "true" }), index.h("div", { key: 'bcff39a580489dbafa255842e57aa8602c6d0f18', class: "action-sheet-wrapper ion-overlay-wrapper", ref: (el) => (this.wrapperEl = el) }, index.h("div", { key: '84bba13ce14261f0f0daa3f9c77648c9e7f36e0e', class: "action-sheet-container" }, index.h("div", { key: 'd9c8ac404fd6719a7adf8cb36549f67616f9a0c4', class: "action-sheet-group", ref: (el) => (this.groupEl = el), role: hasRadioButtons ? 'radiogroup' : undefined }, header !== undefined && (index.h("div", { key: '180433a8ad03ef5c54728a1a8f34715b6921d658', id: headerID, class: {
497
+ }, class: Object.assign(Object.assign({ [mode]: true }, theme.getClassMap(this.cssClass)), { 'overlay-hidden': true, 'action-sheet-translucent': this.translucent }), onIonActionSheetWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }), index.h("ion-backdrop", { key: 'e558804050a8ba80dcca73308bbcb4b31687ba70', tappable: this.backdropDismiss }), index.h("div", { key: '6697622f6a62a460eac489afc5cd504eda002140', tabindex: "0", "aria-hidden": "true" }), index.h("div", { key: '4c05e7a9a20953faaa8ea0eab739b9b400895137', class: "action-sheet-wrapper ion-overlay-wrapper", ref: (el) => (this.wrapperEl = el) }, index.h("div", { key: '43bbc9b7217570cfc62789b4987e61a6e51a1c5f', class: "action-sheet-container" }, index.h("div", { key: '5f9b36b5396043997d7b74e29ad3738b2af8821e', class: "action-sheet-group", ref: (el) => (this.groupEl = el), role: hasRadioButtons ? 'radiogroup' : undefined }, header !== undefined && (index.h("div", { key: '3306e90dace90046d226b1eb95b06af11eebba5e', id: headerID, class: {
494
498
  'action-sheet-title': true,
495
499
  'action-sheet-has-sub-title': this.subHeader !== undefined,
496
- } }, header, this.subHeader && index.h("div", { key: '7138e79e61b1a8f42bc5a9175c57fa2f15d7ec5a', class: "action-sheet-sub-title" }, this.subHeader))), this.renderActionSheetButtons(buttons)), cancelButton && (index.h("div", { key: 'b617c722f5b8028d73ed34b69310f312c65f34a7', class: "action-sheet-group action-sheet-group-cancel" }, index.h("button", Object.assign({ key: 'd0dd876fc48815df3710413c201c0b445a8e16c0' }, cancelButton.htmlAttributes, { type: "button", class: buttonClass(cancelButton), onClick: () => this.buttonClick(cancelButton) }), index.h("span", { key: 'e7b960157cc6fc5fe92a12090b2be55e8ae072e4', class: "action-sheet-button-inner" }, cancelButton.icon && (index.h("ion-icon", { key: '05498ffc60cab911dbff0ecbc6168dea59ada9a5', icon: cancelButton.icon, "aria-hidden": "true", lazy: false, class: "action-sheet-icon" })), cancelButton.text), mode === 'md' && index.h("ion-ripple-effect", { key: '3d401346cea301be4ca03671f7370f6f4b0b6bde' })))))), index.h("div", { key: '971f3c5fcc07f36c28eb469a47ec0290c692e139', tabindex: "0", "aria-hidden": "true" })));
500
+ } }, header, this.subHeader && index.h("div", { key: 'ee8e87e627e8eb6afdb1f4c3f0ef34c29a2b69c6', class: "action-sheet-sub-title" }, this.subHeader))), this.renderActionSheetButtons(buttons)), cancelButton && (index.h("div", { key: 'cb568ea8502afd8d913c0d0107db4fc98b5e50c6', class: "action-sheet-group action-sheet-group-cancel" }, index.h("button", Object.assign({ key: 'd11ca6898fa308f494f2183ffc45bbcf971c14cb' }, cancelButton.htmlAttributes, { type: "button", class: buttonClass(cancelButton), onClick: () => this.buttonClick(cancelButton) }), index.h("span", { key: 'b18e80930fdd0515d3647846729d392971c7c511', class: "action-sheet-button-inner" }, cancelButton.icon && (index.h("ion-icon", { key: '4e0a3fdcedaa480329080a8597df29746c14fd06', icon: cancelButton.icon, "aria-hidden": "true", lazy: false, class: "action-sheet-icon" })), cancelButton.text), mode === 'md' && index.h("ion-ripple-effect", { key: 'fd2be8895b57b74bc83ee54a5d738472ad5fdb00' })))))), index.h("div", { key: 'b08dba5d658f9a5a64d76dc7eb8aba720c9333c3', tabindex: "0", "aria-hidden": "true" })));
497
501
  }
498
502
  get el() { return index.getElement(this); }
499
503
  static get watchers() { return {
@@ -8,7 +8,7 @@ var config = require('./config-BukYi_pW.js');
8
8
  var buttonActive = require('./button-active-FscMI17-.js');
9
9
  var helpers = require('./helpers-CxTYJdbT.js');
10
10
  var lockController = require('./lock-controller-aDB9wrEf.js');
11
- var overlays = require('./overlays-C2jiBSNQ.js');
11
+ var overlays = require('./overlays-MjvhwPt2.js');
12
12
  var theme = require('./theme-CeDs6Hcv.js');
13
13
  var ionicGlobal = require('./ionic-global-Bc3kJi1Z.js');
14
14
  var animation = require('./animation-Dg4yiuR2.js');
@@ -305,6 +305,10 @@ const Alert = class {
305
305
  this.gesture.destroy();
306
306
  this.gesture = undefined;
307
307
  }
308
+ // Clean up aria-hidden if removed without dismiss() being called
309
+ if (this.presented) {
310
+ overlays.cleanupRootFocusTrapAccessibility();
311
+ }
308
312
  }
309
313
  componentDidLoad() {
310
314
  /**
@@ -538,9 +542,9 @@ const Alert = class {
538
542
  * If neither are defined, do not set aria-labelledby.
539
543
  */
540
544
  const ariaLabelledBy = header && subHeader ? `${hdrId} ${subHdrId}` : header ? hdrId : subHeader ? subHdrId : null;
541
- return (index.h(index.Host, { key: '6025440b9cd369d4fac89e7e4296c84a10a0b8e0', tabindex: "-1", style: {
545
+ return (index.h(index.Host, { key: '51ccec282f165dbaa02d7ee0c6413b870abae1d5', tabindex: "-1", style: {
542
546
  zIndex: `${20000 + overlayIndex}`,
543
- }, class: Object.assign(Object.assign({}, theme.getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'alert-translucent': this.translucent }), onIonAlertWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }, index.h("ion-backdrop", { key: '3cd5ca8b99cb95b11dd22ab41a820d841142896f', tappable: this.backdropDismiss }), index.h("div", { key: '4cc62ae6e21424057d22aeef1e8fc77011e77cd5', tabindex: "0", "aria-hidden": "true" }), index.h("div", Object.assign({ key: '364057a69f25aa88904df17bdcf7e5bf714e7830', class: "alert-wrapper ion-overlay-wrapper", role: role, "aria-modal": "true", "aria-labelledby": ariaLabelledBy, "aria-describedby": message !== undefined ? msgId : null, tabindex: "0", ref: (el) => (this.wrapperEl = el) }, htmlAttributes), index.h("div", { key: '78694e3c0db2d408df3899fb1a90859bcc8d14cc', class: "alert-head" }, header && (index.h("h2", { key: 'ec88ff3e4e1ea871b5975133fdcf4cac38b05e0f', id: hdrId, class: "alert-title" }, header)), subHeader && !header && (index.h("h2", { key: '9b09bc8bb68af255ef8b7d22587acc946148e544', id: subHdrId, class: "alert-sub-title" }, subHeader)), subHeader && header && (index.h("h3", { key: '99abe815f75d2df7f1b77c0df9f3436724fea76f', id: subHdrId, class: "alert-sub-title" }, subHeader))), this.renderAlertMessage(msgId), this.renderAlertInputs(), this.renderAlertButtons()), index.h("div", { key: 'a43d0c22c0e46b1ef911f92ffeb253d7911b85f7', tabindex: "0", "aria-hidden": "true" })));
547
+ }, class: Object.assign(Object.assign({}, theme.getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'alert-translucent': this.translucent }), onIonAlertWillDismiss: this.dispatchCancelHandler, onIonBackdropTap: this.onBackdropTap }, index.h("ion-backdrop", { key: '555fb7a0048d1ada0182925ca460956e65f43322', tappable: this.backdropDismiss }), index.h("div", { key: 'bce7b1466f5d3c2615a7478ec8903f9567c9b101', tabindex: "0", "aria-hidden": "true" }), index.h("div", Object.assign({ key: '8b0e8793070fee6cb3a69f0fc9b828b07672d0f9', class: "alert-wrapper ion-overlay-wrapper", role: role, "aria-modal": "true", "aria-labelledby": ariaLabelledBy, "aria-describedby": message !== undefined ? msgId : null, tabindex: "0", ref: (el) => (this.wrapperEl = el) }, htmlAttributes), index.h("div", { key: 'f9c99afdd4389421e9eaabaa7e2f9c17e2cb88f4', class: "alert-head" }, header && (index.h("h2", { key: '7aa37fe49189d714e7d4bc786d9895ab8191f25c', id: hdrId, class: "alert-title" }, header)), subHeader && !header && (index.h("h2", { key: '1c32cbb4d615672b669bfacff35079791a0ab50a', id: subHdrId, class: "alert-sub-title" }, subHeader)), subHeader && header && (index.h("h3", { key: 'fc7285499cee4cef323085e501d974d423102e94', id: subHdrId, class: "alert-sub-title" }, subHeader))), this.renderAlertMessage(msgId), this.renderAlertInputs(), this.renderAlertButtons()), index.h("div", { key: 'b69334b5643b2592053bc408a9ab3b623e2d2b9d', tabindex: "0", "aria-hidden": "true" })));
544
548
  }
545
549
  get el() { return index.getElement(this); }
546
550
  static get watchers() { return {
@@ -6,7 +6,7 @@
6
6
  var index = require('./index-CqT-2gKy.js');
7
7
  var focusVisible = require('./focus-visible-CCvKiLh3.js');
8
8
  var helpers = require('./helpers-CxTYJdbT.js');
9
- var overlays = require('./overlays-C2jiBSNQ.js');
9
+ var overlays = require('./overlays-MjvhwPt2.js');
10
10
  var dir = require('./dir-Cn0z1rJH.js');
11
11
  var theme = require('./theme-CeDs6Hcv.js');
12
12
  var index$1 = require('./index-DqmRDbxg.js');
@@ -2092,6 +2092,10 @@ const Picker = class {
2092
2092
  }
2093
2093
  disconnectedCallback() {
2094
2094
  this.triggerController.removeClickListener();
2095
+ // Clean up aria-hidden if removed without dismiss() being called
2096
+ if (this.presented) {
2097
+ overlays.cleanupRootFocusTrapAccessibility();
2098
+ }
2095
2099
  }
2096
2100
  componentWillLoad() {
2097
2101
  var _a;
@@ -2210,11 +2214,11 @@ const Picker = class {
2210
2214
  render() {
2211
2215
  const { htmlAttributes } = this;
2212
2216
  const mode = ionicGlobal.getIonMode(this);
2213
- return (index.h(index.Host, Object.assign({ key: '80f66d33780d8a1352d24be9cb63a0cc03d01ab5', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
2217
+ return (index.h(index.Host, Object.assign({ key: '4d6531bfff4eb466f897cf2227d51783604ff439', "aria-modal": "true", tabindex: "-1" }, htmlAttributes, { style: {
2214
2218
  zIndex: `${20000 + this.overlayIndex}`,
2215
2219
  }, class: Object.assign({ [mode]: true,
2216
2220
  // Used internally for styling
2217
- [`picker-${mode}`]: true, 'overlay-hidden': true }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), index.h("ion-backdrop", { key: '97fb8e10ba08b197610cb8c0cdea61103883d55f', visible: this.showBackdrop, tappable: this.backdropDismiss }), index.h("div", { key: 'b3969cb6fbf7153623d14e3ca1493d3370efb211', tabindex: "0", "aria-hidden": "true" }), index.h("div", { key: '299268483c3727e698d9135bfdf40349a7050ac1', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, index.h("div", { key: '95394de3ef691899b7dbf416f56fd3e86bbdce3f', class: "picker-toolbar" }, this.buttons.map((b) => (index.h("div", { class: buttonWrapperClass(b) }, index.h("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass(b) }, b.text))))), index.h("div", { key: '05f18bb8d00dc0e22f691b7e41f90f729a6c66d7', class: "picker-columns" }, index.h("div", { key: '4a8fdf224effc0af67fd413e2e6aca8a78d1cf43', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => index.h("ion-picker-legacy-column", { col: c })), index.h("div", { key: 'e50a31db45e3f39e9d0fed36a21be9257eec09bf', class: "picker-below-highlight" }))), index.h("div", { key: '5a78cb2176ac807ea0c195c6b76cd0e8eef9d4c0', tabindex: "0", "aria-hidden": "true" })));
2221
+ [`picker-${mode}`]: true, 'overlay-hidden': true }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonPickerWillDismiss: this.dispatchCancelHandler }), index.h("ion-backdrop", { key: '754a80de29087f7e793b232c4276fc1f6b1c937f', visible: this.showBackdrop, tappable: this.backdropDismiss }), index.h("div", { key: '9fcffb91109d6082ed338cd37a997254e5ea5bce', tabindex: "0", "aria-hidden": "true" }), index.h("div", { key: 'de066bda70a9cb831fc88493873d7ebf879122d0', class: "picker-wrapper ion-overlay-wrapper", role: "dialog" }, index.h("div", { key: '03a502e2e1aa38abd582ecfca60da8b7d1045701', class: "picker-toolbar" }, this.buttons.map((b) => (index.h("div", { class: buttonWrapperClass(b) }, index.h("button", { type: "button", onClick: () => this.buttonClick(b), class: buttonClass(b) }, b.text))))), index.h("div", { key: 'f9e4d9eff3c2df866f15eed63f715a51c912eac6', class: "picker-columns" }, index.h("div", { key: '78656d3265f9d4c82387f942c896a9d67c1fcedf', class: "picker-above-highlight" }), this.presented && this.columns.map((c) => index.h("ion-picker-legacy-column", { col: c })), index.h("div", { key: '1afd96cfa38fa9f52f61a867f2aa116a9ef3bedb', class: "picker-below-highlight" }))), index.h("div", { key: '4d533e132d70f6ab32c461e3e4f6f9dfbe6bab15', tabindex: "0", "aria-hidden": "true" })));
2218
2222
  }
2219
2223
  get el() { return index.getElement(this); }
2220
2224
  static get watchers() { return {
@@ -7,7 +7,7 @@ var index = require('./index-CqT-2gKy.js');
7
7
  var config = require('./config-BukYi_pW.js');
8
8
  var helpers = require('./helpers-CxTYJdbT.js');
9
9
  var lockController = require('./lock-controller-aDB9wrEf.js');
10
- var overlays = require('./overlays-C2jiBSNQ.js');
10
+ var overlays = require('./overlays-MjvhwPt2.js');
11
11
  var theme = require('./theme-CeDs6Hcv.js');
12
12
  var ionicGlobal = require('./ionic-global-Bc3kJi1Z.js');
13
13
  var animation = require('./animation-Dg4yiuR2.js');
@@ -213,6 +213,10 @@ const Loading = class {
213
213
  }
214
214
  disconnectedCallback() {
215
215
  this.triggerController.removeClickListener();
216
+ // Clean up aria-hidden if removed without dismiss() being called
217
+ if (this.presented) {
218
+ overlays.cleanupRootFocusTrapAccessibility();
219
+ }
216
220
  }
217
221
  /**
218
222
  * Present the loading overlay after it has been created.
@@ -278,9 +282,9 @@ const Loading = class {
278
282
  * Otherwise, don't set aria-labelledby.
279
283
  */
280
284
  const ariaLabelledBy = message !== undefined ? msgId : null;
281
- return (index.h(index.Host, Object.assign({ key: 'f86ddbc600cb5c396b7de38fb5f49625388c3c3f', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
285
+ return (index.h(index.Host, Object.assign({ key: 'ab48bfcee8f7e3e33847a2f262fdc08b9ea804ca', role: "dialog", "aria-modal": "true", "aria-labelledby": ariaLabelledBy, tabindex: "-1" }, htmlAttributes, { style: {
282
286
  zIndex: `${40000 + this.overlayIndex}`,
283
- }, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, theme.getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), index.h("ion-backdrop", { key: 'b53727aaddc37ef3c685fcc150c6d5193290a847', visible: this.showBackdrop, tappable: this.backdropDismiss }), index.h("div", { key: '4c61bede8e0a4e47daa6f1f9d0f364ef6aec0bc3', tabindex: "0", "aria-hidden": "true" }), index.h("div", { key: '84e51ceb07118f1eaeb757df28801c255496931b', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (index.h("div", { key: 'fc97f1912e0fc558b7c309a5bc084415f5f620b2', class: "loading-spinner" }, index.h("ion-spinner", { key: '6e186d856cd3f10f22c3e317ef00f31b4216459c', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), index.h("div", { key: 'dcbe9d9a619daa1c08174e73827bdabeb59dde92', tabindex: "0", "aria-hidden": "true" })));
287
+ }, onIonBackdropTap: this.onBackdropTap, class: Object.assign(Object.assign({}, theme.getClassMap(this.cssClass)), { [mode]: true, 'overlay-hidden': true, 'loading-translucent': this.translucent }) }), index.h("ion-backdrop", { key: '41baccc7fb6474389a3a3431c208e829ef738b75', visible: this.showBackdrop, tappable: this.backdropDismiss }), index.h("div", { key: '7b7290974abbe8db8739b19835aca9f8b5c271c2', tabindex: "0", "aria-hidden": "true" }), index.h("div", { key: 'e32466abfcc92aaad47ea03b1dcb49f66abe4b63', class: "loading-wrapper ion-overlay-wrapper" }, spinner && (index.h("div", { key: 'c5e6e6f9e3f39dba0225d08d7dd2c1b96a1d83c7', class: "loading-spinner" }, index.h("ion-spinner", { key: 'f428038959d879404ea898011363aac0b807ad11', name: spinner, "aria-hidden": "true" }))), message !== undefined && this.renderLoadingMessage(msgId)), index.h("div", { key: '490e531367b86c319fa4260722dcff4dd631fa88', tabindex: "0", "aria-hidden": "true" })));
284
288
  }
285
289
  get el() { return index.getElement(this); }
286
290
  static get watchers() { return {
@@ -5,7 +5,7 @@
5
5
 
6
6
  var index = require('./index-CqT-2gKy.js');
7
7
  var cubicBezier = require('./cubic-bezier-DAjy1V-e.js');
8
- var overlays = require('./overlays-C2jiBSNQ.js');
8
+ var overlays = require('./overlays-MjvhwPt2.js');
9
9
  var gestureController = require('./gesture-controller-dtqlP_q4.js');
10
10
  var hardwareBackButton = require('./hardware-back-button-C4rMJ5uI.js');
11
11
  var helpers = require('./helpers-CxTYJdbT.js');
@@ -9,7 +9,7 @@ var frameworkDelegate = require('./framework-delegate-CRgp8o_p.js');
9
9
  var helpers = require('./helpers-CxTYJdbT.js');
10
10
  var lockController = require('./lock-controller-aDB9wrEf.js');
11
11
  var capacitor = require('./capacitor-DmA66EwP.js');
12
- var overlays = require('./overlays-C2jiBSNQ.js');
12
+ var overlays = require('./overlays-MjvhwPt2.js');
13
13
  var theme = require('./theme-CeDs6Hcv.js');
14
14
  var index$4 = require('./index-C845Ti6K.js');
15
15
  var ionicGlobal = require('./ionic-global-Bc3kJi1Z.js');
@@ -2058,6 +2058,10 @@ const Modal = class {
2058
2058
  // Also called in dismiss() — intentional dual cleanup covers both
2059
2059
  // dismiss-then-remove and direct DOM removal without dismiss.
2060
2060
  this.cleanupSafeAreaOverrides();
2061
+ // Clean up aria-hidden if removed without dismiss() being called
2062
+ if (this.presented) {
2063
+ overlays.cleanupRootFocusTrapAccessibility();
2064
+ }
2061
2065
  }
2062
2066
  componentWillLoad() {
2063
2067
  var _a;
@@ -2906,20 +2910,20 @@ const Modal = class {
2906
2910
  const isCardModal = presentingElement !== undefined && mode === 'ios';
2907
2911
  const isHandleCycle = handleBehavior === 'cycle';
2908
2912
  const isSheetModalWithHandle = isSheetModal && showHandle;
2909
- return (index$3.h(index$3.Host, Object.assign({ key: '1a53e8f87532abccc169ca4b24973a39c5f9ba16', "no-router": true,
2913
+ return (index$3.h(index$3.Host, Object.assign({ key: 'e6df0917ac03a8d6bf67cc9bebf075d2b804ba22', "no-router": true,
2910
2914
  // Allow the modal to be navigable when the handle is focusable
2911
2915
  tabIndex: isHandleCycle && isSheetModalWithHandle ? 0 : -1 }, htmlAttributes, { style: {
2912
2916
  zIndex: `${20000 + this.overlayIndex}`,
2913
- }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [overlays.FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), index$3.h("ion-backdrop", { key: 'fa8e0a436c0d458331402e1850f87af3dc97b582', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && index$3.h("div", { key: 'f00de6027d3c8b5bc93db3b0f7a50a87628d40bb', class: "modal-shadow" }), index$3.h("div", Object.assign({ key: 'ae5e33bd6c58e541edb2edbca92420ea02dd5175',
2917
+ }, class: Object.assign({ [mode]: true, ['modal-default']: !isCardModal && !isSheetModal, [`modal-card`]: isCardModal, [`modal-sheet`]: isSheetModal, [`modal-no-expand-scroll`]: isSheetModal && !expandToScroll, 'overlay-hidden': true, [overlays.FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false }, theme.getClassMap(this.cssClass)), onIonBackdropTap: this.onBackdropTap, onIonModalDidPresent: this.onLifecycle, onIonModalWillPresent: this.onLifecycle, onIonModalWillDismiss: this.onLifecycle, onIonModalDidDismiss: this.onLifecycle, onFocus: this.onModalFocus }), index$3.h("ion-backdrop", { key: '710ed1cbb6ae9c1a1fa7ae774fd44aa3bbee8381', ref: (el) => (this.backdropEl = el), visible: this.showBackdrop, tappable: this.backdropDismiss, part: "backdrop" }), mode === 'ios' && index$3.h("div", { key: 'c9051fcd099e9b73e17f015dea6e16fbd73e4df4', class: "modal-shadow" }), index$3.h("div", Object.assign({ key: '21e42d40099a569d95a4e04aa6d314c7d45c6192',
2914
2918
  /*
2915
2919
  role and aria-modal must be used on the
2916
2920
  same element. They must also be set inside the
2917
2921
  shadow DOM otherwise ion-button will not be highlighted
2918
2922
  when using VoiceOver: https://bugs.webkit.org/show_bug.cgi?id=247134
2919
2923
  */
2920
- role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (index$3.h("button", { key: '141cdd8f8522331f4b764e2a4d79ec6596b1eb3a', class: "modal-handle",
2924
+ role: "dialog" }, inheritedAttributes, { "aria-modal": "true", class: "modal-wrapper ion-overlay-wrapper", part: "content", ref: (el) => (this.wrapperEl = el) }), showHandle && (index$3.h("button", { key: 'b48a6c32c9a7ebe5e070e8d9f3510d55d4bd1f9f', class: "modal-handle",
2921
2925
  // Prevents the handle from receiving keyboard focus when it does not cycle
2922
- tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle", ref: (el) => (this.dragHandleEl = el) })), index$3.h("slot", { key: '7de20298b61abee67a16d275c9ebd9a25ce7dd26', onSlotchange: this.onSlotChange }))));
2926
+ tabIndex: !isHandleCycle ? -1 : 0, "aria-label": "Activate to adjust the size of the dialog overlaying the screen", onClick: isHandleCycle ? this.onHandleClick : undefined, part: "handle", ref: (el) => (this.dragHandleEl = el) })), index$3.h("slot", { key: '2a20160f66629c14e3414bbe01e5ee89101d02be', onSlotchange: this.onSlotChange }))));
2923
2927
  }
2924
2928
  get el() { return index$3.getElement(this); }
2925
2929
  static get watchers() { return {
@@ -4,7 +4,7 @@
4
4
  'use strict';
5
5
 
6
6
  var index = require('./index-CqT-2gKy.js');
7
- var overlays = require('./overlays-C2jiBSNQ.js');
7
+ var overlays = require('./overlays-MjvhwPt2.js');
8
8
  var frameworkDelegate = require('./framework-delegate-CRgp8o_p.js');
9
9
  var helpers = require('./helpers-CxTYJdbT.js');
10
10
  var lockController = require('./lock-controller-aDB9wrEf.js');
@@ -1306,6 +1306,10 @@ const Popover = class {
1306
1306
  this.headerResizeObserver.disconnect();
1307
1307
  this.headerResizeObserver = undefined;
1308
1308
  }
1309
+ // Clean up aria-hidden if removed without dismiss() being called
1310
+ if (this.presented) {
1311
+ overlays.cleanupRootFocusTrapAccessibility();
1312
+ }
1309
1313
  }
1310
1314
  componentWillLoad() {
1311
1315
  var _a, _b;
@@ -1544,9 +1548,9 @@ const Popover = class {
1544
1548
  const { onLifecycle, parentPopover, dismissOnSelect, side, arrow, htmlAttributes, focusTrap } = this;
1545
1549
  const desktop = ionicGlobal.isPlatform('desktop');
1546
1550
  const enableArrow = arrow && !parentPopover;
1547
- return (index.h(index.Host, Object.assign({ key: '2edd8333c630efbce59071f8a383e4326e928dbc', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
1551
+ return (index.h(index.Host, Object.assign({ key: 'afc292b6b4eeb571c1cd832bc7ac03e0fea3dc28', "aria-modal": "true", "no-router": true, tabindex: "-1" }, htmlAttributes, { style: {
1548
1552
  zIndex: `${20000 + this.overlayIndex}`,
1549
- }, class: Object.assign(Object.assign({}, theme.getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [overlays.FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && index.h("ion-backdrop", { key: 'aac4e68b08197534375e8ea3f8c9ea0c10ab2af4', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), index.h("div", { key: 'b7f4ebf57d4148b32856b0075d286f454be8de5d', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && index.h("div", { key: '607d94c28d73e8e957175a7c0f6e8a99ec4dcd53', class: "popover-arrow", part: "arrow" }), index.h("div", { key: '4366a5a5de550c09895e923f345583508e1ec30c', class: "popover-content", part: "content" }, index.h("slot", { key: 'eb7886fbc99c15b667b7d825d24f1c12d9380f03' })))));
1553
+ }, class: Object.assign(Object.assign({}, theme.getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent, 'overlay-hidden': true, 'popover-desktop': desktop, [`popover-side-${side}`]: true, [overlays.FOCUS_TRAP_DISABLE_CLASS]: focusTrap === false, 'popover-nested': !!parentPopover }), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonBackdropTap: this.onBackdropTap }), !parentPopover && index.h("ion-backdrop", { key: '301a33645918c7feb807a6fe857e462b83291c40', tappable: this.backdropDismiss, visible: this.showBackdrop, part: "backdrop" }), index.h("div", { key: 'f66123d36601ce61af3bce3c68c73002fe3a6d73', class: "popover-wrapper ion-overlay-wrapper", onClick: dismissOnSelect ? () => this.dismiss() : undefined }, enableArrow && index.h("div", { key: '39c92c94d01748d499f2db2513ecf022be2577dd', class: "popover-arrow", part: "arrow" }), index.h("div", { key: '827552221533f7b5676e6e313cd7517275ea76d7', class: "popover-content", part: "content" }, index.h("slot", { key: 'f874b8dfb78bfbc02e3bcad104819bf8d181d42f' })))));
1550
1554
  }
1551
1555
  get el() { return index.getElement(this); }
1552
1556
  static get watchers() { return {
@@ -5,7 +5,7 @@
5
5
 
6
6
  var index = require('./index-CqT-2gKy.js');
7
7
  var ionicGlobal = require('./ionic-global-Bc3kJi1Z.js');
8
- var overlays = require('./overlays-C2jiBSNQ.js');
8
+ var overlays = require('./overlays-MjvhwPt2.js');
9
9
  var theme = require('./theme-CeDs6Hcv.js');
10
10
  require('./index-DkNv4J_i.js');
11
11
  require('./helpers-CxTYJdbT.js');
@@ -8,7 +8,7 @@ var notchController = require('./notch-controller-sD-lTpdc.js');
8
8
  var compareWithUtils = require('./compare-with-utils-DSicavqM.js');
9
9
  var validity = require('./validity-BpS37YFM.js');
10
10
  var helpers = require('./helpers-CxTYJdbT.js');
11
- var overlays = require('./overlays-C2jiBSNQ.js');
11
+ var overlays = require('./overlays-MjvhwPt2.js');
12
12
  var dir = require('./dir-Cn0z1rJH.js');
13
13
  var theme = require('./theme-CeDs6Hcv.js');
14
14
  var watchOptions = require('./watch-options-CviOsrTS.js');
@@ -7,7 +7,7 @@ var index$1 = require('./index-CqT-2gKy.js');
7
7
  var config = require('./config-BukYi_pW.js');
8
8
  var helpers = require('./helpers-CxTYJdbT.js');
9
9
  var lockController = require('./lock-controller-aDB9wrEf.js');
10
- var overlays = require('./overlays-C2jiBSNQ.js');
10
+ var overlays = require('./overlays-MjvhwPt2.js');
11
11
  var theme = require('./theme-CeDs6Hcv.js');
12
12
  var ionicGlobal = require('./ionic-global-Bc3kJi1Z.js');
13
13
  var animation = require('./animation-Dg4yiuR2.js');
@@ -513,6 +513,29 @@ const setRootAriaHidden = (hidden = false) => {
513
513
  viewContainer.removeAttribute('aria-hidden');
514
514
  }
515
515
  };
516
+ /**
517
+ * Cleans up root `aria-hidden` and `backdrop-no-scroll` when
518
+ * an overlay is removed from the DOM without going through
519
+ * the `dismiss()` flow (e.g., when a framework unmounts the
520
+ * overlay during a route change).
521
+ *
522
+ * Should be called from an overlay's `disconnectedCallback`
523
+ * when the overlay was still presented at the time of removal.
524
+ */
525
+ const cleanupRootFocusTrapAccessibility = () => {
526
+ if (typeof document === 'undefined') {
527
+ return;
528
+ }
529
+ const remainingOverlays = getPresentedOverlays(document);
530
+ const hasRemainingLocking = remainingOverlays.some((o) => {
531
+ const el = o;
532
+ return el.tagName !== 'ION-TOAST' && el.focusTrap !== false && isBackdropAlwaysBlocking(el);
533
+ });
534
+ if (!hasRemainingLocking) {
535
+ setRootAriaHidden(false);
536
+ document.body.classList.remove(gestureController.BACKDROP_NO_SCROLL);
537
+ }
538
+ };
516
539
  const present = async (overlay, name, iosEnterAnimation, mdEnterAnimation, opts) => {
517
540
  var _a, _b;
518
541
  if (overlay.presented) {
@@ -920,6 +943,7 @@ exports.GESTURE = GESTURE;
920
943
  exports.OVERLAY_GESTURE_PRIORITY = OVERLAY_GESTURE_PRIORITY;
921
944
  exports.actionSheetController = actionSheetController;
922
945
  exports.alertController = alertController;
946
+ exports.cleanupRootFocusTrapAccessibility = cleanupRootFocusTrapAccessibility;
923
947
  exports.createDelegateController = createDelegateController;
924
948
  exports.createTriggerController = createTriggerController;
925
949
  exports.dismiss = dismiss;