@wangeditor-next/core 1.5.5 → 1.5.6-alpha.0

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 CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [1.5.6-alpha.0](https://github.com/cycleccc/wangEditor/compare/@wangeditor-next/core@1.5.5...@wangeditor-next/core@1.5.6-alpha.0) (2024-07-25)
7
+
8
+
9
+ ### Reverts
10
+
11
+ * **core:** core selection judge ([e87ee63](https://github.com/cycleccc/wangEditor/commit/e87ee63d5ade4001e6c2509bfda374b8a5ff82ff))
12
+
13
+
14
+
15
+
16
+
6
17
  ## [1.5.5](https://github.com/cycleccc/wangEditor/compare/@wangeditor-next/core@1.5.3...@wangeditor-next/core@1.5.5) (2024-07-21)
7
18
 
8
19
 
package/README.md CHANGED
@@ -1,13 +1,13 @@
1
- # wangEditor core
2
-
3
- [wangeditor-next](https://cycleccc.github.io/docs/) core.
4
-
5
- ## Main Functionalities
6
- - View( model -> vdom -> DOM ) + Selection
7
- - Menus + toolbar + hoverbar
8
- - Core editor APIs and events
9
- - Register third-party modules (menus, plugins...)
10
-
11
- ## Main dependencies
12
- - [slate.js](https://docs.slatejs.org/)
13
- - [snabbdom.js](https://github.com/snabbdom/snabbdom)
1
+ # wangEditor core
2
+
3
+ [wangeditor-next](https://cycleccc.github.io/docs/) core.
4
+
5
+ ## Main Functionalities
6
+ - View( model -> vdom -> DOM ) + Selection
7
+ - Menus + toolbar + hoverbar
8
+ - Core editor APIs and events
9
+ - Register third-party modules (menus, plugins...)
10
+
11
+ ## Main dependencies
12
+ - [slate.js](https://docs.slatejs.org/)
13
+ - [snabbdom.js](https://github.com/snabbdom/snabbdom)
@@ -1 +1,391 @@
1
- .w-e-text-container *,.w-e-toolbar *{box-sizing:border-box;margin:0;outline:none;padding:0}.w-e-text-container blockquote,.w-e-text-container li,.w-e-text-container p,.w-e-text-container td,.w-e-text-container th,.w-e-toolbar *{line-height:1.5}.w-e-text-container{background-color:var(--w-e-textarea-bg-color);color:var(--w-e-textarea-color);height:100%;position:relative}.no-scroll{position:absolute;width:100%}.w-e-text-container .w-e-scroll{-webkit-overflow-scrolling:touch;height:100%}.w-e-text-container [data-slate-editor]{word-wrap:break-word;border-top:1px solid transparent;min-height:100%;outline:0;padding:0 10px;white-space:pre-wrap}.w-e-text-container [data-slate-editor] p{margin:15px 0}.w-e-text-container [data-slate-editor] h1,.w-e-text-container [data-slate-editor] h2,.w-e-text-container [data-slate-editor] h3,.w-e-text-container [data-slate-editor] h4,.w-e-text-container [data-slate-editor] h5{margin:20px 0}.w-e-text-container [data-slate-editor] img{cursor:default;display:inline!important;max-width:100%;min-height:20px;min-width:20px}.w-e-text-container [data-slate-editor] span{text-indent:0}.w-e-text-container [data-slate-editor] [data-selected=true]{box-shadow:0 0 0 2px var(--w-e-textarea-selected-border-color)}.w-e-text-placeholder{font-style:italic;left:10px;top:17px;width:90%}.w-e-max-length-info,.w-e-text-placeholder{color:var(--w-e-textarea-slight-color);pointer-events:none;position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}.w-e-max-length-info{bottom:.5em;right:1em}.w-e-bar{background-color:var(--w-e-toolbar-bg-color);color:var(--w-e-toolbar-color);font-size:14px;padding:0 5px}.w-e-bar svg{fill:var(--w-e-toolbar-color);height:14px;width:14px}.w-e-bar-show{display:flex}.w-e-bar-hidden{display:none}.w-e-hover-bar{border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;box-shadow:0 2px 5px #0000001f;position:absolute}.w-e-toolbar{flex-wrap:wrap;position:relative}.w-e-bar-divider{background-color:var(--w-e-toolbar-border-color);display:inline-flex;height:40px;margin:0 5px;width:1px}.w-e-bar-item{display:flex;height:40px;padding:4px;position:relative;text-align:center}.w-e-bar-item,.w-e-bar-item button{align-items:center;justify-content:center}.w-e-bar-item button{background:transparent;border:none;color:var(--w-e-toolbar-color);cursor:pointer;display:inline-flex;height:32px;overflow:hidden;padding:0 8px;white-space:nowrap}.w-e-bar-item button:hover{background-color:var(--w-e-toolbar-active-bg-color);color:var(--w-e-toolbar-active-color)}.w-e-bar-item button .title{margin-left:5px}.w-e-bar-item .active{background-color:var(--w-e-toolbar-active-bg-color);color:var(--w-e-toolbar-active-color)}.w-e-bar-item .disabled{color:var(--w-e-toolbar-disabled-color);cursor:not-allowed}.w-e-bar-item .disabled svg{fill:var(--w-e-toolbar-disabled-color)}.w-e-bar-item .disabled:hover{background-color:var(--w-e-toolbar-bg-color);color:var(--w-e-toolbar-disabled-color)}.w-e-bar-item .disabled:hover svg{fill:var(--w-e-toolbar-disabled-color)}.w-e-menu-tooltip-v5:before{background-color:var(--w-e-toolbar-active-color);border-radius:5px;color:var(--w-e-toolbar-bg-color);content:attr(data-tooltip);font-size:.75em;padding:5px 10px;text-align:center;top:40px;white-space:pre;z-index:1}.w-e-menu-tooltip-v5:after,.w-e-menu-tooltip-v5:before{opacity:0;position:absolute;transition:opacity .6s;visibility:hidden}.w-e-menu-tooltip-v5:after{border:5px solid transparent;border-bottom:5px solid var(--w-e-toolbar-active-color);content:"";top:30px}.w-e-menu-tooltip-v5:hover:after,.w-e-menu-tooltip-v5:hover:before{opacity:1;visibility:visible}.w-e-menu-tooltip-v5.tooltip-right:before{left:100%;top:10px}.w-e-menu-tooltip-v5.tooltip-right:after{border-bottom-color:transparent;border-left-color:transparent;border-right-color:var(--w-e-toolbar-active-color);border-top-color:transparent;left:100%;margin-left:-10px;top:16px}.w-e-bar-item-group .w-e-bar-item-menus-container{background-color:var(--w-e-toolbar-bg-color);border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;box-shadow:0 2px 10px #0000001f;display:none;left:0;margin-top:40px;position:absolute;top:0;z-index:1}.w-e-bar-item-group:hover .w-e-bar-item-menus-container{display:block}.w-e-select-list{background-color:var(--w-e-toolbar-bg-color);border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;box-shadow:0 2px 10px #0000001f;left:0;margin-top:40px;max-height:350px;min-width:100px;overflow-y:auto;position:absolute;top:0;z-index:1}.w-e-select-list ul{line-height:1;list-style:none}.w-e-select-list ul .selected{background-color:var(--w-e-toolbar-active-bg-color)}.w-e-select-list ul li{cursor:pointer;padding:7px 0 7px 25px;position:relative;text-align:left;white-space:nowrap}.w-e-select-list ul li:hover{background-color:var(--w-e-toolbar-active-bg-color)}.w-e-select-list ul li svg{left:0;margin-left:5px;margin-top:-7px;position:absolute;top:50%}.w-e-bar-bottom .w-e-select-list{bottom:0;margin-bottom:40px;margin-top:0;top:inherit}.w-e-drop-panel{background-color:var(--w-e-toolbar-bg-color);border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;box-shadow:0 2px 10px #0000001f;margin-top:40px;min-width:200px;padding:10px;position:absolute;top:0;z-index:1}.w-e-bar-bottom .w-e-drop-panel{bottom:0;margin-bottom:40px;margin-top:0;top:inherit}.w-e-modal{background-color:var(--w-e-toolbar-bg-color);border:1px solid var(--w-e-toolbar-border-color);border-radius:3px;box-shadow:0 2px 10px #0000001f;color:var(--w-e-toolbar-color);font-size:14px;min-height:40px;min-width:100px;padding:20px 15px 0;position:absolute;text-align:left;z-index:1}.w-e-modal .btn-close{cursor:pointer;line-height:1;padding:5px;position:absolute;right:8px;top:7px}.w-e-modal .btn-close svg{fill:var(--w-e-toolbar-color);height:10px;width:10px}.w-e-modal .babel-container{display:block;margin-bottom:15px}.w-e-modal .babel-container span{display:block;margin-bottom:10px}.w-e-modal .button-container{margin-bottom:15px}.w-e-modal button{background-color:var(--w-e-modal-button-bg-color);cursor:pointer;font-weight:400;height:32px;padding:4.5px 15px;text-align:center;touch-action:manipulation;transition:all .3s cubic-bezier(.645,.045,.355,1);-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.w-e-modal button,.w-e-modal input[type=number],.w-e-modal input[type=text],.w-e-modal textarea{border:1px solid var(--w-e-modal-button-border-color);border-radius:4px;color:var(--w-e-toolbar-color)}.w-e-modal input[type=number],.w-e-modal input[type=text],.w-e-modal textarea{font-feature-settings:"tnum";background-color:var(--w-e-toolbar-bg-color);font-variant:tabular-nums;padding:4.5px 11px;transition:all .3s;width:100%}.w-e-modal textarea{min-height:60px}body .w-e-modal,body .w-e-modal *{box-sizing:border-box}.w-e-progress-bar{background-color:var(--w-e-textarea-handler-bg-color);height:1px;position:absolute;transition:width .3s;width:0}.w-e-full-screen-container{bottom:0!important;display:flex!important;flex-direction:column!important;height:100%!important;left:0!important;margin:0!important;padding:0!important;position:fixed;right:0!important;top:0!important;width:100%!important}.w-e-full-screen-container [data-w-e-textarea=true]{flex:1!important}
1
+ .w-e-text-container *,
2
+ .w-e-toolbar * {
3
+ padding: 0;
4
+ margin: 0;
5
+ box-sizing: border-box;
6
+ outline: none;
7
+ }
8
+ .w-e-text-container p,
9
+ .w-e-text-container li,
10
+ .w-e-text-container td,
11
+ .w-e-text-container th,
12
+ .w-e-text-container blockquote {
13
+ line-height: 1.5;
14
+ }
15
+ .w-e-toolbar * {
16
+ line-height: 1.5;
17
+ }
18
+ .w-e-text-container {
19
+ color: var(--w-e-textarea-color);
20
+ background-color: var(--w-e-textarea-bg-color);
21
+ position: relative;
22
+ height: 100%;
23
+ }
24
+ .no-scroll {
25
+ position: absolute;
26
+ width: 100%;
27
+ }
28
+ .w-e-text-container .w-e-scroll {
29
+ height: 100%;
30
+ -webkit-overflow-scrolling: touch;
31
+ }
32
+ .w-e-text-container [data-slate-editor] {
33
+ outline: 0;
34
+ white-space: pre-wrap;
35
+ /* 【重要】可以显示空格,在连续多空格的情况下 */
36
+ word-wrap: break-word;
37
+ padding: 0 10px;
38
+ border-top: 1px solid transparent;
39
+ min-height: 100%;
40
+ }
41
+ .w-e-text-container [data-slate-editor] p {
42
+ margin: 15px 0;
43
+ }
44
+ .w-e-text-container [data-slate-editor] h1,
45
+ .w-e-text-container [data-slate-editor] h2,
46
+ .w-e-text-container [data-slate-editor] h3,
47
+ .w-e-text-container [data-slate-editor] h4,
48
+ .w-e-text-container [data-slate-editor] h5 {
49
+ margin: 20px 0 20px 0;
50
+ }
51
+ .w-e-text-container [data-slate-editor] img {
52
+ max-width: 100%;
53
+ min-width: 20px;
54
+ min-height: 20px;
55
+ cursor: default;
56
+ display: inline !important;
57
+ }
58
+ .w-e-text-container [data-slate-editor] span {
59
+ text-indent: 0;
60
+ }
61
+ .w-e-text-container [data-slate-editor] [data-selected="true"] {
62
+ box-shadow: 0 0 0 2px var(--w-e-textarea-selected-border-color);
63
+ }
64
+ .w-e-text-placeholder {
65
+ color: var(--w-e-textarea-slight-color);
66
+ position: absolute;
67
+ font-style: italic;
68
+ width: 90%;
69
+ left: 10px;
70
+ top: 17px;
71
+ pointer-events: none;
72
+ -webkit-user-select: none;
73
+ -moz-user-select: none;
74
+ user-select: none;
75
+ }
76
+ .w-e-max-length-info {
77
+ position: absolute;
78
+ color: var(--w-e-textarea-slight-color);
79
+ bottom: 0.5em;
80
+ right: 1em;
81
+ pointer-events: none;
82
+ -webkit-user-select: none;
83
+ -moz-user-select: none;
84
+ user-select: none;
85
+ }
86
+ .w-e-bar {
87
+ background-color: var(--w-e-toolbar-bg-color);
88
+ padding: 0 5px;
89
+ font-size: 14px;
90
+ color: var(--w-e-toolbar-color);
91
+ }
92
+ .w-e-bar svg {
93
+ width: 14px;
94
+ height: 14px;
95
+ fill: var(--w-e-toolbar-color);
96
+ }
97
+ .w-e-bar-show {
98
+ display: flex;
99
+ }
100
+ .w-e-bar-hidden {
101
+ display: none;
102
+ }
103
+ .w-e-hover-bar {
104
+ position: absolute;
105
+ border: 1px solid var(--w-e-toolbar-border-color);
106
+ border-radius: 3px;
107
+ box-shadow: 0 2px 5px #0000001f;
108
+ }
109
+ .w-e-toolbar {
110
+ flex-wrap: wrap;
111
+ position: relative;
112
+ }
113
+ .w-e-bar-divider {
114
+ display: inline-flex;
115
+ width: 1px;
116
+ height: 40px;
117
+ background-color: var(--w-e-toolbar-border-color);
118
+ margin: 0 5px;
119
+ }
120
+ .w-e-bar-item {
121
+ position: relative;
122
+ display: flex;
123
+ align-items: center;
124
+ justify-content: center;
125
+ text-align: center;
126
+ padding: 4px;
127
+ height: 40px;
128
+ }
129
+ .w-e-bar-item button {
130
+ border: none;
131
+ background: transparent;
132
+ height: calc(40px - 8px);
133
+ padding: 0 8px;
134
+ cursor: pointer;
135
+ display: inline-flex;
136
+ justify-content: center;
137
+ align-items: center;
138
+ color: var(--w-e-toolbar-color);
139
+ white-space: nowrap;
140
+ /* 不换行 */
141
+ overflow: hidden;
142
+ }
143
+ .w-e-bar-item button:hover {
144
+ background-color: var(--w-e-toolbar-active-bg-color);
145
+ color: var(--w-e-toolbar-active-color);
146
+ }
147
+ .w-e-bar-item button .title {
148
+ margin-left: 5px;
149
+ }
150
+ .w-e-bar-item .active {
151
+ background-color: var(--w-e-toolbar-active-bg-color);
152
+ color: var(--w-e-toolbar-active-color);
153
+ }
154
+ .w-e-bar-item .disabled {
155
+ color: var(--w-e-toolbar-disabled-color);
156
+ cursor: not-allowed;
157
+ }
158
+ .w-e-bar-item .disabled svg {
159
+ fill: var(--w-e-toolbar-disabled-color);
160
+ }
161
+ .w-e-bar-item .disabled:hover {
162
+ background-color: var(--w-e-toolbar-bg-color);
163
+ color: var(--w-e-toolbar-disabled-color);
164
+ }
165
+ .w-e-bar-item .disabled:hover svg {
166
+ fill: var(--w-e-toolbar-disabled-color);
167
+ }
168
+ .w-e-menu-tooltip-v5:before {
169
+ content: attr(data-tooltip);
170
+ position: absolute;
171
+ background-color: var(--w-e-toolbar-active-color);
172
+ color: var(--w-e-toolbar-bg-color);
173
+ text-align: center;
174
+ padding: 5px 10px;
175
+ border-radius: 5px;
176
+ z-index: 1;
177
+ opacity: 0;
178
+ transition: opacity 0.6s;
179
+ font-size: 0.75em;
180
+ visibility: hidden;
181
+ top: 40px;
182
+ white-space: pre;
183
+ }
184
+ .w-e-menu-tooltip-v5:after {
185
+ content: "";
186
+ position: absolute;
187
+ border-width: 5px;
188
+ border-style: solid;
189
+ opacity: 0;
190
+ transition: opacity 0.6s;
191
+ border-color: transparent transparent var(--w-e-toolbar-active-color) transparent;
192
+ visibility: hidden;
193
+ top: 30px;
194
+ }
195
+ .w-e-menu-tooltip-v5:hover:before,
196
+ .w-e-menu-tooltip-v5:hover:after {
197
+ opacity: 1;
198
+ visibility: visible;
199
+ }
200
+ .w-e-menu-tooltip-v5.tooltip-right:before {
201
+ left: 100%;
202
+ top: 10px;
203
+ }
204
+ .w-e-menu-tooltip-v5.tooltip-right:after {
205
+ left: 100%;
206
+ margin-left: -10px;
207
+ top: 16px;
208
+ border-color: transparent var(--w-e-toolbar-active-color) transparent transparent;
209
+ }
210
+ .w-e-bar-item-group .w-e-bar-item-menus-container {
211
+ display: none;
212
+ /* 默认隐藏 */
213
+ z-index: 1;
214
+ background-color: var(--w-e-toolbar-bg-color);
215
+ position: absolute;
216
+ top: 0;
217
+ left: 0;
218
+ margin-top: 40px;
219
+ border: 1px solid var(--w-e-toolbar-border-color);
220
+ border-radius: 3px;
221
+ box-shadow: 0 2px 10px #0000001f;
222
+ }
223
+ .w-e-bar-item-group:hover {
224
+ /* hover 时显示下级菜单 */
225
+ }
226
+ .w-e-bar-item-group:hover .w-e-bar-item-menus-container {
227
+ display: block;
228
+ }
229
+ .w-e-select-list {
230
+ z-index: 1;
231
+ position: absolute;
232
+ left: 0;
233
+ top: 0;
234
+ background-color: var(--w-e-toolbar-bg-color);
235
+ margin-top: 40px;
236
+ min-width: 100px;
237
+ border: 1px solid var(--w-e-toolbar-border-color);
238
+ border-radius: 3px;
239
+ box-shadow: 0 2px 10px #0000001f;
240
+ max-height: 350px;
241
+ overflow-y: auto;
242
+ }
243
+ .w-e-select-list ul {
244
+ list-style: none;
245
+ line-height: 1;
246
+ }
247
+ .w-e-select-list ul .selected {
248
+ background-color: var(--w-e-toolbar-active-bg-color);
249
+ }
250
+ .w-e-select-list ul li {
251
+ cursor: pointer;
252
+ padding: 7px 0 7px 25px;
253
+ position: relative;
254
+ text-align: left;
255
+ white-space: nowrap;
256
+ /* 不换行 */
257
+ }
258
+ .w-e-select-list ul li:hover {
259
+ background-color: var(--w-e-toolbar-active-bg-color);
260
+ }
261
+ .w-e-select-list ul li svg {
262
+ position: absolute;
263
+ left: 0;
264
+ margin-left: 5px;
265
+ top: 50%;
266
+ margin-top: -7px;
267
+ }
268
+ .w-e-bar-bottom .w-e-select-list {
269
+ top: inherit;
270
+ bottom: 0;
271
+ margin-top: 0;
272
+ margin-bottom: 40px;
273
+ }
274
+ .w-e-drop-panel {
275
+ z-index: 1;
276
+ background-color: var(--w-e-toolbar-bg-color);
277
+ position: absolute;
278
+ top: 0;
279
+ border: 1px solid var(--w-e-toolbar-border-color);
280
+ border-radius: 3px;
281
+ box-shadow: 0 2px 10px #0000001f;
282
+ margin-top: 40px;
283
+ min-width: 200px;
284
+ padding: 10px;
285
+ }
286
+ .w-e-bar-bottom .w-e-drop-panel {
287
+ top: inherit;
288
+ bottom: 0;
289
+ margin-top: 0;
290
+ margin-bottom: 40px;
291
+ }
292
+ .w-e-modal {
293
+ z-index: 1;
294
+ background-color: var(--w-e-toolbar-bg-color);
295
+ position: absolute;
296
+ padding: 20px 15px 0 15px;
297
+ min-width: 100px;
298
+ min-height: 40px;
299
+ color: var(--w-e-toolbar-color);
300
+ text-align: left;
301
+ font-size: 14px;
302
+ border: 1px solid var(--w-e-toolbar-border-color);
303
+ border-radius: 3px;
304
+ box-shadow: 0 2px 10px #0000001f;
305
+ }
306
+ .w-e-modal .btn-close {
307
+ position: absolute;
308
+ right: 8px;
309
+ top: 7px;
310
+ cursor: pointer;
311
+ padding: 5px;
312
+ line-height: 1;
313
+ }
314
+ .w-e-modal .btn-close svg {
315
+ width: 10px;
316
+ height: 10px;
317
+ fill: var(--w-e-toolbar-color);
318
+ }
319
+ .w-e-modal .babel-container {
320
+ display: block;
321
+ margin-bottom: 15px;
322
+ }
323
+ .w-e-modal .babel-container span {
324
+ display: block;
325
+ margin-bottom: 10px;
326
+ }
327
+ .w-e-modal .button-container {
328
+ margin-bottom: 15px;
329
+ }
330
+ .w-e-modal button {
331
+ font-weight: 400;
332
+ white-space: nowrap;
333
+ cursor: pointer;
334
+ transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
335
+ -webkit-user-select: none;
336
+ -moz-user-select: none;
337
+ user-select: none;
338
+ touch-action: manipulation;
339
+ height: 32px;
340
+ padding: 4.5px 15px;
341
+ color: var(--w-e-toolbar-color);
342
+ background-color: var(--w-e-modal-button-bg-color);
343
+ text-align: center;
344
+ border: 1px solid var(--w-e-modal-button-border-color);
345
+ border-radius: 4px;
346
+ }
347
+ .w-e-modal textarea,
348
+ .w-e-modal input[type="text"],
349
+ .w-e-modal input[type="number"] {
350
+ font-variant: tabular-nums;
351
+ font-feature-settings: "tnum";
352
+ padding: 4.5px 11px;
353
+ color: var(--w-e-toolbar-color);
354
+ background-color: var(--w-e-toolbar-bg-color);
355
+ border: 1px solid var(--w-e-modal-button-border-color);
356
+ border-radius: 4px;
357
+ transition: all 0.3s;
358
+ width: 100%;
359
+ }
360
+ .w-e-modal textarea {
361
+ min-height: 60px;
362
+ }
363
+ body .w-e-modal {
364
+ box-sizing: border-box;
365
+ }
366
+ body .w-e-modal * {
367
+ box-sizing: border-box;
368
+ }
369
+ .w-e-progress-bar {
370
+ position: absolute;
371
+ width: 0;
372
+ height: 1px;
373
+ background-color: var(--w-e-textarea-handler-bg-color);
374
+ transition: width 0.3s;
375
+ }
376
+ .w-e-full-screen-container {
377
+ position: fixed;
378
+ margin: 0 !important;
379
+ padding: 0 !important;
380
+ top: 0 !important;
381
+ left: 0 !important;
382
+ right: 0 !important;
383
+ bottom: 0 !important;
384
+ height: 100% !important;
385
+ width: 100% !important;
386
+ display: flex !important;
387
+ flex-direction: column !important;
388
+ }
389
+ .w-e-full-screen-container [data-w-e-textarea="true"] {
390
+ flex: 1 !important;
391
+ }