@takuma-ru/vue-swipe-modal
Advanced tools
Comparing version 5.0.0-beta.1 to 5.0.0-beta.2
import { HTMLAttributes } from "vue"; | ||
type PropsType = { | ||
modelValue: boolean; | ||
/** | ||
* Unique class of panel section. | ||
* | ||
* @default undefined | ||
*/ | ||
class?: HTMLAttributes["class"]; | ||
/** | ||
* Whether to display the backdrop. | ||
* | ||
* @default true | ||
*/ | ||
isBackdrop?: boolean; | ||
/** | ||
* Whether to display the drag handle. | ||
* | ||
* @default true | ||
*/ | ||
isDragHandle?: boolean; | ||
isBackdrop?: boolean; | ||
/** | ||
* Whether to disable swipe and back drop click events. | ||
* | ||
* @default false | ||
*/ | ||
isPersistent?: boolean; | ||
/** | ||
* Whether to disable scroll of the background. | ||
* | ||
* @default true | ||
*/ | ||
isScrollLock?: boolean; | ||
class?: HTMLAttributes["class"]; | ||
/** | ||
* Whether to display the modal. = `v-model` | ||
* | ||
* @default false | ||
*/ | ||
modelValue?: boolean; | ||
/** | ||
* Modal upper edge position. | ||
* | ||
* - `auto`: Automatically calculates the display position based on the height of the content in the modal. | ||
* - `String` : [\<length>](https://developer.mozilla.org/ja/docs/Web/CSS/length) data type | ||
* | ||
* @default undefined | ||
*/ | ||
snapPoint?: "auto" | String; | ||
}; | ||
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PropsType>, { | ||
class: undefined; | ||
isBackdrop: boolean; | ||
isDragHandle: boolean; | ||
isBackdrop: boolean; | ||
isPersistent: boolean; | ||
isScrollLock: boolean; | ||
class: undefined; | ||
modelValue: boolean; | ||
snapPoint: undefined; | ||
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { | ||
"update:modelValue": (value: boolean) => void; | ||
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PropsType>, { | ||
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<globalThis.ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PropsType>, { | ||
class: undefined; | ||
isBackdrop: boolean; | ||
isDragHandle: boolean; | ||
isBackdrop: boolean; | ||
isPersistent: boolean; | ||
isScrollLock: boolean; | ||
class: undefined; | ||
modelValue: boolean; | ||
snapPoint: undefined; | ||
}>>> & { | ||
@@ -28,10 +71,11 @@ "onUpdate:modelValue"?: ((value: boolean) => any) | undefined; | ||
class: any; | ||
isBackdrop: boolean; | ||
isDragHandle: boolean; | ||
isBackdrop: boolean; | ||
isPersistent: boolean; | ||
isScrollLock: boolean; | ||
modelValue: boolean; | ||
snapPoint: String | "auto"; | ||
}, {}>, { | ||
"drag-handle"?(_: {}): any; | ||
default?(_: {}): any; | ||
backdrop?(_: {}): any; | ||
}>; | ||
@@ -38,0 +82,0 @@ export default _default; |
@@ -1,158 +0,110 @@ | ||
(function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode('._swipe-modal_13dg7_1{position:fixed;bottom:var(--e08034d2);left:0;z-index:1;display:flex;flex-direction:column;padding:0;border:none}._swipe-modal_13dg7_1>._panel_13dg7_11{position:relative;overflow:auto}._default-modal-style_13dg7_16{box-sizing:border-box;width:100%;height:50dvh;color:#fff;background-color:#1d1b20;border-radius:1rem 1rem 0 0}@media (prefers-color-scheme: light){._default-modal-style_13dg7_16{color:#000;background-color:#f7f2fa;box-shadow:0 1px 4px #0000005e}}._swipe-modal-drag-handle-wrapper_13dg7_32{position:relative;flex-shrink:0;height:36px;cursor:grab}._swipe-modal-drag-handle-wrapper_13dg7_32:active{cursor:grabbing}._swipe-modal-drag-handle_13dg7_32{position:absolute;left:50%;width:32px;height:4px;margin:16px 0;content:"";background-color:#ccc;border-radius:2px;transform:translate(-50%)}._wipe-modal-backdrop-wrapper_13dg7_54{position:fixed;top:0;left:0;width:100%;height:100%}._swipe-modal-backdrop_13dg7_62{width:100%;height:100%;background-color:#00000080;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}')),document.head.appendChild(e)}}catch(o){console.error("vite-plugin-css-injected-by-js",o)}})(); | ||
import { getCurrentInstance as P, onMounted as D, nextTick as G, getCurrentScope as N, onScopeDispose as I, unref as U, ref as p, watch as O, computed as $, defineComponent as X, useCssVars as q, openBlock as z, createElementBlock as A, Fragment as J, createElementVNode as _, normalizeClass as k, renderSlot as E, createCommentVNode as R } from "vue"; | ||
function L(e) { | ||
return N() ? (I(e), !0) : !1; | ||
} | ||
function Y(e) { | ||
return typeof e == "function" ? e() : U(e); | ||
} | ||
const K = typeof window < "u" && typeof document < "u"; | ||
(function(){"use strict";try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode('._swipe-modal_5aug2_1{position:fixed;top:auto;bottom:var(--4b54af27);box-sizing:border-box;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;padding:0;margin:0;overflow:hidden;border:none}._swipe-modal_5aug2_1::backdrop{background-color:#00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}._swipe-modal-content_5aug2_21{width:100%;height:100%}._swipe-modal-content_5aug2_21>._panel_5aug2_25{max-height:calc(100dvh - 36px);overflow-y:scroll}._default-modal-style_5aug2_30{box-sizing:border-box;width:100%;color:#fff;background-color:#1d1b20;border-radius:1rem 1rem 0 0}@media (prefers-color-scheme: light){._default-modal-style_5aug2_30{color:#000;background-color:#f7f2fa;box-shadow:0 1px 4px #0000005e}}._swipe-modal-drag-handle-wrapper_5aug2_45{position:relative;top:0;flex-shrink:0;height:36px;cursor:grab}._swipe-modal-drag-handle-wrapper_5aug2_45:active{cursor:grabbing}._swipe-modal-drag-handle_5aug2_45{position:absolute;left:50%;width:32px;height:4px;margin:16px 0;content:"";background-color:#ccc;border-radius:2px;transform:translate(-50%)}')),document.head.appendChild(e)}}catch(o){console.error("vite-plugin-css-injected-by-js",o)}})(); | ||
import { getCurrentInstance as x, ref as p, watch as z, nextTick as D, computed as O, defineComponent as N, useCssVars as Y, unref as A, onMounted as H, openBlock as L, createElementBlock as F, normalizeClass as E, createElementVNode as V, renderSlot as R, createCommentVNode as J } from "vue"; | ||
typeof WorkerGlobalScope < "u" && globalThis instanceof WorkerGlobalScope; | ||
const Q = Object.prototype.toString, Z = (e) => Q.call(e) === "[object Object]", ee = () => { | ||
}; | ||
function te(e, l = !0) { | ||
P() ? D(e) : l ? e() : G(e); | ||
const G = (s) => typeof s < "u"; | ||
function U(s) { | ||
return JSON.parse(JSON.stringify(s)); | ||
} | ||
function M(e) { | ||
var l; | ||
const o = Y(e); | ||
return (l = o == null ? void 0 : o.$el) != null ? l : o; | ||
} | ||
const F = K ? window : void 0; | ||
function T(...e) { | ||
let l, o, i, s; | ||
if (typeof e[0] == "string" || Array.isArray(e[0]) ? ([o, i, s] = e, l = F) : [l, o, i, s] = e, !l) | ||
return ee; | ||
Array.isArray(o) || (o = [o]), Array.isArray(i) || (i = [i]); | ||
const n = [], c = () => { | ||
n.forEach((r) => r()), n.length = 0; | ||
}, d = (r, u, v, m) => (r.addEventListener(u, v, m), () => r.removeEventListener(u, v, m)), a = O( | ||
() => [M(l), Y(s)], | ||
([r, u]) => { | ||
if (c(), !r) | ||
return; | ||
const v = Z(u) ? { ...u } : u; | ||
n.push( | ||
...o.flatMap((m) => i.map((y) => d(r, m, y, v))) | ||
); | ||
}, | ||
{ immediate: !0, flush: "post" } | ||
), f = () => { | ||
a(), c(); | ||
function W(s, c, l, $ = {}) { | ||
var t, M, f; | ||
const { | ||
clone: a = !1, | ||
passive: g = !1, | ||
eventName: b, | ||
deep: i = !1, | ||
defaultValue: r, | ||
shouldEmit: v | ||
} = $, d = x(), S = l || (d == null ? void 0 : d.emit) || ((t = d == null ? void 0 : d.$emit) == null ? void 0 : t.bind(d)) || ((f = (M = d == null ? void 0 : d.proxy) == null ? void 0 : M.$emit) == null ? void 0 : f.bind(d == null ? void 0 : d.proxy)); | ||
let m = b; | ||
c || (c = "modelValue"), m = m || `update:${c.toString()}`; | ||
const y = (u) => a ? typeof a == "function" ? a(u) : U(u) : u, T = () => G(s[c]) ? y(s[c]) : r, B = (u) => { | ||
v ? v(u) && S(m, u) : S(m, u); | ||
}; | ||
return L(f), f; | ||
} | ||
function oe() { | ||
const e = p(!1); | ||
return P() && D(() => { | ||
e.value = !0; | ||
}), e; | ||
} | ||
function ne(e) { | ||
const l = oe(); | ||
return $(() => (l.value, !!e())); | ||
} | ||
function le(e, l, o = {}) { | ||
const { window: i = F, ...s } = o; | ||
let n; | ||
const c = ne(() => i && "ResizeObserver" in i), d = () => { | ||
n && (n.disconnect(), n = void 0); | ||
}, a = $(() => Array.isArray(e) ? e.map((u) => M(u)) : [M(e)]), f = O( | ||
a, | ||
(u) => { | ||
if (d(), c.value && i) { | ||
n = new ResizeObserver(l); | ||
for (const v of u) | ||
v && n.observe(v, s); | ||
if (g) { | ||
const u = T(), k = p(u); | ||
let h = !1; | ||
return z( | ||
() => s[c], | ||
(w) => { | ||
h || (h = !0, k.value = y(w), D(() => h = !1)); | ||
} | ||
}, | ||
{ immediate: !0, flush: "post", deep: !0 } | ||
), r = () => { | ||
d(), f(); | ||
}; | ||
return L(r), { | ||
isSupported: c, | ||
stop: r | ||
}; | ||
), z( | ||
k, | ||
(w) => { | ||
!h && (w !== s[c] || i) && B(w); | ||
}, | ||
{ deep: i } | ||
), k; | ||
} else | ||
return O({ | ||
get() { | ||
return T(); | ||
}, | ||
set(u) { | ||
B(u); | ||
} | ||
}); | ||
} | ||
function ae(e, l = {}) { | ||
const { | ||
reset: o = !0, | ||
windowResize: i = !0, | ||
windowScroll: s = !0, | ||
immediate: n = !0 | ||
} = l, c = p(0), d = p(0), a = p(0), f = p(0), r = p(0), u = p(0), v = p(0), m = p(0); | ||
function y() { | ||
const g = M(e); | ||
if (!g) { | ||
o && (c.value = 0, d.value = 0, a.value = 0, f.value = 0, r.value = 0, u.value = 0, v.value = 0, m.value = 0); | ||
return; | ||
} | ||
const b = g.getBoundingClientRect(); | ||
c.value = b.height, d.value = b.bottom, a.value = b.left, f.value = b.right, r.value = b.top, u.value = b.width, v.value = b.x, m.value = b.y; | ||
} | ||
return le(e, y), O(() => M(e), (g) => !g && y()), s && T("scroll", y, { capture: !0, passive: !0 }), i && T("resize", y, { passive: !0 }), te(() => { | ||
n && y(); | ||
}), { | ||
height: c, | ||
bottom: d, | ||
left: a, | ||
right: f, | ||
top: r, | ||
width: u, | ||
x: v, | ||
y: m, | ||
update: y | ||
}; | ||
} | ||
const se = ["open"], re = /* @__PURE__ */ X({ | ||
const I = /* @__PURE__ */ N({ | ||
__name: "SwipeModal", | ||
props: { | ||
modelValue: { type: Boolean }, | ||
class: { default: void 0 }, | ||
isBackdrop: { type: Boolean, default: !0 }, | ||
isDragHandle: { type: Boolean, default: !0 }, | ||
isBackdrop: { type: Boolean, default: !0 }, | ||
isPersistent: { type: Boolean, default: !1 }, | ||
isScrollLock: { type: Boolean, default: !0 }, | ||
class: { default: void 0 } | ||
modelValue: { type: Boolean, default: !1 }, | ||
snapPoint: { default: void 0 } | ||
}, | ||
emits: ["update:modelValue"], | ||
setup(e, { emit: l }) { | ||
q((t) => ({ | ||
e08034d2: u.value | ||
setup(s, { emit: c }) { | ||
Y((e) => ({ | ||
"4b54af27": A(a) | ||
})); | ||
const o = e, i = l, s = $({ | ||
get: () => o.modelValue, | ||
set: (t) => { | ||
i("update:modelValue", t); | ||
const l = s, $ = c, t = p(null), M = p(null), f = W(l, "modelValue", $), a = p("-100%"), g = p(!1), b = p(0), i = p(0), r = p("close"), v = O(() => { | ||
var e; | ||
return l.snapPoint ? l.snapPoint === "content" ? `calc(${((e = M.value) == null ? void 0 : e.getBoundingClientRect().height) || 0}px + 36px - 100%)` : `calc(${l.snapPoint} - 100%)` : "0px"; | ||
}), d = ({ | ||
mouseEvent: e, | ||
touchEvent: o, | ||
eventType: n | ||
}) => { | ||
n === "mouse" ? b.value = e.y : b.value = o.touches[0].clientY, g.value = !0; | ||
}, S = ({ | ||
mouseEvent: e, | ||
touchEvent: o, | ||
eventType: n | ||
}) => { | ||
var P, _; | ||
if (g.value && (n === "mouse" ? i.value = b.value - e.y : i.value = b.value - o.touches[0].clientY, !(i.value > 0 && r.value === "full" || (((P = t.value) == null ? void 0 : P.getBoundingClientRect().top) || 0) < 0))) | ||
return (_ = t.value) == null || _.style.setProperty("user-select", "none"), r.value === "snap" ? a.value = `calc(${v.value} + ${i.value}px)` : a.value = `calc(0% + ${i.value}px)`; | ||
}, m = () => { | ||
var e; | ||
if (g.value = !1, (e = t.value) == null || e.style.removeProperty("user-select"), Math.abs(i.value) > 36) { | ||
if (i.value < 0) | ||
switch (r.value) { | ||
case "full": | ||
return l.snapPoint ? T() : l.isPersistent ? y() : f.value = !1; | ||
case "snap": | ||
return l.isPersistent ? y() : f.value = !1; | ||
default: | ||
return; | ||
} | ||
switch (r.value) { | ||
case "snap": | ||
return B(); | ||
default: | ||
return; | ||
} | ||
} | ||
}), n = p(null), c = p(null), d = p(!1), a = p(0), f = p(0), { height: r } = ae(n), u = $(() => o.modelValue ? a.value < 0 ? `${a.value}px` : "0%" : "-100%"), v = () => { | ||
o.isPersistent || (s.value = !1); | ||
}, m = (t) => { | ||
f.value = t.y, d.value = !0; | ||
return y(); | ||
}, y = () => { | ||
if (d.value = !1, o.isPersistent) | ||
return S(); | ||
if (-a.value > r.value / 4) | ||
return s.value = !1; | ||
if (a.value < 0) | ||
return S(); | ||
}, g = (t) => { | ||
d.value && (a.value = f.value - t.y); | ||
}, b = (t) => { | ||
f.value = t.touches[0].clientY, d.value = !0; | ||
}, W = (t) => { | ||
d.value && (a.value = f.value - t.touches[0].clientY); | ||
}, j = () => { | ||
if (d.value = !1, o.isPersistent) | ||
return S(); | ||
if (-a.value > r.value / 4) | ||
return s.value = !1; | ||
if (a.value < 0) | ||
return S(); | ||
}, S = () => { | ||
n.value && (n.value.animate( | ||
if (!t.value) | ||
return; | ||
const e = () => r.value === "snap" ? l.snapPoint ? v.value : "0%" : r.value === "full" ? "0%" : "-100%"; | ||
t.value.animate( | ||
[ | ||
{ bottom: u.value }, | ||
{ bottom: a.value }, | ||
{ | ||
bottom: "0px" | ||
bottom: e() | ||
} | ||
@@ -165,11 +117,11 @@ ], | ||
).onfinish = () => { | ||
a.value = 0; | ||
}); | ||
}, H = () => { | ||
n.value && (n.value.style.removeProperty("display"), V("hidden"), n.value.animate( | ||
i.value = 0, a.value = e(); | ||
}; | ||
}, T = () => { | ||
t.value && l.snapPoint && (t.value.animate( | ||
[ | ||
{ bottom: a.value }, | ||
{ | ||
bottom: "-100%" | ||
}, | ||
{ bottom: "0%" } | ||
bottom: v.value | ||
} | ||
], | ||
@@ -180,6 +132,12 @@ { | ||
} | ||
), c.value && c.value.animate( | ||
).onfinish = () => { | ||
i.value = 0, a.value = v.value, r.value = "snap"; | ||
}); | ||
}, B = () => { | ||
t.value && (t.value.animate( | ||
[ | ||
{ opacity: 0, backdropFilter: "blur(0)" }, | ||
{ opacity: 1, backdropFilter: "blur(1px)" } | ||
{ bottom: a.value }, | ||
{ | ||
bottom: "0%" | ||
} | ||
], | ||
@@ -190,112 +148,146 @@ { | ||
} | ||
)); | ||
}, x = () => { | ||
if (!n.value) | ||
return; | ||
const t = 300; | ||
c.value && c.value.animate( | ||
).onfinish = () => { | ||
i.value = 0, a.value = "0%", r.value = "full"; | ||
}); | ||
}, u = (e) => { | ||
if (l.isBackdrop && e.target === e.currentTarget) { | ||
if (l.isPersistent) | ||
return y(); | ||
f.value = !1; | ||
} | ||
}, k = (e) => { | ||
e.stopPropagation(); | ||
}, h = () => { | ||
var e; | ||
t.value && (l.isBackdrop ? t.value.showModal() : t.value.show(), (e = t.value) == null || e.style.setProperty("visibility", "visible"), t.value.animate([{ opacity: 0 }, { opacity: 1 }], { | ||
duration: 200, | ||
pseudoElement: "::backdrop", | ||
easing: "cubic-bezier(0.2, 0.0, 0, 1.0)" | ||
}), t.value.animate( | ||
[ | ||
{ opacity: 1, backdropFilter: "blur(1px)" }, | ||
{ opacity: 0, backdropFilter: "blur(0)" } | ||
{ | ||
bottom: "-100%" | ||
}, | ||
{ | ||
bottom: v.value | ||
} | ||
], | ||
{ | ||
duration: t, | ||
duration: 300, | ||
easing: "cubic-bezier(0.2, 0.0, 0, 1.0)" | ||
} | ||
); | ||
const h = n.value.animate( | ||
).onfinish = () => { | ||
r.value = l.snapPoint ? "snap" : "full", a.value = v.value, l.isScrollLock && C("hidden"); | ||
}); | ||
}, w = () => { | ||
t.value && (t.value.animate([{ opacity: 1 }, { opacity: 0 }], { | ||
duration: 300, | ||
pseudoElement: "::backdrop", | ||
easing: "cubic-bezier(0.2, 0.0, 0, 1.0)" | ||
}), t.value.animate( | ||
[ | ||
{ bottom: `${a.value}px` }, | ||
{ | ||
bottom: `-${r.value}px` | ||
bottom: a.value | ||
}, | ||
{ | ||
bottom: "-100%" | ||
} | ||
], | ||
{ | ||
duration: t, | ||
easing: "cubic-bezier(0.2, 0.0, 0, 1.0)", | ||
fill: "forwards" | ||
duration: 300, | ||
easing: "cubic-bezier(0.2, 0.0, 0, 1.0)" | ||
} | ||
); | ||
h.onfinish = () => { | ||
var w; | ||
a.value = 0, s.value = !1, h.cancel(), V("auto"), (w = n.value) == null || w.style.setProperty("display", "none"); | ||
}; | ||
}, V = (t) => { | ||
if (!o.isScrollLock) | ||
).onfinish = () => { | ||
var e, o, n; | ||
a.value = "-100%", r.value = "close", g.value = !1, (e = t.value) == null || e.close(), (o = t.value) == null || o.style.setProperty("display", "initial"), (n = t.value) == null || n.style.setProperty("visibility", "hidden"), C("reset"); | ||
}); | ||
}, C = (e) => { | ||
if (e === "reset") { | ||
document.documentElement.style.removeProperty("overflow"), document.documentElement.style.removeProperty("overscroll-behavior-y"); | ||
return; | ||
let h = window, w, B, C; | ||
document.defaultView ? (h = document.defaultView, w = h.pageXOffset, B = h.pageYOffset) : (C = document.documentElement, w = C.scrollLeft, B = C.scrollTop), document.documentElement.style.overflow = t, document.documentElement.style.overscrollBehaviorY = t === "auto" ? "auto" : "none", h.scrollTo(w, B); | ||
} | ||
let o = window, n, P, _; | ||
document.defaultView ? (o = document.defaultView, n = o.scrollX, P = o.scrollY) : (_ = document.documentElement, n = _.scrollLeft, P = _.scrollTop), document.documentElement.style.overflow = e, document.documentElement.style.overscrollBehaviorY = e === "auto" ? "auto" : "none", o.scrollTo(n, P); | ||
}; | ||
return O( | ||
() => s.value, | ||
(t) => { | ||
t && H(), t || x(); | ||
return z( | ||
() => f.value, | ||
(e) => { | ||
e ? h() : w(); | ||
} | ||
), (t, h) => (z(), A(J, null, [ | ||
_("dialog", { | ||
ref_key: "modalRef", | ||
ref: n, | ||
class: k([ | ||
o.class, | ||
!o.class && t.$style["default-modal-style"], | ||
t.$style["swipe-modal"] | ||
]), | ||
open: s.value, | ||
onClose: h[0] || (h[0] = (w) => s.value = !1) | ||
), z( | ||
() => l.isScrollLock, | ||
(e) => { | ||
C(e ? "hidden" : "auto"); | ||
} | ||
), H(() => { | ||
t.value && (f.value || (t.value.style.setProperty("display", "initial"), t.value.style.setProperty("visibility", "hidden"))); | ||
}), (e, o) => (L(), F("dialog", { | ||
ref_key: "modalRef", | ||
ref: t, | ||
class: E([ | ||
l.class ? l.class : e.$style["default-modal-style"], | ||
e.$style["swipe-modal"] | ||
]), | ||
onClick: u | ||
}, [ | ||
V("div", { | ||
tabindex: "-1", | ||
class: E(e.$style["swipe-modal-content"]), | ||
onClick: k | ||
}, [ | ||
_("div", { | ||
class: k(t.$style["swipe-modal-drag-handle-wrapper"]), | ||
onMousedown: m, | ||
onMousemove: g, | ||
onMouseup: y, | ||
onTouchstart: b, | ||
onTouchmove: W, | ||
onTouchend: j | ||
V("div", { | ||
class: E(e.$style["swipe-modal-drag-handle-wrapper"]), | ||
onMousedown: o[0] || (o[0] = (n) => d({ | ||
mouseEvent: n, | ||
eventType: "mouse" | ||
})), | ||
onMousemove: o[1] || (o[1] = (n) => S({ | ||
mouseEvent: n, | ||
eventType: "mouse" | ||
})), | ||
onMouseup: m, | ||
onTouchstart: o[2] || (o[2] = (n) => d({ | ||
touchEvent: n, | ||
eventType: "touch" | ||
})), | ||
onTouchmove: o[3] || (o[3] = (n) => S({ | ||
touchEvent: n, | ||
eventType: "touch" | ||
})), | ||
onTouchend: m | ||
}, [ | ||
t.isDragHandle ? E(t.$slots, "drag-handle", { key: 0 }, () => [ | ||
_("div", { | ||
class: k(t.$style["swipe-modal-drag-handle"]) | ||
e.isDragHandle ? R(e.$slots, "drag-handle", { key: 0 }, () => [ | ||
V("div", { | ||
class: E(e.$style["swipe-modal-drag-handle"]) | ||
}, null, 2) | ||
]) : R("", !0) | ||
]) : J("", !0) | ||
], 34), | ||
_("div", { | ||
class: k(t.$style.panel) | ||
V("div", { | ||
ref_key: "panelRef", | ||
ref: M, | ||
class: E(e.$style.panel) | ||
}, [ | ||
E(t.$slots, "default") | ||
R(e.$slots, "default") | ||
], 2) | ||
], 42, se), | ||
t.isBackdrop && s.value ? (z(), A("div", { | ||
key: 0, | ||
ref_key: "backdropRef", | ||
ref: c, | ||
class: k(t.$style["wipe-modal-backdrop-wrapper"]), | ||
onClick: v | ||
}, [ | ||
E(t.$slots, "backdrop", {}, () => [ | ||
_("div", { | ||
class: k(t.$style["swipe-modal-backdrop"]) | ||
}, null, 2) | ||
]) | ||
], 2)) : R("", !0) | ||
], 64)); | ||
], 2) | ||
], 2)); | ||
} | ||
}), ue = "_panel_13dg7_11", ie = { | ||
"swipe-modal": "_swipe-modal_13dg7_1", | ||
panel: ue, | ||
"default-modal-style": "_default-modal-style_13dg7_16", | ||
"swipe-modal-drag-handle-wrapper": "_swipe-modal-drag-handle-wrapper_13dg7_32", | ||
"swipe-modal-drag-handle": "_swipe-modal-drag-handle_13dg7_32", | ||
"wipe-modal-backdrop-wrapper": "_wipe-modal-backdrop-wrapper_13dg7_54", | ||
"swipe-modal-backdrop": "_swipe-modal-backdrop_13dg7_62" | ||
}, ce = (e, l) => { | ||
const o = e.__vccOpts || e; | ||
for (const [i, s] of l) | ||
o[i] = s; | ||
return o; | ||
}, de = { | ||
$style: ie | ||
}, fe = /* @__PURE__ */ ce(re, [["__cssModules", de]]); | ||
}), X = "_panel_5aug2_25", j = { | ||
"swipe-modal": "_swipe-modal_5aug2_1", | ||
"swipe-modal-content": "_swipe-modal-content_5aug2_21", | ||
panel: X, | ||
"default-modal-style": "_default-modal-style_5aug2_30", | ||
"swipe-modal-drag-handle-wrapper": "_swipe-modal-drag-handle-wrapper_5aug2_45", | ||
"swipe-modal-drag-handle": "_swipe-modal-drag-handle_5aug2_45" | ||
}, q = (s, c) => { | ||
const l = s.__vccOpts || s; | ||
for (const [$, t] of c) | ||
l[$] = t; | ||
return l; | ||
}, K = { | ||
$style: j | ||
}, Z = /* @__PURE__ */ q(I, [["__cssModules", K]]); | ||
export { | ||
fe as SwipeModal, | ||
fe as default | ||
Z as SwipeModal, | ||
Z as default | ||
}; |
{ | ||
"name": "@takuma-ru/vue-swipe-modal", | ||
"private": false, | ||
"version": "5.0.0-beta.1", | ||
"version": "5.0.0-beta.2", | ||
"description": "Swipeable Bottom Sheet library for vue2 and vue3", | ||
@@ -52,3 +52,3 @@ "license": "MIT", | ||
"build": "vue-tsc && vite build", | ||
"build:watch": "vue-tsc --watch & vite build --watch", | ||
"build:watch": "vite build --watch", | ||
"preview": "vite preview", | ||
@@ -61,2 +61,3 @@ "lint": "eslint --fix src/*.{ts,vue} && eslint --fix src/**/*.{ts,vue}", | ||
"fix": "pnpm format && pnpm format:css && pnpm lint", | ||
"gen:unimport-type": "node ./.scripts/genUnimportType.js", | ||
"publish:major": "pnpm build && pnpm dlx release-it major --ci", | ||
@@ -74,2 +75,4 @@ "publish:minor": "pnpm build && pnpm dlx release-it minor --ci", | ||
"@vueuse/core": "^10.6.0", | ||
"consola": "^3.2.3", | ||
"unimport": "^3.5.0", | ||
"vue": "^3.3.4" | ||
@@ -76,0 +79,0 @@ }, |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
38155
17
478
5
1
+ Addedconsola@^3.2.3
+ Addedunimport@^3.5.0
+ Added@nodelib/fs.scandir@2.1.5(transitive)
+ Added@nodelib/fs.stat@2.0.5(transitive)
+ Added@nodelib/fs.walk@1.2.8(transitive)
+ Added@rollup/pluginutils@5.1.0(transitive)
+ Added@types/estree@1.0.6(transitive)
+ Addedacorn@8.12.1(transitive)
+ Addedbraces@3.0.3(transitive)
+ Addedconfbox@0.1.7(transitive)
+ Addedconsola@3.2.3(transitive)
+ Addedescape-string-regexp@5.0.0(transitive)
+ Addedestree-walker@3.0.3(transitive)
+ Addedfast-glob@3.3.2(transitive)
+ Addedfastq@1.17.1(transitive)
+ Addedfill-range@7.1.1(transitive)
+ Addedglob-parent@5.1.2(transitive)
+ Addedis-extglob@2.1.1(transitive)
+ Addedis-glob@4.0.3(transitive)
+ Addedis-number@7.0.0(transitive)
+ Addedjs-tokens@9.0.0(transitive)
+ Addedlocal-pkg@0.5.0(transitive)
+ Addedmerge2@1.4.1(transitive)
+ Addedmicromatch@4.0.8(transitive)
+ Addedmlly@1.7.1(transitive)
+ Addedpathe@1.1.2(transitive)
+ Addedpicomatch@2.3.1(transitive)
+ Addedpkg-types@1.2.0(transitive)
+ Addedqueue-microtask@1.2.3(transitive)
+ Addedreusify@1.0.4(transitive)
+ Addedrun-parallel@1.2.0(transitive)
+ Addedscule@1.3.0(transitive)
+ Addedstrip-literal@2.1.0(transitive)
+ Addedto-regex-range@5.0.1(transitive)
+ Addedufo@1.5.4(transitive)
+ Addedunimport@3.12.0(transitive)
+ Addedunplugin@1.14.1(transitive)
+ Addedwebpack-virtual-modules@0.6.2(transitive)