231 lines
8.6 KiB
JavaScript
231 lines
8.6 KiB
JavaScript
// node_modules/@ionic/core/components/p-BTEOs1at.js
|
|
var t = class {
|
|
constructor(t2, s3, i3, h2, e2) {
|
|
this.id = s3, this.name = i3, this.disableScroll = e2, this.priority = 1e6 * h2 + s3, this.ctrl = t2;
|
|
}
|
|
canStart() {
|
|
return !!this.ctrl && this.ctrl.canStart(this.name);
|
|
}
|
|
start() {
|
|
return !!this.ctrl && this.ctrl.start(this.name, this.id, this.priority);
|
|
}
|
|
capture() {
|
|
if (!this.ctrl) return false;
|
|
const t2 = this.ctrl.capture(this.name, this.id, this.priority);
|
|
return t2 && this.disableScroll && this.ctrl.disableScroll(this.id), t2;
|
|
}
|
|
release() {
|
|
this.ctrl && (this.ctrl.release(this.id), this.disableScroll && this.ctrl.enableScroll(this.id));
|
|
}
|
|
destroy() {
|
|
this.release(), this.ctrl = void 0;
|
|
}
|
|
};
|
|
var s = class {
|
|
constructor(t2, s3, i3, h2) {
|
|
this.id = s3, this.disable = i3, this.disableScroll = h2, this.ctrl = t2;
|
|
}
|
|
block() {
|
|
if (this.ctrl) {
|
|
if (this.disable) for (const t2 of this.disable) this.ctrl.disableGesture(t2, this.id);
|
|
this.disableScroll && this.ctrl.disableScroll(this.id);
|
|
}
|
|
}
|
|
unblock() {
|
|
if (this.ctrl) {
|
|
if (this.disable) for (const t2 of this.disable) this.ctrl.enableGesture(t2, this.id);
|
|
this.disableScroll && this.ctrl.enableScroll(this.id);
|
|
}
|
|
}
|
|
destroy() {
|
|
this.unblock(), this.ctrl = void 0;
|
|
}
|
|
};
|
|
var i = "backdrop-no-scroll";
|
|
var h = new class {
|
|
constructor() {
|
|
this.gestureId = 0, this.requestedStart = /* @__PURE__ */ new Map(), this.disabledGestures = /* @__PURE__ */ new Map(), this.disabledScroll = /* @__PURE__ */ new Set();
|
|
}
|
|
createGesture(s3) {
|
|
var i3;
|
|
return new t(this, this.newID(), s3.name, null !== (i3 = s3.priority) && void 0 !== i3 ? i3 : 0, !!s3.disableScroll);
|
|
}
|
|
createBlocker(t2 = {}) {
|
|
return new s(this, this.newID(), t2.disable, !!t2.disableScroll);
|
|
}
|
|
start(t2, s3, i3) {
|
|
return this.canStart(t2) ? (this.requestedStart.set(s3, i3), true) : (this.requestedStart.delete(s3), false);
|
|
}
|
|
capture(t2, s3, i3) {
|
|
if (!this.start(t2, s3, i3)) return false;
|
|
const h2 = this.requestedStart;
|
|
let e2 = -1e4;
|
|
if (h2.forEach(((t3) => {
|
|
e2 = Math.max(e2, t3);
|
|
})), e2 === i3) {
|
|
this.capturedId = s3, h2.clear();
|
|
const i4 = new CustomEvent("ionGestureCaptured", { detail: { gestureName: t2 } });
|
|
return document.dispatchEvent(i4), true;
|
|
}
|
|
return h2.delete(s3), false;
|
|
}
|
|
release(t2) {
|
|
this.requestedStart.delete(t2), this.capturedId === t2 && (this.capturedId = void 0);
|
|
}
|
|
disableGesture(t2, s3) {
|
|
let i3 = this.disabledGestures.get(t2);
|
|
void 0 === i3 && (i3 = /* @__PURE__ */ new Set(), this.disabledGestures.set(t2, i3)), i3.add(s3);
|
|
}
|
|
enableGesture(t2, s3) {
|
|
const i3 = this.disabledGestures.get(t2);
|
|
void 0 !== i3 && i3.delete(s3);
|
|
}
|
|
disableScroll(t2) {
|
|
this.disabledScroll.add(t2), 1 === this.disabledScroll.size && document.body.classList.add(i);
|
|
}
|
|
enableScroll(t2) {
|
|
this.disabledScroll.delete(t2), 0 === this.disabledScroll.size && document.body.classList.remove(i);
|
|
}
|
|
canStart(t2) {
|
|
return void 0 === this.capturedId && !this.isDisabled(t2);
|
|
}
|
|
isCaptured() {
|
|
return void 0 !== this.capturedId;
|
|
}
|
|
isScrollDisabled() {
|
|
return this.disabledScroll.size > 0;
|
|
}
|
|
isDisabled(t2) {
|
|
const s3 = this.disabledGestures.get(t2);
|
|
return !!(s3 && s3.size > 0);
|
|
}
|
|
newID() {
|
|
return this.gestureId++, this.gestureId;
|
|
}
|
|
}();
|
|
|
|
// node_modules/@ionic/core/components/p-Cl0B-RWe.js
|
|
var e = (t2, e2, n2, r2) => {
|
|
const s3 = !!o(t2) && { capture: false, passive: !!r2.passive };
|
|
let i3, c2;
|
|
return t2.__zone_symbol__addEventListener ? (i3 = "__zone_symbol__addEventListener", c2 = "__zone_symbol__removeEventListener") : (i3 = "addEventListener", c2 = "removeEventListener"), t2[i3](e2, n2, s3), () => {
|
|
t2[c2](e2, n2, s3);
|
|
};
|
|
};
|
|
var o = (t2) => {
|
|
if (void 0 === n) try {
|
|
const e2 = Object.defineProperty({}, "passive", { get: () => {
|
|
n = true;
|
|
} });
|
|
t2.addEventListener("optsTest", (() => {
|
|
}), e2);
|
|
} catch (t3) {
|
|
n = false;
|
|
}
|
|
return !!n;
|
|
};
|
|
var n;
|
|
var r = (t2) => t2 instanceof Document ? t2 : t2.ownerDocument;
|
|
var s2 = (o2) => {
|
|
let n2 = false, s3 = false, d = true, u = false;
|
|
const l = Object.assign({ disableScroll: false, direction: "x", gesturePriority: 0, passive: true, maxAngle: 40, threshold: 10 }, o2), v = l.canStart, m = l.onWillStart, p = l.onStart, f = l.onEnd, y = l.notCaptured, h2 = l.onMove, _ = l.threshold, b = l.passive, D = l.blurOnStart, E = { type: "pan", startX: 0, startY: 0, startTime: 0, currentX: 0, currentY: 0, velocityX: 0, velocityY: 0, deltaX: 0, deltaY: 0, currentTime: 0, event: void 0, data: void 0 }, g = ((t2, e2, o3) => {
|
|
const n3 = o3 * (Math.PI / 180), r2 = "x" === t2, s4 = Math.cos(n3), i3 = e2 * e2;
|
|
let c2 = 0, a2 = 0, d2 = false, u2 = 0;
|
|
return { start(t3, e3) {
|
|
c2 = t3, a2 = e3, u2 = 0, d2 = true;
|
|
}, detect(t3, e3) {
|
|
if (!d2) return false;
|
|
const o4 = t3 - c2, n4 = e3 - a2, l2 = o4 * o4 + n4 * n4;
|
|
if (l2 < i3) return false;
|
|
const v2 = Math.sqrt(l2), m2 = (r2 ? o4 : n4) / v2;
|
|
return u2 = m2 > s4 ? 1 : m2 < -s4 ? -1 : 0, d2 = false, true;
|
|
}, isGesture: () => 0 !== u2, getDirection: () => u2 };
|
|
})(l.direction, l.threshold, l.maxAngle), x = h.createGesture({ name: o2.gestureName, priority: o2.gesturePriority, disableScroll: o2.disableScroll }), L = () => {
|
|
n2 && (u = false, h2 && h2(E));
|
|
}, T = () => !!x.capture() && (n2 = true, d = false, E.startX = E.currentX, E.startY = E.currentY, E.startTime = E.currentTime, m ? m(E).then(X) : X(), true), X = () => {
|
|
D && (() => {
|
|
if ("undefined" != typeof document) {
|
|
const t2 = document.activeElement;
|
|
(null == t2 ? void 0 : t2.blur) && t2.blur();
|
|
}
|
|
})(), p && p(E), d = true;
|
|
}, Y = () => {
|
|
n2 = false, s3 = false, u = false, d = true, x.release();
|
|
}, j = (t2) => {
|
|
const e2 = n2, o3 = d;
|
|
Y(), o3 && (i2(E, t2), e2 ? f && f(E) : y && y(E));
|
|
}, M = /* @__PURE__ */ ((t2, o3, n3, s4, i3) => {
|
|
let c2, a2, d2, u2, l2, v2, m2, p2 = 0;
|
|
const f2 = (r2) => {
|
|
p2 = Date.now() + 2e3, o3(r2) && (!a2 && n3 && (a2 = e(t2, "touchmove", n3, i3)), d2 || (d2 = e(r2.target, "touchend", h3, i3)), u2 || (u2 = e(r2.target, "touchcancel", h3, i3)));
|
|
}, y2 = (s5) => {
|
|
p2 > Date.now() || o3(s5) && (!v2 && n3 && (v2 = e(r(t2), "mousemove", n3, i3)), m2 || (m2 = e(r(t2), "mouseup", _2, i3)));
|
|
}, h3 = (t3) => {
|
|
b2(), s4 && s4(t3);
|
|
}, _2 = (t3) => {
|
|
D2(), s4 && s4(t3);
|
|
}, b2 = () => {
|
|
a2 && a2(), d2 && d2(), u2 && u2(), a2 = d2 = u2 = void 0;
|
|
}, D2 = () => {
|
|
v2 && v2(), m2 && m2(), v2 = m2 = void 0;
|
|
}, E2 = () => {
|
|
b2(), D2();
|
|
}, g2 = (o4 = true) => {
|
|
o4 ? (c2 || (c2 = e(t2, "touchstart", f2, i3)), l2 || (l2 = e(t2, "mousedown", y2, i3))) : (c2 && c2(), l2 && l2(), c2 = l2 = void 0, E2());
|
|
};
|
|
return { enable: g2, stop: E2, destroy: () => {
|
|
g2(false), s4 = n3 = o3 = void 0;
|
|
} };
|
|
})(l.el, ((t2) => {
|
|
const e2 = a(t2);
|
|
return !(s3 || !d) && (c(t2, E), E.startX = E.currentX, E.startY = E.currentY, E.startTime = E.currentTime = e2, E.velocityX = E.velocityY = E.deltaX = E.deltaY = 0, E.event = t2, (!v || false !== v(E)) && (x.release(), !!x.start() && (s3 = true, 0 === _ ? T() : (g.start(E.startX, E.startY), true))));
|
|
}), ((t2) => {
|
|
n2 ? !u && d && (u = true, i2(E, t2), requestAnimationFrame(L)) : (i2(E, t2), g.detect(E.currentX, E.currentY) && (g.isGesture() && T() || O()));
|
|
}), j, { passive: b }), O = () => {
|
|
Y(), M.stop(), y && y(E);
|
|
};
|
|
return { enable(t2 = true) {
|
|
t2 || (n2 && j(void 0), Y()), M.enable(t2);
|
|
}, destroy() {
|
|
x.destroy(), M.destroy();
|
|
} };
|
|
};
|
|
var i2 = (t2, e2) => {
|
|
if (!e2) return;
|
|
const o2 = t2.currentX, n2 = t2.currentY, r2 = t2.currentTime;
|
|
c(e2, t2);
|
|
const s3 = t2.currentX, i3 = t2.currentY, d = (t2.currentTime = a(e2)) - r2;
|
|
if (d > 0 && d < 100) {
|
|
const e3 = (i3 - n2) / d;
|
|
t2.velocityX = (s3 - o2) / d * 0.7 + 0.3 * t2.velocityX, t2.velocityY = 0.7 * e3 + 0.3 * t2.velocityY;
|
|
}
|
|
t2.deltaX = s3 - t2.startX, t2.deltaY = i3 - t2.startY, t2.event = e2;
|
|
};
|
|
var c = (t2, e2) => {
|
|
let o2 = 0, n2 = 0;
|
|
if (t2) {
|
|
const e3 = t2.changedTouches;
|
|
if (e3 && e3.length > 0) {
|
|
const t3 = e3[0];
|
|
o2 = t3.clientX, n2 = t3.clientY;
|
|
} else void 0 !== t2.pageX && (o2 = t2.pageX, n2 = t2.pageY);
|
|
}
|
|
e2.currentX = o2, e2.currentY = n2;
|
|
};
|
|
var a = (t2) => t2.timeStamp || Date.now();
|
|
|
|
export {
|
|
i,
|
|
h,
|
|
s2 as s
|
|
};
|
|
/*! Bundled license information:
|
|
|
|
@ionic/core/components/p-BTEOs1at.js:
|
|
@ionic/core/components/p-Cl0B-RWe.js:
|
|
(*!
|
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
*)
|
|
*/
|
|
//# sourceMappingURL=chunk-TCEW23F2.js.map
|