Даже не думал об этом. Не ожидал что при явном объявлении типов деструктурированных пропсов принимающий FC не подхватит их типы..
function numToWords(num) {
let answer = [];
const dictionary11_19 = [
"десять",
"одиннадцать",
"двенадцать",
"тринадцать",
"четырнадцать",
"пятнадцать",
"шестнадцать",
"семнадцать",
"восемнадцать",
"девятнадцать",
];
if (num > 10 && num < 20) {
answer.push(dictionary11_19[num - 10]);
}
return answer;
}
console.log(numToWords(19));
export const ModalProvider = (props?: IProps) => {
const [modal, setModal] = useAtom(derivedModalAtom);
const { type, isShown } = modal;
const modalComponents = {
InterlocutorFound: InterlocutorFoundModal,
SearchChat: SearchChatModal,
QuitChat: QuitChatModal,
EndChat: EndChatModal
};
const ModalComponent = modalComponents[type];
return (
<ModalContext.Provider value={modal}>
{props?.children}
{isShown && ModalComponent && <ModalComponent />}
</ModalContext.Provider>
);
};
return (
<>
{isShown && ModalComponent && <ModalComponent />}
</>
<КомпонентКоторыйРендерит isShown={isShown} ModalComponent={ModalComponent} />