This commit is contained in:
2026-07-15 18:33:33 +09:00
parent 6b1583103f
commit f533082537
201 changed files with 19776 additions and 563 deletions
+8 -16
View File
@@ -369,7 +369,6 @@ function projectTable(projects: ProjectItem[], currentUser: DashboardUser): HTML
}
function workflow(project: ProjectItem): HTMLElement {
const activeStage = project.workflow_stage;
const routes: RoutePath[] = [
ROUTES.B03_FILE_INPUT,
ROUTES.B04_WF1_SURFACE,
@@ -391,21 +390,14 @@ function workflow(project: ProjectItem): HTMLElement {
button.className = "b01-dashboard__step";
button.textContent = stepLabels[index] ?? `B${String(index + 3).padStart(2, "0")}`;
let enabled = false;
if (stages && stages.length > 0) {
enabled = index === 0 || stages[index - 1]?.state === "COMPLETE";
} else {
enabled = index + 1 <= Math.max(activeStage, 1);
}
button.disabled = !enabled;
if (enabled) {
button.classList.add("is-enabled");
button.addEventListener("click", () => {
localStorage.setItem(CURRENT_PROJECT_ID_KEY, project.id);
navigateTo(route);
});
}
// 스텝바는 항상 자유롭게 이동 가능(게이팅하지 않음).
// 단계 완료/무효화 판정은 각 페이지의 액션(업로드·분석 실행 등) 시 백엔드가
// 계산·DB 갱신하며, 여기서는 그 결과를 색상/툴팁으로 표시만 한다.
button.classList.add("is-enabled");
button.addEventListener("click", () => {
localStorage.setItem(CURRENT_PROJECT_ID_KEY, project.id);
navigateTo(route);
});
if (stages && stages[index]) {
const state = stages[index].state;