Preserve isolated local drafts across navigation and reload
This commit is contained in:
@@ -7,7 +7,8 @@ export type DecisionDraft = { option: string | null; comment: string; revision:
|
||||
export type ChatDraft = { text: string; sending: boolean; error: string; attempt?: { text: string; key: string } }
|
||||
export function writable(decision: Decision) { return ['open', 'needs_reconsideration'].includes(decisionStatus(decision)) }
|
||||
export function submissionBody(decision: Decision, draft: DecisionDraft) {
|
||||
const revision = decision.revision ?? 1
|
||||
const revision = decision.revision
|
||||
if (!Number.isInteger(revision) || (revision ?? 0) < 1) return null
|
||||
if (!writable(decision) || draft.sending || draft.conflict || draft.revision !== revision) return null
|
||||
if (draft.option && !decision.options.some(option => option.id === draft.option)) return null
|
||||
if (!draft.option && !draft.comment.trim()) return null
|
||||
|
||||
Reference in New Issue
Block a user