import React, { useState, useContext, useEffect } from "react"; import { useLocation, useNavigate } from "react-router-dom"; import JobContext from "@qltr/jobs"; import JobBox from "./JobBox.jsx"; import JobPipelineBox from "./JobPipelineBox.jsx"; import JobView from "./JobView.jsx"; import JobPipelineDisplay from "./JobPipelineDisplay.jsx"; import JobBuilder from "./builder/JobBuilder.jsx"; import Typography from "@mui/material/Typography"; import Box from "@mui/material/Box"; export default function Jobs() { const { state: jobState } = useContext(JobContext); const location = useLocation(); const navigate = useNavigate(); useEffect(() => { const jobName = location.hash.slice(1); const pipelineId = jobName.slice(1); if (!jobName || !pipelineId) return; const hasJob = jobState.pipelines.find((p) => p.id === pipelineId); const hasPipeline = jobState.jobs.find((job) => job.name === jobName); if (hasPipeline || hasJob) return; if (jobName || pipelineId) navigate("/qualiteer/jobs"); }); return (