@modular-forms/react
Version:
The modular and type-safe form library for React
21 lines (20 loc) • 783 B
JavaScript
import { getFieldArrayNames } from './getFieldArrayNames';
import { getFieldArrayStore } from './getFieldArrayStore';
import { getPathIndex } from './getPathIndex';
/**
* Removes invalid field or field array names of field arrays.
*
* @param form The form of the field array.
* @param names The names to be filtered.
*/
export function removeInvalidNames(form, names) {
getFieldArrayNames(form, false).forEach((fieldArrayName) => {
const lastIndex = getFieldArrayStore(form, fieldArrayName).items.peek().length - 1;
names
.filter((name) => name.startsWith(`${fieldArrayName}.`) &&
getPathIndex(fieldArrayName, name) > lastIndex)
.forEach((name) => {
names.splice(names.indexOf(name), 1);
});
});
}