/*! * (C) Ionic http://ionicframework.com - MIT License */ import{w as o,d as i}from"./p-7b30edcc.js";import{K as n,a as e}from"./p-27281edd.js";const l=o=>{if(void 0===i||o===e.None||void 0===o)return null;const n=i.querySelector("ion-app");return null!=n?n:i.body},r=o=>{const i=l(o);return null===i?0:i.clientHeight},s=async i=>{let e,s,t,d;const a=async()=>{const i=await n.getResizeMode(),l=void 0===i?void 0:i.mode;e=()=>{void 0===d&&(d=r(l)),t=!0,u(t,l)},s=()=>{t=!1,u(t,l)},null==o||o.addEventListener("keyboardWillShow",e),null==o||o.addEventListener("keyboardWillHide",s)},u=(o,n)=>{i&&i(o,c(n))},c=o=>{if(0===d||d===r(o))return;const i=l(o);return null!==i?new Promise((o=>{const n=new ResizeObserver((()=>{i.clientHeight===d&&(n.disconnect(),o())}));n.observe(i)})):void 0};return await a(),{init:a,destroy:()=>{null==o||o.removeEventListener("keyboardWillShow",e),null==o||o.removeEventListener("keyboardWillHide",s),e=s=void 0},isKeyboardVisible:()=>t}};export{s as c}