v4.3.19-2: 회계사 앱 스프레드시트 뷰어 수정 + helpers.js 5개 파일 분리
- coder_write_file이 xlsx/pptx/docx/pdf/zip 같은 바이너리 확장자로 파일을
만들려 하면 차단 (텍스트 escape로 바이너리를 흉내내다 파일이 깨지던 문제)
- 레거시 HTML 리다이렉트(/xlsx-viewer.html 등)가 쿼리스트링을 버리던 버그 수정
- xlsx-viewer: "새 시트"가 존재하지 않는 __new__.xlsx를 fetch하다 404나던
것을 빈 워크북 생성 후 저장 시 파일명 입력받는 흐름으로 교체
- xlsx-viewer: LuckyExcel 변환이 내놓는 손상된 숫자 서식("???.???")을
Luckysheet SSF 파서가 못 읽고 죽던 문제에 sanitizer 적용
- 회계사 앱 업로드가 존재하지 않는 /api/upload를 호출하던 것을
/api/upload/file로 수정
- web-ui/js/helpers.js(2240줄)를 helpers-core/markdown/voice/media/files.js
5개로 분리 (기능 변경 없음, 함수 단위 1:1 이관 확인됨)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -4345,7 +4345,9 @@ const LEGACY_HTML_REDIRECTS = [
|
||||
'/python-runner.html','/xlsx-viewer.html','/dental-agent.html'
|
||||
];
|
||||
for (const p of LEGACY_HTML_REDIRECTS) {
|
||||
app.get(p, (_req, res) => { res.redirect(`/html${p}`); });
|
||||
// req.url retains the original query string (e.g. xlsx-viewer.html?file=...);
|
||||
// redirecting with the bare path `p` silently drops it.
|
||||
app.get(p, (req, res) => { res.redirect(`/html${req.url}`); });
|
||||
}
|
||||
|
||||
app.get('/{*path}', (_req, res) => { res.sendFile(path.join(webUiPath, 'html', 'index.html')); });
|
||||
|
||||
Reference in New Issue
Block a user