@titaui/pc 1.10.40 → 1.10.44-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/lib/components/dynamic/dynamic-item/dynamic-chart/index.js +18 -3
  2. package/lib/components/okr-detail/components/okr-tree/tree-node/e-node/e-project.js +5 -1
  3. package/lib/components/okr-detail/components/okr-tree/tree-node/e-node/index.css +19 -1
  4. package/lib/components/superset-charts/utils/axios.js +2 -2
  5. package/lib/components/upload/index.js +2 -4
  6. package/lib/index.js +0 -8
  7. package/package.json +2 -20
  8. package/lib/components/rich-editor/basic/schema.js +0 -47
  9. package/lib/components/rich-editor/consts/events.js +0 -12
  10. package/lib/components/rich-editor/enums.js +0 -42
  11. package/lib/components/rich-editor/index.js +0 -58
  12. package/lib/components/rich-editor/keymap.js +0 -119
  13. package/lib/components/rich-editor/keymaps/index.js +0 -241
  14. package/lib/components/rich-editor/models/controller.js +0 -18
  15. package/lib/components/rich-editor/models/editor.js +0 -47
  16. package/lib/components/rich-editor/models/plugin.js +0 -20
  17. package/lib/components/rich-editor/models/schema.js +0 -121
  18. package/lib/components/rich-editor/plugins/block/block-quote/commond.js +0 -27
  19. package/lib/components/rich-editor/plugins/block/block-quote/index.js +0 -126
  20. package/lib/components/rich-editor/plugins/block/heading/commonds.js +0 -31
  21. package/lib/components/rich-editor/plugins/block/heading/index.js +0 -188
  22. package/lib/components/rich-editor/plugins/block/index.js +0 -57
  23. package/lib/components/rich-editor/plugins/block/lists/actions/conversions.js +0 -172
  24. package/lib/components/rich-editor/plugins/block/lists/actions/indent-list-items-selected.js +0 -163
  25. package/lib/components/rich-editor/plugins/block/lists/actions/indent-list.js +0 -59
  26. package/lib/components/rich-editor/plugins/block/lists/actions/join-list-items-forward.js +0 -74
  27. package/lib/components/rich-editor/plugins/block/lists/actions/join-list-items-scenarios/index.js +0 -45
  28. package/lib/components/rich-editor/plugins/block/lists/actions/join-list-items-scenarios/join-list-item-with-paragraph.js +0 -104
  29. package/lib/components/rich-editor/plugins/block/lists/actions/join-list-items-scenarios/join-list-item-with-parent-nested-list.js +0 -92
  30. package/lib/components/rich-editor/plugins/block/lists/actions/join-list-items-scenarios/join-nested-list-with-parent-list-item.js +0 -89
  31. package/lib/components/rich-editor/plugins/block/lists/actions/join-list-items-scenarios/join-paragraph-with-list.js +0 -48
  32. package/lib/components/rich-editor/plugins/block/lists/actions/join-list-items-scenarios/join-sibling-list-items.js +0 -61
  33. package/lib/components/rich-editor/plugins/block/lists/actions/merge-lists.js +0 -34
  34. package/lib/components/rich-editor/plugins/block/lists/actions/outdent-list-items-selected.js +0 -289
  35. package/lib/components/rich-editor/plugins/block/lists/actions/wrap-and-join-lists.js +0 -180
  36. package/lib/components/rich-editor/plugins/block/lists/baseCommand.js +0 -328
  37. package/lib/components/rich-editor/plugins/block/lists/commond/indent-list.js +0 -60
  38. package/lib/components/rich-editor/plugins/block/lists/commond/index.js +0 -398
  39. package/lib/components/rich-editor/plugins/block/lists/commond/join-list-item-forward.js +0 -45
  40. package/lib/components/rich-editor/plugins/block/lists/commond/listBackspace.js +0 -302
  41. package/lib/components/rich-editor/plugins/block/lists/commond/outdent-list.js +0 -43
  42. package/lib/components/rich-editor/plugins/block/lists/index.js +0 -222
  43. package/lib/components/rich-editor/plugins/block/lists/messages.js +0 -38
  44. package/lib/components/rich-editor/plugins/block/lists/pm-plugins/input-rule.js +0 -152
  45. package/lib/components/rich-editor/plugins/block/lists/pm-plugins/keymap.js +0 -33
  46. package/lib/components/rich-editor/plugins/block/lists/pm-plugins/main.js +0 -94
  47. package/lib/components/rich-editor/plugins/block/lists/styles.js +0 -15
  48. package/lib/components/rich-editor/plugins/block/lists/transforms.js +0 -347
  49. package/lib/components/rich-editor/plugins/block/lists/utils/analytics.js +0 -48
  50. package/lib/components/rich-editor/plugins/block/lists/utils/find.js +0 -126
  51. package/lib/components/rich-editor/plugins/block/lists/utils/indentation.js +0 -87
  52. package/lib/components/rich-editor/plugins/block/lists/utils/node.js +0 -144
  53. package/lib/components/rich-editor/plugins/block/lists/utils/replace-content.js +0 -31
  54. package/lib/components/rich-editor/plugins/block/lists/utils/selection.js +0 -201
  55. package/lib/components/rich-editor/plugins/block/lists/utils.js +0 -52
  56. package/lib/components/rich-editor/plugins/block/paragraph/index.js +0 -91
  57. package/lib/components/rich-editor/plugins/core/index.js +0 -90
  58. package/lib/components/rich-editor/plugins/core/pm-plugins/focus-handler.js +0 -67
  59. package/lib/components/rich-editor/plugins/core/pm-plugins/keymap.js +0 -29
  60. package/lib/components/rich-editor/plugins/core/pm-plugins/reactNodeView.js +0 -80
  61. package/lib/components/rich-editor/plugins/extension/alignment/commond.js +0 -24
  62. package/lib/components/rich-editor/plugins/extension/alignment/index.js +0 -111
  63. package/lib/components/rich-editor/plugins/extension/alignment/utils.js +0 -19
  64. package/lib/components/rich-editor/plugins/extension/index.js +0 -18
  65. package/lib/components/rich-editor/plugins/index.js +0 -44
  66. package/lib/components/rich-editor/plugins/inline/color/commond.js +0 -128
  67. package/lib/components/rich-editor/plugins/inline/color/consts.js +0 -43
  68. package/lib/components/rich-editor/plugins/inline/color/index.css +0 -61
  69. package/lib/components/rich-editor/plugins/inline/color/index.js +0 -209
  70. package/lib/components/rich-editor/plugins/inline/color/selector.js +0 -250
  71. package/lib/components/rich-editor/plugins/inline/delete-line/index.js +0 -147
  72. package/lib/components/rich-editor/plugins/inline/em/index.js +0 -93
  73. package/lib/components/rich-editor/plugins/inline/index.js +0 -83
  74. package/lib/components/rich-editor/plugins/inline/link/commands.js +0 -256
  75. package/lib/components/rich-editor/plugins/inline/link/index.js +0 -149
  76. package/lib/components/rich-editor/plugins/inline/link/pm-plugins/fake-cursor-for-toolbar.js +0 -77
  77. package/lib/components/rich-editor/plugins/inline/link/pm-plugins/main.js +0 -293
  78. package/lib/components/rich-editor/plugins/inline/link/ui/index.css +0 -79
  79. package/lib/components/rich-editor/plugins/inline/link/ui/linkEditor.js +0 -148
  80. package/lib/components/rich-editor/plugins/inline/link/ui/linkToolbar.js +0 -88
  81. package/lib/components/rich-editor/plugins/inline/link/ui/toolbarBtn.js +0 -117
  82. package/lib/components/rich-editor/plugins/inline/link/utils.js +0 -33
  83. package/lib/components/rich-editor/plugins/inline/strong/index.js +0 -137
  84. package/lib/components/rich-editor/plugins/inline/under-line/index.js +0 -145
  85. package/lib/components/rich-editor/plugins/util.js +0 -281
  86. package/lib/components/rich-editor/react/reactNodeView.js +0 -383
  87. package/lib/components/rich-editor/react/uiProvider.js +0 -185
  88. package/lib/components/rich-editor/schemas/basic.js +0 -309
  89. package/lib/components/rich-editor/schemas/index.js +0 -19
  90. package/lib/components/rich-editor/schemas/list.js +0 -342
  91. package/lib/components/rich-editor/types/commond.js +0 -5
  92. package/lib/components/rich-editor/types/index.js +0 -18
  93. package/lib/components/rich-editor/ui/Popup/index.js +0 -247
  94. package/lib/components/rich-editor/ui/Popup/utils.js +0 -399
  95. package/lib/components/rich-editor/ui/editor/index.css +0 -144
  96. package/lib/components/rich-editor/ui/editor/index.js +0 -143
  97. package/lib/components/rich-editor/ui/normal-toolbar/index.css +0 -29
  98. package/lib/components/rich-editor/ui/normal-toolbar/index.js +0 -109
  99. package/lib/components/rich-editor/utils/browser.js +0 -35
  100. package/lib/components/rich-editor/utils/commands.js +0 -266
  101. package/lib/components/rich-editor/utils/document.js +0 -160
  102. package/lib/components/rich-editor/utils/event.js +0 -79
  103. package/lib/components/rich-editor/utils/helpers.js +0 -16
  104. package/lib/components/rich-editor/utils/mark.js +0 -168
  105. package/lib/components/rich-editor/utils/slice.js +0 -85
  106. package/lib/components/rich-editor/utils/toolbar.js +0 -228
  107. package/yarn-error.log +0 -22184
@@ -1,289 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.outdentListItemsSelected = void 0;
7
-
8
- var _prosemirrorState = require("prosemirror-state");
9
-
10
- var _prosemirrorModel = require("prosemirror-model");
11
-
12
- var _prosemirrorTransform = require("prosemirror-transform");
13
-
14
- var _node = require("../utils/node");
15
-
16
- var _find = require("../utils/find");
17
-
18
- var _selection = require("../utils/selection");
19
-
20
- // import { GapCursorSelection } from '../../selection/gap-cursor-selection';
21
- var outdentListItemsSelected = function outdentListItemsSelected(tr) {
22
- var originalSelection = tr.selection;
23
- var normalizedSelection = (0, _selection.normalizeListItemsSelection)({
24
- selection: tr.selection,
25
- doc: tr.doc
26
- });
27
- var rootList = (0, _find.findRootParentListNode)(normalizedSelection.$from);
28
-
29
- if (!rootList) {
30
- return;
31
- }
32
-
33
- var commonList = normalizedSelection.$from.blockRange(rootList, _node.isListNode);
34
-
35
- if (!commonList) {
36
- return;
37
- }
38
-
39
- var hasNormalizedToPositionLiftedOut = false;
40
- var hasNormalizedFromPositionLiftedOut = false;
41
- var oldFrom = normalizedSelection.from,
42
- oldTo = normalizedSelection.to;
43
- var nodeRanges = splitRangeSelection(normalizedSelection);
44
- nodeRanges.forEach(function (range) {
45
- var $from = tr.doc.resolve(tr.mapping.map(range.from));
46
- var $to = tr.doc.resolve(tr.mapping.map(range.to));
47
- var mappedRange = $from.blockRange($to, _node.isListNode);
48
-
49
- if (!mappedRange) {
50
- return;
51
- }
52
-
53
- if ((0, _node.isListItemNode)($from.node(mappedRange.depth - 1))) {
54
- outdentRangeToParentList({
55
- tr: tr,
56
- range: mappedRange
57
- });
58
- } else {
59
- extractListItemsRangeFromList({
60
- tr: tr,
61
- range: mappedRange
62
- });
63
- hasNormalizedToPositionLiftedOut = hasNormalizedToPositionLiftedOut || oldTo >= range.from && oldTo < range.to;
64
- hasNormalizedFromPositionLiftedOut = hasNormalizedFromPositionLiftedOut || oldFrom >= range.from && oldFrom < range.to;
65
- }
66
- });
67
- var hasCommonListMoved = commonList.start !== tr.mapping.map(commonList.start);
68
- var nextSelection = calculateNewSelection({
69
- originalSelection: originalSelection,
70
- normalizedSelection: normalizedSelection,
71
- tr: tr,
72
- hasCommonListMoved: hasCommonListMoved,
73
- hasNormalizedToPositionLiftedOut: hasNormalizedToPositionLiftedOut,
74
- hasNormalizedFromPositionLiftedOut: hasNormalizedFromPositionLiftedOut
75
- });
76
- tr.setSelection(nextSelection);
77
- (0, _node.joinSiblingLists)({
78
- tr: tr,
79
- direction: _node.JoinDirection.RIGHT
80
- });
81
- };
82
-
83
- exports.outdentListItemsSelected = outdentListItemsSelected;
84
-
85
- var calculateNewSelection = function calculateNewSelection(_ref) {
86
- var tr = _ref.tr,
87
- originalSelection = _ref.originalSelection,
88
- normalizedSelection = _ref.normalizedSelection,
89
- hasCommonListMoved = _ref.hasCommonListMoved,
90
- hasNormalizedToPositionLiftedOut = _ref.hasNormalizedToPositionLiftedOut,
91
- hasNormalizedFromPositionLiftedOut = _ref.hasNormalizedFromPositionLiftedOut;
92
- var $from = normalizedSelection.$from,
93
- $to = normalizedSelection.$to;
94
- var isCursorSelection = normalizedSelection.empty;
95
- var from = tr.mapping.map($from.pos);
96
- var to = tr.mapping.map($to.pos);
97
- var LIST_STRUCTURE_CHANGED_OFFSET = 2;
98
- var isToFromSameListItem = $from.sameParent($to);
99
-
100
- if (hasNormalizedFromPositionLiftedOut) {
101
- var fromMapped = isToFromSameListItem ? $from.pos : from;
102
- from = hasNormalizedFromPositionLiftedOut ? $from.pos : fromMapped;
103
- from = hasCommonListMoved ? from - LIST_STRUCTURE_CHANGED_OFFSET : from;
104
- from = Math.max(from, 0);
105
- }
106
-
107
- if (hasNormalizedToPositionLiftedOut) {
108
- var toMapped = isToFromSameListItem ? $to.pos : to;
109
- to = hasNormalizedToPositionLiftedOut ? $to.pos : toMapped;
110
- to = hasCommonListMoved ? to - LIST_STRUCTURE_CHANGED_OFFSET : to;
111
- to = Math.min(to, tr.doc.nodeSize - 2);
112
- } // if (normalizedSelection instanceof GapCursorSelection) {
113
- // const nextSelectionFrom = tr.doc.resolve(from);
114
- // return new GapCursorSelection(nextSelectionFrom, normalizedSelection.side);
115
- // }
116
-
117
-
118
- if (originalSelection instanceof _prosemirrorState.NodeSelection) {
119
- return _prosemirrorState.NodeSelection.create(tr.doc, from);
120
- }
121
-
122
- if (isCursorSelection) {
123
- return _prosemirrorState.TextSelection.between(tr.doc.resolve(to), tr.doc.resolve(to), -1);
124
- }
125
-
126
- return _prosemirrorState.TextSelection.between(tr.doc.resolve(from), tr.doc.resolve(to), -1);
127
- };
128
-
129
- var splitRangeSelection = function splitRangeSelection(selection) {
130
- var commonListRange = (0, _selection.createListNodeRange)({
131
- selection: selection
132
- });
133
-
134
- if (!commonListRange) {
135
- return [];
136
- }
137
-
138
- var $from = selection.$from,
139
- $to = selection.$to;
140
-
141
- if ($from.pos === $to.pos && $from.sameParent($to)) {
142
- return [{
143
- from: commonListRange.start,
144
- to: commonListRange.end,
145
- depth: commonListRange.depth
146
- }];
147
- }
148
-
149
- var lastListItem = findPreviousListItemSibling($from);
150
-
151
- if (!lastListItem) {
152
- return [];
153
- }
154
-
155
- var nodeRanges = [];
156
- var doc = $from.doc;
157
- var previousListItem = findPreviousListItemSibling($to);
158
-
159
- while (previousListItem && previousListItem.pos >= lastListItem.pos && previousListItem.pos >= commonListRange.start) {
160
- var node = doc.nodeAt(previousListItem.pos);
161
-
162
- if (!node || !(0, _node.isListItemNode)(node)) {
163
- return [];
164
- }
165
-
166
- var offset = 0;
167
-
168
- if (node && node.lastChild && (0, _node.isListNode)(node.lastChild)) {
169
- offset = node.lastChild.nodeSize;
170
- }
171
-
172
- var start = previousListItem.pos + 1;
173
- nodeRanges.push({
174
- from: start,
175
- to: doc.resolve(start).end() - offset,
176
- depth: previousListItem.depth
177
- });
178
- previousListItem = findPreviousListItemSibling(previousListItem);
179
- }
180
-
181
- return nodeRanges;
182
- };
183
-
184
- var outdentRangeToParentList = function outdentRangeToParentList(_ref2) {
185
- var tr = _ref2.tr,
186
- range = _ref2.range;
187
- var end = range.end;
188
- var endOfList = range.$to.end(range.depth);
189
- var listItem = tr.doc.type.schema.nodes.listItem;
190
-
191
- if (end < endOfList) {
192
- var slice = new _prosemirrorModel.Slice(_prosemirrorModel.Fragment.from(listItem.create(null, range.parent.copy())), 1, 0);
193
- var step = new _prosemirrorTransform.ReplaceAroundStep(end - 1, endOfList, end, endOfList, slice, 1, true);
194
- tr.step(step);
195
- range = new _prosemirrorModel.NodeRange(tr.doc.resolve(range.$from.pos), tr.doc.resolve(endOfList), range.depth);
196
- }
197
-
198
- var target = (0, _prosemirrorTransform.liftTarget)(range);
199
-
200
- if (target) {
201
- tr.lift(range, target);
202
- }
203
- };
204
-
205
- var extractListItemsRangeFromList = function extractListItemsRangeFromList(_ref3) {
206
- var tr = _ref3.tr,
207
- range = _ref3.range;
208
- var list = range.parent;
209
- var $start = tr.doc.resolve(range.start);
210
- var listStart = $start.start(range.depth);
211
- var listEnd = $start.end(range.depth);
212
- var isAtTop = listStart === range.start;
213
- var isAtBottom = listEnd === range.end;
214
- var isTheEntireList = isAtTop && isAtBottom;
215
- var listItemContent = isAtTop ? _prosemirrorModel.Fragment.empty : _prosemirrorModel.Fragment.from(list.copy(_prosemirrorModel.Fragment.empty));
216
-
217
- for (var i = range.startIndex; i < range.endIndex; i++) {
218
- listItemContent = listItemContent.append(list.child(i).content);
219
- }
220
-
221
- if (isAtTop) {
222
- for (var _i = 0; _i < listItemContent.childCount; _i++) {
223
- var child = listItemContent.child(_i);
224
-
225
- if (child && (0, _node.isListNode)(child) && child.type !== list.type) {
226
- var newNestedList = list.type.create(null, child.content);
227
- listItemContent = listItemContent.replaceChild(_i, newNestedList);
228
- }
229
- }
230
- }
231
-
232
- var nextListFragment = listItemContent.append(_prosemirrorModel.Fragment.from(list.copy(_prosemirrorModel.Fragment.empty)));
233
-
234
- if (isTheEntireList) {
235
- var slice = new _prosemirrorModel.Slice(listItemContent, 0, 0);
236
- var step = new _prosemirrorTransform.ReplaceStep($start.pos - 1, range.end + 1, slice, false);
237
- tr.step(step);
238
- } else if (isAtTop) {
239
- var _slice = new _prosemirrorModel.Slice(nextListFragment, 0, 1);
240
-
241
- var _step = new _prosemirrorTransform.ReplaceStep($start.pos - 1, range.end, _slice, false);
242
-
243
- tr.step(_step);
244
- } else if (isAtBottom) {
245
- var _slice2 = new _prosemirrorModel.Slice(listItemContent, 1, 0);
246
-
247
- var _step2 = new _prosemirrorTransform.ReplaceStep($start.pos, listEnd + 1, _slice2, false);
248
-
249
- tr.step(_step2);
250
- } else {
251
- var _slice3 = new _prosemirrorModel.Slice(nextListFragment, 1, 1);
252
-
253
- var _step3 = new _prosemirrorTransform.ReplaceAroundStep($start.pos, listEnd, range.end, listEnd, _slice3, _slice3.size, false);
254
-
255
- tr.step(_step3);
256
- }
257
- };
258
-
259
- var findPreviousListItemSibling = function findPreviousListItemSibling($pos) {
260
- var doc = $pos.doc;
261
- var isPositionListItem = (0, _node.isListNode)($pos.node());
262
- var listItemPosition = $pos;
263
-
264
- if (!isPositionListItem) {
265
- var listItem = (0, _find.findFirstParentListItemNode)($pos);
266
-
267
- if (!listItem) {
268
- return null;
269
- }
270
-
271
- return doc.resolve(listItem.pos);
272
- }
273
-
274
- var resolved = doc.resolve(listItemPosition.pos);
275
-
276
- var foundPosition = _prosemirrorState.Selection.findFrom(resolved, -1);
277
-
278
- if (!foundPosition) {
279
- return null;
280
- }
281
-
282
- var parentListItemNode = (0, _find.findFirstParentListItemNode)(foundPosition.$from);
283
-
284
- if (!parentListItemNode) {
285
- return null;
286
- }
287
-
288
- return doc.resolve(parentListItemNode.pos);
289
- };
@@ -1,180 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.autoJoin = autoJoin;
7
- exports.wrapInList = wrapInList;
8
- exports.wrapInListAndJoin = wrapInListAndJoin;
9
-
10
- var _prosemirrorModel = require("prosemirror-model");
11
-
12
- var _prosemirrorTransform = require("prosemirror-transform");
13
-
14
- /**
15
- * Wraps the selection in a list with the given type. If this results in
16
- * two adjacent lists of the same type, those will be joined together.
17
- */
18
- function wrapInListAndJoin(nodeType, tr) {
19
- wrapInList(nodeType)(tr);
20
- autoJoin(tr, function (before, after) {
21
- return before.type === after.type && before.type === nodeType;
22
- });
23
- }
24
- /**
25
- * Wraps the selection in a list with the given type and attributes.
26
- *
27
- * Adapted from https://github.com/ProseMirror/prosemirror-schema-list/blob/master/src/schema-list.js#L64-L89
28
- */
29
-
30
-
31
- function wrapInList(listType, attrs) {
32
- return function (tr) {
33
- var _tr$selection = tr.selection,
34
- $from = _tr$selection.$from,
35
- $to = _tr$selection.$to;
36
- var range = $from.blockRange($to);
37
- var doJoin = false;
38
- var outerRange = range;
39
-
40
- if (!range) {
41
- return false;
42
- } // This is at the top of an existing list item
43
-
44
-
45
- if (range.depth >= 2 && // @ts-ignore - missing type for compatibleContent
46
- $from.node(range.depth - 1).type.compatibleContent(listType) && range.startIndex === 0) {
47
- // Don't do anything if this is the top of the list
48
- if ($from.index(range.depth - 1) === 0) {
49
- return false;
50
- }
51
-
52
- var $insert = tr.doc.resolve(range.start - 2);
53
- outerRange = new _prosemirrorModel.NodeRange($insert, $insert, range.depth);
54
-
55
- if (range.endIndex < range.parent.childCount) {
56
- range = new _prosemirrorModel.NodeRange($from, tr.doc.resolve($to.end(range.depth)), range.depth);
57
- }
58
-
59
- doJoin = true;
60
- }
61
-
62
- var wrap = (0, _prosemirrorTransform.findWrapping)(outerRange, listType, attrs, range);
63
-
64
- if (!wrap) {
65
- return false;
66
- }
67
-
68
- tr = doWrapInList(tr, range, wrap, doJoin, listType);
69
- return true;
70
- };
71
- }
72
- /**
73
- * Internal function used by wrapInList
74
- *
75
- * Adapted from https://github.com/ProseMirror/prosemirror-schema-list/blob/master/src/schema-list.js#L91-L112
76
- */
77
-
78
-
79
- function doWrapInList(tr, range, wrappers, joinBefore, listType) {
80
- var content = _prosemirrorModel.Fragment.empty;
81
-
82
- for (var i = wrappers.length - 1; i >= 0; i--) {
83
- content = _prosemirrorModel.Fragment.from(wrappers[i].type.create(wrappers[i].attrs, content));
84
- }
85
-
86
- tr.step(new _prosemirrorTransform.ReplaceAroundStep(range.start - (joinBefore ? 2 : 0), range.end, range.start, range.end, new _prosemirrorModel.Slice(content, 0, 0), wrappers.length, true));
87
- var found = 0;
88
-
89
- for (var _i = 0; _i < wrappers.length; _i++) {
90
- if (wrappers[_i].type === listType) {
91
- found = _i + 1;
92
- }
93
- }
94
-
95
- var splitDepth = wrappers.length - found;
96
- var splitPos = range.start + wrappers.length - (joinBefore ? 2 : 0);
97
- var parent = range.parent;
98
-
99
- for (var _i2 = range.startIndex, e = range.endIndex, first = true; _i2 < e; _i2++, first = false) {
100
- if (!first && (0, _prosemirrorTransform.canSplit)(tr.doc, splitPos, splitDepth)) {
101
- tr.split(splitPos, splitDepth);
102
- splitPos += 2 * splitDepth;
103
- }
104
-
105
- splitPos += parent.child(_i2).nodeSize;
106
- }
107
-
108
- return tr;
109
- }
110
- /**
111
- * Checks whether two adjacent nodes can be joined. If so, the document
112
- * will be updated to join those nodes. If not, the original transaction
113
- * remains untouched.
114
- *
115
- * Nodes are considered joinable if the `isJoinable` predicate returns true.
116
- *
117
- * Adapted from https://github.com/ProseMirror/prosemirror-commands/blob/master/src/commands.js#L597-L610
118
- */
119
-
120
-
121
- function autoJoin(tr, isJoinable) {
122
- if (!tr.isGeneric) {
123
- return;
124
- }
125
-
126
- var ranges = [];
127
-
128
- for (var i = 0; i < tr.mapping.maps.length; i++) {
129
- var map = tr.mapping.maps[i];
130
-
131
- for (var j = 0; j < ranges.length; j++) {
132
- ranges[j] = map.map(ranges[j]);
133
- }
134
-
135
- map.forEach(function (_s, _e, from, to) {
136
- return ranges.push(from, to);
137
- });
138
- } // Figure out which joinable points exist inside those ranges,
139
- // by checking all node boundaries in their parent nodes.
140
-
141
-
142
- var joinable = [];
143
-
144
- for (var _i3 = 0; _i3 < ranges.length; _i3 += 2) {
145
- var from = ranges[_i3];
146
- var to = ranges[_i3 + 1];
147
- var $from = tr.doc.resolve(from);
148
- var depth = $from.sharedDepth(to);
149
- var parent = $from.node(depth);
150
-
151
- for (var index = $from.indexAfter(depth), pos = $from.after(depth + 1); pos <= to; ++index) {
152
- var _after = parent.maybeChild(index);
153
-
154
- if (!_after) {
155
- break;
156
- }
157
-
158
- if (index && joinable.indexOf(pos) === -1) {
159
- var _before = parent.child(index - 1);
160
-
161
- if (_before.type === _after.type && isJoinable(_before, _after)) {
162
- joinable.push(pos);
163
- }
164
- }
165
-
166
- pos += _after.nodeSize;
167
- }
168
- } // Join the joinable points
169
-
170
-
171
- joinable.sort(function (a, b) {
172
- return a - b;
173
- });
174
-
175
- for (var _i4 = joinable.length - 1; _i4 >= 0; _i4--) {
176
- if ((0, _prosemirrorTransform.canJoin)(tr.doc, joinable[_i4])) {
177
- tr.join(joinable[_i4]);
178
- }
179
- }
180
- }