UNPKG

first-npm-package-nicule

Version:

This isi first npm package

17 lines (14 loc) 713 B
import { Hypermedia, HypermediaAction } from 'first-npm-package-nicule/core'; export function moveFieldAfter(fieldName, afterFieldName): (hypermediaAction: HypermediaAction, hypermedia: Hypermedia) => HypermediaAction { return (hypermediaAction: HypermediaAction) => { const { fields: oldFields, ...rest } = hypermediaAction; const field = oldFields.find(({ name }) => name === fieldName); const fields = oldFields.filter(({ name }) => name !== fieldName); const afterIndex = fields.findIndex(({ name }) => name === afterFieldName) + 1; fields.splice(afterIndex, 0, field); return { ...rest, fields }; }; }