DocumentEditor
DocumentEditor 用于编辑需要分页的 DOCX 兼容文档、报告和长篇内容。
TipTap 负责逻辑文档与选区,A3S Office 内核负责确定性分页、文本塑形和文件语义。
属性
内容结构
内置导航
“视图”选项卡会在宽屏打开固定的标题导航,在窄屏打开可管理焦点的抽屉。 导航搜索同时覆盖标题与正文,按当前章节组织结果,高亮所有命中项,并把编辑器选区 移动到目标位置,但不会增加撤销记录。窄屏选择结果后,抽屉先关闭,再把焦点和精确 文本范围还给正文。
引用与题注
“引用”选项卡可以插入题注、交叉引用、脚注、尾注、页码字段、日期与文献引用。
删除或移动题注会在同一事务中更新相关交叉引用:有效目标会重新编号,目标缺失时显示
Missing reference,而不是继续显示过期编号。一次撤销会同时恢复题注与引用字段。
自定义选区菜单
菜单工厂会收到不可变的选区快照,其中包含精确文本、结构化片段、前后文、全文纯文本、 同步 HTML 与当前受控内容,同时提供能检测冲突的编辑命令。
异步操作需要返回 Promise。编辑器会在无关事务发生后重新映射原选区;如果选中的文本
本身已经变化,后续 replaceText 会返回 stale-selection,不会改错内容。
“询问 AI”这类开放操作,应先在宿主界面收集用户问题,再发出请求。Playground 的实现 会打开独立问题输入框;提交后仍可查看所附上下文,但不会用整篇上下文占满助手消息流。
Extension
extensions 接收 TipTap Extension。数组引用应保持稳定,每个 Extension 必须使用
唯一名称。如果自定义 Node 或 Mark 需要经过 DOCX 导入导出后仍然存在,还要提供相应
文件语义。详见扩展机制。