1import { 2 Build, 3 writeTask 4} from "./chunk-LPF5FBSP.js"; 5import { 6 raf 7} from "./chunk-3MMB2GIP.js"; 8import { 9 __async 10} from "./chunk-KLIBT2SQ.js"; 11 12// node_modules/@ionic/core/dist/esm/index-89cbcdab.js 13var LIFECYCLE_WILL_ENTER = "ionViewWillEnter"; 14var LIFECYCLE_DID_ENTER = "ionViewDidEnter"; 15var LIFECYCLE_WILL_LEAVE = "ionViewWillLeave"; 16var LIFECYCLE_DID_LEAVE = "ionViewDidLeave"; 17var LIFECYCLE_WILL_UNLOAD = "ionViewWillUnload"; 18var iosTransitionAnimation = () => import("./chunk-AGCE37IS.js"); 19var mdTransitionAnimation = () => import("./chunk-OUDISF5L.js"); 20var transition = (opts) => { 21 return new Promise((resolve, reject) => { 22 writeTask(() => { 23 beforeTransition(opts); 24 runTransition(opts).then((result) => { 25 if (result.animation) { 26 result.animation.destroy(); 27 } 28 afterTransition(opts); 29 resolve(result); 30 }, (error) => { 31 afterTransition(opts); 32 reject(error); 33 }); 34 }); 35 }); 36}; 37var beforeTransition = (opts) => { 38 const enteringEl = opts.enteringEl; 39 const leavingEl = opts.leavingEl; 40 setZIndex(enteringEl, leavingEl, opts.direction); 41 if (opts.showGoBack) { 42 enteringEl.classList.add("can-go-back"); 43 } else { 44 enteringEl.classList.remove("can-go-back"); 45 } 46 setPageHidden(enteringEl, false); 47 enteringEl.style.setProperty("pointer-events", "none"); 48 if (leavingEl) { 49 setPageHidden(leavingEl, false); 50 leavingEl.style.setProperty("pointer-events", "none"); 51 } 52}; 53var runTransition = (opts) => __async(void 0, null, function* () { 54 const animationBuilder = yield getAnimationBuilder(opts); 55 const ani = animationBuilder && Build.isBrowser ? animation(animationBuilder, opts) : noAnimation(opts); 56 return ani; 57}); 58var afterTransition = (opts) => { 59 const enteringEl = opts.enteringEl; 60 const leavingEl = opts.leavingEl; 61 enteringEl.classList.remove("ion-page-invisible"); 62 enteringEl.style.removeProperty("pointer-events"); 63 if (leavingEl !== void 0) { 64 leavingEl.classList.remove("ion-page-invisible"); 65 leavingEl.style.removeProperty("pointer-events"); 66 } 67}; 68var getAnimationBuilder = (opts) => __async(void 0, null, function* () { 69 if (!opts.leavingEl || !opts.animated || opts.duration === 0) { 70 return void 0; 71 } 72 if (opts.animationBuilder) { 73 return opts.animationBuilder; 74 } 75 const getAnimation = opts.mode === "ios" ? (yield iosTransitionAnimation()).iosTransitionAnimation : (yield mdTransitionAnimation()).mdTransitionAnimation; 76 return getAnimation; 77}); 78var animation = (animationBuilder, opts) => __async(void 0, null, function* () { 79 yield waitForReady(opts, true); 80 const trans = animationBuilder(opts.baseEl, opts); 81 fireWillEvents(opts.enteringEl, opts.leavingEl); 82 const didComplete = yield playTransition(trans, opts); 83 if (opts.progressCallback) { 84 opts.progressCallback(void 0); 85 } 86 if (didComplete) { 87 fireDidEvents(opts.enteringEl, opts.leavingEl); 88 } 89 return { 90 hasCompleted: didComplete, 91 animation: trans 92 }; 93}); 94var noAnimation = (opts) => __async(void 0, null, function* () { 95 const enteringEl = opts.enteringEl; 96 const leavingEl = opts.leavingEl; 97 yield waitForReady(opts, false); 98 fireWillEvents(enteringEl, leavingEl); 99 fireDidEvents(enteringEl, leavingEl); 100 return { 101 hasCompleted: true 102 }; 103}); 104var waitForReady = (opts, defaultDeep) => __async(void 0, null, function* () { 105 const deep = opts.deepWait !== void 0 ? opts.deepWait : defaultDeep; 106 if (deep) { 107 yield Promise.all([deepReady(opts.enteringEl), deepReady(opts.leavingEl)]); 108 } 109 yield notifyViewReady(opts.viewIsReady, opts.enteringEl); 110}); 111var notifyViewReady = (viewIsReady, enteringEl) => __async(void 0, null, function* () { 112 if (viewIsReady) { 113 yield viewIsReady(enteringEl); 114 } 115}); 116var playTransition = (trans, opts) => { 117 const progressCallback = opts.progressCallback; 118 const promise = new Promise((resolve) => { 119 trans.onFinish((currentStep) => resolve(currentStep === 1)); 120 }); 121 if (progressCallback) { 122 trans.progressStart(true); 123 progressCallback(trans); 124 } else { 125 trans.play(); 126 } 127 return promise; 128}; 129var fireWillEvents = (enteringEl, leavingEl) => { 130 lifecycle(leavingEl, LIFECYCLE_WILL_LEAVE); 131 lifecycle(enteringEl, LIFECYCLE_WILL_ENTER); 132}; 133var fireDidEvents = (enteringEl, leavingEl) => { 134 lifecycle(enteringEl, LIFECYCLE_DID_ENTER); 135 lifecycle(leavingEl, LIFECYCLE_DID_LEAVE); 136}; 137var lifecycle = (el, eventName) => { 138 if (el) { 139 const ev = new CustomEvent(eventName, { 140 bubbles: false, 141 cancelable: false 142 }); 143 el.dispatchEvent(ev); 144 } 145}; 146var waitForMount = () => { 147 return new Promise((resolve) => raf(() => raf(() => resolve()))); 148}; 149var deepReady = (el) => __async(void 0, null, function* () { 150 const element = el; 151 if (element) { 152 if (element.componentOnReady != null) { 153 const stencilEl = yield element.componentOnReady(); 154 if (stencilEl != null) { 155 return; 156 } 157 } else if (element.__registerHost != null) { 158 const waitForCustomElement = new Promise((resolve) => raf(resolve)); 159 yield waitForCustomElement; 160 return; 161 } 162 yield Promise.all(Array.from(element.children).map(deepReady)); 163 } 164}); 165var setPageHidden = (el, hidden) => { 166 if (hidden) { 167 el.setAttribute("aria-hidden", "true"); 168 el.classList.add("ion-page-hidden"); 169 } else { 170 el.hidden = false;
171 el.removeAttribute("aria-hidden"); 172 el.classList.remove("ion-page-hidden"); 173 } 174}; 175var setZIndex = (enteringEl, leavingEl, direction) => { 176 if (enteringEl !== void 0) { 177 enteringEl.style.zIndex = direction === "back" ? "99" : "101"; 178 } 179 if (leavingEl !== void 0) { 180 leavingEl.style.zIndex = "100"; 181 } 182}; 183var getIonPageElement = (element) => { 184 if (element.classList.contains("ion-page")) { 185 return element; 186 } 187 const ionPage = element.querySelector(":scope > .ion-page, :scope > ion-nav, :scope > ion-tabs"); 188 if (ionPage) { 189 return ionPage; 190 } 191 return element; 192}; 193 194export { 195 LIFECYCLE_WILL_LEAVE, 196 LIFECYCLE_DID_LEAVE, 197 LIFECYCLE_WILL_UNLOAD, 198 transition, 199 lifecycle, 200 waitForMount, 201 deepReady, 202 setPageHidden, 203 getIonPageElement 204};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.