ticket editor

This commit is contained in:
mlogclub
2026-05-03 13:08:02 +08:00
parent 1e7c77e379
commit 57cf11afd6
3 changed files with 13 additions and 9 deletions
+1 -1
Submodule docs updated: 9891c4d16a...077a8032c5
@@ -7,9 +7,9 @@ import type { Resolver } from "react-hook-form"
import { Controller, useForm } from "react-hook-form"
import { z } from "zod/v4"
import { ContentEditor } from "@/components/content-editor"
import { OptionCombobox } from "@/components/option-combobox"
import { ProjectDialog } from "@/components/project-dialog"
import { RichTextEditor } from "@/components/rich-text-editor"
import { isRichTextEmpty } from "@/components/safe-rich-html"
import { Badge } from "@/components/ui/badge"
import { Button } from "@/components/ui/button"
@@ -375,11 +375,13 @@ function TicketEditDialogBody({
control={control}
name="description"
render={({ field }) => (
<RichTextEditor
content={field.value ?? ""}
onChange={field.onChange}
<ContentEditor
value={{ mode: "html", raw: field.value ?? "" }}
onChange={(next) => field.onChange(next.raw)}
placeholder="请输入问题描述"
disabled={saving || loading}
allowedModes={["html"]}
height={260}
/>
)}
/>
@@ -7,8 +7,8 @@ import { toast } from "sonner"
import { type CustomerFormSavePayload } from "@/components/customer-form"
import { CustomerFormDialog } from "@/components/customer-form-dialog"
import { CustomerLinkOrCreateDialog } from "@/components/customer-link-or-create-dialog"
import { ContentEditor } from "@/components/content-editor"
import { ProjectDialog } from "@/components/project-dialog"
import { RichTextEditor } from "@/components/rich-text-editor"
import { isRichTextEmpty, SafeRichHTML } from "@/components/safe-rich-html"
import { Badge } from "@/components/ui/badge"
import { Button } from "@/components/ui/button"
@@ -434,11 +434,13 @@ export function TicketDetailDialog({
</div>
<div className="mt-3 space-y-2">
<RichTextEditor
content={progressContent}
onChange={setProgressContent}
<ContentEditor
value={{ mode: "html", raw: progressContent }}
onChange={(next) => setProgressContent(next.raw)}
placeholder="记录本次处理进展"
disabled={progressSaving}
allowedModes={["html"]}
height={220}
/>
<div className="flex justify-end">
<Button type="button" size="sm" disabled={progressSaving} onClick={() => void handleCreateProgress()}>