leksy-editor 2.2.2 → 2.2.3
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/package.json +1 -1
- package/utilities.js +11 -13
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "leksy-editor",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.3",
|
|
4
4
|
"description": "Leksy Editor is an alternative to traditional WYSIWYG editors, designed primarily for creating mail templates, blogs, and documents without any content manipulation.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"directories": {
|
package/utilities.js
CHANGED
|
@@ -3933,12 +3933,12 @@ const handleBackspaceInList = (event, core) => {
|
|
|
3933
3933
|
if (!range.collapsed) return;
|
|
3934
3934
|
|
|
3935
3935
|
let element = range.startContainer;
|
|
3936
|
-
if (element.nodeType === Node.TEXT_NODE)
|
|
3936
|
+
if (element.nodeType === Node.TEXT_NODE) {
|
|
3937
|
+
element = element.parentElement;
|
|
3938
|
+
}
|
|
3937
3939
|
|
|
3938
3940
|
const li = element.closest('li');
|
|
3939
|
-
if (!li) return;
|
|
3940
|
-
|
|
3941
|
-
if (!core.elements.editor.contains(li)) return;
|
|
3941
|
+
if (!li || !core.elements.editor.contains(li)) return;
|
|
3942
3942
|
|
|
3943
3943
|
const nestedList = li.querySelector('ul, ol');
|
|
3944
3944
|
if (!nestedList) return;
|
|
@@ -3981,15 +3981,13 @@ const handleBackspaceInList = (event, core) => {
|
|
|
3981
3981
|
|
|
3982
3982
|
selection.removeAllRanges();
|
|
3983
3983
|
selection.addRange(newRange);
|
|
3984
|
+
}
|
|
3985
|
+
// Case 2: first list item
|
|
3986
|
+
else {
|
|
3987
|
+
const span = document.createElement('span');
|
|
3988
|
+
span.textContent = parentText || '';
|
|
3984
3989
|
|
|
3985
|
-
|
|
3986
|
-
else {newRange.collapse(false);
|
|
3987
|
-
|
|
3988
|
-
// Case 2: first list item
|
|
3989
|
-
const p = document.createElement('p');
|
|
3990
|
-
p.textContent = parentText;
|
|
3991
|
-
|
|
3992
|
-
parentList.parentElement.insertBefore(p, parentList);
|
|
3990
|
+
parentList.parentElement.insertBefore(span, parentList);
|
|
3993
3991
|
|
|
3994
3992
|
if (children.length > 0) {
|
|
3995
3993
|
parentList.insertBefore(fragment, li);
|
|
@@ -3998,7 +3996,7 @@ const handleBackspaceInList = (event, core) => {
|
|
|
3998
3996
|
li.remove();
|
|
3999
3997
|
|
|
4000
3998
|
const newRange = document.createRange();
|
|
4001
|
-
newRange.selectNodeContents(
|
|
3999
|
+
newRange.selectNodeContents(span);
|
|
4002
4000
|
newRange.collapse(true);
|
|
4003
4001
|
|
|
4004
4002
|
selection.removeAllRanges();
|