@wangeditor-next/list-module 1.1.17-beta.0 → 1.1.18
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/dist/index.js +2 -857
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2 -854
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1,857 +1,2 @@
|
|
|
1
|
-
(function (global, factory) {
|
|
2
|
-
|
|
3
|
-
typeof define === 'function' && define.amd ? define(['@wangeditor-next/core', 'slate', 'dom7', 'snabbdom'], factory) :
|
|
4
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.WangEditorListModule = factory(global.core, global.slate, global.$, global.snabbdom));
|
|
5
|
-
})(this, (function (core, slate, $, snabbdom) { 'use strict';
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* @description i18n en
|
|
9
|
-
* @author wangfupeng
|
|
10
|
-
*/
|
|
11
|
-
var enResources = {
|
|
12
|
-
listModule: {
|
|
13
|
-
unOrderedList: 'Unordered list',
|
|
14
|
-
orderedList: 'Ordered list',
|
|
15
|
-
},
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* @description i18n zh-CN
|
|
20
|
-
* @author wangfupeng
|
|
21
|
-
*/
|
|
22
|
-
var zhResources = {
|
|
23
|
-
listModule: {
|
|
24
|
-
unOrderedList: '无序列表',
|
|
25
|
-
orderedList: '有序列表',
|
|
26
|
-
},
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* @description i18n entry
|
|
31
|
-
* @author wangfupeng
|
|
32
|
-
*/
|
|
33
|
-
core.i18nAddResources('en', enResources);
|
|
34
|
-
core.i18nAddResources('zh-CN', zhResources);
|
|
35
|
-
|
|
36
|
-
/******************************************************************************
|
|
37
|
-
Copyright (c) Microsoft Corporation.
|
|
38
|
-
|
|
39
|
-
Permission to use, copy, modify, and/or distribute this software for any
|
|
40
|
-
purpose with or without fee is hereby granted.
|
|
41
|
-
|
|
42
|
-
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
43
|
-
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
44
|
-
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
45
|
-
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
46
|
-
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
47
|
-
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
48
|
-
PERFORMANCE OF THIS SOFTWARE.
|
|
49
|
-
***************************************************************************** */
|
|
50
|
-
/* global Reflect, Promise, SuppressedError, Symbol */
|
|
51
|
-
|
|
52
|
-
var extendStatics = function(d, b) {
|
|
53
|
-
extendStatics = Object.setPrototypeOf ||
|
|
54
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
55
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
56
|
-
return extendStatics(d, b);
|
|
57
|
-
};
|
|
58
|
-
|
|
59
|
-
function __extends(d, b) {
|
|
60
|
-
if (typeof b !== "function" && b !== null)
|
|
61
|
-
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
62
|
-
extendStatics(d, b);
|
|
63
|
-
function __() { this.constructor = d; }
|
|
64
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
function __rest(s, e) {
|
|
68
|
-
var t = {};
|
|
69
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
70
|
-
t[p] = s[p];
|
|
71
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
72
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
73
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
74
|
-
t[p[i]] = s[p[i]];
|
|
75
|
-
}
|
|
76
|
-
return t;
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
function __values(o) {
|
|
80
|
-
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
81
|
-
if (m) return m.call(o);
|
|
82
|
-
if (o && typeof o.length === "number") return {
|
|
83
|
-
next: function () {
|
|
84
|
-
if (o && i >= o.length) o = void 0;
|
|
85
|
-
return { value: o && o[i++], done: !o };
|
|
86
|
-
}
|
|
87
|
-
};
|
|
88
|
-
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
function __read(o, n) {
|
|
92
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
93
|
-
if (!m) return o;
|
|
94
|
-
var i = m.call(o), r, ar = [], e;
|
|
95
|
-
try {
|
|
96
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
97
|
-
}
|
|
98
|
-
catch (error) { e = { error: error }; }
|
|
99
|
-
finally {
|
|
100
|
-
try {
|
|
101
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
102
|
-
}
|
|
103
|
-
finally { if (e) throw e.error; }
|
|
104
|
-
}
|
|
105
|
-
return ar;
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
function __spreadArray(to, from, pack) {
|
|
109
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
110
|
-
if (ar || !(i in from)) {
|
|
111
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
112
|
-
ar[i] = from[i];
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
119
|
-
var e = new Error(message);
|
|
120
|
-
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
121
|
-
};
|
|
122
|
-
|
|
123
|
-
/**
|
|
124
|
-
* @description maps
|
|
125
|
-
* @author wangfupeng
|
|
126
|
-
*/
|
|
127
|
-
var ELEM_TO_EDITOR = new WeakMap();
|
|
128
|
-
|
|
129
|
-
/**
|
|
130
|
-
* 获取第一个 text-node 的颜色
|
|
131
|
-
* @param elem elem
|
|
132
|
-
*/
|
|
133
|
-
function getListItemColor(elem) {
|
|
134
|
-
var children = elem.children || [];
|
|
135
|
-
var length = children.length;
|
|
136
|
-
if (length === 0) {
|
|
137
|
-
return '';
|
|
138
|
-
}
|
|
139
|
-
var firstTextNode;
|
|
140
|
-
for (var i = 0; i < length; i += 1) {
|
|
141
|
-
if (firstTextNode) {
|
|
142
|
-
break;
|
|
143
|
-
} // 已找到第一个 text-node ,则退出
|
|
144
|
-
var child = children[i];
|
|
145
|
-
if (slate.Text.isText(child)) {
|
|
146
|
-
firstTextNode = child;
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
if (firstTextNode == null) {
|
|
150
|
-
return '';
|
|
151
|
-
}
|
|
152
|
-
return firstTextNode.color || '';
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
/**
|
|
156
|
-
* @description table menu helpers
|
|
157
|
-
* @author wangfupeng
|
|
158
|
-
*/
|
|
159
|
-
/**
|
|
160
|
-
* 获取上一个同一 level 的 list item
|
|
161
|
-
* @param editor 编辑器实例
|
|
162
|
-
* @param elem elem
|
|
163
|
-
*/
|
|
164
|
-
function getBrotherListNodeByLevel(editor, elem, level) {
|
|
165
|
-
var type = elem.type, otherProps = __rest(elem
|
|
166
|
-
// level 可能是 退格前的值,所以这里需要判断
|
|
167
|
-
, ["type"]);
|
|
168
|
-
// level 可能是 退格前的值,所以这里需要判断
|
|
169
|
-
var elemLevel = level !== undefined ? level : otherProps.level || 0;
|
|
170
|
-
var path = core.DomEditor.findPath(editor, elem);
|
|
171
|
-
var brotherPath = path;
|
|
172
|
-
// eslint-disable-next-line no-constant-condition
|
|
173
|
-
while (true) {
|
|
174
|
-
if (brotherPath.length === 0 || path[path.length - 1] === 0) {
|
|
175
|
-
return null; // 已经是最后一个节点或没有找到有效的前一个 list 节点
|
|
176
|
-
}
|
|
177
|
-
brotherPath = slate.Path.previous(brotherPath);
|
|
178
|
-
var brotherEntry = slate.Editor.node(editor, brotherPath);
|
|
179
|
-
if (!brotherEntry) {
|
|
180
|
-
return null; // 没有找到有效的前一个节点
|
|
181
|
-
}
|
|
182
|
-
var _a = __read(brotherEntry, 1), brotherElem = _a[0];
|
|
183
|
-
var _b = brotherElem.level, brotherLevel = _b === void 0 ? 0 : _b;
|
|
184
|
-
var brotherType = core.DomEditor.getNodeType(brotherElem);
|
|
185
|
-
// 验证兄弟节点是否是期望的类型和层级
|
|
186
|
-
if (brotherType !== type) {
|
|
187
|
-
return null;
|
|
188
|
-
}
|
|
189
|
-
if (brotherLevel === elemLevel) {
|
|
190
|
-
return brotherElem;
|
|
191
|
-
}
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
function hasSameOrderWithBrother(editor, elem, level) {
|
|
195
|
-
var brotherElem = getBrotherListNodeByLevel(editor, elem, level);
|
|
196
|
-
return brotherElem ? brotherElem.ordered === elem.ordered : false;
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
/**
|
|
200
|
-
* @description to html
|
|
201
|
-
* @author wangfupeng
|
|
202
|
-
*/
|
|
203
|
-
/**
|
|
204
|
-
* 当前 list-item 前面需要拼接几个 <ol> 或 <ul>
|
|
205
|
-
* @param elem elem
|
|
206
|
-
*/
|
|
207
|
-
function getStartContainerTagNumber(elem) {
|
|
208
|
-
var editor = ELEM_TO_EDITOR.get(elem);
|
|
209
|
-
if (editor == null) {
|
|
210
|
-
return 0;
|
|
211
|
-
}
|
|
212
|
-
var _a = elem, type = _a.type, _b = _a.ordered, ordered = _b === void 0 ? false : _b, _c = _a.level, level = _c === void 0 ? 0 : _c;
|
|
213
|
-
var path = core.DomEditor.findPath(editor, elem);
|
|
214
|
-
if (path[0] === 0) {
|
|
215
|
-
// list-item 是第一个元素,再往前没有了。需要拼接 <ol> 或 <ul>
|
|
216
|
-
return level + 1;
|
|
217
|
-
}
|
|
218
|
-
// 获取上一个 elem
|
|
219
|
-
var prevPath = slate.Path.previous(path);
|
|
220
|
-
var prevEntry = slate.Editor.node(editor, prevPath);
|
|
221
|
-
if (!prevEntry) {
|
|
222
|
-
return 0;
|
|
223
|
-
}
|
|
224
|
-
var _d = __read(prevEntry, 1), prevElem = _d[0];
|
|
225
|
-
var prevType = core.DomEditor.getNodeType(prevElem);
|
|
226
|
-
if (prevType !== type) {
|
|
227
|
-
// 上一个 elem 不是 list-item ,需要拼接 <ol> 或 <ul>
|
|
228
|
-
return level + 1;
|
|
229
|
-
}
|
|
230
|
-
// 上一个 elem 是 list-item
|
|
231
|
-
var _e = prevElem, _f = _e.ordered, prevOrdered = _f === void 0 ? false : _f, _g = _e.level, prevLevel = _g === void 0 ? 0 : _g;
|
|
232
|
-
if (prevLevel < level) {
|
|
233
|
-
// 上一个 level 小于当前 level ,需要拼接 <ol> 或 <ul>
|
|
234
|
-
return level - prevLevel;
|
|
235
|
-
}
|
|
236
|
-
if (prevLevel > level) {
|
|
237
|
-
// 此处需要看上一个同级兄弟节点 ordered 是否一致,如果一致则不需要拼接,否则需要拼接
|
|
238
|
-
return hasSameOrderWithBrother(editor, elem) ? 0 : 1;
|
|
239
|
-
}
|
|
240
|
-
if (prevLevel === level) {
|
|
241
|
-
// 上一个 level 等于当前 level
|
|
242
|
-
if (prevOrdered === ordered) {
|
|
243
|
-
// ordered 一致,则不需要拼接 <ol> 或 <ul>
|
|
244
|
-
return 0;
|
|
245
|
-
}
|
|
246
|
-
/// ordered 不一致,则需要拼接 <ol> 或 <ul>
|
|
247
|
-
return 1;
|
|
248
|
-
}
|
|
249
|
-
// 其他情况
|
|
250
|
-
return 0;
|
|
251
|
-
}
|
|
252
|
-
/**
|
|
253
|
-
* 当前 list-item 后面面需要拼接几个 </ol> 或 </ul>
|
|
254
|
-
* @param elem elem
|
|
255
|
-
*/
|
|
256
|
-
function getEndContainerTagNumber(elem) {
|
|
257
|
-
var editor = ELEM_TO_EDITOR.get(elem);
|
|
258
|
-
if (editor == null) {
|
|
259
|
-
return 0;
|
|
260
|
-
}
|
|
261
|
-
var _a = elem, type = _a.type, _b = _a.ordered, ordered = _b === void 0 ? false : _b, _c = _a.level, level = _c === void 0 ? 0 : _c;
|
|
262
|
-
var path = core.DomEditor.findPath(editor, elem);
|
|
263
|
-
if (path[0] === editor.children.length - 1) {
|
|
264
|
-
// list-item 是最后一个元素,再往后没有了。需要拼接 </ol> 或 </ul>
|
|
265
|
-
return level + 1;
|
|
266
|
-
}
|
|
267
|
-
// 获取下一个 elem
|
|
268
|
-
var nextPath = slate.Path.next(path);
|
|
269
|
-
var nextEntry = slate.Editor.node(editor, nextPath);
|
|
270
|
-
if (!nextEntry) {
|
|
271
|
-
return 0;
|
|
272
|
-
}
|
|
273
|
-
var _d = __read(nextEntry, 1), nextElem = _d[0];
|
|
274
|
-
var nextType = core.DomEditor.getNodeType(nextElem);
|
|
275
|
-
if (nextType !== type) {
|
|
276
|
-
// 下一个 elem 不是 list-item ,需要拼接 <ol> 或 <ul>
|
|
277
|
-
return level + 1;
|
|
278
|
-
}
|
|
279
|
-
// 下一个 elem 是 list-item
|
|
280
|
-
var _e = nextElem, _f = _e.ordered, nextOrdered = _f === void 0 ? false : _f, _g = _e.level, nextLevel = _g === void 0 ? 0 : _g;
|
|
281
|
-
if (nextLevel < level) {
|
|
282
|
-
// 下一个 level 小于当前 level,此处需要看上一个同级兄弟节点 ordered 是否一致,如果一致则不需要拼接,否则需要拼接
|
|
283
|
-
if (hasSameOrderWithBrother(editor, nextElem)) {
|
|
284
|
-
// ordered 一致,则不需要额外拼接 </ol> 或 </ul>
|
|
285
|
-
return level - nextLevel;
|
|
286
|
-
}
|
|
287
|
-
// ordered 不一致,则需要额外拼接 </ol> 或 </ul>
|
|
288
|
-
return level - nextLevel + 1;
|
|
289
|
-
}
|
|
290
|
-
if (nextLevel > level) {
|
|
291
|
-
// 下一个 level 大于当前 level ,不需要拼接 </ol> 或 </ul>
|
|
292
|
-
return 0;
|
|
293
|
-
}
|
|
294
|
-
if (nextLevel === level) {
|
|
295
|
-
// 下一个 level 等于当前 level
|
|
296
|
-
if (nextOrdered === ordered) {
|
|
297
|
-
// ordered 一致,则不需要拼接 </ol> 或 </ul>
|
|
298
|
-
return 0;
|
|
299
|
-
}
|
|
300
|
-
/// ordered 不一致,则需要拼接 </ol> 或 </ul>
|
|
301
|
-
return 1;
|
|
302
|
-
}
|
|
303
|
-
// 其他情况
|
|
304
|
-
return 0;
|
|
305
|
-
}
|
|
306
|
-
// ol ul 栈
|
|
307
|
-
var CONTAINER_TAG_STACK = [];
|
|
308
|
-
function elemToHtml(elem, childrenHtml) {
|
|
309
|
-
var startContainerStr = '';
|
|
310
|
-
var endContainerStr = '';
|
|
311
|
-
var _a = elem.ordered, ordered = _a === void 0 ? false : _a;
|
|
312
|
-
var containerTag = ordered ? 'ol' : 'ul';
|
|
313
|
-
// 前面需要拼接几个 <ol> 或 <ul>
|
|
314
|
-
var startContainerTagNumber = getStartContainerTagNumber(elem);
|
|
315
|
-
if (startContainerTagNumber > 0) {
|
|
316
|
-
for (var i = 0; i < startContainerTagNumber; i += 1) {
|
|
317
|
-
startContainerStr += "<".concat(containerTag, ">"); // 记录 start container tag ,如 `<ul>`
|
|
318
|
-
CONTAINER_TAG_STACK.push(containerTag); // tag 压栈
|
|
319
|
-
}
|
|
320
|
-
}
|
|
321
|
-
// 后面需要拼接几个 </ol> 或 </ul>
|
|
322
|
-
var endContainerTagNumber = getEndContainerTagNumber(elem);
|
|
323
|
-
if (endContainerTagNumber > 0) {
|
|
324
|
-
for (var i = 0; i < endContainerTagNumber; i += 1) {
|
|
325
|
-
var tag = CONTAINER_TAG_STACK.pop(); // tag 从栈中获取
|
|
326
|
-
endContainerStr += "</".concat(tag, ">"); // 记录 end container tag ,如 `</ul>`
|
|
327
|
-
}
|
|
328
|
-
}
|
|
329
|
-
// 获取前缀颜色
|
|
330
|
-
var prefixColor = getListItemColor(elem);
|
|
331
|
-
var colorStyle = prefixColor ? " style=\"color:".concat(prefixColor, "\"") : '';
|
|
332
|
-
return {
|
|
333
|
-
html: "<li".concat(colorStyle, ">").concat(childrenHtml, "</li>"),
|
|
334
|
-
prefix: startContainerStr,
|
|
335
|
-
suffix: endContainerStr,
|
|
336
|
-
};
|
|
337
|
-
}
|
|
338
|
-
var listItemToHtmlConf = {
|
|
339
|
-
type: 'list-item',
|
|
340
|
-
elemToHtml: elemToHtml,
|
|
341
|
-
};
|
|
342
|
-
|
|
343
|
-
/**
|
|
344
|
-
* @description icon svg
|
|
345
|
-
* @author wangfupeng
|
|
346
|
-
*/
|
|
347
|
-
/**
|
|
348
|
-
* 【注意】svg 字符串的长度 ,否则会导致代码体积过大
|
|
349
|
-
* 尽量选择 https://www.iconfont.cn/collections/detail?spm=a313x.7781069.0.da5a778a4&cid=20293
|
|
350
|
-
* 找不到再从 iconfont.com 搜索
|
|
351
|
-
*/
|
|
352
|
-
// 无序列表
|
|
353
|
-
var BULLETED_LIST_SVG = '<svg viewBox="0 0 1024 1024"><path d="M384 64h640v128H384V64z m0 384h640v128H384v-128z m0 384h640v128H384v-128zM0 128a128 128 0 1 1 256 0 128 128 0 0 1-256 0z m0 384a128 128 0 1 1 256 0 128 128 0 0 1-256 0z m0 384a128 128 0 1 1 256 0 128 128 0 0 1-256 0z"></path></svg>';
|
|
354
|
-
// 有序列表
|
|
355
|
-
var NUMBERED_LIST_SVG = '<svg viewBox="0 0 1024 1024"><path d="M384 832h640v128H384z m0-384h640v128H384z m0-384h640v128H384zM192 0v256H128V64H64V0zM128 526.016v50.016h128v64H64v-146.016l128-60V384H64v-64h192v146.016zM256 704v320H64v-64h128v-64H64v-64h128v-64H64v-64z"></path></svg>';
|
|
356
|
-
|
|
357
|
-
/**
|
|
358
|
-
* @description base menu
|
|
359
|
-
* @author wangfupeng
|
|
360
|
-
*/
|
|
361
|
-
var BaseMenu = /** @class */ (function () {
|
|
362
|
-
function BaseMenu() {
|
|
363
|
-
this.type = 'list-item';
|
|
364
|
-
this.tag = 'button';
|
|
365
|
-
}
|
|
366
|
-
BaseMenu.prototype.getListNode = function (editor) {
|
|
367
|
-
var type = this.type;
|
|
368
|
-
return core.DomEditor.getSelectedNodeByType(editor, type);
|
|
369
|
-
};
|
|
370
|
-
BaseMenu.prototype.getValue = function (_editor) {
|
|
371
|
-
return '';
|
|
372
|
-
};
|
|
373
|
-
BaseMenu.prototype.isActive = function (editor) {
|
|
374
|
-
var node = this.getListNode(editor);
|
|
375
|
-
if (node == null) {
|
|
376
|
-
return false;
|
|
377
|
-
}
|
|
378
|
-
var _a = node.ordered, ordered = _a === void 0 ? false : _a;
|
|
379
|
-
return ordered === this.ordered;
|
|
380
|
-
};
|
|
381
|
-
BaseMenu.prototype.isDisabled = function (editor) {
|
|
382
|
-
if (editor.selection == null) {
|
|
383
|
-
return true;
|
|
384
|
-
}
|
|
385
|
-
var selectedElems = core.DomEditor.getSelectedElems(editor);
|
|
386
|
-
var notMatch = selectedElems.some(function (elem) {
|
|
387
|
-
if (slate.Editor.isVoid(editor, elem) && slate.Editor.isBlock(editor, elem)) {
|
|
388
|
-
return true;
|
|
389
|
-
}
|
|
390
|
-
var type = elem.type;
|
|
391
|
-
if (['pre', 'code', 'table'].includes(type)) {
|
|
392
|
-
return true;
|
|
393
|
-
}
|
|
394
|
-
return false;
|
|
395
|
-
});
|
|
396
|
-
if (notMatch) {
|
|
397
|
-
return true;
|
|
398
|
-
}
|
|
399
|
-
return false;
|
|
400
|
-
};
|
|
401
|
-
BaseMenu.prototype.exec = function (editor, _value) {
|
|
402
|
-
var active = this.isActive(editor);
|
|
403
|
-
if (active) {
|
|
404
|
-
// 如果当前 active ,则转换为 p 标签
|
|
405
|
-
slate.Transforms.setNodes(editor, {
|
|
406
|
-
type: 'paragraph',
|
|
407
|
-
// @ts-ignore
|
|
408
|
-
ordered: undefined,
|
|
409
|
-
level: undefined,
|
|
410
|
-
});
|
|
411
|
-
}
|
|
412
|
-
else {
|
|
413
|
-
// 否则,转换为 list-item
|
|
414
|
-
slate.Transforms.setNodes(editor, {
|
|
415
|
-
type: 'list-item',
|
|
416
|
-
ordered: this.ordered, // 有序/无序
|
|
417
|
-
indent: undefined,
|
|
418
|
-
});
|
|
419
|
-
}
|
|
420
|
-
};
|
|
421
|
-
return BaseMenu;
|
|
422
|
-
}());
|
|
423
|
-
|
|
424
|
-
/**
|
|
425
|
-
* @description bulleted list menu
|
|
426
|
-
* @author wangfupeng
|
|
427
|
-
*/
|
|
428
|
-
var BulletedListMenu = /** @class */ (function (_super) {
|
|
429
|
-
__extends(BulletedListMenu, _super);
|
|
430
|
-
function BulletedListMenu() {
|
|
431
|
-
var _this = _super.apply(this, __spreadArray([], __read(arguments), false)) || this;
|
|
432
|
-
_this.ordered = false;
|
|
433
|
-
_this.title = core.t('listModule.unOrderedList');
|
|
434
|
-
_this.iconSvg = BULLETED_LIST_SVG;
|
|
435
|
-
return _this;
|
|
436
|
-
}
|
|
437
|
-
return BulletedListMenu;
|
|
438
|
-
}(BaseMenu));
|
|
439
|
-
|
|
440
|
-
/**
|
|
441
|
-
* @description numbered list menu
|
|
442
|
-
* @author wangfupeng
|
|
443
|
-
*/
|
|
444
|
-
var NumberedListMenu = /** @class */ (function (_super) {
|
|
445
|
-
__extends(NumberedListMenu, _super);
|
|
446
|
-
function NumberedListMenu() {
|
|
447
|
-
var _this = _super.apply(this, __spreadArray([], __read(arguments), false)) || this;
|
|
448
|
-
_this.ordered = true;
|
|
449
|
-
_this.title = core.t('listModule.orderedList');
|
|
450
|
-
_this.iconSvg = NUMBERED_LIST_SVG;
|
|
451
|
-
return _this;
|
|
452
|
-
}
|
|
453
|
-
return NumberedListMenu;
|
|
454
|
-
}(BaseMenu));
|
|
455
|
-
|
|
456
|
-
/**
|
|
457
|
-
* @description menu entry
|
|
458
|
-
* @author wangfupeng
|
|
459
|
-
*/
|
|
460
|
-
var bulletedListMenuConf = {
|
|
461
|
-
key: 'bulletedList',
|
|
462
|
-
factory: function () {
|
|
463
|
-
return new BulletedListMenu();
|
|
464
|
-
},
|
|
465
|
-
};
|
|
466
|
-
var numberedListMenuConf = {
|
|
467
|
-
key: 'numberedList',
|
|
468
|
-
factory: function () {
|
|
469
|
-
return new NumberedListMenu();
|
|
470
|
-
},
|
|
471
|
-
};
|
|
472
|
-
|
|
473
|
-
/**
|
|
474
|
-
* @description DOM 操作
|
|
475
|
-
* @author wangfupeng
|
|
476
|
-
*/
|
|
477
|
-
if ($.append) {
|
|
478
|
-
$.fn.append = $.append;
|
|
479
|
-
}
|
|
480
|
-
// if (on) $.fn.on = on
|
|
481
|
-
// if (focus) $.fn.focus = focus
|
|
482
|
-
if ($.attr) {
|
|
483
|
-
$.fn.attr = $.attr;
|
|
484
|
-
}
|
|
485
|
-
// if (val) $.fn.val = val
|
|
486
|
-
// if (html) $.fn.html = html
|
|
487
|
-
if ($.parent) {
|
|
488
|
-
$.fn.parent = $.parent;
|
|
489
|
-
}
|
|
490
|
-
/**
|
|
491
|
-
* 获取 tagName lower-case
|
|
492
|
-
* @param $elem $elem
|
|
493
|
-
*/
|
|
494
|
-
function getTagName($elem) {
|
|
495
|
-
if ($elem.length) {
|
|
496
|
-
return $elem[0].tagName.toLowerCase();
|
|
497
|
-
}
|
|
498
|
-
return '';
|
|
499
|
-
}
|
|
500
|
-
|
|
501
|
-
/**
|
|
502
|
-
* @description parse elem html
|
|
503
|
-
* @author wangfupeng
|
|
504
|
-
*/
|
|
505
|
-
/**
|
|
506
|
-
* 获取 ordered
|
|
507
|
-
* @param $elem list $elem
|
|
508
|
-
*/
|
|
509
|
-
function getOrdered($elem) {
|
|
510
|
-
var $list = $elem.parent();
|
|
511
|
-
var listTagName = getTagName($list);
|
|
512
|
-
if (listTagName === 'ol') {
|
|
513
|
-
return true;
|
|
514
|
-
}
|
|
515
|
-
return false;
|
|
516
|
-
}
|
|
517
|
-
/**
|
|
518
|
-
* 获取 level
|
|
519
|
-
* @param $elem list $elem
|
|
520
|
-
*/
|
|
521
|
-
function getLevel($elem) {
|
|
522
|
-
var level = 0;
|
|
523
|
-
var $cur = $elem.parent();
|
|
524
|
-
var tagName = getTagName($cur);
|
|
525
|
-
while (tagName === 'ul' || tagName === 'ol') {
|
|
526
|
-
$cur = $cur.parent();
|
|
527
|
-
tagName = getTagName($cur);
|
|
528
|
-
level += 1;
|
|
529
|
-
}
|
|
530
|
-
return level - 1;
|
|
531
|
-
}
|
|
532
|
-
function parseItemHtml(elem, children, editor) {
|
|
533
|
-
var $elem = $(elem);
|
|
534
|
-
children = children.filter(function (child) {
|
|
535
|
-
if (slate.Text.isText(child)) {
|
|
536
|
-
return true;
|
|
537
|
-
}
|
|
538
|
-
if (editor.isInline(child)) {
|
|
539
|
-
return true;
|
|
540
|
-
}
|
|
541
|
-
return false;
|
|
542
|
-
});
|
|
543
|
-
// 无 children ,则用纯文本
|
|
544
|
-
if (children.length === 0) {
|
|
545
|
-
children = [{ text: $elem.text().replace(/\s+/gm, ' ') }];
|
|
546
|
-
}
|
|
547
|
-
var ordered = getOrdered($elem);
|
|
548
|
-
var level = getLevel($elem);
|
|
549
|
-
return {
|
|
550
|
-
type: 'list-item',
|
|
551
|
-
ordered: ordered,
|
|
552
|
-
level: level,
|
|
553
|
-
// @ts-ignore
|
|
554
|
-
children: children,
|
|
555
|
-
};
|
|
556
|
-
}
|
|
557
|
-
var parseItemHtmlConf = {
|
|
558
|
-
selector: 'li:not([data-w-e-type])', // data-w-e-type 属性,留给自定义元素,保证扩展性
|
|
559
|
-
parseElemHtml: parseItemHtml,
|
|
560
|
-
};
|
|
561
|
-
function parseListHtml(_elem, children, _editor) {
|
|
562
|
-
// @ts-ignore flatten 因为可能有 ul/ol 嵌套,重要!!!
|
|
563
|
-
return children.flat(Infinity);
|
|
564
|
-
}
|
|
565
|
-
var parseListHtmlConf = {
|
|
566
|
-
selector: 'ul:not([data-w-e-type]),ol:not([data-w-e-type])', // data-w-e-type 属性,留给自定义元素,保证扩展性
|
|
567
|
-
parseElemHtml: parseListHtml,
|
|
568
|
-
};
|
|
569
|
-
|
|
570
|
-
/**
|
|
571
|
-
* @description editor 插件,重写 editor API
|
|
572
|
-
* @author wangfupeng
|
|
573
|
-
*/
|
|
574
|
-
/**
|
|
575
|
-
* 获取选中的 top elems
|
|
576
|
-
* @param editor editor
|
|
577
|
-
*/
|
|
578
|
-
function getTopSelectedElemsBySelection(editor) {
|
|
579
|
-
return slate.Editor.nodes(editor, {
|
|
580
|
-
at: editor.selection || undefined,
|
|
581
|
-
match: function (n) { return core.DomEditor.findPath(editor, n).length === 1; }, // 只匹配顶级元素
|
|
582
|
-
});
|
|
583
|
-
}
|
|
584
|
-
function withList(editor) {
|
|
585
|
-
var deleteBackward = editor.deleteBackward, handleTab = editor.handleTab, normalizeNode = editor.normalizeNode, insertBreak = editor.insertBreak;
|
|
586
|
-
var newEditor = editor;
|
|
587
|
-
// 重写 insertBreak - 空 list 点击回车时删除该空 list
|
|
588
|
-
newEditor.insertBreak = function () {
|
|
589
|
-
var _a = __read(slate.Editor.nodes(editor, {
|
|
590
|
-
match: function (n) { return core.DomEditor.checkNodeType(n, 'list-item'); },
|
|
591
|
-
universal: true,
|
|
592
|
-
}), 1), nodeEntry = _a[0];
|
|
593
|
-
if (!nodeEntry) {
|
|
594
|
-
return insertBreak();
|
|
595
|
-
}
|
|
596
|
-
var listElem = nodeEntry[0];
|
|
597
|
-
if (listElem.children[0].text === '') {
|
|
598
|
-
slate.Transforms.setNodes(newEditor, {
|
|
599
|
-
type: 'paragraph',
|
|
600
|
-
// @ts-ignore
|
|
601
|
-
ordered: undefined,
|
|
602
|
-
level: undefined,
|
|
603
|
-
});
|
|
604
|
-
return;
|
|
605
|
-
}
|
|
606
|
-
return insertBreak();
|
|
607
|
-
};
|
|
608
|
-
// 重写 deleteBackward - 降低 level 或者转换为 p 元素
|
|
609
|
-
newEditor.deleteBackward = function (unit) {
|
|
610
|
-
var selection = newEditor.selection;
|
|
611
|
-
if (selection == null) {
|
|
612
|
-
deleteBackward(unit);
|
|
613
|
-
return;
|
|
614
|
-
}
|
|
615
|
-
if (slate.Range.isExpanded(selection)) {
|
|
616
|
-
deleteBackward(unit);
|
|
617
|
-
return;
|
|
618
|
-
}
|
|
619
|
-
var listItemElem = core.DomEditor.getSelectedNodeByType(newEditor, 'list-item');
|
|
620
|
-
if (listItemElem == null) {
|
|
621
|
-
// 未匹配到 list-item
|
|
622
|
-
deleteBackward(unit);
|
|
623
|
-
return;
|
|
624
|
-
}
|
|
625
|
-
if (selection.focus.offset === 0) {
|
|
626
|
-
// 选中了当前 list-item 文本的开头,此时按删除键,应该降低 level 或转换为 p 元素
|
|
627
|
-
var _a = listItemElem, _b = _a.level, level = _b === void 0 ? 0 : _b, _c = _a.ordered, ordered = _c === void 0 ? false : _c;
|
|
628
|
-
if (level > 0) {
|
|
629
|
-
// 如果有兄弟节点,则判断 ordered 是否一致,不一致需要切换 ordered
|
|
630
|
-
var brotherElem = getBrotherListNodeByLevel(editor, listItemElem, level - 1);
|
|
631
|
-
if (brotherElem && brotherElem.ordered !== ordered) {
|
|
632
|
-
slate.Transforms.setNodes(newEditor, { level: level - 1, ordered: !ordered });
|
|
633
|
-
}
|
|
634
|
-
else {
|
|
635
|
-
slate.Transforms.setNodes(newEditor, { level: level - 1 });
|
|
636
|
-
}
|
|
637
|
-
}
|
|
638
|
-
else {
|
|
639
|
-
// 转换为 p 元素
|
|
640
|
-
slate.Transforms.setNodes(newEditor, {
|
|
641
|
-
type: 'paragraph',
|
|
642
|
-
// @ts-ignore
|
|
643
|
-
ordered: undefined,
|
|
644
|
-
level: undefined,
|
|
645
|
-
});
|
|
646
|
-
}
|
|
647
|
-
return;
|
|
648
|
-
}
|
|
649
|
-
// 其他情况
|
|
650
|
-
deleteBackward(unit);
|
|
651
|
-
};
|
|
652
|
-
// 重写 tab - 当选中 list-item 文本开头时,增加 level
|
|
653
|
-
newEditor.handleTab = function () {
|
|
654
|
-
var e_1, _a, e_2, _b;
|
|
655
|
-
var selection = newEditor.selection;
|
|
656
|
-
if (selection == null) {
|
|
657
|
-
handleTab();
|
|
658
|
-
return;
|
|
659
|
-
}
|
|
660
|
-
// 选区是合并的,判断单个 list-item 即可
|
|
661
|
-
if (slate.Range.isCollapsed(selection)) {
|
|
662
|
-
var listItemElem = core.DomEditor.getSelectedNodeByType(newEditor, 'list-item');
|
|
663
|
-
if (listItemElem == null) {
|
|
664
|
-
// 未匹配到 list-item
|
|
665
|
-
handleTab();
|
|
666
|
-
return;
|
|
667
|
-
}
|
|
668
|
-
if (selection.focus.offset === 0) {
|
|
669
|
-
// 选中了当前 list-item 文本的开头,此时按 tab 应该增加 level
|
|
670
|
-
var _c = listItemElem.level, level = _c === void 0 ? 0 : _c;
|
|
671
|
-
slate.Transforms.setNodes(newEditor, { level: level + 1 });
|
|
672
|
-
return;
|
|
673
|
-
}
|
|
674
|
-
}
|
|
675
|
-
// 选区是展开的,要判断多个 list-item
|
|
676
|
-
if (slate.Range.isExpanded(selection)) {
|
|
677
|
-
var listItemNum = 0; // 选中的 list-item 有几个
|
|
678
|
-
var hasOtherElem = false; // 是否有其他元素
|
|
679
|
-
try {
|
|
680
|
-
for (var _d = __values(getTopSelectedElemsBySelection(newEditor)), _e = _d.next(); !_e.done; _e = _d.next()) {
|
|
681
|
-
var entry = _e.value;
|
|
682
|
-
var _f = __read(entry, 1), elem = _f[0];
|
|
683
|
-
var type = core.DomEditor.getNodeType(elem);
|
|
684
|
-
if (type === 'list-item') {
|
|
685
|
-
listItemNum += 1;
|
|
686
|
-
}
|
|
687
|
-
else {
|
|
688
|
-
hasOtherElem = true;
|
|
689
|
-
}
|
|
690
|
-
}
|
|
691
|
-
}
|
|
692
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
693
|
-
finally {
|
|
694
|
-
try {
|
|
695
|
-
if (_e && !_e.done && (_a = _d.return)) _a.call(_d);
|
|
696
|
-
}
|
|
697
|
-
finally { if (e_1) throw e_1.error; }
|
|
698
|
-
}
|
|
699
|
-
if (hasOtherElem || listItemNum <= 1) {
|
|
700
|
-
// 选中了其他元素,或者只选中一个 list-item ,则执行默认行为
|
|
701
|
-
handleTab();
|
|
702
|
-
return;
|
|
703
|
-
}
|
|
704
|
-
try {
|
|
705
|
-
// 未选中其他元素,且选中多个 list-item ,则增加 level
|
|
706
|
-
for (var _g = __values(getTopSelectedElemsBySelection(newEditor)), _h = _g.next(); !_h.done; _h = _g.next()) {
|
|
707
|
-
var entry = _h.value;
|
|
708
|
-
var _j = __read(entry, 2), elem = _j[0], path = _j[1];
|
|
709
|
-
var _k = elem.level, level = _k === void 0 ? 0 : _k;
|
|
710
|
-
slate.Transforms.setNodes(newEditor, { level: level + 1 }, { at: path });
|
|
711
|
-
}
|
|
712
|
-
}
|
|
713
|
-
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
714
|
-
finally {
|
|
715
|
-
try {
|
|
716
|
-
if (_h && !_h.done && (_b = _g.return)) _b.call(_g);
|
|
717
|
-
}
|
|
718
|
-
finally { if (e_2) throw e_2.error; }
|
|
719
|
-
}
|
|
720
|
-
return;
|
|
721
|
-
}
|
|
722
|
-
// 其他情况
|
|
723
|
-
handleTab();
|
|
724
|
-
};
|
|
725
|
-
// 兼容之前的 JSON 格式 `numbered-list` 和 `bulleted-list` (之前的 list 没有嵌套功能)
|
|
726
|
-
newEditor.normalizeNode = function (_a) {
|
|
727
|
-
var _b = __read(_a, 2), node = _b[0], path = _b[1];
|
|
728
|
-
var type = core.DomEditor.getNodeType(node);
|
|
729
|
-
if (type === 'bulleted-list' || type === 'numbered-list') {
|
|
730
|
-
slate.Transforms.unwrapNodes(newEditor, { at: path });
|
|
731
|
-
}
|
|
732
|
-
// 执行默认行为
|
|
733
|
-
return normalizeNode([node, path]);
|
|
734
|
-
};
|
|
735
|
-
return newEditor;
|
|
736
|
-
}
|
|
737
|
-
|
|
738
|
-
/**
|
|
739
|
-
* @description render list elem
|
|
740
|
-
* @author wangfupeng
|
|
741
|
-
*/
|
|
742
|
-
/**
|
|
743
|
-
* 无序列表:根据 level 获取的前置符号
|
|
744
|
-
* @param level 层级
|
|
745
|
-
*/
|
|
746
|
-
function genPreSymbol(level) {
|
|
747
|
-
if (level === void 0) { level = 0; }
|
|
748
|
-
var s = '';
|
|
749
|
-
switch (level) {
|
|
750
|
-
case 0:
|
|
751
|
-
s = '•'; // 第一层级
|
|
752
|
-
break;
|
|
753
|
-
case 1:
|
|
754
|
-
s = '◦'; // 第一层级
|
|
755
|
-
break;
|
|
756
|
-
case 2:
|
|
757
|
-
s = '▪'; // 第三层级
|
|
758
|
-
break;
|
|
759
|
-
default:
|
|
760
|
-
s = '▪'; // 其他层级
|
|
761
|
-
}
|
|
762
|
-
return s;
|
|
763
|
-
}
|
|
764
|
-
/**
|
|
765
|
-
* 有序列表:获取前缀 number
|
|
766
|
-
* @param editor editor
|
|
767
|
-
* @param elem listItem elem
|
|
768
|
-
*/
|
|
769
|
-
function getOrderedItemNumber(editor, elem) {
|
|
770
|
-
var _a = elem, type = _a.type, _b = _a.level, level = _b === void 0 ? 0 : _b, _c = _a.ordered, ordered = _c === void 0 ? false : _c;
|
|
771
|
-
var num = 1; // 默认值 1
|
|
772
|
-
var curElem = elem;
|
|
773
|
-
var curPath = core.DomEditor.findPath(editor, curElem);
|
|
774
|
-
// 第一个元素,直接返回 1
|
|
775
|
-
if (curPath[0] === 0) {
|
|
776
|
-
return 1;
|
|
777
|
-
}
|
|
778
|
-
while (curPath[0] > 0) {
|
|
779
|
-
var prevPath = slate.Path.previous(curPath);
|
|
780
|
-
var prevEntry = slate.Editor.node(editor, prevPath);
|
|
781
|
-
if (prevEntry == null) {
|
|
782
|
-
break;
|
|
783
|
-
}
|
|
784
|
-
var prevElem = prevEntry[0]; // 上一个节点
|
|
785
|
-
var _d = prevElem.level, prevLevel = _d === void 0 ? 0 : _d, prevType = prevElem.type, prevOrdered = prevElem.ordered;
|
|
786
|
-
// type 不一致,退出循环,不再累加 num
|
|
787
|
-
if (prevType !== type) {
|
|
788
|
-
break;
|
|
789
|
-
}
|
|
790
|
-
// prevLevel 更小,退出循环,不再累加 num
|
|
791
|
-
if (prevLevel < level) {
|
|
792
|
-
break;
|
|
793
|
-
}
|
|
794
|
-
if (prevLevel === level) {
|
|
795
|
-
// level 一样,如果 ordered 不一样,则退出循环,不再累加 num
|
|
796
|
-
if (prevOrdered !== ordered) {
|
|
797
|
-
break;
|
|
798
|
-
}
|
|
799
|
-
else {
|
|
800
|
-
// level 一样,order 一样,则累加 num
|
|
801
|
-
num += 1;
|
|
802
|
-
}
|
|
803
|
-
}
|
|
804
|
-
// prevLevel 更大,不累加 num ,继续向前
|
|
805
|
-
curElem = prevElem;
|
|
806
|
-
curPath = prevPath;
|
|
807
|
-
}
|
|
808
|
-
return num;
|
|
809
|
-
}
|
|
810
|
-
function renderListElem(elemNode, children, editor) {
|
|
811
|
-
ELEM_TO_EDITOR.set(elemNode, editor); // 记录 elem 和 editor 关系,elem-to-html 时要用
|
|
812
|
-
var _a = elemNode, _b = _a.level, level = _b === void 0 ? 0 : _b, _c = _a.ordered, ordered = _c === void 0 ? false : _c;
|
|
813
|
-
// 根据 level 增加 margin-left
|
|
814
|
-
var listStyle = { margin: "5px 0 5px ".concat(level * 20, "px") };
|
|
815
|
-
// list-item 前缀
|
|
816
|
-
var prefix = '';
|
|
817
|
-
if (ordered) {
|
|
818
|
-
// 有序列表:获取前缀 number
|
|
819
|
-
var orderedNumber = getOrderedItemNumber(editor, elemNode);
|
|
820
|
-
prefix = "".concat(orderedNumber, ".");
|
|
821
|
-
}
|
|
822
|
-
else {
|
|
823
|
-
// 无序列表:根据层级,使用不同的前缀符号
|
|
824
|
-
prefix = genPreSymbol(level);
|
|
825
|
-
}
|
|
826
|
-
// 获取前缀颜色
|
|
827
|
-
var prefixColor = getListItemColor(elemNode);
|
|
828
|
-
var vnode = (snabbdom.jsx("div", { style: listStyle },
|
|
829
|
-
snabbdom.jsx("span", { contentEditable: false, style: { marginRight: '0.5em', color: prefixColor }, "data-w-e-reserve": true }, prefix),
|
|
830
|
-
snabbdom.jsx("span", null, children)));
|
|
831
|
-
return vnode;
|
|
832
|
-
}
|
|
833
|
-
var renderListItemConf = {
|
|
834
|
-
type: 'list-item',
|
|
835
|
-
renderElem: renderListElem,
|
|
836
|
-
};
|
|
837
|
-
|
|
838
|
-
/**
|
|
839
|
-
* @description list module entry
|
|
840
|
-
* @author wangfupeng
|
|
841
|
-
*/
|
|
842
|
-
var list = {
|
|
843
|
-
renderElems: [renderListItemConf],
|
|
844
|
-
editorPlugin: withList,
|
|
845
|
-
menus: [bulletedListMenuConf, numberedListMenuConf],
|
|
846
|
-
elemsToHtml: [listItemToHtmlConf],
|
|
847
|
-
parseElemsHtml: [parseListHtmlConf, parseItemHtmlConf],
|
|
848
|
-
};
|
|
849
|
-
|
|
850
|
-
/**
|
|
851
|
-
* @description list module
|
|
852
|
-
* @author wangfupeng
|
|
853
|
-
*/
|
|
854
|
-
|
|
855
|
-
return list;
|
|
856
|
-
|
|
857
|
-
}));
|
|
1
|
+
!function(r,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@wangeditor-next/core"),require("slate"),require("dom7"),require("snabbdom")):"function"==typeof define&&define.amd?define(["@wangeditor-next/core","slate","dom7","snabbdom"],t):(r="undefined"!=typeof globalThis?globalThis:r||self).WangEditorListModule=t(r.core,r.slate,r.$,r.snabbdom)}(this,(function(r,t,n,e){"use strict";r.i18nAddResources("en",{listModule:{unOrderedList:"Unordered list",orderedList:"Ordered list"}}),r.i18nAddResources("zh-CN",{listModule:{unOrderedList:"无序列表",orderedList:"有序列表"}});var o,i,u="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},f={};function a(){if(i)return o;i=1;var r=function(r){return r&&r.Math===Math&&r};return o=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof u&&u)||r("object"==typeof o&&o)||function(){return this}()||Function("return this")()}var c,l,s,v,d,p,y,h,g={};function b(){return l?c:(l=1,c=function(r){try{return!!r()}catch(r){return!0}})}function m(){if(v)return s;v=1;var r=b();return s=!r((function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]}))}function w(){if(p)return d;p=1;var r=b();return d=!r((function(){var r=function(){}.bind();return"function"!=typeof r||r.hasOwnProperty("prototype")}))}function x(){if(h)return y;h=1;var r=w(),t=Function.prototype.call;return y=r?t.bind(t):function(){return t.apply(t,arguments)},y}var O,S,E,T,j,A,P,I,R,L,k,N,M,z,_,D,C,F,B,H,$,G,V,W,U,q,K,Y,X,J,Q,Z,rr,tr,nr,er,or,ir,ur,fr,ar,cr={};function lr(){return E?S:(E=1,S=function(r,t){return{enumerable:!(1&r),configurable:!(2&r),writable:!(4&r),value:t}})}function sr(){if(j)return T;j=1;var r=w(),t=Function.prototype,n=t.call,e=r&&t.bind.bind(n,n);return T=r?e:function(r){return function(){return n.apply(r,arguments)}},T}function vr(){if(P)return A;P=1;var r=sr(),t=r({}.toString),n=r("".slice);return A=function(r){return n(t(r),8,-1)}}function dr(){if(R)return I;R=1;var r=sr(),t=b(),n=vr(),e=Object,o=r("".split);return I=t((function(){return!e("z").propertyIsEnumerable(0)}))?function(r){return"String"===n(r)?o(r,""):e(r)}:e}function pr(){return k?L:(k=1,L=function(r){return null==r})}function yr(){if(M)return N;M=1;var r=pr(),t=TypeError;return N=function(n){if(r(n))throw new t("Can't call method on "+n);return n}}function hr(){if(_)return z;_=1;var r=dr(),t=yr();return z=function(n){return r(t(n))}}function gr(){if(C)return D;C=1;var r="object"==typeof document&&document.all;return D=void 0===r&&void 0!==r?function(t){return"function"==typeof t||t===r}:function(r){return"function"==typeof r}}function br(){if(B)return F;B=1;var r=gr();return F=function(t){return"object"==typeof t?null!==t:r(t)}}function mr(){if($)return H;$=1;var r=a(),t=gr();return H=function(n,e){return arguments.length<2?(o=r[n],t(o)?o:void 0):r[n]&&r[n][e];var o},H}function wr(){if(V)return G;V=1;var r=sr();return G=r({}.isPrototypeOf)}function xr(){if(K)return q;K=1;var r,t,n=a(),e=function(){if(U)return W;U=1;var r=a().navigator,t=r&&r.userAgent;return W=t?String(t):""}(),o=n.process,i=n.Deno,u=o&&o.versions||i&&i.version,f=u&&u.v8;return f&&(t=(r=f.split("."))[0]>0&&r[0]<4?1:+(r[0]+r[1])),!t&&e&&(!(r=e.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=e.match(/Chrome\/(\d+)/))&&(t=+r[1]),q=t}function Or(){if(X)return Y;X=1;var r=xr(),t=b(),n=a().String;return Y=!!Object.getOwnPropertySymbols&&!t((function(){var t=Symbol("symbol detection");return!n(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&r&&r<41}))}function Sr(){if(Q)return J;Q=1;var r=Or();return J=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator}function Er(){if(rr)return Z;rr=1;var r=mr(),t=gr(),n=wr(),e=Sr(),o=Object;return Z=e?function(r){return"symbol"==typeof r}:function(e){var i=r("Symbol");return t(i)&&n(i.prototype,o(e))}}function Tr(){if(nr)return tr;nr=1;var r=String;return tr=function(t){try{return r(t)}catch(r){return"Object"}}}function jr(){if(or)return er;or=1;var r=gr(),t=Tr(),n=TypeError;return er=function(e){if(r(e))return e;throw new n(t(e)+" is not a function")}}function Ar(){if(ur)return ir;ur=1;var r=jr(),t=pr();return ir=function(n,e){var o=n[e];return t(o)?void 0:r(o)}}function Pr(){if(ar)return fr;ar=1;var r=x(),t=gr(),n=br(),e=TypeError;return fr=function(o,i){var u,f;if("string"===i&&t(u=o.toString)&&!n(f=r(u,o)))return f;if(t(u=o.valueOf)&&!n(f=r(u,o)))return f;if("string"!==i&&t(u=o.toString)&&!n(f=r(u,o)))return f;throw new e("Can't convert object to primitive value")}}var Ir,Rr,Lr,kr,Nr,Mr,zr,_r,Dr,Cr,Fr,Br,Hr,$r,Gr,Vr,Wr,Ur,qr,Kr,Yr,Xr,Jr,Qr,Zr={exports:{}};function rt(){return Rr?Ir:(Rr=1,Ir=!1)}function tt(){if(kr)return Lr;kr=1;var r=a(),t=Object.defineProperty;return Lr=function(n,e){try{t(r,n,{value:e,configurable:!0,writable:!0})}catch(t){r[n]=e}return e}}function nt(){if(Nr)return Zr.exports;Nr=1;var r=rt(),t=a(),n=tt(),e="__core-js_shared__",o=Zr.exports=t[e]||n(e,{});return(o.versions||(o.versions=[])).push({version:"3.38.1",mode:r?"pure":"global",copyright:"© 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.38.1/LICENSE",source:"https://github.com/zloirock/core-js"}),Zr.exports}function et(){if(zr)return Mr;zr=1;var r=nt();return Mr=function(t,n){return r[t]||(r[t]=n||{})}}function ot(){if(Dr)return _r;Dr=1;var r=yr(),t=Object;return _r=function(n){return t(r(n))}}function it(){if(Fr)return Cr;Fr=1;var r=sr(),t=ot(),n=r({}.hasOwnProperty);return Cr=Object.hasOwn||function(r,e){return n(t(r),e)}}function ut(){if(Hr)return Br;Hr=1;var r=sr(),t=0,n=Math.random(),e=r(1..toString);return Br=function(r){return"Symbol("+(void 0===r?"":r)+")_"+e(++t+n,36)}}function ft(){if(Gr)return $r;Gr=1;var r=a(),t=et(),n=it(),e=ut(),o=Or(),i=Sr(),u=r.Symbol,f=t("wks"),c=i?u.for||u:u&&u.withoutSetter||e;return $r=function(r){return n(f,r)||(f[r]=o&&n(u,r)?u[r]:c("Symbol."+r)),f[r]}}function at(){if(Wr)return Vr;Wr=1;var r=x(),t=br(),n=Er(),e=Ar(),o=Pr(),i=ft(),u=TypeError,f=i("toPrimitive");return Vr=function(i,a){if(!t(i)||n(i))return i;var c,l=e(i,f);if(l){if(void 0===a&&(a="default"),c=r(l,i,a),!t(c)||n(c))return c;throw new u("Can't convert object to primitive value")}return void 0===a&&(a="number"),o(i,a)}}function ct(){if(qr)return Ur;qr=1;var r=at(),t=Er();return Ur=function(n){var e=r(n,"string");return t(e)?e:e+""}}function lt(){if(Yr)return Kr;Yr=1;var r=a(),t=br(),n=r.document,e=t(n)&&t(n.createElement);return Kr=function(r){return e?n.createElement(r):{}}}function st(){if(Jr)return Xr;Jr=1;var r=m(),t=b(),n=lt();return Xr=!r&&!t((function(){return 7!==Object.defineProperty(n("div"),"a",{get:function(){return 7}}).a}))}function vt(){if(Qr)return g;Qr=1;var r=m(),t=x(),n=function(){if(O)return cr;O=1;var r={}.propertyIsEnumerable,t=Object.getOwnPropertyDescriptor,n=t&&!r.call({1:2},1);return cr.f=n?function(r){var n=t(this,r);return!!n&&n.enumerable}:r,cr}(),e=lr(),o=hr(),i=ct(),u=it(),f=st(),a=Object.getOwnPropertyDescriptor;return g.f=r?a:function(r,c){if(r=o(r),c=i(c),f)try{return a(r,c)}catch(r){}if(u(r,c))return e(!t(n.f,r,c),r[c])},g}var dt,pt,yt,ht,gt,bt,mt,wt={};function xt(){if(pt)return dt;pt=1;var r=m(),t=b();return dt=r&&t((function(){return 42!==Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype}))}function Ot(){if(ht)return yt;ht=1;var r=br(),t=String,n=TypeError;return yt=function(e){if(r(e))return e;throw new n(t(e)+" is not an object")}}function St(){if(gt)return wt;gt=1;var r=m(),t=st(),n=xt(),e=Ot(),o=ct(),i=TypeError,u=Object.defineProperty,f=Object.getOwnPropertyDescriptor,a="enumerable",c="configurable",l="writable";return wt.f=r?n?function(r,t,n){if(e(r),t=o(t),e(n),"function"==typeof r&&"prototype"===t&&"value"in n&&l in n&&!n[l]){var i=f(r,t);i&&i[l]&&(r[t]=n.value,n={configurable:c in n?n[c]:i[c],enumerable:a in n?n[a]:i[a],writable:!1})}return u(r,t,n)}:u:function(r,n,f){if(e(r),n=o(n),e(f),t)try{return u(r,n,f)}catch(r){}if("get"in f||"set"in f)throw new i("Accessors not supported");return"value"in f&&(r[n]=f.value),r},wt}function Et(){if(mt)return bt;mt=1;var r=m(),t=St(),n=lr();return bt=r?function(r,e,o){return t.f(r,e,n(1,o))}:function(r,t,n){return r[t]=n,r}}var Tt,jt,At,Pt,It,Rt,Lt,kt,Nt,Mt,zt,_t,Dt,Ct,Ft,Bt={exports:{}};function Ht(){if(jt)return Tt;jt=1;var r=m(),t=it(),n=Function.prototype,e=r&&Object.getOwnPropertyDescriptor,o=t(n,"name"),i=o&&"something"===function(){}.name,u=o&&(!r||r&&e(n,"name").configurable);return Tt={EXISTS:o,PROPER:i,CONFIGURABLE:u}}function $t(){if(Pt)return At;Pt=1;var r=sr(),t=gr(),n=nt(),e=r(Function.toString);return t(n.inspectSource)||(n.inspectSource=function(r){return e(r)}),At=n.inspectSource}function Gt(){if(Rt)return It;Rt=1;var r=a(),t=gr(),n=r.WeakMap;return It=t(n)&&/native code/.test(String(n))}function Vt(){if(kt)return Lt;kt=1;var r=et(),t=ut(),n=r("keys");return Lt=function(r){return n[r]||(n[r]=t(r))}}function Wt(){return Mt?Nt:(Mt=1,Nt={})}function Ut(){if(_t)return zt;_t=1;var r,t,n,e=Gt(),o=a(),i=br(),u=Et(),f=it(),c=nt(),l=Vt(),s=Wt(),v="Object already initialized",d=o.TypeError,p=o.WeakMap;if(e||c.state){var y=c.state||(c.state=new p);y.get=y.get,y.has=y.has,y.set=y.set,r=function(r,t){if(y.has(r))throw new d(v);return t.facade=r,y.set(r,t),t},t=function(r){return y.get(r)||{}},n=function(r){return y.has(r)}}else{var h=l("state");s[h]=!0,r=function(r,t){if(f(r,h))throw new d(v);return t.facade=r,u(r,h,t),t},t=function(r){return f(r,h)?r[h]:{}},n=function(r){return f(r,h)}}return zt={set:r,get:t,has:n,enforce:function(e){return n(e)?t(e):r(e,{})},getterFor:function(r){return function(n){var e;if(!i(n)||(e=t(n)).type!==r)throw new d("Incompatible receiver, "+r+" required");return e}}}}function qt(){if(Dt)return Bt.exports;Dt=1;var r=sr(),t=b(),n=gr(),e=it(),o=m(),i=Ht().CONFIGURABLE,u=$t(),f=Ut(),a=f.enforce,c=f.get,l=String,s=Object.defineProperty,v=r("".slice),d=r("".replace),p=r([].join),y=o&&!t((function(){return 8!==s((function(){}),"length",{value:8}).length})),h=String(String).split("String"),g=Bt.exports=function(r,t,n){"Symbol("===v(l(t),0,7)&&(t="["+d(l(t),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),n&&n.getter&&(t="get "+t),n&&n.setter&&(t="set "+t),(!e(r,"name")||i&&r.name!==t)&&(o?s(r,"name",{value:t,configurable:!0}):r.name=t),y&&n&&e(n,"arity")&&r.length!==n.arity&&s(r,"length",{value:n.arity});try{n&&e(n,"constructor")&&n.constructor?o&&s(r,"prototype",{writable:!1}):r.prototype&&(r.prototype=void 0)}catch(r){}var u=a(r);return e(u,"source")||(u.source=p(h,"string"==typeof t?t:"")),r};return Function.prototype.toString=g((function(){return n(this)&&c(this).source||u(this)}),"toString"),Bt.exports}function Kt(){if(Ft)return Ct;Ft=1;var r=gr(),t=St(),n=qt(),e=tt();return Ct=function(o,i,u,f){f||(f={});var a=f.enumerable,c=void 0!==f.name?f.name:i;if(r(u)&&n(u,c,f),f.global)a?o[i]=u:e(i,u);else{try{f.unsafe?o[i]&&(a=!0):delete o[i]}catch(r){}a?o[i]=u:t.f(o,i,{value:u,enumerable:!1,configurable:!f.nonConfigurable,writable:!f.nonWritable})}return o}}var Yt,Xt,Jt,Qt,Zt,rn,tn,nn,en,on,un,fn,an,cn,ln,sn,vn,dn={};function pn(){if(Qt)return Jt;Qt=1;var r=function(){if(Xt)return Yt;Xt=1;var r=Math.ceil,t=Math.floor;return Yt=Math.trunc||function(n){var e=+n;return(e>0?t:r)(e)}}();return Jt=function(t){var n=+t;return n!=n||0===n?0:r(n)}}function yn(){if(rn)return Zt;rn=1;var r=pn(),t=Math.max,n=Math.min;return Zt=function(e,o){var i=r(e);return i<0?t(i+o,0):n(i,o)}}function hn(){if(nn)return tn;nn=1;var r=pn(),t=Math.min;return tn=function(n){var e=r(n);return e>0?t(e,9007199254740991):0}}function gn(){if(on)return en;on=1;var r=hn();return en=function(t){return r(t.length)}}function bn(){if(fn)return un;fn=1;var r=hr(),t=yn(),n=gn(),e=function(e){return function(o,i,u){var f=r(o),a=n(f);if(0===a)return!e&&-1;var c,l=t(u,a);if(e&&i!=i){for(;a>l;)if((c=f[l++])!=c)return!0}else for(;a>l;l++)if((e||l in f)&&f[l]===i)return e||l||0;return!e&&-1}};return un={includes:e(!0),indexOf:e(!1)}}function mn(){if(cn)return an;cn=1;var r=sr(),t=it(),n=hr(),e=bn().indexOf,o=Wt(),i=r([].push);return an=function(r,u){var f,a=n(r),c=0,l=[];for(f in a)!t(o,f)&&t(a,f)&&i(l,f);for(;u.length>c;)t(a,f=u[c++])&&(~e(l,f)||i(l,f));return l}}function wn(){return sn?ln:(sn=1,ln=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"])}function xn(){if(vn)return dn;vn=1;var r=mn(),t=wn().concat("length","prototype");return dn.f=Object.getOwnPropertyNames||function(n){return r(n,t)},dn}var On,Sn,En,Tn,jn,An,Pn,In,Rn,Ln,kn,Nn,Mn,zn,_n,Dn,Cn,Fn,Bn,Hn,$n,Gn,Vn,Wn,Un,qn,Kn,Yn,Xn={};function Jn(){if(En)return Sn;En=1;var r=mr(),t=sr(),n=xn(),e=(On||(On=1,Xn.f=Object.getOwnPropertySymbols),Xn),o=Ot(),i=t([].concat);return Sn=r("Reflect","ownKeys")||function(r){var t=n.f(o(r)),u=e.f;return u?i(t,u(r)):t}}function Qn(){if(jn)return Tn;jn=1;var r=it(),t=Jn(),n=vt(),e=St();return Tn=function(o,i,u){for(var f=t(i),a=e.f,c=n.f,l=0;l<f.length;l++){var s=f[l];r(o,s)||u&&r(u,s)||a(o,s,c(i,s))}}}function Zn(){if(Pn)return An;Pn=1;var r=b(),t=gr(),n=/#|\.prototype\./,e=function(n,e){var a=i[o(n)];return a===f||a!==u&&(t(e)?r(e):!!e)},o=e.normalize=function(r){return String(r).replace(n,".").toLowerCase()},i=e.data={},u=e.NATIVE="N",f=e.POLYFILL="P";return An=e}function re(){if(Rn)return In;Rn=1;var r=a(),t=vt().f,n=Et(),e=Kt(),o=tt(),i=Qn(),u=Zn();return In=function(f,a){var c,l,s,v,d,p=f.target,y=f.global,h=f.stat;if(c=y?r:h?r[p]||o(p,{}):r[p]&&r[p].prototype)for(l in a){if(v=a[l],s=f.dontCallGetSet?(d=t(c,l))&&d.value:c[l],!u(y?l:p+(h?".":"#")+l,f.forced)&&void 0!==s){if(typeof v==typeof s)continue;i(v,s)}(f.sham||s&&s.sham)&&n(v,"sham",!0),e(c,l,v,f)}}}function te(){if(kn)return Ln;kn=1;var r=vr();return Ln=Array.isArray||function(t){return"Array"===r(t)}}function ne(){if(Mn)return Nn;Mn=1;var r=TypeError;return Nn=function(t){if(t>9007199254740991)throw r("Maximum allowed index exceeded");return t}}function ee(){if(_n)return zn;_n=1;var r=m(),t=St(),n=lr();return zn=function(e,o,i){r?t.f(e,o,n(0,i)):e[o]=i}}function oe(){if(Cn)return Dn;Cn=1;var r={};return r[ft()("toStringTag")]="z",Dn="[object z]"===String(r)}function ie(){if(Bn)return Fn;Bn=1;var r=oe(),t=gr(),n=vr(),e=ft()("toStringTag"),o=Object,i="Arguments"===n(function(){return arguments}());return Fn=r?n:function(r){var u,f,a;return void 0===r?"Undefined":null===r?"Null":"string"==typeof(f=function(r,t){try{return r[t]}catch(r){}}(u=o(r),e))?f:i?n(u):"Object"===(a=n(u))&&t(u.callee)?"Arguments":a}}function ue(){if($n)return Hn;$n=1;var r=sr(),t=b(),n=gr(),e=ie(),o=mr(),i=$t(),u=function(){},f=o("Reflect","construct"),a=/^\s*(?:class|function)\b/,c=r(a.exec),l=!a.test(u),s=function(r){if(!n(r))return!1;try{return f(u,[],r),!0}catch(r){return!1}},v=function(r){if(!n(r))return!1;switch(e(r)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return l||!!c(a,i(r))}catch(r){return!0}};return v.sham=!0,Hn=!f||t((function(){var r;return s(s.call)||!s(Object)||!s((function(){r=!0}))||r}))?v:s}function fe(){if(Vn)return Gn;Vn=1;var r=te(),t=ue(),n=br(),e=ft()("species"),o=Array;return Gn=function(i){var u;return r(i)&&(u=i.constructor,(t(u)&&(u===o||r(u.prototype))||n(u)&&null===(u=u[e]))&&(u=void 0)),void 0===u?o:u}}function ae(){if(Un)return Wn;Un=1;var r=fe();return Wn=function(t,n){return new(r(t))(0===n?0:n)}}function ce(){if(Kn)return qn;Kn=1;var r=b(),t=ft(),n=xr(),e=t("species");return qn=function(t){return n>=51||!r((function(){var r=[];return(r.constructor={})[e]=function(){return{foo:1}},1!==r[t](Boolean).foo}))}}!function(){if(Yn)return f;Yn=1;var r=re(),t=b(),n=te(),e=br(),o=ot(),i=gn(),u=ne(),a=ee(),c=ae(),l=ce(),s=ft(),v=xr(),d=s("isConcatSpreadable"),p=v>=51||!t((function(){var r=[];return r[d]=!1,r.concat()[0]!==r})),y=function(r){if(!e(r))return!1;var t=r[d];return void 0!==t?!!t:n(r)};r({target:"Array",proto:!0,arity:1,forced:!p||!l("concat")},{concat:function(r){var t,n,e,f,l,s=o(this),v=c(s,0),d=0;for(t=-1,e=arguments.length;t<e;t++)if(y(l=-1===t?s:arguments[t]))for(f=i(l),u(d+f),n=0;n<f;n++,d++)n in l&&a(v,d,l[n]);else u(d+1),a(v,d++,l);return v.length=d,v}})}();var le=function(r,t){return le=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,t){r.__proto__=t}||function(r,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(r[n]=t[n])},le(r,t)};function se(r,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=r}le(r,t),r.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}function ve(r){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&r[t],e=0;if(n)return n.call(r);if(r&&"number"==typeof r.length)return{next:function(){return r&&e>=r.length&&(r=void 0),{value:r&&r[e++],done:!r}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function de(r,t){var n="function"==typeof Symbol&&r[Symbol.iterator];if(!n)return r;var e,o,i=n.call(r),u=[];try{for(;(void 0===t||t-- >0)&&!(e=i.next()).done;)u.push(e.value)}catch(r){o={error:r}}finally{try{e&&!e.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return u}function pe(r,t,n){if(n||2===arguments.length)for(var e,o=0,i=t.length;o<i;o++)!e&&o in t||(e||(e=Array.prototype.slice.call(t,0,o)),e[o]=t[o]);return r.concat(e||Array.prototype.slice.call(t))}"function"==typeof SuppressedError&&SuppressedError;var ye,he,ge,be,me,we,xe,Oe,Se,Ee,Te,je,Ae,Pe,Ie,Re,Le,ke,Ne,Me,ze,_e,De,Ce,Fe,Be,He,$e,Ge,Ve,We,Ue,qe,Ke,Ye,Xe={};function Je(){if(he)return ye;he=1;var r=mn(),t=wn();return ye=Object.keys||function(n){return r(n,t)}}function Qe(){if(me)return be;me=1;var r=mr();return be=r("document","documentElement")}function Ze(){if(xe)return we;xe=1;var r,t=Ot(),n=function(){if(ge)return Xe;ge=1;var r=m(),t=xt(),n=St(),e=Ot(),o=hr(),i=Je();return Xe.f=r&&!t?Object.defineProperties:function(r,t){e(r);for(var u,f=o(t),a=i(t),c=a.length,l=0;c>l;)n.f(r,u=a[l++],f[u]);return r},Xe}(),e=wn(),o=Wt(),i=Qe(),u=lt(),f=Vt(),a="prototype",c="script",l=f("IE_PROTO"),s=function(){},v=function(r){return"<"+c+">"+r+"</"+c+">"},d=function(r){r.write(v("")),r.close();var t=r.parentWindow.Object;return r=null,t},p=function(){try{r=new ActiveXObject("htmlfile")}catch(r){}var t,n,o;p="undefined"!=typeof document?document.domain&&r?d(r):(n=u("iframe"),o="java"+c+":",n.style.display="none",i.appendChild(n),n.src=String(o),(t=n.contentWindow.document).open(),t.write(v("document.F=Object")),t.close(),t.F):d(r);for(var f=e.length;f--;)delete p[a][e[f]];return p()};return o[l]=!0,we=Object.create||function(r,e){var o;return null!==r?(s[a]=t(r),o=new s,s[a]=null,o[l]=r):o=p(),void 0===e?o:n.f(o,e)}}function ro(){if(Se)return Oe;Se=1;var r=ft(),t=Ze(),n=St().f,e=r("unscopables"),o=Array.prototype;return void 0===o[e]&&n(o,e,{configurable:!0,value:t(null)}),Oe=function(r){o[e][r]=!0}}function to(){return Te?Ee:(Te=1,Ee={})}function no(){if(Ie)return Pe;Ie=1;var r=it(),t=gr(),n=ot(),e=Vt(),o=function(){if(Ae)return je;Ae=1;var r=b();return je=!r((function(){function r(){}return r.prototype.constructor=null,Object.getPrototypeOf(new r)!==r.prototype}))}(),i=e("IE_PROTO"),u=Object,f=u.prototype;return Pe=o?u.getPrototypeOf:function(e){var o=n(e);if(r(o,i))return o[i];var a=o.constructor;return t(a)&&o instanceof a?a.prototype:o instanceof u?f:null}}function eo(){if(Le)return Re;Le=1;var r,t,n,e=b(),o=gr(),i=br(),u=Ze(),f=no(),a=Kt(),c=ft(),l=rt(),s=c("iterator"),v=!1;return[].keys&&("next"in(n=[].keys())?(t=f(f(n)))!==Object.prototype&&(r=t):v=!0),!i(r)||e((function(){var t={};return r[s].call(t)!==t}))?r={}:l&&(r=u(r)),o(r[s])||a(r,s,(function(){return this})),Re={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:v}}function oo(){if(Ne)return ke;Ne=1;var r=St().f,t=it(),n=ft()("toStringTag");return ke=function(e,o,i){e&&!i&&(e=e.prototype),e&&!t(e,n)&&r(e,n,{configurable:!0,value:o})}}function io(){if(Fe)return Ce;Fe=1;var r=br();return Ce=function(t){return r(t)||null===t}}function uo(){if(He)return Be;He=1;var r=io(),t=String,n=TypeError;return Be=function(e){if(r(e))return e;throw new n("Can't set "+t(e)+" as a prototype")}}function fo(){if(Ge)return $e;Ge=1;var r=function(){if(De)return _e;De=1;var r=sr(),t=jr();return _e=function(n,e,o){try{return r(t(Object.getOwnPropertyDescriptor(n,e)[o]))}catch(r){}}}(),t=br(),n=yr(),e=uo();return $e=Object.setPrototypeOf||("__proto__"in{}?function(){var o,i=!1,u={};try{(o=r(Object.prototype,"__proto__","set"))(u,[]),i=u instanceof Array}catch(r){}return function(r,u){return n(r),e(u),t(r)?(i?o(r,u):r.__proto__=u,r):r}}():void 0)}function ao(){if(We)return Ve;We=1;var r=re(),t=x(),n=rt(),e=Ht(),o=gr(),i=function(){if(ze)return Me;ze=1;var r=eo().IteratorPrototype,t=Ze(),n=lr(),e=oo(),o=to(),i=function(){return this};return Me=function(u,f,a,c){var l=f+" Iterator";return u.prototype=t(r,{next:n(+!c,a)}),e(u,l,!1,!0),o[l]=i,u}}(),u=no(),f=fo(),a=oo(),c=Et(),l=Kt(),s=ft(),v=to(),d=eo(),p=e.PROPER,y=e.CONFIGURABLE,h=d.IteratorPrototype,g=d.BUGGY_SAFARI_ITERATORS,b=s("iterator"),m="keys",w="values",O="entries",S=function(){return this};return Ve=function(e,s,d,x,E,T,j){i(d,s,x);var A,P,I,R=function(r){if(r===E&&z)return z;if(!g&&r&&r in N)return N[r];switch(r){case m:case w:case O:return function(){return new d(this,r)}}return function(){return new d(this)}},L=s+" Iterator",k=!1,N=e.prototype,M=N[b]||N["@@iterator"]||E&&N[E],z=!g&&M||R(E),_="Array"===s&&N.entries||M;if(_&&(A=u(_.call(new e)))!==Object.prototype&&A.next&&(n||u(A)===h||(f?f(A,h):o(A[b])||l(A,b,S)),a(A,L,!0,!0),n&&(v[L]=S)),p&&E===w&&M&&M.name!==w&&(!n&&y?c(N,"name",w):(k=!0,z=function(){return t(M,this)})),E)if(P={values:R(w),keys:T?z:R(m),entries:R(O)},j)for(I in P)(g||k||!(I in N))&&l(N,I,P[I]);else r({target:s,proto:!0,forced:g||k},P);return n&&!j||N[b]===z||l(N,b,z,{name:E}),v[s]=z,P}}function co(){return qe?Ue:(qe=1,Ue=function(r,t){return{value:r,done:t}})}function lo(){if(Ye)return Ke;Ye=1;var r=hr(),t=ro(),n=to(),e=Ut(),o=St().f,i=ao(),u=co(),f=rt(),a=m(),c="Array Iterator",l=e.set,s=e.getterFor(c);Ke=i(Array,"Array",(function(t,n){l(this,{type:c,target:r(t),index:0,kind:n})}),(function(){var r=s(this),t=r.target,n=r.index++;if(!t||n>=t.length)return r.target=null,u(void 0,!0);switch(r.kind){case"keys":return u(n,!1);case"values":return u(t[n],!1)}return u([n,t[n]],!1)}),"values");var v=n.Arguments=n.Array;if(t("keys"),t("values"),t("entries"),!f&&a&&"values"!==v.name)try{o(v,"name",{value:"values"})}catch(r){}return Ke}lo();var so,vo,po,yo={};!function(){if(po)return yo;po=1;var r=oe(),t=Kt(),n=function(){if(vo)return so;vo=1;var r=oe(),t=ie();return so=r?{}.toString:function(){return"[object "+t(this)+"]"}}();r||t(Object.prototype,"toString",n,{unsafe:!0})}();var ho,go,bo,mo,wo,xo={};function Oo(){if(go)return ho;go=1;var r=ie(),t=String;return ho=function(n){if("Symbol"===r(n))throw new TypeError("Cannot convert a Symbol value to a string");return t(n)}}function So(){if(mo)return bo;mo=1;var r=sr(),t=pn(),n=Oo(),e=yr(),o=r("".charAt),i=r("".charCodeAt),u=r("".slice),f=function(r){return function(f,a){var c,l,s=n(e(f)),v=t(a),d=s.length;return v<0||v>=d?r?"":void 0:(c=i(s,v))<55296||c>56319||v+1===d||(l=i(s,v+1))<56320||l>57343?r?o(s,v):c:r?u(s,v,v+2):l-56320+(c-55296<<10)+65536}};return bo={codeAt:f(!1),charAt:f(!0)}}!function(){if(wo)return xo;wo=1;var r=So().charAt,t=Oo(),n=Ut(),e=ao(),o=co(),i="String Iterator",u=n.set,f=n.getterFor(i);e(String,"String",(function(r){u(this,{type:i,string:t(r),index:0})}),(function(){var t,n=f(this),e=n.string,i=n.index;return i>=e.length?o(void 0,!0):(t=r(e,i),n.index+=t.length,o(t,!1))}))}();var Eo,To,jo,Ao,Po={};function Io(){if(To)return Eo;To=1;var r=b();return Eo=!r((function(){return Object.isExtensible(Object.preventExtensions({}))}))}function Ro(){if(Ao)return jo;Ao=1;var r=Kt();return jo=function(t,n,e){for(var o in n)r(t,o,n[o],e);return t}}var Lo,ko,No,Mo,zo,_o,Do,Co,Fo,Bo,Ho,$o,Go,Vo,Wo,Uo,qo,Ko,Yo,Xo,Jo,Qo,Zo,ri,ti,ni,ei,oi,ii,ui,fi,ai,ci,li,si,vi,di={exports:{}},pi={};function yi(){if(ko)return Lo;ko=1;var r=sr();return Lo=r([].slice)}function hi(){if(No)return pi;No=1;var r=vr(),t=hr(),n=xn().f,e=yi(),o="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];return pi.f=function(i){return o&&"Window"===r(i)?function(r){try{return n(r)}catch(r){return e(o)}}(i):n(t(i))},pi}function gi(){if(Do)return _o;Do=1;var r=b(),t=br(),n=vr(),e=function(){if(zo)return Mo;zo=1;var r=b();return Mo=r((function(){if("function"==typeof ArrayBuffer){var r=new ArrayBuffer(8);Object.isExtensible(r)&&Object.defineProperty(r,"a",{value:8})}}))}(),o=Object.isExtensible,i=r((function(){}));return _o=i||e?function(r){return!!t(r)&&((!e||"ArrayBuffer"!==n(r))&&(!o||o(r)))}:o}function bi(){if(Co)return di.exports;Co=1;var r=re(),t=sr(),n=Wt(),e=br(),o=it(),i=St().f,u=xn(),f=hi(),a=gi(),c=ut(),l=Io(),s=!1,v=c("meta"),d=0,p=function(r){i(r,v,{value:{objectID:"O"+d++,weakData:{}}})},y=di.exports={enable:function(){y.enable=function(){},s=!0;var n=u.f,e=t([].splice),o={};o[v]=1,n(o).length&&(u.f=function(r){for(var t=n(r),o=0,i=t.length;o<i;o++)if(t[o]===v){e(t,o,1);break}return t},r({target:"Object",stat:!0,forced:!0},{getOwnPropertyNames:f.f}))},fastKey:function(r,t){if(!e(r))return"symbol"==typeof r?r:("string"==typeof r?"S":"P")+r;if(!o(r,v)){if(!a(r))return"F";if(!t)return"E";p(r)}return r[v].objectID},getWeakData:function(r,t){if(!o(r,v)){if(!a(r))return!0;if(!t)return!1;p(r)}return r[v].weakData},onFreeze:function(r){return l&&s&&a(r)&&!o(r,v)&&p(r),r}};return n[v]=!0,di.exports}function mi(){if($o)return Ho;$o=1;var r=function(){if(Bo)return Fo;Bo=1;var r=vr(),t=sr();return Fo=function(n){if("Function"===r(n))return t(n)}}(),t=jr(),n=w(),e=r(r.bind);return Ho=function(r,o){return t(r),void 0===o?r:n?e(r,o):function(){return r.apply(o,arguments)}},Ho}function wi(){if(Vo)return Go;Vo=1;var r=ft(),t=to(),n=r("iterator"),e=Array.prototype;return Go=function(r){return void 0!==r&&(t.Array===r||e[n]===r)}}function xi(){if(Uo)return Wo;Uo=1;var r=ie(),t=Ar(),n=pr(),e=to(),o=ft()("iterator");return Wo=function(i){if(!n(i))return t(i,o)||t(i,"@@iterator")||e[r(i)]}}function Oi(){if(Ko)return qo;Ko=1;var r=x(),t=jr(),n=Ot(),e=Tr(),o=xi(),i=TypeError;return qo=function(u,f){var a=arguments.length<2?o(u):f;if(t(a))return n(r(a,u));throw new i(e(u)+" is not iterable")},qo}function Si(){if(Xo)return Yo;Xo=1;var r=x(),t=Ot(),n=Ar();return Yo=function(e,o,i){var u,f;t(e);try{if(!(u=n(e,"return"))){if("throw"===o)throw i;return i}u=r(u,e)}catch(r){f=!0,u=r}if("throw"===o)throw i;if(f)throw u;return t(u),i}}function Ei(){if(Qo)return Jo;Qo=1;var r=mi(),t=x(),n=Ot(),e=Tr(),o=wi(),i=gn(),u=wr(),f=Oi(),a=xi(),c=Si(),l=TypeError,s=function(r,t){this.stopped=r,this.result=t},v=s.prototype;return Jo=function(d,p,y){var h,g,b,m,w,x,O,S=y&&y.that,E=!(!y||!y.AS_ENTRIES),T=!(!y||!y.IS_RECORD),j=!(!y||!y.IS_ITERATOR),A=!(!y||!y.INTERRUPTED),P=r(p,S),I=function(r){return h&&c(h,"normal",r),new s(!0,r)},R=function(r){return E?(n(r),A?P(r[0],r[1],I):P(r[0],r[1])):A?P(r,I):P(r)};if(T)h=d.iterator;else if(j)h=d;else{if(!(g=a(d)))throw new l(e(d)+" is not iterable");if(o(g)){for(b=0,m=i(d);m>b;b++)if((w=R(d[b]))&&u(v,w))return w;return new s(!1)}h=f(d,g)}for(x=T?d.next:h.next;!(O=t(x,h)).done;){try{w=R(O.value)}catch(r){c(h,"throw",r)}if("object"==typeof w&&w&&u(v,w))return w}return new s(!1)}}function Ti(){if(ri)return Zo;ri=1;var r=wr(),t=TypeError;return Zo=function(n,e){if(r(e,n))return n;throw new t("Incorrect invocation")}}function ji(){if(ni)return ti;ni=1;var r=ft()("iterator"),t=!1;try{var n=0,e={next:function(){return{done:!!n++}},return:function(){t=!0}};e[r]=function(){return this},Array.from(e,(function(){throw 2}))}catch(r){}return ti=function(n,e){try{if(!e&&!t)return!1}catch(r){return!1}var o=!1;try{var i={};i[r]=function(){return{next:function(){return{done:o=!0}}}},n(i)}catch(r){}return o}}function Ai(){if(oi)return ei;oi=1;var r=gr(),t=br(),n=fo();return ei=function(e,o,i){var u,f;return n&&r(u=o.constructor)&&u!==i&&t(f=u.prototype)&&f!==i.prototype&&n(e,f),e}}function Pi(){if(ui)return ii;ui=1;var r=re(),t=a(),n=sr(),e=Zn(),o=Kt(),i=bi(),u=Ei(),f=Ti(),c=gr(),l=pr(),s=br(),v=b(),d=ji(),p=oo(),y=Ai();return ii=function(a,h,g){var b=-1!==a.indexOf("Map"),m=-1!==a.indexOf("Weak"),w=b?"set":"add",x=t[a],O=x&&x.prototype,S=x,E={},T=function(r){var t=n(O[r]);o(O,r,"add"===r?function(r){return t(this,0===r?0:r),this}:"delete"===r?function(r){return!(m&&!s(r))&&t(this,0===r?0:r)}:"get"===r?function(r){return m&&!s(r)?void 0:t(this,0===r?0:r)}:"has"===r?function(r){return!(m&&!s(r))&&t(this,0===r?0:r)}:function(r,n){return t(this,0===r?0:r,n),this})};if(e(a,!c(x)||!(m||O.forEach&&!v((function(){(new x).entries().next()})))))S=g.getConstructor(h,a,b,w),i.enable();else if(e(a,!0)){var j=new S,A=j[w](m?{}:-0,1)!==j,P=v((function(){j.has(1)})),I=d((function(r){new x(r)})),R=!m&&v((function(){for(var r=new x,t=5;t--;)r[w](t,t);return!r.has(-0)}));I||((S=h((function(r,t){f(r,O);var n=y(new x,r,S);return l(t)||u(t,n[w],{that:n,AS_ENTRIES:b}),n}))).prototype=O,O.constructor=S),(P||R)&&(T("delete"),T("has"),b&&T("get")),(R||A)&&T(w),m&&O.clear&&delete O.clear}return E[a]=S,r({global:!0,constructor:!0,forced:S!==x},E),p(S,a),m||g.setStrong(S,a,b),S}}function Ii(){if(ai)return fi;ai=1;var r=mi(),t=sr(),n=dr(),e=ot(),o=gn(),i=ae(),u=t([].push),f=function(t){var f=1===t,a=2===t,c=3===t,l=4===t,s=6===t,v=7===t,d=5===t||s;return function(p,y,h,g){for(var b,m,w=e(p),x=n(w),O=o(x),S=r(y,h),E=0,T=g||i,j=f?T(p,O):a||v?T(p,0):void 0;O>E;E++)if((d||E in x)&&(m=S(b=x[E],E,w),t))if(f)j[E]=m;else if(m)switch(t){case 3:return!0;case 5:return b;case 6:return E;case 2:u(j,b)}else switch(t){case 4:return!1;case 7:u(j,b)}return s?-1:c||l?l:j}};return fi={forEach:f(0),map:f(1),filter:f(2),some:f(3),every:f(4),find:f(5),findIndex:f(6),filterReject:f(7)}}function Ri(){if(li)return ci;li=1;var r=sr(),t=Ro(),n=bi().getWeakData,e=Ti(),o=Ot(),i=pr(),u=br(),f=Ei(),a=Ii(),c=it(),l=Ut(),s=l.set,v=l.getterFor,d=a.find,p=a.findIndex,y=r([].splice),h=0,g=function(r){return r.frozen||(r.frozen=new b)},b=function(){this.entries=[]},m=function(r,t){return d(r.entries,(function(r){return r[0]===t}))};return b.prototype={get:function(r){var t=m(this,r);if(t)return t[1]},has:function(r){return!!m(this,r)},set:function(r,t){var n=m(this,r);n?n[1]=t:this.entries.push([r,t])},delete:function(r){var t=p(this.entries,(function(t){return t[0]===r}));return~t&&y(this.entries,t,1),!!~t}},ci={getConstructor:function(r,a,l,d){var p=r((function(r,t){e(r,y),s(r,{type:a,id:h++,frozen:null}),i(t)||f(t,r[d],{that:r,AS_ENTRIES:l})})),y=p.prototype,b=v(a),m=function(r,t,e){var i=b(r),u=n(o(t),!0);return!0===u?g(i).set(t,e):u[i.id]=e,r};return t(y,{delete:function(r){var t=b(this);if(!u(r))return!1;var e=n(r);return!0===e?g(t).delete(r):e&&c(e,t.id)&&delete e[t.id]},has:function(r){var t=b(this);if(!u(r))return!1;var e=n(r);return!0===e?g(t).has(r):e&&c(e,t.id)}}),t(y,l?{get:function(r){var t=b(this);if(u(r)){var e=n(r);if(!0===e)return g(t).get(r);if(e)return e[t.id]}},set:function(r,t){return m(this,r,t)}}:{add:function(r){return m(this,r,!0)}}),p}}}vi||(vi=1,function(){if(si)return Po;si=1;var r,t=Io(),n=a(),e=sr(),o=Ro(),i=bi(),u=Pi(),f=Ri(),c=br(),l=Ut().enforce,s=b(),v=Gt(),d=Object,p=Array.isArray,y=d.isExtensible,h=d.isFrozen,g=d.isSealed,m=d.freeze,w=d.seal,x=!n.ActiveXObject&&"ActiveXObject"in n,O=function(r){return function(){return r(this,arguments.length?arguments[0]:void 0)}},S=u("WeakMap",O,f),E=S.prototype,T=e(E.set);if(v)if(x){r=f.getConstructor(O,"WeakMap",!0),i.enable();var j=e(E.delete),A=e(E.has),P=e(E.get);o(E,{delete:function(t){if(c(t)&&!y(t)){var n=l(this);return n.frozen||(n.frozen=new r),j(this,t)||n.frozen.delete(t)}return j(this,t)},has:function(t){if(c(t)&&!y(t)){var n=l(this);return n.frozen||(n.frozen=new r),A(this,t)||n.frozen.has(t)}return A(this,t)},get:function(t){if(c(t)&&!y(t)){var n=l(this);return n.frozen||(n.frozen=new r),A(this,t)?P(this,t):n.frozen.get(t)}return P(this,t)},set:function(t,n){if(c(t)&&!y(t)){var e=l(this);e.frozen||(e.frozen=new r),A(this,t)?T(this,t,n):e.frozen.set(t,n)}else T(this,t,n);return this}})}else t&&s((function(){var r=m([]);return T(new S,r,1),!h(r)}))&&o(E,{set:function(r,t){var n;return p(r)&&(h(r)?n=m:g(r)&&(n=w)),T(this,r,t),n&&n(r),this}})}());var Li,ki,Ni,Mi,zi,_i={};!function(){if(zi)return _i;zi=1;var r=a(),t=ki?Li:(ki=1,Li={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}),n=function(){if(Mi)return Ni;Mi=1;var r=lt()("span").classList,t=r&&r.constructor&&r.constructor.prototype;return Ni=t===Object.prototype?void 0:t}(),e=lo(),o=Et(),i=oo(),u=ft()("iterator"),f=e.values,c=function(r,n){if(r){if(r[u]!==f)try{o(r,u,f)}catch(t){r[u]=f}if(i(r,n,!0),t[n])for(var a in e)if(r[a]!==e[a])try{o(r,a,e[a])}catch(t){r[a]=e[a]}}};for(var l in t)c(r[l]&&r[l].prototype,l);c(n,"DOMTokenList")}();var Di=new WeakMap;function Ci(r){var n,e=r.children||[],o=e.length;if(0===o)return"";for(var i=0;i<o&&!n;i+=1){var u=e[i];t.Text.isText(u)&&(n=u)}return null==n?"":n.color||""}function Fi(n,e,o){for(var i=e.type,u=function(r,t){var n={};for(var e in r)Object.prototype.hasOwnProperty.call(r,e)&&t.indexOf(e)<0&&(n[e]=r[e]);if(null!=r&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(e=Object.getOwnPropertySymbols(r);o<e.length;o++)t.indexOf(e[o])<0&&Object.prototype.propertyIsEnumerable.call(r,e[o])&&(n[e[o]]=r[e[o]])}return n}(e,["type"]),f=void 0!==o?o:u.level||0,a=r.DomEditor.findPath(n,e),c=a;;){if(0===c.length||0===a[a.length-1])return null;c=t.Path.previous(c);var l=t.Editor.node(n,c);if(!l)return null;var s=de(l,1)[0],v=s.level,d=void 0===v?0:v;if(r.DomEditor.getNodeType(s)!==i)return null;if(d===f)return s}}function Bi(r,t,n){var e=Fi(r,t,n);return!!e&&e.ordered===t.ordered}var Hi=[];var $i,Gi={type:"list-item",elemToHtml:function(n,e){var o="",i="",u=n.ordered,f=void 0!==u&&u?"ol":"ul",a=function(n){var e=Di.get(n);if(null==e)return 0;var o=n,i=o.type,u=o.ordered,f=void 0!==u&&u,a=o.level,c=void 0===a?0:a,l=r.DomEditor.findPath(e,n);if(0===l[0])return c+1;var s=t.Path.previous(l),v=t.Editor.node(e,s);if(!v)return 0;var d=de(v,1)[0];if(r.DomEditor.getNodeType(d)!==i)return c+1;var p=d,y=p.ordered,h=void 0!==y&&y,g=p.level,b=void 0===g?0:g;return b<c?c-b:b>c?Bi(e,n)?0:1:b===c?h===f?0:1:0}(n);if(a>0)for(var c=0;c<a;c+=1)o+="<".concat(f,">"),Hi.push(f);var l=function(n){var e=Di.get(n);if(null==e)return 0;var o=n,i=o.type,u=o.ordered,f=void 0!==u&&u,a=o.level,c=void 0===a?0:a,l=r.DomEditor.findPath(e,n);if(l[0]===e.children.length-1)return c+1;var s=t.Path.next(l),v=t.Editor.node(e,s);if(!v)return 0;var d=de(v,1)[0];if(r.DomEditor.getNodeType(d)!==i)return c+1;var p=d,y=p.ordered,h=void 0!==y&&y,g=p.level,b=void 0===g?0:g;return b<c?Bi(e,d)?c-b:c-b+1:b>c?0:b===c?h===f?0:1:0}(n);if(l>0)for(c=0;c<l;c+=1){var s=Hi.pop();i+="</".concat(s,">")}var v=Ci(n),d=v?' style="color:'.concat(v,'"'):"";return{html:"<li".concat(d,">").concat(e,"</li>"),prefix:o,suffix:i}}},Vi={};!function(){if($i)return Vi;$i=1;var r=re(),t=bn().includes,n=b(),e=ro();r({target:"Array",proto:!0,forced:n((function(){return!Array(1).includes()}))},{includes:function(r){return t(this,r,arguments.length>1?arguments[1]:void 0)}}),e("includes")}();var Wi,Ui,qi,Ki,Yi,Xi,Ji,Qi,Zi,ru,tu,nu={};function eu(){if(Ui)return Wi;Ui=1;var r=Ot();return Wi=function(){var t=r(this),n="";return t.hasIndices&&(n+="d"),t.global&&(n+="g"),t.ignoreCase&&(n+="i"),t.multiline&&(n+="m"),t.dotAll&&(n+="s"),t.unicode&&(n+="u"),t.unicodeSets&&(n+="v"),t.sticky&&(n+="y"),n}}function ou(){if(ru)return Zi;ru=1;var r,t,n=x(),e=sr(),o=Oo(),i=eu(),u=function(){if(Ki)return qi;Ki=1;var r=b(),t=a().RegExp,n=r((function(){var r=t("a","y");return r.lastIndex=2,null!==r.exec("abcd")})),e=n||r((function(){return!t("a","y").sticky})),o=n||r((function(){var r=t("^r","gy");return r.lastIndex=2,null!==r.exec("str")}));return qi={BROKEN_CARET:o,MISSED_STICKY:e,UNSUPPORTED_Y:n}}(),f=et(),c=Ze(),l=Ut().get,s=function(){if(Xi)return Yi;Xi=1;var r=b(),t=a().RegExp;return Yi=r((function(){var r=t(".","s");return!(r.dotAll&&r.test("\n")&&"s"===r.flags)}))}(),v=function(){if(Qi)return Ji;Qi=1;var r=b(),t=a().RegExp;return Ji=r((function(){var r=t("(?<a>b)","g");return"b"!==r.exec("b").groups.a||"bc"!=="b".replace(r,"$<a>c")}))}(),d=f("native-string-replace",String.prototype.replace),p=RegExp.prototype.exec,y=p,h=e("".charAt),g=e("".indexOf),m=e("".replace),w=e("".slice),O=(t=/b*/g,n(p,r=/a/,"a"),n(p,t,"a"),0!==r.lastIndex||0!==t.lastIndex),S=u.BROKEN_CARET,E=void 0!==/()??/.exec("")[1];return(O||E||S||s||v)&&(y=function(r){var t,e,u,f,a,s,v,b=this,x=l(b),T=o(r),j=x.raw;if(j)return j.lastIndex=b.lastIndex,t=n(y,j,T),b.lastIndex=j.lastIndex,t;var A=x.groups,P=S&&b.sticky,I=n(i,b),R=b.source,L=0,k=T;if(P&&(I=m(I,"y",""),-1===g(I,"g")&&(I+="g"),k=w(T,b.lastIndex),b.lastIndex>0&&(!b.multiline||b.multiline&&"\n"!==h(T,b.lastIndex-1))&&(R="(?: "+R+")",k=" "+k,L++),e=new RegExp("^(?:"+R+")",I)),E&&(e=new RegExp("^"+R+"$(?!\\s)",I)),O&&(u=b.lastIndex),f=n(p,P?e:b,k),P?f?(f.input=w(f.input,L),f[0]=w(f[0],L),f.index=b.lastIndex,b.lastIndex+=f[0].length):b.lastIndex=0:O&&f&&(b.lastIndex=b.global?f.index+f[0].length:u),E&&f&&f.length>1&&n(d,f[0],e,(function(){for(a=1;a<arguments.length-2;a++)void 0===arguments[a]&&(f[a]=void 0)})),f&&A)for(f.groups=s=c(null),a=0;a<A.length;a++)s[(v=A[a])[0]]=f[v[1]];return f}),Zi=y}function iu(){if(tu)return nu;tu=1;var r=re(),t=ou();return r({target:"RegExp",proto:!0,forced:/./.exec!==t},{exec:t}),nu}iu();var uu,fu=function(){function n(){this.type="list-item",this.tag="button"}return n.prototype.getListNode=function(t){var n=this.type;return r.DomEditor.getSelectedNodeByType(t,n)},n.prototype.getValue=function(r){return""},n.prototype.isActive=function(r){var t=this.getListNode(r);if(null==t)return!1;var n=t.ordered;return(void 0!==n&&n)===this.ordered},n.prototype.isDisabled=function(n){return null==n.selection||!!r.DomEditor.getSelectedElems(n).some((function(r){if(t.Editor.isVoid(n,r)&&t.Editor.isBlock(n,r))return!0;var e=r.type;return!!["pre","code","table"].includes(e)}))},n.prototype.exec=function(r,n){this.isActive(r)?t.Transforms.setNodes(r,{type:"paragraph",ordered:void 0,level:void 0}):t.Transforms.setNodes(r,{type:"list-item",ordered:this.ordered,indent:void 0})},n}(),au=function(t){function n(){var n=t.apply(this,pe([],de(arguments),!1))||this;return n.ordered=!1,n.title=r.t("listModule.unOrderedList"),n.iconSvg='<svg viewBox="0 0 1024 1024"><path d="M384 64h640v128H384V64z m0 384h640v128H384v-128z m0 384h640v128H384v-128zM0 128a128 128 0 1 1 256 0 128 128 0 0 1-256 0z m0 384a128 128 0 1 1 256 0 128 128 0 0 1-256 0z m0 384a128 128 0 1 1 256 0 128 128 0 0 1-256 0z"></path></svg>',n}return se(n,t),n}(fu),cu=function(t){function n(){var n=t.apply(this,pe([],de(arguments),!1))||this;return n.ordered=!0,n.title=r.t("listModule.orderedList"),n.iconSvg='<svg viewBox="0 0 1024 1024"><path d="M384 832h640v128H384z m0-384h640v128H384z m0-384h640v128H384zM192 0v256H128V64H64V0zM128 526.016v50.016h128v64H64v-146.016l128-60V384H64v-64h192v146.016zM256 704v320H64v-64h128v-64H64v-64h128v-64H64v-64z"></path></svg>',n}return se(n,t),n}(fu),lu={key:"bulletedList",factory:function(){return new au}},su={key:"numberedList",factory:function(){return new cu}},vu={};!function(){if(uu)return vu;uu=1;var r=re(),t=Ii().filter;r({target:"Array",proto:!0,forced:!ce()("filter")},{filter:function(r){return t(this,r,arguments.length>1?arguments[1]:void 0)}})}();var du,pu,yu,hu={};!function(){if(yu)return hu;yu=1;var r=re(),t=function(){if(pu)return du;pu=1;var r=te(),t=gn(),n=ne(),e=mi(),o=function(i,u,f,a,c,l,s,v){for(var d,p,y=c,h=0,g=!!s&&e(s,v);h<a;)h in f&&(d=g?g(f[h],h,u):f[h],l>0&&r(d)?(p=t(d),y=o(i,u,d,p,y,l-1)-1):(n(y+1),i[y]=d),y++),h++;return y};return du=o}(),n=ot(),e=gn(),o=pn(),i=ae();r({target:"Array",proto:!0},{flat:function(){var r=arguments.length?arguments[0]:void 0,u=n(this),f=e(u),a=i(u,0);return a.length=t(a,u,u,f,0,void 0===r?1:o(r)),a}})}();var gu;gu||(gu=1,ro()("flat"));var bu,mu,wu,xu,Ou,Su,Eu,Tu,ju,Au,Pu,Iu={};function Ru(){if(Su)return Ou;Su=1;var r=So().charAt;return Ou=function(t,n,e){return n+(e?r(t,n).length:1)}}function Lu(){if(Tu)return Eu;Tu=1;var r=sr(),t=ot(),n=Math.floor,e=r("".charAt),o=r("".replace),i=r("".slice),u=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,f=/\$([$&'`]|\d{1,2})/g;return Eu=function(r,a,c,l,s,v){var d=c+r.length,p=l.length,y=f;return void 0!==s&&(s=t(s),y=u),o(v,y,(function(t,o){var u;switch(e(o,0)){case"$":return"$";case"&":return r;case"`":return i(a,0,c);case"'":return i(a,d);case"<":u=s[i(o,1,-1)];break;default:var f=+o;if(0===f)return t;if(f>p){var v=n(f/10);return 0===v?t:v<=p?void 0===l[v-1]?e(o,1):l[v-1]+e(o,1):t}u=l[f-1]}return void 0===u?"":u}))}}!function(){if(Pu)return Iu;Pu=1;var r=function(){if(mu)return bu;mu=1;var r=w(),t=Function.prototype,n=t.apply,e=t.call;return bu="object"==typeof Reflect&&Reflect.apply||(r?e.bind(n):function(){return e.apply(n,arguments)}),bu}(),t=x(),n=sr(),e=function(){if(xu)return wu;xu=1,iu();var r=x(),t=Kt(),n=ou(),e=b(),o=ft(),i=Et(),u=o("species"),f=RegExp.prototype;return wu=function(a,c,l,s){var v=o(a),d=!e((function(){var r={};return r[v]=function(){return 7},7!==""[a](r)})),p=d&&!e((function(){var r=!1,t=/a/;return"split"===a&&((t={}).constructor={},t.constructor[u]=function(){return t},t.flags="",t[v]=/./[v]),t.exec=function(){return r=!0,null},t[v](""),!r}));if(!d||!p||l){var y=/./[v],h=c(v,""[a],(function(t,e,o,i,u){var a=e.exec;return a===n||a===f.exec?d&&!u?{done:!0,value:r(y,e,o,i)}:{done:!0,value:r(t,o,e,i)}:{done:!1}}));t(String.prototype,a,h[0]),t(f,v,h[1])}s&&i(f[v],"sham",!0)}}(),o=b(),i=Ot(),u=gr(),f=pr(),a=pn(),c=hn(),l=Oo(),s=yr(),v=Ru(),d=Ar(),p=Lu(),y=function(){if(Au)return ju;Au=1;var r=x(),t=Ot(),n=gr(),e=vr(),o=ou(),i=TypeError;return ju=function(u,f){var a=u.exec;if(n(a)){var c=r(a,u,f);return null!==c&&t(c),c}if("RegExp"===e(u))return r(o,u,f);throw new i("RegExp#exec called on incompatible receiver")}}(),h=ft()("replace"),g=Math.max,m=Math.min,O=n([].concat),S=n([].push),E=n("".indexOf),T=n("".slice),j="$0"==="a".replace(/./,"$0"),A=!!/./[h]&&""===/./[h]("a","$0");e("replace",(function(n,e,o){var b=A?"$":"$0";return[function(r,n){var o=s(this),i=f(r)?void 0:d(r,h);return i?t(i,r,o,n):t(e,l(o),r,n)},function(t,n){var f=i(this),s=l(t);if("string"==typeof n&&-1===E(n,b)&&-1===E(n,"$<")){var d=o(e,f,s,n);if(d.done)return d.value}var h=u(n);h||(n=l(n));var w,x=f.global;x&&(w=f.unicode,f.lastIndex=0);for(var j,A=[];null!==(j=y(f,s))&&(S(A,j),x);){""===l(j[0])&&(f.lastIndex=v(s,c(f.lastIndex),w))}for(var P,I="",R=0,L=0;L<A.length;L++){for(var k,N=l((j=A[L])[0]),M=g(m(a(j.index),s.length),0),z=[],_=1;_<j.length;_++)S(z,void 0===(P=j[_])?P:String(P));var D=j.groups;if(h){var C=O([N],z,M,s);void 0!==D&&S(C,D),k=l(r(n,void 0,C))}else k=p(N,s,M,z,D,n);M>=R&&(I+=T(s,R,M)+k,R=M+N.length)}return I+T(s,R)}]}),!!o((function(){var r=/./;return r.exec=function(){var r=[];return r.groups={a:"7"},r},"7"!=="".replace(r,"$<a>")}))||!j||A)}();var ku,Nu,Mu={};function zu(r){return r.length?r[0].tagName.toLowerCase():""}function _u(n){return t.Editor.nodes(n,{at:n.selection||void 0,match:function(t){return 1===r.DomEditor.findPath(n,t).length}})}return Nu||(Nu=1,function(){if(ku)return Mu;ku=1;var r=re(),t=a();r({global:!0,forced:t.globalThis!==t},{globalThis:t})}()),n.append&&(n.fn.append=n.append),n.attr&&(n.fn.attr=n.attr),n.parent&&(n.fn.parent=n.parent),{renderElems:[{type:"list-item",renderElem:function(n,o,i){Di.set(n,i);var u=n,f=u.level,a=void 0===f?0:f,c=u.ordered,l=void 0!==c&&c,s={margin:"5px 0 5px ".concat(20*a,"px")},v="";if(l){var d=function(n,e){var o=e,i=o.type,u=o.level,f=void 0===u?0:u,a=o.ordered,c=void 0!==a&&a,l=1,s=e,v=r.DomEditor.findPath(n,s);if(0===v[0])return 1;for(;v[0]>0;){var d=t.Path.previous(v),p=t.Editor.node(n,d);if(null==p)break;var y=p[0],h=y.level,g=void 0===h?0:h,b=y.type,m=y.ordered;if(b!==i)break;if(g<f)break;if(g===f){if(m!==c)break;l+=1}s=y,v=d}return l}(i,n);v="".concat(d,".")}else v=function(r){void 0===r&&(r=0);var t="";switch(r){case 0:t="•";break;case 1:t="◦";break;default:t="▪"}return t}(a);var p=Ci(n);return e.jsx("div",{style:s},e.jsx("span",{contentEditable:!1,style:{marginRight:"0.5em",color:p},"data-w-e-reserve":!0},v),e.jsx("span",null,o))}}],editorPlugin:function(n){var e=n.deleteBackward,o=n.handleTab,i=n.normalizeNode,u=n.insertBreak,f=n;return f.insertBreak=function(){var e=de(t.Editor.nodes(n,{match:function(t){return r.DomEditor.checkNodeType(t,"list-item")},universal:!0}),1)[0];return e?""!==e[0].children[0].text?u():void t.Transforms.setNodes(f,{type:"paragraph",ordered:void 0,level:void 0}):u()},f.deleteBackward=function(o){var i=f.selection;if(null!=i)if(t.Range.isExpanded(i))e(o);else{var u=r.DomEditor.getSelectedNodeByType(f,"list-item");if(null!=u)if(0!==i.focus.offset)e(o);else{var a=u,c=a.level,l=void 0===c?0:c,s=a.ordered,v=void 0!==s&&s;if(l>0){var d=Fi(n,u,l-1);d&&d.ordered!==v?t.Transforms.setNodes(f,{level:l-1,ordered:!v}):t.Transforms.setNodes(f,{level:l-1})}else t.Transforms.setNodes(f,{type:"paragraph",ordered:void 0,level:void 0})}else e(o)}else e(o)},f.handleTab=function(){var n,e,i,u,a=f.selection;if(null!=a){if(t.Range.isCollapsed(a)){var c=r.DomEditor.getSelectedNodeByType(f,"list-item");if(null==c)return void o();if(0===a.focus.offset){var l=c.level,s=void 0===l?0:l;return void t.Transforms.setNodes(f,{level:s+1})}}if(t.Range.isExpanded(a)){var v=0,d=!1;try{for(var p=ve(_u(f)),y=p.next();!y.done;y=p.next()){var h=de(y.value,1)[0];"list-item"===r.DomEditor.getNodeType(h)?v+=1:d=!0}}catch(r){n={error:r}}finally{try{y&&!y.done&&(e=p.return)&&e.call(p)}finally{if(n)throw n.error}}if(d||v<=1)return void o();try{for(var g=ve(_u(f)),b=g.next();!b.done;b=g.next()){var m=de(b.value,2),w=(h=m[0],m[1]),x=h.level;s=void 0===x?0:x;t.Transforms.setNodes(f,{level:s+1},{at:w})}}catch(r){i={error:r}}finally{try{b&&!b.done&&(u=g.return)&&u.call(g)}finally{if(i)throw i.error}}}else o()}else o()},f.normalizeNode=function(n){var e=de(n,2),o=e[0],u=e[1],a=r.DomEditor.getNodeType(o);return"bulleted-list"!==a&&"numbered-list"!==a||t.Transforms.unwrapNodes(f,{at:u}),i([o,u])},f},menus:[lu,su],elemsToHtml:[Gi],parseElemsHtml:[{selector:"ul:not([data-w-e-type]),ol:not([data-w-e-type])",parseElemHtml:function(r,t,n){return t.flat(1/0)}},{selector:"li:not([data-w-e-type])",parseElemHtml:function(r,e,o){var i=n(r);0===(e=e.filter((function(r){return!!t.Text.isText(r)||!!o.isInline(r)}))).length&&(e=[{text:i.text().replace(/\s+/gm," ")}]);var u=function(r){return"ol"===zu(r.parent())}(i),f=function(r){for(var t=0,n=r.parent(),e=zu(n);"ul"===e||"ol"===e;)e=zu(n=n.parent()),t+=1;return t-1}(i);return{type:"list-item",ordered:u,level:f,children:e}}}]}}));
|
|
2
|
+
//# sourceMappingURL=index.js.map
|