From 9be308b65c2e188776e217fd1d13ed57a003cb18 Mon Sep 17 00:00:00 2001 From: taDuc Date: Sun, 10 May 2026 23:38:07 +0700 Subject: [PATCH] fix confuse UI commit --- src/app/editor/[id]/page.tsx | 6 -- src/uhm/api/sections.ts | 4 +- src/uhm/components/Editor.tsx | 70 ++++++++++++++----- .../lib/editor/section/useSectionCommands.ts | 8 +-- .../editor/session/useSectionSessionState.ts | 4 -- 5 files changed, 58 insertions(+), 34 deletions(-) diff --git a/src/app/editor/[id]/page.tsx b/src/app/editor/[id]/page.tsx index e9b6cbe..89fc70b 100644 --- a/src/app/editor/[id]/page.tsx +++ b/src/app/editor/[id]/page.tsx @@ -113,8 +113,6 @@ export default function Page() { setNewSectionTitle, commitTitle, setCommitTitle, - commitNote, - setCommitNote, editorUserIdInput, activeSection, setActiveSection, @@ -375,7 +373,6 @@ export default function Page() { snapshotEntityWikiLinks, baselineSnapshot, commitTitle, - commitNote, setActiveSection, setSelectedSectionId, setSectionState, @@ -394,7 +391,6 @@ export default function Page() { setAvailableSections, setNewSectionTitle, setCommitTitle, - setCommitNote, }); const { openSectionForEditing, @@ -1141,9 +1137,7 @@ export default function Page() { sectionTitle={activeSection?.title || "Đang tải project"} sectionStatus={sectionState?.status || "editing"} commitTitle={commitTitle} - commitNote={commitNote} onCommitTitleChange={setCommitTitle} - onCommitNoteChange={setCommitNote} commitCount={sectionCommits.length} hasHeadCommit={Boolean(sectionState?.head_commit_id)} headCommitId={sectionState?.head_commit_id || null} diff --git a/src/uhm/api/sections.ts b/src/uhm/api/sections.ts index 7290082..c6f3af1 100644 --- a/src/uhm/api/sections.ts +++ b/src/uhm/api/sections.ts @@ -124,7 +124,7 @@ export async function restoreSectionCommit( return { commit: headCommit, state }; } -export async function submitSection(sectionId: string): Promise { +export async function submitSection(sectionId: string, content: string): Promise { // Submit latest commit of project const project = await requestJson
(`${API_ENDPOINTS.projects}/${encodeURIComponent(sectionId)}`); const commitId = project.latest_commit_id; @@ -137,7 +137,7 @@ export async function submitSection(sectionId: string): Promise void; onCommit: () => void; - onSubmit: () => void; + onSubmit: (content: string) => void; onRestoreCommit: (commitId: string) => void; isSaving: boolean; isSubmitting: boolean; sectionTitle: string; sectionStatus: string; commitTitle: string; - commitNote: string; onCommitTitleChange: (title: string) => void; - onCommitNoteChange: (note: string) => void; commitCount: number; hasHeadCommit: boolean; headCommitId: string | null; @@ -58,9 +56,7 @@ export default function Editor({ sectionTitle, sectionStatus, commitTitle, - commitNote, onCommitTitleChange, - onCommitNoteChange, commitCount, hasHeadCommit, headCommitId, @@ -80,6 +76,23 @@ export default function Editor({ } }; + const [isSubmitModalOpen, setIsSubmitModalOpen] = useState(false); + const [submitContent, setSubmitContent] = useState(""); + + const handleOpenSubmitModal = () => { + setSubmitContent(""); + setIsSubmitModalOpen(true); + }; + + const handleConfirmSubmit = () => { + setIsSubmitModalOpen(false); + onSubmit(submitContent); + }; + + const handleCancelSubmit = () => { + setIsSubmitModalOpen(false); + }; + const recentUndoLabels = (() => { const seen = new Set(); const labels: string[] = []; @@ -227,18 +240,10 @@ export default function Editor({ onCommitTitleChange(event.target.value)} - placeholder="Commit title" + placeholder="Edit Summary (Commit Title)" disabled={isSaving || isSubmitting} style={textInputStyle} /> -