import { callable, deepGet, isEmpty } from 'mixlea-utils-js'; import type { CellRequiredConfig } from '../types'; export function calcCellRequiredResult(formData: Record, config?: CellRequiredConfig) { const result: string[] = []; if (config) { Object.entries(config.mapping).forEach(([field, requiredFn]) => { if (callable(requiredFn, formData) && isEmpty(deepGet(formData, field, undefined))) { if (!result.includes(field)) { result.push(field); } } }); } return result; }