UNPKG

@zoff-tech/zt-bottom-drawer

Version:
96 lines (94 loc) 2.97 kB
/*! * (C) Ionic http://ionicframework.com - MIT License */ /** * Waits for a component to be ready for * both custom element and non-custom element builds. * If non-custom element build, el.componentOnReady * will be used. * For custom element builds, we wait a frame * so that the inner contents of the component * have a chance to render. * * Use this utility rather than calling * el.componentOnReady yourself. */ const componentOnReady = (el, callback) => { if (el.componentOnReady) { // eslint-disable-next-line custom-rules/no-component-on-ready-method el.componentOnReady().then((resolvedEl) => callback(resolvedEl)); } else { raf(() => callback(el)); } }; const addEventListener = (el, eventName, callback, opts) => { var _a; if (typeof window !== 'undefined') { const win = window; const config = (_a = win === null || win === void 0 ? void 0 : win.Ionic) === null || _a === void 0 ? void 0 : _a.config; if (config) { const ael = config.get('_ael'); if (ael) { return ael(el, eventName, callback, opts); } else if (config._ael) { return config._ael(el, eventName, callback, opts); } } } return el.addEventListener(eventName, callback, opts); }; const removeEventListener = (el, eventName, callback, opts) => { var _a; if (typeof window !== 'undefined') { const win = window; const config = (_a = win === null || win === void 0 ? void 0 : win.Ionic) === null || _a === void 0 ? void 0 : _a.config; if (config) { const rel = config.get('_rel'); if (rel) { return rel(el, eventName, callback, opts); } else if (config._rel) { return config._rel(el, eventName, callback, opts); } } } return el.removeEventListener(eventName, callback, opts); }; /** * Patched version of requestAnimationFrame that avoids ngzone * Use only when you know ngzone should not run */ const raf = (h) => { if (typeof __zone_symbol__requestAnimationFrame === 'function') { return __zone_symbol__requestAnimationFrame(h); } if (typeof requestAnimationFrame === 'function') { return requestAnimationFrame(h); } return setTimeout(h); }; const clamp = (min, n, max) => { return Math.max(min, Math.min(n, max)); }; const now = (ev) => { return ev.timeStamp || Date.now(); }; const pointerCoord = (ev) => { // get X coordinates for either a mouse click // or a touch depending on the given event if (ev) { const changedTouches = ev.changedTouches; if (changedTouches && changedTouches.length > 0) { const touch = changedTouches[0]; return { x: touch.clientX, y: touch.clientY }; } if (ev.pageX !== undefined) { return { x: ev.pageX, y: ev.pageY }; } } return { x: 0, y: 0 }; }; export { addEventListener as a, removeEventListener as b, componentOnReady as c, clamp as d, now as n, pointerCoord as p, raf as r }; //# sourceMappingURL=helpers.js.map