export const EMPTY_ARRAY = Object.freeze([])
export const first = (r) => (r ? r[0] : void 0)
export const last = (r) => (r?.length > 0 ? r[r.length - 1] : void 0)
export const isEmpty = (r) => !Array.isArray(r) || 0 === r.length
export const arrayEqual = (r, t) => {
if (r === t) return !0
if (!r || !t) return !1
const { length: e } = r
if (e !== t.length) return !1
for (let n = 0; n < e; n += 1) if (r[n] !== t[n]) return !1
return !0
}
export const getChanged = (r, t) => {
if (!Array.isArray(t)) return null
if (!Array.isArray(r)) return t
if (r.length !== t.length) return t
for (let e = 0; e < t.length; e += 1) if (r[e] !== t[e]) return t
return null
}
export const chunk = (r, t) => {
const e = []
for (let n = 0; n < r.length; n += t) e.push(r.slice(n, n + t))
return e
}