dynamic-modal
Version:
The dynamic-modal is a solution of creation different modals into project using a json configuration file
24 lines (23 loc) • 799 B
JavaScript
'use client';
import { useState } from 'react';
import { liveDataAction } from '../util/general/general.util';
const useLiveData = ({ elementLiveData }) => {
const [liveData, setLiveData] = useState(undefined);
const checkLiveData = async (formData, { name }) => {
const targetFieldData = formData[name];
const liveDataConfig = elementLiveData;
const isLiveData = !!liveDataConfig?.action && !!liveDataConfig.condition;
if (!isLiveData)
return null;
if (liveDataConfig.condition.includes(name)) {
return await liveDataAction(targetFieldData, formData, liveDataConfig.action);
}
return null;
};
return {
liveData,
checkLiveData,
setLiveData,
};
};
export default useLiveData;