import { useMutation, useFlash } from '@redwoodjs/web' import { Link, routes, navigate } from '@redwoodjs/router' import { initialize } from 'src/cascade/js/MainPage/CascadeMain' import CascadeController from 'src/helpers/cascadeController' import { useEffect, useState } from 'react' const DELETE_PART_MUTATION = gql` mutation DeletePartMutation($id: Int!) { deletePart(id: $id) { id } } ` const domNode = document.createElement('div').setAttribute('id', 'sickId') const IdeCascadeStudio = ({ part, saveCode, loading, error }) => { const [code, setCode] = useState(part.code) useEffect(() => { const onCodeChange = (code) => setCode(code) CascadeController.initialise(onCodeChange, part.code, domNode) const element = document.getElementById('cascade-container') element.setAttribute('style', 'height: auto; display: block; opacity: 100%') // eslint-disable-line return () => { element.setAttribute('style', 'height: auto; display: none;') // eslint-disable-line } }, []) const hasChanges = code !== part.code const { addMessage } = useFlash() const [deletePart] = useMutation(DELETE_PART_MUTATION, { onCompleted: () => { // navigate(routes.parts()) addMessage('Part deleted.', { classes: 'rw-flash-success' }) }, }) const onDeleteClick = (id) => { if (confirm('Are you sure you want to delete part ' + id + '?')) { deletePart({ variables: { id } }) } } return ( <>