import { vars } from '../archive/variable.js'; import { docVars } from './docVariable.js'; import { renderDocViewer } from './docPageRenderer.js'; let socket = vars.socket; // 변환시작, 변환완료 등 상태에 따른 실시간 UI 변경 처리는 socket.on에서 처리 // 서버에 현재 변환중인 파일 경로를 보내는 등 로직 처리는 working //// 변환 시작 socket.on('convertDoc_start', (resultData) => { let resourcePath = resultData.resourcePath; let state = document.querySelector(`.attach-item[data-resource-path="${resourcePath}"] .state`); if (!state) return; state.classList.remove('convert'); state.classList.add('working'); let convertBtnText = state.querySelector('.convert-btn-text'); if (convertBtnText) convertBtnText.innerHTML = '변환중'; }); //// 변환 완료 socket.on('convertPdf_success', async (resultData) => { let resourcePath = resultData.resourcePath; docVars.convertingPathArr = resultData.convertingPathArr; let state = document.querySelector(`.attach-item[data-resource-path="${resourcePath}"] .state`); if (!state) return; state.classList.remove('working'); state.classList.add('viewable'); let stateText = state.querySelector('.state-text'); if (stateText) stateText.innerHTML = '열람가능'; let convertBtn = state.querySelector('.convert-btn'); if (convertBtn) convertBtn.remove(); if (docVars.lastClickedListTarget) { let lastClickedListTargetPath = docVars.lastClickedListTarget.dataset.resourcePath; if (resourcePath == lastClickedListTargetPath) renderDocViewer(resourcePath, resultData.dataId); } });