fix(m01-sl): 바깥 값 — 옛 답은 버리고 다시 받음 · 아직 고르지 않은 상자는 묻지 않음
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016PSXsvyDxjNmufteN5bqmt
This commit is contained in:
@@ -103,6 +103,9 @@ export function outsidePlaces(M: Mods, sl: SheetLogic): SlOutsideAt[] {
|
||||
const at = new Map<string, SlOutsideAt>();
|
||||
const put = (p: SlOutsideAt): void => {
|
||||
const k = `${p.sheet}!${p.cell.toUpperCase()}`;
|
||||
// 아직 고르지 않은 상자(빈 번호)는 묻지 않음
|
||||
const it = p.item as { key?: string; table?: string; element?: string };
|
||||
if (!(it.key ?? it.table ?? it.element)) return;
|
||||
if (!at.has(k)) at.set(k, p);
|
||||
};
|
||||
M.item.itemOutsides(sl).forEach(put);
|
||||
@@ -184,7 +187,11 @@ export function showPaper(
|
||||
outsideTimer = setTimeout(() => {
|
||||
const from = sl;
|
||||
void fillOutside(M, from).then(({ sl: next, errors }) => {
|
||||
if (sl !== from) return; // 그 사이 또 바뀜 — 다음 그리기가 다시 받음
|
||||
if (sl !== from) {
|
||||
// 그 사이 또 바뀜 — 지금 것으로 다시 받음(옛 답 · 옛 까닭은 버림)
|
||||
outsideSig = "";
|
||||
return refreshOutside();
|
||||
}
|
||||
if (savedSl === from) savedSl = next;
|
||||
sl = next;
|
||||
outsideSig = sigOf(next);
|
||||
|
||||
Reference in New Issue
Block a user