UNPKG

@acrool/js-utils

Version:

Common javascript utils methods for project development

114 lines (113 loc) 2.45 kB
function s(n, e) { return n ? [e].concat(n.slice(0)) : [e]; } function l(n, e) { return n ? n.slice(0).concat(e) : [e]; } function g(n, e, t) { return n ? [...n.slice(0, e), t, ...n.slice(e)] : [t]; } function p(n, e, t) { if (!n || e === t) return n; const u = [...n], r = u[e]; return u.splice(e, 1), u.splice(t, 0, r), u; } function h(n, e) { if (!n) return n; const t = n.findIndex(e); return t === -1 ? n : i(n, t); } function m(n, e) { if (!n) return n; const t = n.findIndex(e.finder); return t === -1 ? n : f(n, t, e.updater); } function i(n, e) { return !n || e === -1 || e > n.length - 1 ? n : [...n.slice(0, e), ...n.slice(e + 1)]; } function f(n, e, t) { if (e === -1 || !n || e > n.length - 1) return n; const u = { ...n[e] }; t(u); const r = [...n]; return r[e] = u, r; } function A(n, e) { if (!n) return n; const t = /* @__PURE__ */ new Set(), u = new Array(); for (const r of n) { const o = e ? e(r) : r; t.has(o) || (t.add(o), u.push(r)); } return u; } function d(n, e) { return n ? n.join(e) : ""; } function w(n) { return n == null ? void 0 : n[0]; } function I(n, e) { if (!n) return n; const t = Math.ceil(n.length / e); return new Array(t).fill([]).map((r, o) => n.slice(o * e, o * e + e)); } function S(n, e) { return n.reduce((t, u) => { const r = e(u); return t[r] || (t[r] = []), t[r].push(u), t; }, {}); } function B(n, e) { const t = {}; return n.forEach((u) => { const { groupKey: r, groupData: o, child: c } = e(u); t[r] || (t[r] = { ...o, children: [] }), t[r].children.push(c); }), Object.keys(t).map((u) => t[u]); } function k(n, e) { const t = [...n]; return t.sort(e), t; } function v(n, e = "ASC") { return function(t, u) { const r = n(t), o = n(u); return r < o ? e === "ASC" ? -1 : 1 : r > o ? e === "ASC" ? 1 : -1 : 0; }; } const F = (n, e = "skeleton_") => Array.from({ length: n }).map((t, u) => `${e}${u}`); function b(n) { return (e) => { const u = (n.indexOf(e) + 1) % n.length; return n[u]; }; } export { w as arrayFirst, d as arrayJoin, I as arraySplit, v as generateSortByProperty, F as generatorArray, b as generatorArrayToggle, S as groupBy, B as groupTreeBy, g as insert, p as move, s as pull, l as push, i as removeByIndex, h as removeFind, k as sort, A as unique, f as updateByIndex, m as updateFind };