UNPKG

@atlaskit/editor-plugin-list

Version:

List plugin for @atlaskit/editor-core

36 lines (34 loc) 1.63 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.mergeNextListAtPosition = mergeNextListAtPosition; var _lists = require("@atlaskit/editor-common/lists"); var _utils = require("@atlaskit/editor-common/utils"); var _expValEquals = require("@atlaskit/tmp-editor-statsig/exp-val-equals"); function mergeNextListAtPosition(_ref) { var tr = _ref.tr, listPosition = _ref.listPosition; var listNodeAtPosition = tr.doc.nodeAt(listPosition); if (!(0, _utils.isListNode)(listNodeAtPosition)) { return; } // Ignored via go/ees005 // eslint-disable-next-line @typescript-eslint/no-non-null-assertion var listPositionResolved = tr.doc.resolve(listPosition + listNodeAtPosition.nodeSize); var pos = listPositionResolved.pos, nodeAfter = listPositionResolved.nodeAfter, nodeBefore = listPositionResolved.nodeBefore; if (!(0, _utils.isListNode)(nodeBefore) || !(0, _utils.isListNode)(nodeAfter)) { return; } var previousListPosition = pos - nodeBefore.nodeSize; if (nodeAfter && nodeAfter.type.name !== (nodeBefore === null || nodeBefore === void 0 ? void 0 : nodeBefore.type.name)) { tr.setNodeMarkup(previousListPosition, nodeAfter.type); } tr.join(pos); if (tr.doc.type.schema.marks.fontSize && (0, _expValEquals.expValEquals)('platform_editor_small_font_size', 'isEnabled', true)) { var upperListFontSizeAttrs = (0, _lists.getFirstParagraphBlockMarkAttrs)(nodeBefore, tr.doc.type.schema.marks.fontSize); (0, _lists.reconcileBlockMarkForContainerAtPos)(tr, previousListPosition, tr.doc.type.schema.marks.fontSize, upperListFontSizeAttrs); } }