reverse-proxy-frontend/src/features/chatbot/components/BotsManager.js

50 lines
1.0 KiB
JavaScript

import React, { useEffect, useState } from "react";
import PropTypes from "prop-types";
import { connect } from "react-redux";
import { botType } from "../botType";
import Wizard from "./Wizard";
import { makeStyles } from "@material-ui/core/styles";
const useStyles = makeStyles(theme => ({
bot: {
position: "fixed",
bottom: theme.spacing(2),
right: theme.spacing(2),
zIndex: 1
},
botPosition: {
position: "absolute"
}
}));
const BotsManager = ({ bot }) => {
const [type, setType] = useState(bot.type);
const classes = useStyles();
useEffect(() => {
if (bot.type) setType(bot.type);
}, [bot.type]);
return (
<div className={classes.botPosition}>
<div className={classes.bot}>{type === botType.wizard && <Wizard />}</div>
</div>
);
};
BotsManager.propTypes = {
bot: PropTypes.object
};
function mapStateToProps(state) {
return {
bot: state.bot
};
}
function mapDispatchToProps() {
return {};
}
export default connect(mapStateToProps, mapDispatchToProps)(BotsManager);