import e from "lodash.isequal"
export function createDetectSameValueDifferentReferenceMiddleware(t = (e) => e) {
let r, a
return (n) => (o) => (f) => {
;((r = t ? t(n.getState()) : n.getState()), (a = r))
const u = o(f),
c = t ? t(n.getState()) : n.getState()
return (
void 0 !== r &&
e(r, c) &&
a !== c &&
console.error(
`[Redux Error] Same value but different reference returned after action:${f.type}`,
),
u
)
}
}