UNPKG

fluid-dnd

Version:

An agnostic drag and drop library to sort all kind of lists. With current support for vue, react and svelte

52 lines (51 loc) 1.27 kB
import { u as B, c as C, h as g, i as L, D as N, j as F, e as O, g as _, f as G, o as M, a as u, k as v, r as T, l as R } from "./index-Dfy1-YWi.js"; function w(s, n, t, e) { const { delayBeforeInsert: r } = s, [l, E, i] = B( s, t, e ), h = (o, a, c, m, S) => { const y = C( a, "insert", s.direction, c ), { onInsertEvent: A } = s, D = g(c); for (const [I, d] of D.entries()) L(d, N) && I >= o && i(d, y); F(a, !1, S), setTimeout(() => { A(o, m), f(o, c, s), l(a), b(a, n), O(n, 0, !0); }, r); }, b = (o, a) => { const [c] = _(o, a); for (const m of [...c, o]) G(m); }; return [h]; } const j = (s) => Array.from(s.addedNodes ?? []).values().filter((t) => !R(t)).toArray().length > 0, f = (s, n, t) => { const { insertingFromClass: e, animationDuration: r } = t, l = M( () => { const i = g(n)[s]; u(i, e), u(i, v), setTimeout(() => { T(i, v), T(i, e), l.disconnect(); }, r); }, n, { childList: !0 }, j ); }, P = (s, n, t, e) => { if (!n) return; const { onInsertEvent: r, delayBeforeInsert: l } = s; setTimeout(() => { r(t, e), f(t, n, s); }, l); }; export { w as default, P as insertToListEmpty };