import React, { Component } from "react"; import PropTypes from "prop-types"; import { connect } from "react-redux"; import { tutorialCheck, tutorialStep } from "../../actions/tutorialActions"; import { withRouter } from "react-router-dom"; import Compile from "../Workspace/Compile"; import Dialog from "../Dialog"; import { checkXml } from "../../helpers/compareXml"; import { withStyles } from "@material-ui/core/styles"; import IconButton from "@material-ui/core/IconButton"; import Tooltip from "@material-ui/core/Tooltip"; import Button from "@material-ui/core/Button"; import { faClipboardCheck } from "@fortawesome/free-solid-svg-icons"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import * as Blockly from "blockly"; const styles = (theme) => ({ compile: { backgroundColor: theme.palette.button.compile, color: theme.palette.primary.contrastText, "&:hover": { backgroundColor: theme.palette.button.compile, color: theme.palette.primary.contrastText, }, }, }); class SolutionCheck extends Component { state = { open: false, msg: "", }; toggleDialog = () => { if (this.state.open) { this.setState({ open: false, msg: "" }); } else { this.setState({ open: !this.state }); } }; check = () => { const tutorial = this.props.tutorial; const step = tutorial.steps[this.props.activeStep]; var msg = checkXml(step.xml, this.props.xml); this.props.tutorialCheck(msg.type, step); this.setState({ msg, open: true }); }; render() { const steps = this.props.tutorial.steps; return (