UNPKG

@aplus-frontend/ui

Version:

38 lines (37 loc) 1 kB
import { computed as R, unref as b } from "vue"; const g = (z, m, n) => R(() => { const o = [], l = b(z), i = b(m); for (let e = 0; e < l.length - 1; e += 1) { const u = l[e], x = l[e + 1], t = i[e], s = i[e + 1], { resizable: d = !0, min: C, collapsible: r } = u, { resizable: v = !0, min: f, collapsible: a } = x, I = ( // Both need to be resizable d && v && // Prev is not collapsed and limit min size (t !== 0 || !C) && // Next is not collapsed and limit min size (s !== 0 || !f) ), p = ( // Self is collapsible r.end && t > 0 || // Collapsed and can be collapsed a.start && s === 0 && t > 0 ), c = ( // Self is collapsible a.start && s > 0 || // Collapsed and can be collapsed r.end && t === 0 && s > 0 ); o[e] = { resizable: I, startCollapsible: !!(n ? c : p), endCollapsible: !!(n ? p : c) }; } return o; }); export { g as useResizable };