Source-reviewed hardening changes and regression tests. UNBUILT / UNTESTED: not a deployable release. Go formatting, compilation, automated regression tests, full frontend validation and staging acceptance remain required. See docs/hardening/VALIDATION.md. Main remains the original clean snapshot; no upstream Git history imported.
46 lines
1.2 KiB
TypeScript
46 lines
1.2 KiB
TypeScript
// Modified in the independent hardening fork; see docs/hardening/README.md.
|
|
// Modified for AgentDeskFixes: forward customer conversation identity and pending-send state.
|
|
"use client"
|
|
|
|
import {
|
|
SharedMessageEditor,
|
|
type UploadedMessageEditorImage,
|
|
} from "@/components/chat/shared-message-editor"
|
|
|
|
type CustomerMessageEditorProps = {
|
|
conversationId?: number | null
|
|
draftScope?: string
|
|
sending?: boolean
|
|
disabled?: boolean
|
|
uploadingAsset?: boolean
|
|
onSend: (html: string) => Promise<void>
|
|
onUploadImage: (file: File) => Promise<UploadedMessageEditorImage | null>
|
|
onSendAttachment: (file: File) => Promise<void>
|
|
}
|
|
|
|
export function CustomerMessageEditor({
|
|
conversationId,
|
|
draftScope,
|
|
sending = false,
|
|
disabled = false,
|
|
uploadingAsset = false,
|
|
onSend,
|
|
onUploadImage,
|
|
onSendAttachment,
|
|
}: CustomerMessageEditorProps) {
|
|
return (
|
|
<SharedMessageEditor
|
|
variant="customer"
|
|
conversationId={conversationId}
|
|
draftScope={draftScope}
|
|
sending={sending}
|
|
disabled={disabled}
|
|
uploadingAsset={uploadingAsset}
|
|
manageLocalUploading
|
|
onSend={onSend}
|
|
onUploadImage={onUploadImage}
|
|
onSendAttachment={onSendAttachment}
|
|
/>
|
|
)
|
|
}
|