@variantjs/core
Version:
VariantJS common functions and utilities
24 lines (16 loc) • 554 B
text/typescript
/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
/* eslint-disable @typescript-eslint/no-explicit-any */
import isEqual from './isEqual';
const substractFromArray = <P extends any[] = []>(arr: any, value: any): P => {
if (!Array.isArray(arr)) {
return [] as any;
}
const index = arr.findIndex((valueInOriginal) => isEqual(valueInOriginal, value));
if (index === -1) {
return arr as P;
}
const newArray = [...arr];
newArray.splice(index, 1);
return newArray as P;
};
export default substractFromArray;