@kungal/editor-vue 0.37.0 → 0.38.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +58 -0
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,63 @@
|
|
|
1
1
|
# @kungal/editor-vue
|
|
2
2
|
|
|
3
|
+
## 0.38.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- f078b5b: KunUI 工具栏的链接面板不再抢着聚焦,页面不会被弹到顶部
|
|
8
|
+
|
|
9
|
+
下游报的两个 bug:① 滚到页面中部点「链接」,整页跳回顶部;② 编辑器放进 `KunModal` /
|
|
10
|
+
`KunDrawer` 时,链接面板里的输入框一个字都打不进去。
|
|
11
|
+
|
|
12
|
+
两个都属实,但根因都在 KunUI 侧,且 `@kungal/ui-vue` **2.26.0 已经全部修好**(库里每一处
|
|
13
|
+
主动 `focus()` 都带 `preventScroll`;浮层面板会登记进开它的那个弹窗的焦点陷阱)。
|
|
14
|
+
|
|
15
|
+
这里只做一件事:**把工具栏链接面板上那个多余的 `:autofocus="true"` 删掉。**
|
|
16
|
+
`KunPopover` 打开时本来就会带着 `preventScroll` 聚焦面板里第一个可聚焦元素 ——
|
|
17
|
+
输入框自己的挂载聚焦比它早一拍,发生在 floating-ui 量出位置**之前**,此时 teleport 到
|
|
18
|
+
`<body>` 的面板还停在文档原点(实测 `getBoundingClientRect().top === -1440`),
|
|
19
|
+
浏览器「滚动到该元素」就把整页拉回了顶部。这个 prop 从来没做过 popover 没做对的事,
|
|
20
|
+
删掉之后即使宿主的 KunUI 还没升到 2.26.0,也不会再跳顶。
|
|
21
|
+
|
|
22
|
+
第二个问题(弹窗里的焦点陷阱)编辑器这一侧无解 —— 面板是 KunUI teleport 的,陷阱也是
|
|
23
|
+
KunUI 建的。**编辑器放进 `KunModal` / `KunDrawer`,请把 `@kungal/ui-vue` 升到 2.26.0 及以上**,
|
|
24
|
+
这一点已写进 `@kungal/editor-nuxt` 的 README 与文档的「Nuxt 接入」页(那页还加了一个
|
|
25
|
+
「弹窗里的编辑器」实测 demo)。
|
|
26
|
+
|
|
27
|
+
无破坏性变更:面板照样自动聚焦,行为不变。
|
|
28
|
+
|
|
29
|
+
- Updated dependencies [f078b5b]
|
|
30
|
+
- @kungal/editor-core@0.38.1
|
|
31
|
+
|
|
32
|
+
## 0.38.0
|
|
33
|
+
|
|
34
|
+
### Minor Changes
|
|
35
|
+
|
|
36
|
+
- 0f3ceab: 隐藏文本:编辑时看得出被隐藏,光标锚点不再进入存库的 markdown
|
|
37
|
+
|
|
38
|
+
- **剧透块的底色不再依赖宿主 token。** 原来是 `background: var(--color-default-500)`,
|
|
39
|
+
没有 fallback —— 宿主没定义这个调色板变量时整条声明作废,实测算出来是
|
|
40
|
+
`rgba(0, 0, 0, 0)`:编辑时剧透块和正文长得一模一样。而「零 CSS 的 headless 编辑器」
|
|
41
|
+
正是这样的宿主。现在自带一份不依赖任何设计 token 的默认底色(由 `currentColor`
|
|
42
|
+
混出,明暗主题都成立),并留出 `--kun-spoiler-bg` 这个换肤钩子 —— 内联样式压得过
|
|
43
|
+
任何选择器,但压不过自定义属性,所以这是宿主唯一能用纯 CSS 改它的入口。
|
|
44
|
+
`@kungal/editor-nuxt/editor.css` 把它映射成 `--color-default-200`,KunUI 宿主观感不变。
|
|
45
|
+
- **光标锚点(`U+200B`)只留在编辑器文档里,不再写进 markdown。** 锚点是编辑器的
|
|
46
|
+
内部装置(光标必须落在某个 text 节点上),但它一直跟着正文一起被序列化出去,存库的
|
|
47
|
+
文本会变成 `鲲 ||Galgame||<U+200B> 论坛` —— 数据库、diff、以及每一个不认识本编辑器的
|
|
48
|
+
下游都得吃下这个看不见的字符。现在在 **serializer** 这一层统一剥掉:`getMarkdown()`、
|
|
49
|
+
`v-model`、源码视图、宿主自己的 action 都读同一个 slice,所以一处收口全部干净;
|
|
50
|
+
从旧内容或粘贴带进来的锚点也一并清掉 —— **旧帖打开再保存一次就自愈**。
|
|
51
|
+
解析时反过来给每个 `||…||` 补回锚点,所以「点在段尾的剧透块后面接着打字,字落在
|
|
52
|
+
块外面」这件事和以前一样成立。
|
|
53
|
+
|
|
54
|
+
对下游没有破坏性改动:markdown 少了一个不可见字符,DOM 结构与命令行为不变。
|
|
55
|
+
|
|
56
|
+
### Patch Changes
|
|
57
|
+
|
|
58
|
+
- Updated dependencies [0f3ceab]
|
|
59
|
+
- @kungal/editor-core@0.38.0
|
|
60
|
+
|
|
3
61
|
## 0.37.0
|
|
4
62
|
|
|
5
63
|
### Minor Changes
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kungal/editor-vue",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.38.1",
|
|
4
4
|
"description": "KunEditor Vue 3 layer — the headless <KunEditor> component (dual WYSIWYG / markdown-source), toolbar and plugin views. Ships zero CSS and no UI-kit dependency; consumes @kungal/editor-core, and pairs with @kungal/editor-nuxt for optional KunUI chrome.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"keywords": [
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
42
|
"@prosemirror-adapter/vue": "^0.4.6",
|
|
43
|
-
"@kungal/editor-core": "0.
|
|
43
|
+
"@kungal/editor-core": "0.38.1"
|
|
44
44
|
},
|
|
45
45
|
"peerDependencies": {
|
|
46
46
|
"@codemirror/lang-markdown": "^6.0.0",
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
"vite": "^8.0.16",
|
|
81
81
|
"vue": "^3.5.35",
|
|
82
82
|
"vue-tsc": "^3.3.3",
|
|
83
|
-
"@kungal/editor-core": "0.
|
|
83
|
+
"@kungal/editor-core": "0.38.1"
|
|
84
84
|
},
|
|
85
85
|
"scripts": {
|
|
86
86
|
"build": "vite build && vue-tsc -p tsconfig.build.json",
|