2022-05-18 21:54:29 +03:00

22 lines
626 B
TypeScript

/* eslint-disable react/jsx-no-bind */
import { observer } from 'mobx-react-lite';
import { useStatus } from 'stores/calculation/statuses/hooks';
import { getAction } from '../config/map-actions';
import type { BuilderProps } from './types';
export default function buildAction({ elementName, Component, ...props }: BuilderProps) {
const actionName = getAction(elementName);
return observer(() => {
const status = useStatus(elementName);
return (
<Component
status={status}
{...props}
action={() => import(`process/${actionName}`).then((m) => m.default())}
/>
);
});
}