Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
center-book
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
EzijingWeb
center-book
Commits
8c00ed79
提交
8c00ed79
authored
8月 14, 2026
作者:
王鹏飞
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat: 添加对旧版对话框的支持,优化菜单键绑定逻辑
上级
dc06f0d4
显示空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
26 行增加
和
3 行删除
+26
-3
feature-registry.test.ts
...or/wangeditor-customer/__tests__/feature-registry.test.ts
+15
-1
LegacyDialogMenu.js
...nents/editor/wangeditor-customer/core/LegacyDialogMenu.js
+1
-1
register-editor-features.js
...itor/wangeditor-customer/core/register-editor-features.js
+10
-1
没有找到文件。
apps/admin/src/components/editor/wangeditor-customer/__tests__/feature-registry.test.ts
浏览文件 @
8c00ed79
import
{
describe
,
expect
,
it
}
from
'vitest'
import
{
describe
,
expect
,
it
,
vi
}
from
'vitest'
import
{
defineEditorFeature
}
from
'@/components/editor/wangeditor-customer/core/define-editor-feature'
import
{
defineEditorFeature
}
from
'@/components/editor/wangeditor-customer/core/define-editor-feature'
import
{
createFeatureRegistry
}
from
'@/components/editor/wangeditor-customer/core/create-feature-registry'
import
{
createFeatureRegistry
}
from
'@/components/editor/wangeditor-customer/core/create-feature-registry'
...
@@ -129,4 +129,18 @@ describe('createFeatureRegistry', () => {
...
@@ -129,4 +129,18 @@ describe('createFeatureRegistry', () => {
expect
(
calls
).
toHaveLength
(
1
+
expectedNodeTypes
.
length
)
expect
(
calls
).
toHaveLength
(
1
+
expectedNodeTypes
.
length
)
expect
(
calls
[
0
].
menus
.
map
((
menu
)
=>
menu
.
key
)).
toEqual
(
expectedMenuKeys
)
expect
(
calls
[
0
].
menus
.
map
((
menu
)
=>
menu
.
key
)).
toEqual
(
expectedMenuKeys
)
})
})
it
(
'opens legacy dialogs by the stable menu key'
,
()
=>
{
const
calls
=
[]
const
Boot
=
{
registerModule
:
(
module
)
=>
calls
.
push
(
module
)
}
const
emit
=
vi
.
fn
()
registerEditorFeatures
(
Boot
)
calls
[
0
].
menus
.
find
((
menu
)
=>
menu
.
key
===
'AIRewrite'
).
factory
().
exec
({
emit
})
expect
(
emit
).
toHaveBeenCalledWith
(
'wangeditor-customer:dialog'
,
{
id
:
'ai-text.action'
,
payload
:
{
action
:
'rewrite'
},
})
})
})
})
apps/admin/src/components/editor/wangeditor-customer/core/LegacyDialogMenu.js
浏览文件 @
8c00ed79
...
@@ -34,7 +34,7 @@ export default class BaseModalMenu {
...
@@ -34,7 +34,7 @@ export default class BaseModalMenu {
return
false
// or true
return
false
// or true
}
}
exec
(
editor
)
{
exec
(
editor
)
{
const
request
=
dialogByMenu
[
this
.
constructor
.
name
]
const
request
=
dialogByMenu
[
this
.
menuKey
]
if
(
!
request
)
return
if
(
!
request
)
return
openEditorDialog
(
editor
,
request
[
0
],
request
[
1
])
openEditorDialog
(
editor
,
request
[
0
],
request
[
1
])
}
}
...
...
apps/admin/src/components/editor/wangeditor-customer/core/register-editor-features.js
浏览文件 @
8c00ed79
...
@@ -2,11 +2,20 @@ import { editorFeatureRegistry } from '../features'
...
@@ -2,11 +2,20 @@ import { editorFeatureRegistry } from '../features'
const
registrationKey
=
Symbol
.
for
(
'ebook.admin.wangeditor-customer.registered'
)
const
registrationKey
=
Symbol
.
for
(
'ebook.admin.wangeditor-customer.registered'
)
const
bindMenuKey
=
(
config
)
=>
({
...
config
,
factory
(...
args
)
{
const
menu
=
config
.
factory
.
apply
(
config
,
args
)
menu
.
menuKey
=
config
.
key
return
menu
},
})
export
const
registerEditorFeatures
=
(
Boot
)
=>
{
export
const
registerEditorFeatures
=
(
Boot
)
=>
{
if
(
Boot
[
registrationKey
])
return
if
(
Boot
[
registrationKey
])
return
Boot
.
registerModule
({
Boot
.
registerModule
({
menus
:
editorFeatureRegistry
.
menus
.
map
((
entry
)
=>
entry
.
config
),
menus
:
editorFeatureRegistry
.
menus
.
map
((
entry
)
=>
bindMenuKey
(
entry
.
config
)
),
})
})
editorFeatureRegistry
.
nodeModules
.
forEach
((
entry
)
=>
Boot
.
registerModule
(
entry
.
module
))
editorFeatureRegistry
.
nodeModules
.
forEach
((
entry
)
=>
Boot
.
registerModule
(
entry
.
module
))
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论