UNPKG

dynamic-modal

Version:

The dynamic-modal is a solution of creation different modals into project using a json configuration file

39 lines (38 loc) 1.45 kB
"use strict"; 'use client'; Object.defineProperty(exports, "__esModule", { value: true }); const react_1 = require("react"); const general_util_1 = require("../util/general/general.util"); const useRenderIf = ({ elementRenderIf }) => { const [render, setRender] = (0, react_1.useState)(() => { return elementRenderIf === undefined; }); const checkRender = async (formData, { name }) => { const targetFieldData = formData[name]; // if ( // targetFieldData === undefined || // targetFieldData === '' || // targetFieldData === null // ) // return false; const renderIfConfig = elementRenderIf; const isLiveRender = !!renderIfConfig?.action && !!renderIfConfig?.condition; if (isLiveRender && renderIfConfig.condition.includes(name)) { const renderStatus = await (0, general_util_1.liveDataHandler)(targetFieldData, formData, renderIfConfig.action); return renderStatus; } else { const renderConditionList = Object.keys(elementRenderIf); if (renderConditionList.includes(name)) { const renderStatus = renderIfConfig[name].includes(targetFieldData) || renderIfConfig[name].includes('*'); return renderStatus; } } }; return { render, checkRender, setRender, }; }; exports.default = useRenderIf;