import React, { ReactElement, useCallback, useState } from "react"; import { useSelector, useDispatch } from "react-redux"; import { DnD } from "../../DnD"; import { isEmpty } from "lodash"; import Sticky from "react-stickynode"; import SlidingPane from "react-sliding-pane"; import { extractComicArchive } from "../../../actions/fileops.actions"; import { analyzeImage } from "../../../actions/fileops.actions"; export const ArchiveOperations = (props): ReactElement => { const { data } = props; const isComicBookExtractionInProgress = useSelector( (state: RootState) => state.fileOps.comicBookExtractionInProgress, ); const extractedComicBookArchive = useSelector( (state: RootState) => state.fileOps.extractedComicBookArchive, ); const imageAnalysisResult = useSelector( (state: RootState) => state.fileOps.imageAnalysisResults, ); const dispatch = useDispatch(); const unpackComicArchive = useCallback(() => { dispatch( extractComicArchive(data.rawFileDetails.filePath, { extractTarget: "book", targetExtractionFolder: "./userdata/expanded/" + data.rawFileDetails.name, extractionMode: "all", }), ); }, [dispatch, data]); // sliding panel config const [visible, setVisible] = useState(false); const [slidingPanelContentId, setSlidingPanelContentId] = useState(""); // current image const [currentImage, setCurrentImage] = useState([]); // sliding panel init const contentForSlidingPanel = { imageAnalysis: { content: () => { return (
{currentImage}
{JSON.stringify(imageAnalysisResult, null, 2)}