@syncfusion/ej2-richtexteditor 24.1.41-569421 → 24.1.41-581025
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +0 -176
- package/dist/ej2-richtexteditor.umd.min.js +1 -1
- package/dist/ej2-richtexteditor.umd.min.js.map +1 -1
- package/dist/es6/ej2-richtexteditor.es2015.js +7822 -9502
- package/dist/es6/ej2-richtexteditor.es2015.js.map +1 -1
- package/dist/es6/ej2-richtexteditor.es5.js +5674 -7355
- package/dist/es6/ej2-richtexteditor.es5.js.map +1 -1
- package/package.json +12 -12
- package/src/common/config.d.ts +0 -7
- package/src/common/config.js +0 -11
- package/src/common/constant.d.ts +0 -6
- package/src/common/constant.js +0 -6
- package/src/common/interface.d.ts +0 -12
- package/src/common/types.d.ts +0 -6
- package/src/common/util.d.ts +0 -6
- package/src/common/util.js +20 -61
- package/src/editor-manager/base/constant.d.ts +0 -6
- package/src/editor-manager/base/constant.js +0 -6
- package/src/editor-manager/base/editor-manager.d.ts +0 -5
- package/src/editor-manager/base/editor-manager.js +0 -59
- package/src/editor-manager/base/interface.d.ts +0 -8
- package/src/editor-manager/plugin/dom-node.d.ts +1 -5
- package/src/editor-manager/plugin/dom-node.js +15 -169
- package/src/editor-manager/plugin/format-painter-actions.d.ts +0 -1
- package/src/editor-manager/plugin/format-painter-actions.js +1 -19
- package/src/editor-manager/plugin/formats.d.ts +0 -1
- package/src/editor-manager/plugin/formats.js +3 -38
- package/src/editor-manager/plugin/image.js +16 -12
- package/src/editor-manager/plugin/indents.js +1 -1
- package/src/editor-manager/plugin/inserthtml.d.ts +0 -1
- package/src/editor-manager/plugin/inserthtml.js +18 -78
- package/src/editor-manager/plugin/link.js +3 -8
- package/src/editor-manager/plugin/lists.js +70 -159
- package/src/editor-manager/plugin/ms-word-clean-up.d.ts +0 -3
- package/src/editor-manager/plugin/ms-word-clean-up.js +85 -212
- package/src/editor-manager/plugin/nodecutter.js +2 -5
- package/src/editor-manager/plugin/selection-commands.d.ts +0 -2
- package/src/editor-manager/plugin/selection-commands.js +4 -209
- package/src/editor-manager/plugin/table.d.ts +1 -4
- package/src/editor-manager/plugin/table.js +49 -95
- package/src/editor-manager/plugin/toolbar-status.d.ts +2 -2
- package/src/editor-manager/plugin/toolbar-status.js +10 -20
- package/src/editor-manager/plugin/undo.d.ts +0 -1
- package/src/editor-manager/plugin/undo.js +1 -21
- package/src/rich-text-editor/actions/base-quick-toolbar.d.ts +3 -4
- package/src/rich-text-editor/actions/base-quick-toolbar.js +10 -43
- package/src/rich-text-editor/actions/base-toolbar.js +34 -33
- package/src/rich-text-editor/actions/color-picker.d.ts +0 -1
- package/src/rich-text-editor/actions/color-picker.js +0 -10
- package/src/rich-text-editor/actions/count.js +1 -1
- package/src/rich-text-editor/actions/dropdown-buttons.d.ts +0 -1
- package/src/rich-text-editor/actions/dropdown-buttons.js +4 -8
- package/src/rich-text-editor/actions/emoji-picker.js +4 -4
- package/src/rich-text-editor/actions/enter-key.js +4 -8
- package/src/rich-text-editor/actions/format-painter.js +1 -4
- package/src/rich-text-editor/actions/full-screen.js +2 -3
- package/src/rich-text-editor/actions/html-editor.d.ts +2 -2
- package/src/rich-text-editor/actions/html-editor.js +42 -123
- package/src/rich-text-editor/actions/keyboard.js +1 -3
- package/src/rich-text-editor/actions/markdown-editor.js +1 -3
- package/src/rich-text-editor/actions/paste-clean-up.d.ts +0 -3
- package/src/rich-text-editor/actions/paste-clean-up.js +14 -85
- package/src/rich-text-editor/actions/quick-toolbar.d.ts +0 -8
- package/src/rich-text-editor/actions/quick-toolbar.js +9 -37
- package/src/rich-text-editor/actions/resize.js +1 -2
- package/src/rich-text-editor/actions/toolbar-action.js +1 -1
- package/src/rich-text-editor/actions/toolbar.d.ts +3 -2
- package/src/rich-text-editor/actions/toolbar.js +87 -18
- package/src/rich-text-editor/base/classes.d.ts +5 -0
- package/src/rich-text-editor/base/classes.js +5 -0
- package/src/rich-text-editor/base/constant.d.ts +0 -40
- package/src/rich-text-editor/base/constant.js +0 -209
- package/src/rich-text-editor/base/interface.d.ts +3 -37
- package/src/rich-text-editor/base/rich-text-editor-model.d.ts +3 -3
- package/src/rich-text-editor/base/rich-text-editor.d.ts +4 -7
- package/src/rich-text-editor/base/rich-text-editor.js +132 -156
- package/src/rich-text-editor/base/util.js +2 -11
- package/src/rich-text-editor/formatter/formatter.js +4 -16
- package/src/rich-text-editor/models/default-locale.js +26 -30
- package/src/rich-text-editor/models/items.js +2 -2
- package/src/rich-text-editor/models/toolbar-settings-model.d.ts +1 -1
- package/src/rich-text-editor/models/toolbar-settings.d.ts +1 -1
- package/src/rich-text-editor/models/toolbar-settings.js +1 -1
- package/src/rich-text-editor/renderer/audio-module.d.ts +0 -1
- package/src/rich-text-editor/renderer/audio-module.js +4 -22
- package/src/rich-text-editor/renderer/dialog-renderer.d.ts +0 -2
- package/src/rich-text-editor/renderer/dialog-renderer.js +1 -12
- package/src/rich-text-editor/renderer/iframe-content-renderer.js +1 -2
- package/src/rich-text-editor/renderer/image-module.d.ts +1 -9
- package/src/rich-text-editor/renderer/image-module.js +168 -203
- package/src/rich-text-editor/renderer/link-module.js +1 -10
- package/src/rich-text-editor/renderer/table-module.d.ts +1 -8
- package/src/rich-text-editor/renderer/table-module.js +139 -301
- package/src/rich-text-editor/renderer/toolbar-renderer.d.ts +0 -3
- package/src/rich-text-editor/renderer/toolbar-renderer.js +9 -94
- package/src/rich-text-editor/renderer/video-module.d.ts +0 -3
- package/src/rich-text-editor/renderer/video-module.js +41 -82
- package/src/rich-text-editor/renderer/view-source.d.ts +0 -1
- package/src/rich-text-editor/renderer/view-source.js +4 -12
- package/src/selection/selection.js +0 -3
- package/styles/bootstrap-dark.css +53 -161
- package/styles/bootstrap.css +61 -162
- package/styles/bootstrap4.css +46 -146
- package/styles/bootstrap5-dark.css +46 -151
- package/styles/bootstrap5.css +46 -151
- package/styles/fabric-dark.css +40 -140
- package/styles/fabric.css +41 -141
- package/styles/fluent-dark.css +47 -165
- package/styles/fluent.css +47 -165
- package/styles/highcontrast-light.css +40 -140
- package/styles/highcontrast.css +41 -144
- package/styles/material-dark.css +41 -145
- package/styles/material.css +41 -145
- package/styles/material3-dark.css +50 -156
- package/styles/material3.css +50 -156
- package/styles/rich-text-editor/_bootstrap-dark-definition.scss +13 -17
- package/styles/rich-text-editor/_bootstrap-definition.scss +19 -22
- package/styles/rich-text-editor/_bootstrap4-definition.scss +7 -11
- package/styles/rich-text-editor/_bootstrap5-definition.scss +3 -7
- package/styles/rich-text-editor/_fabric-dark-definition.scss +2 -6
- package/styles/rich-text-editor/_fabric-definition.scss +3 -7
- package/styles/rich-text-editor/_fluent-definition.scss +9 -13
- package/styles/rich-text-editor/_fusionnew-definition.scss +3 -7
- package/styles/rich-text-editor/_highcontrast-definition.scss +3 -7
- package/styles/rich-text-editor/_highcontrast-light-definition.scss +2 -6
- package/styles/rich-text-editor/_layout.scss +31 -133
- package/styles/rich-text-editor/_material-dark-definition.scss +2 -6
- package/styles/rich-text-editor/_material-definition.scss +2 -6
- package/styles/rich-text-editor/_material3-definition.scss +12 -16
- package/styles/rich-text-editor/_tailwind-definition.scss +19 -23
- package/styles/rich-text-editor/_theme.scss +23 -112
- package/styles/rich-text-editor/bootstrap-dark.css +53 -161
- package/styles/rich-text-editor/bootstrap.css +61 -162
- package/styles/rich-text-editor/bootstrap4.css +46 -146
- package/styles/rich-text-editor/bootstrap5-dark.css +46 -151
- package/styles/rich-text-editor/bootstrap5.css +46 -151
- package/styles/rich-text-editor/fabric-dark.css +40 -140
- package/styles/rich-text-editor/fabric.css +41 -141
- package/styles/rich-text-editor/fluent-dark.css +47 -165
- package/styles/rich-text-editor/fluent.css +47 -165
- package/styles/rich-text-editor/highcontrast-light.css +40 -140
- package/styles/rich-text-editor/highcontrast.css +41 -144
- package/styles/rich-text-editor/icons/_bootstrap-dark.scss +2 -2
- package/styles/rich-text-editor/icons/_bootstrap.scss +2 -2
- package/styles/rich-text-editor/icons/_bootstrap4.scss +2 -2
- package/styles/rich-text-editor/icons/_bootstrap5.scss +2 -2
- package/styles/rich-text-editor/icons/_fabric-dark.scss +2 -2
- package/styles/rich-text-editor/icons/_fabric.scss +2 -2
- package/styles/rich-text-editor/icons/_fluent.scss +2 -2
- package/styles/rich-text-editor/icons/_highcontrast-light.scss +2 -2
- package/styles/rich-text-editor/icons/_highcontrast.scss +2 -2
- package/styles/rich-text-editor/icons/_material-dark.scss +2 -2
- package/styles/rich-text-editor/icons/_material.scss +2 -2
- package/styles/rich-text-editor/icons/_material3.scss +2 -2
- package/styles/rich-text-editor/icons/_tailwind.scss +2 -2
- package/styles/rich-text-editor/material-dark.css +41 -145
- package/styles/rich-text-editor/material.css +41 -145
- package/styles/rich-text-editor/material3-dark.css +50 -156
- package/styles/rich-text-editor/material3.css +50 -156
- package/styles/rich-text-editor/tailwind-dark.css +63 -191
- package/styles/rich-text-editor/tailwind.css +63 -191
- package/styles/tailwind-dark.css +63 -191
- package/styles/tailwind.css +63 -191
- package/.eslintrc.json +0 -260
- package/src/global.d.ts +0 -1
- package/styles/rich-text-editor/_bds-definition.scss +0 -279
- package/styles/rich-text-editor/icons/_bds.scss +0 -348
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import * as EVENTS from '../../common/constant';
|
|
2
|
-
import { createElement, isNullOrUndefined as isNOU, detach
|
|
3
|
-
import { PASTE_SOURCE } from '../base/constant';
|
|
2
|
+
import { createElement, isNullOrUndefined as isNOU, detach } from '@syncfusion/ej2-base';
|
|
4
3
|
/**
|
|
5
4
|
* PasteCleanup for MsWord content
|
|
6
5
|
*
|
|
@@ -44,7 +43,7 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
44
43
|
'x', 'xi', 'xii', 'xiii', 'xiv', 'xv', 'xvi', 'xvii', 'xviii', 'xix', 'xx'];
|
|
45
44
|
this.lowerGreekNumber = ['α', 'β', 'γ', 'δ', 'ε', 'ζ', 'η', 'θ', 'ι', 'κ', 'λ',
|
|
46
45
|
'μ', 'ν', 'ξ', 'ο', 'π', 'ρ', 'σ', 'τ', 'υ', 'φ', 'χ', 'ψ', 'ω'];
|
|
47
|
-
this.removableElements = ['o:p', 'style'
|
|
46
|
+
this.removableElements = ['o:p', 'style'];
|
|
48
47
|
this.listContents = [];
|
|
49
48
|
this.cropImageDimensions = [];
|
|
50
49
|
this.parent = parent;
|
|
@@ -61,14 +60,13 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
61
60
|
var elm = createElement('p');
|
|
62
61
|
elm.setAttribute('id', 'MSWord-Content');
|
|
63
62
|
elm.innerHTML = tempHTMLContent;
|
|
64
|
-
this.addDoubleBr(elm);
|
|
65
63
|
var patern = /class='?Mso|style='[^ ]*\bmso-/i;
|
|
66
64
|
var patern2 = /class="?Mso|style="[^ ]*\bmso-/i;
|
|
67
65
|
var patern3 = /(class="?Mso|class='?Mso|class="?Xl|class='?Xl|class=Xl|style="[^"]*\bmso-|style='[^']*\bmso-|w:WordDocument)/gi;
|
|
68
66
|
var pattern4 = /style='mso-width-source:/i;
|
|
69
67
|
if (patern.test(tempHTMLContent) || patern2.test(tempHTMLContent) || patern3.test(tempHTMLContent) ||
|
|
70
68
|
pattern4.test(tempHTMLContent)) {
|
|
71
|
-
|
|
69
|
+
this.imageConversion(elm, rtfData);
|
|
72
70
|
tempHTMLContent = tempHTMLContent.replace(/<img[^>]+>/i, '');
|
|
73
71
|
this.addListClass(elm);
|
|
74
72
|
listNodes = this.cleanUp(elm, listNodes);
|
|
@@ -76,7 +74,6 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
76
74
|
listNodes[0].parentElement.tagName !== 'OL') {
|
|
77
75
|
this.listConverter(listNodes);
|
|
78
76
|
}
|
|
79
|
-
this.imageConversion(elm, rtfData);
|
|
80
77
|
this.cleanList(elm, 'UL');
|
|
81
78
|
this.cleanList(elm, 'OL');
|
|
82
79
|
this.styleCorrection(elm, wordPasteStyleConfig);
|
|
@@ -85,37 +82,25 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
85
82
|
this.removeEmptyElements(elm);
|
|
86
83
|
this.removeEmptyAnchorTag(elm);
|
|
87
84
|
this.breakLineAddition(elm);
|
|
88
|
-
this.processMargin(elm);
|
|
89
85
|
this.removeClassName(elm);
|
|
90
86
|
if (pattern4.test(tempHTMLContent)) {
|
|
91
87
|
this.addTableBorderClass(elm);
|
|
92
88
|
}
|
|
93
|
-
|
|
89
|
+
// Removing the margin for list items
|
|
90
|
+
var liChildren = elm.querySelectorAll('li');
|
|
91
|
+
if (liChildren.length > 0) {
|
|
92
|
+
for (var i = 0; i < liChildren.length; i++) {
|
|
93
|
+
if (!isNOU(liChildren[i].style.marginLeft)) {
|
|
94
|
+
liChildren[i].style.marginLeft = '';
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
e.callBack(elm.innerHTML, this.cropImageDimensions);
|
|
94
99
|
}
|
|
95
100
|
else {
|
|
96
101
|
e.callBack(elm.innerHTML);
|
|
97
102
|
}
|
|
98
103
|
};
|
|
99
|
-
MsWordPaste.prototype.addDoubleBr = function (elm) {
|
|
100
|
-
var newline = elm.querySelector('.Apple-interchange-newline');
|
|
101
|
-
if (!isNOU(newline) && Browser.userAgent.indexOf('Chrome') !== -1 && newline.parentElement.nodeName === 'P' && elm !== newline.parentElement) {
|
|
102
|
-
for (var i = 0; i < elm.childNodes.length; i++) {
|
|
103
|
-
// eslint-disable-next-line
|
|
104
|
-
var node = elm.childNodes[i];
|
|
105
|
-
if (node.nodeType === Node.COMMENT_NODE && node.nodeValue.includes('StartFragment')) {
|
|
106
|
-
var newElement = document.createElement('p');
|
|
107
|
-
newElement.innerHTML = '<br>';
|
|
108
|
-
var cssText = newline.parentElement.style.cssText;
|
|
109
|
-
var currentStyle = newElement.getAttribute('style') || '';
|
|
110
|
-
var newStyle = currentStyle + cssText;
|
|
111
|
-
newElement.setAttribute('style', newStyle);
|
|
112
|
-
elm.insertBefore(newElement, node.nextSibling);
|
|
113
|
-
detach(newline);
|
|
114
|
-
break;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
};
|
|
119
104
|
MsWordPaste.prototype.cleanList = function (elm, listTag) {
|
|
120
105
|
var replacableElem = elm.querySelectorAll(listTag + ' div');
|
|
121
106
|
for (var j = replacableElem.length - 1; j >= 0; j--) {
|
|
@@ -180,9 +165,8 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
180
165
|
imgElem[i].getAttribute('v:shapes').indexOf('Graphic') < 0 &&
|
|
181
166
|
imgElem[i].getAttribute('v:shapes').indexOf('_x0000_s') < 0 &&
|
|
182
167
|
imgElem[i].getAttribute('v:shapes').indexOf('_x0000_i') < 0) {
|
|
183
|
-
imgElem[i]
|
|
168
|
+
detach(imgElem[i]);
|
|
184
169
|
}
|
|
185
|
-
imgElem[i].removeAttribute('v:shapes');
|
|
186
170
|
}
|
|
187
171
|
imgElem = elm.querySelectorAll('img');
|
|
188
172
|
var imgSrc = [];
|
|
@@ -212,7 +196,6 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
212
196
|
});
|
|
213
197
|
}
|
|
214
198
|
}
|
|
215
|
-
imgElem = elm.querySelectorAll('img:not(.e-rte-image-unsupported');
|
|
216
199
|
for (var i = 0; i < imgElem.length; i++) {
|
|
217
200
|
if (imgSrc[i].match(linkRegex)) {
|
|
218
201
|
imgElem[i].setAttribute('src', imgSrc[i]);
|
|
@@ -223,7 +206,7 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
223
206
|
}
|
|
224
207
|
else {
|
|
225
208
|
imgElem[i].removeAttribute('src');
|
|
226
|
-
imgElem[i].
|
|
209
|
+
imgElem[i].setAttribute('alt', 'Unsupported file format');
|
|
227
210
|
}
|
|
228
211
|
if (!isNOU(base64Src[i]) && base64Src[i].isCroppedImage) {
|
|
229
212
|
imgElem[i].classList.add('e-img-cropped');
|
|
@@ -231,10 +214,6 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
231
214
|
}
|
|
232
215
|
imgElem[i].setAttribute('id', 'msWordImg-' + imgName[i]);
|
|
233
216
|
}
|
|
234
|
-
imgElem = elm.querySelectorAll('.e-rte-image-unsupported');
|
|
235
|
-
for (var i = 0; i < imgElem.length; i++) {
|
|
236
|
-
imgElem[i].removeAttribute('src');
|
|
237
|
-
}
|
|
238
217
|
}
|
|
239
218
|
};
|
|
240
219
|
MsWordPaste.prototype.checkVShape = function (elm) {
|
|
@@ -308,9 +287,6 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
308
287
|
var result = [];
|
|
309
288
|
if (!isNOU(fullImg)) {
|
|
310
289
|
for (var i = 0; i < fullImg.length; i++) {
|
|
311
|
-
if (fullImg[i].indexOf('fIsBullet') !== -1 && fullImg[i].indexOf('wzName') === -1) {
|
|
312
|
-
continue;
|
|
313
|
-
}
|
|
314
290
|
var isCroppedImage = false;
|
|
315
291
|
var goalWidth = 0;
|
|
316
292
|
var goalHeight = 0;
|
|
@@ -325,7 +301,7 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
325
301
|
else if (fullImg[i].indexOf('\\jpegblip') !== -1) {
|
|
326
302
|
imgType = 'image/jpeg';
|
|
327
303
|
}
|
|
328
|
-
else if (fullImg[i].indexOf('\\
|
|
304
|
+
else if (fullImg[i].indexOf('\\picprop') !== -1) {
|
|
329
305
|
imgType = null;
|
|
330
306
|
}
|
|
331
307
|
else {
|
|
@@ -365,7 +341,7 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
365
341
|
return parseInt(result, 10);
|
|
366
342
|
};
|
|
367
343
|
MsWordPaste.prototype.removeClassName = function (elm) {
|
|
368
|
-
var elmWithClass = elm.querySelectorAll('*[class]:not(.e-img-cropped)
|
|
344
|
+
var elmWithClass = elm.querySelectorAll('*[class]:not(.e-img-cropped)');
|
|
369
345
|
for (var i = 0; i < elmWithClass.length; i++) {
|
|
370
346
|
elmWithClass[i].removeAttribute('class');
|
|
371
347
|
}
|
|
@@ -409,7 +385,7 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
409
385
|
var innerElement = elm.innerHTML;
|
|
410
386
|
for (var i = 0; i < this.removableElements.length; i++) {
|
|
411
387
|
// eslint-disable-next-line security/detect-non-literal-regexp
|
|
412
|
-
var regExpStartElem = new RegExp('<' + this.removableElements[i] + '
|
|
388
|
+
var regExpStartElem = new RegExp('<' + this.removableElements[i] + '>', 'g');
|
|
413
389
|
// eslint-disable-next-line security/detect-non-literal-regexp
|
|
414
390
|
var regExpEndElem = new RegExp('</' + this.removableElements[i] + '>', 'g');
|
|
415
391
|
innerElement = innerElement.replace(regExpStartElem, '');
|
|
@@ -472,80 +448,72 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
472
448
|
};
|
|
473
449
|
MsWordPaste.prototype.styleCorrection = function (elm, wordPasteStyleConfig) {
|
|
474
450
|
var styleElement = elm.querySelectorAll('style');
|
|
475
|
-
var styles = [];
|
|
476
451
|
if (styleElement.length > 0) {
|
|
477
|
-
|
|
478
|
-
styles = styleElement[0].innerHTML.match(/[\S ]+\s+{[\s\S]+?}/gi);
|
|
479
|
-
}
|
|
480
|
-
else if (styleElement.length > 1) {
|
|
481
|
-
styles = styleElement[1].innerHTML.match(/[\S ]+\s+{[\s\S]+?}/gi);
|
|
482
|
-
}
|
|
452
|
+
var styles = styleElement[0].innerHTML.match(/[\S ]+\s+{[\s\S]+?}/gi);
|
|
483
453
|
var styleClassObject_1 = !isNOU(styles) ? this.findStyleObject(styles) : null;
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
454
|
+
var keys = Object.keys(styleClassObject_1);
|
|
455
|
+
var values = keys.map(function (key) {
|
|
456
|
+
return styleClassObject_1["" + key];
|
|
457
|
+
});
|
|
458
|
+
values = this.removeUnwantedStyle(values, wordPasteStyleConfig);
|
|
459
|
+
this.filterStyles(elm, wordPasteStyleConfig);
|
|
460
|
+
var resultElem = void 0;
|
|
461
|
+
var fromClass = false;
|
|
462
|
+
for (var i = 0; i < keys.length; i++) {
|
|
463
|
+
if (keys[i].split('.')[0] === '') {
|
|
464
|
+
resultElem = elm.getElementsByClassName(keys[i].split('.')[1]);
|
|
465
|
+
fromClass = true;
|
|
466
|
+
}
|
|
467
|
+
else if (keys[i].split('.').length === 1 && keys[i].split('.')[0].indexOf('@') >= 0) {
|
|
468
|
+
continue;
|
|
469
|
+
}
|
|
470
|
+
else if (keys[i].split('.').length === 1 && keys[i].split('.')[0].indexOf('@') < 0) {
|
|
471
|
+
resultElem = elm.getElementsByTagName(keys[i]);
|
|
472
|
+
}
|
|
473
|
+
else {
|
|
474
|
+
resultElem = elm.querySelectorAll(keys[i]);
|
|
475
|
+
}
|
|
476
|
+
for (var j = 0; j < resultElem.length; j++) {
|
|
477
|
+
if (resultElem[j].closest('li') && keys[i] === 'p') {
|
|
499
478
|
continue;
|
|
500
479
|
}
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
continue;
|
|
510
|
-
}
|
|
511
|
-
var styleProperty = resultElem[j].getAttribute('style');
|
|
512
|
-
if (!isNOU(styleProperty) && styleProperty.trim() !== '') {
|
|
513
|
-
var valueSplit = values[i].split(';');
|
|
514
|
-
if (!fromClass) {
|
|
515
|
-
for (var k = 0; k < valueSplit.length; k++) {
|
|
516
|
-
if (styleProperty.indexOf(valueSplit[k].split(':')[0]) >= 0) {
|
|
517
|
-
valueSplit.splice(k, 1);
|
|
518
|
-
k--;
|
|
519
|
-
}
|
|
480
|
+
var styleProperty = resultElem[j].getAttribute('style');
|
|
481
|
+
if (!isNOU(styleProperty) && styleProperty.trim() !== '') {
|
|
482
|
+
var valueSplit = values[i].split(';');
|
|
483
|
+
if (!fromClass) {
|
|
484
|
+
for (var k = 0; k < valueSplit.length; k++) {
|
|
485
|
+
if (styleProperty.indexOf(valueSplit[k].split(':')[0]) >= 0) {
|
|
486
|
+
valueSplit.splice(k, 1);
|
|
487
|
+
k--;
|
|
520
488
|
}
|
|
521
489
|
}
|
|
522
|
-
var changedValue = styleProperty + valueSplit.join(';') + ';';
|
|
523
|
-
resultElem[j].setAttribute('style', changedValue);
|
|
524
|
-
}
|
|
525
|
-
else {
|
|
526
|
-
values[i] = values[i].replace(/text-indent:-(.*?)(?=;|$)/gm, '');
|
|
527
|
-
resultElem[j].setAttribute('style', values[i]);
|
|
528
490
|
}
|
|
491
|
+
var changedValue = styleProperty + valueSplit.join(';') + ';';
|
|
492
|
+
resultElem[j].setAttribute('style', changedValue);
|
|
493
|
+
}
|
|
494
|
+
else {
|
|
495
|
+
values[i] = values[i].replace(/text-indent:-(.*?)(?=;|$)/gm, '');
|
|
496
|
+
resultElem[j].setAttribute('style', values[i]);
|
|
529
497
|
}
|
|
530
|
-
fromClass = false;
|
|
531
498
|
}
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
499
|
+
fromClass = false;
|
|
500
|
+
}
|
|
501
|
+
var listClass = ['MsoListParagraphCxSpFirst', 'MsoListParagraphCxSpMiddle', 'MsoListParagraphCxSpLast'];
|
|
502
|
+
for (var i = 0; i < listClass.length; i++) {
|
|
503
|
+
if (keys.indexOf('li.' + listClass[i]) > -1) {
|
|
504
|
+
var olULElems = elm.querySelectorAll('ol.' + listClass[i] + ', ul.' + listClass[i]);
|
|
505
|
+
for (var j = 0; j < olULElems.length; j++) {
|
|
506
|
+
var styleProperty = olULElems[j].getAttribute('style');
|
|
507
|
+
if (!isNOU(styleProperty) && styleProperty.trim() !== '' && olULElems[j].style.marginLeft !== '') {
|
|
508
|
+
var valueSplit = values[keys.indexOf('li.' + listClass[i])].split(';');
|
|
509
|
+
for (var k = 0; k < valueSplit.length; k++) {
|
|
510
|
+
if ('margin-left'.indexOf(valueSplit[k].split(':')[0]) >= 0) {
|
|
511
|
+
if (!isNOU(valueSplit[k].split(':')[1]) &&
|
|
512
|
+
valueSplit[k].split(':')[1].indexOf('in') >= 0 &&
|
|
513
|
+
olULElems[j].style.marginLeft.indexOf('in') >= 0) {
|
|
514
|
+
var classStyle = parseFloat(valueSplit[k].split(':')[1].split('in')[0]);
|
|
515
|
+
var inlineStyle = parseFloat(olULElems[j].style.marginLeft.split('in')[0]);
|
|
516
|
+
olULElems[j].style.marginLeft = (inlineStyle - classStyle) + 'in';
|
|
549
517
|
}
|
|
550
518
|
}
|
|
551
519
|
}
|
|
@@ -646,7 +614,6 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
646
614
|
MsWordPaste.prototype.listConverter = function (listNodes) {
|
|
647
615
|
var level;
|
|
648
616
|
var data = [];
|
|
649
|
-
var listFormatOverride;
|
|
650
617
|
var collection = [];
|
|
651
618
|
var content = '';
|
|
652
619
|
var stNode;
|
|
@@ -668,17 +635,6 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
668
635
|
else {
|
|
669
636
|
level = 1;
|
|
670
637
|
}
|
|
671
|
-
if (content && content.indexOf('mso-list:') !== -1) {
|
|
672
|
-
var msoListValue = void 0;
|
|
673
|
-
if (content.match(/mso-list:[^;]+;?/)) {
|
|
674
|
-
var changedContent = content.replace('\n', '').split(' ').join('');
|
|
675
|
-
msoListValue = changedContent.match(/mso-list:[^;]+;?/)[0].split(':l');
|
|
676
|
-
listFormatOverride = isNOU(msoListValue) ? null : parseInt(msoListValue[1].split('level')[0], 10);
|
|
677
|
-
}
|
|
678
|
-
else {
|
|
679
|
-
listFormatOverride = null;
|
|
680
|
-
}
|
|
681
|
-
}
|
|
682
638
|
this.listContents = [];
|
|
683
639
|
this.getListContent(listNodes[i]);
|
|
684
640
|
var type = void 0;
|
|
@@ -714,9 +670,9 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
714
670
|
startAttr = this.lowerGreekNumber.indexOf(this.listContents[0].split('.')[0]) + 1;
|
|
715
671
|
}
|
|
716
672
|
}
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
673
|
+
if (listNodes[i].style.marginLeft !== '') {
|
|
674
|
+
styleMarginLeft = listNodes[i].style.marginLeft;
|
|
675
|
+
}
|
|
720
676
|
}
|
|
721
677
|
var tempNode = [];
|
|
722
678
|
for (var j = 1; j < this.listContents.length; j++) {
|
|
@@ -732,8 +688,7 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
732
688
|
currentListStyle = listNodes[i].getAttribute('style');
|
|
733
689
|
}
|
|
734
690
|
collection.push({
|
|
735
|
-
listType: type, content: tempNode, nestedLevel: level,
|
|
736
|
-
listFormatOverride: listFormatOverride, class: currentClassName,
|
|
691
|
+
listType: type, content: tempNode, nestedLevel: level, class: currentClassName,
|
|
737
692
|
listStyle: currentListStyle, listStyleTypeName: listStyleType, start: startAttr, styleMarginLeft: styleMarginLeft
|
|
738
693
|
});
|
|
739
694
|
}
|
|
@@ -806,7 +761,6 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
806
761
|
var prevList;
|
|
807
762
|
var listCount = 0;
|
|
808
763
|
var elem;
|
|
809
|
-
var lfo = collection[0].listFormatOverride;
|
|
810
764
|
for (var index = 0; index < collection.length; index++) {
|
|
811
765
|
var listClass = ['MsoListParagraphCxSpFirst', 'MsoListParagraphCxSpMiddle', 'MsoListParagraphCxSpLast'];
|
|
812
766
|
var isNormalList = false;
|
|
@@ -823,24 +777,16 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
823
777
|
}
|
|
824
778
|
var pElement = createElement('p', { className: 'MsoNormal' });
|
|
825
779
|
pElement.innerHTML = collection[index].content.join(' ');
|
|
826
|
-
if ((collection[index].nestedLevel === 1) &&
|
|
827
|
-
(listCount === 0 || lfo !== collection[index].listFormatOverride) &&
|
|
828
|
-
collection[index].content) {
|
|
780
|
+
if ((collection[index].nestedLevel === 1) && listCount === 0 && collection[index].content) {
|
|
829
781
|
root.appendChild(temp = createElement(collection[index].listType, { className: collection[index].class }));
|
|
830
782
|
prevList = createElement('li');
|
|
831
783
|
prevList.appendChild(pElement);
|
|
832
784
|
temp.appendChild(prevList);
|
|
833
785
|
temp.setAttribute('level', collection[index].nestedLevel.toString());
|
|
834
|
-
|
|
835
|
-
temp.style.marginLeft = collection[index].styleMarginLeft;
|
|
836
|
-
}
|
|
837
|
-
else {
|
|
838
|
-
addClass([temp], 'marginLeftIgnore');
|
|
839
|
-
}
|
|
786
|
+
temp.style.marginLeft = collection[index].styleMarginLeft;
|
|
840
787
|
temp.style.listStyleType = collection[index].listStyleTypeName;
|
|
841
788
|
}
|
|
842
|
-
else if (collection[index].nestedLevel === pLevel
|
|
843
|
-
lfo === collection[index].listFormatOverride) {
|
|
789
|
+
else if (collection[index].nestedLevel === pLevel) {
|
|
844
790
|
if (!isNOU(prevList) && !isNOU(prevList.parentElement)
|
|
845
791
|
&& prevList.parentElement.tagName.toLowerCase() === collection[index].listType) {
|
|
846
792
|
prevList.parentElement.appendChild(prevList = createElement('li'));
|
|
@@ -903,12 +849,6 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
903
849
|
prevList.appendChild(pElement);
|
|
904
850
|
temp.appendChild(prevList);
|
|
905
851
|
temp.setAttribute('level', collection[index].nestedLevel.toString());
|
|
906
|
-
if (collection[index].class !== 'msolistparagraph') {
|
|
907
|
-
temp.style.marginLeft = collection[index].styleMarginLeft;
|
|
908
|
-
}
|
|
909
|
-
else {
|
|
910
|
-
addClass([temp], 'marginLeftIgnore');
|
|
911
|
-
}
|
|
912
852
|
temp.style.listStyleType = collection[index].listStyleTypeName;
|
|
913
853
|
}
|
|
914
854
|
}
|
|
@@ -932,34 +872,14 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
932
872
|
elem = elem.parentElement;
|
|
933
873
|
if (elem.attributes.getNamedItem('level')) {
|
|
934
874
|
// eslint-disable-next-line
|
|
935
|
-
if (parseInt(elem.attributes.getNamedItem('level').textContent, null) === collection[index].nestedLevel
|
|
936
|
-
lfo === collection[index].listFormatOverride) {
|
|
875
|
+
if (parseInt(elem.attributes.getNamedItem('level').textContent, null) === collection[index].nestedLevel) {
|
|
937
876
|
prevList = createElement('li');
|
|
938
877
|
prevList.appendChild(pElement);
|
|
939
878
|
elem.appendChild(prevList);
|
|
940
879
|
break;
|
|
941
880
|
// eslint-disable-next-line
|
|
942
881
|
}
|
|
943
|
-
else if (parseInt(elem.attributes.getNamedItem('level').textContent, null)
|
|
944
|
-
lfo !== collection[index].listFormatOverride) {
|
|
945
|
-
temp = createElement(collection[index].listType);
|
|
946
|
-
prevList = createElement('li');
|
|
947
|
-
temp.appendChild(prevList);
|
|
948
|
-
if (collection[index].nestedLevel > 1) {
|
|
949
|
-
for (var k = 0; k < collection[index].nestedLevel - 1; k++) {
|
|
950
|
-
prevList.appendChild(temp = createElement(collection[index].listType));
|
|
951
|
-
prevList = createElement('li');
|
|
952
|
-
temp.appendChild(prevList);
|
|
953
|
-
temp.style.listStyleType = 'none';
|
|
954
|
-
}
|
|
955
|
-
}
|
|
956
|
-
prevList.appendChild(pElement);
|
|
957
|
-
elem.appendChild(temp);
|
|
958
|
-
temp.setAttribute('level', collection[index].nestedLevel.toString());
|
|
959
|
-
temp.style.listStyleType = collection[index].listStyleTypeName;
|
|
960
|
-
break;
|
|
961
|
-
}
|
|
962
|
-
else if (collection[index].nestedLevel > parseInt(elem.attributes.getNamedItem('level').textContent, 10)) {
|
|
882
|
+
else if (collection[index].nestedLevel > parseInt(elem.attributes.getNamedItem('level').textContent, null)) {
|
|
963
883
|
elem.appendChild(temp = createElement(collection[index].listType));
|
|
964
884
|
prevList = createElement('li');
|
|
965
885
|
prevList.appendChild(pElement);
|
|
@@ -975,9 +895,8 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
975
895
|
prevList.setAttribute('class', collection[index].class);
|
|
976
896
|
prevList.setAttribute('style', (!isNOU(collection[index].listStyle) ? collection[index].listStyle : ''));
|
|
977
897
|
pLevel = collection[index].nestedLevel;
|
|
978
|
-
lfo = collection[index].listFormatOverride;
|
|
979
898
|
listCount++;
|
|
980
|
-
if (!isNOU(collection[index].start
|
|
899
|
+
if (!isNOU(collection[index].start)) {
|
|
981
900
|
temp.setAttribute('start', collection[index].start.toString());
|
|
982
901
|
}
|
|
983
902
|
}
|
|
@@ -1010,36 +929,6 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
1010
929
|
}
|
|
1011
930
|
this.listContents.push(elem.innerHTML);
|
|
1012
931
|
};
|
|
1013
|
-
MsWordPaste.prototype.processMargin = function (element) {
|
|
1014
|
-
var liChildren = element.querySelectorAll('li');
|
|
1015
|
-
if (liChildren.length > 0) {
|
|
1016
|
-
for (var i = 0; i < liChildren.length; i++) {
|
|
1017
|
-
if (!isNOU((liChildren[i]).style.marginLeft) && !liChildren[i].parentElement.classList.contains('marginLeftIgnore')) {
|
|
1018
|
-
(liChildren[i]).style.marginLeft = '';
|
|
1019
|
-
}
|
|
1020
|
-
}
|
|
1021
|
-
}
|
|
1022
|
-
var tableChildren = element.querySelectorAll('table');
|
|
1023
|
-
if (tableChildren.length > 0) {
|
|
1024
|
-
for (var i = 0; i < tableChildren.length; i++) {
|
|
1025
|
-
if (!isNOU((tableChildren[i]).style.marginLeft) &&
|
|
1026
|
-
(tableChildren[i]).style.marginLeft.indexOf('-') >= 0) {
|
|
1027
|
-
(tableChildren[i]).style.marginLeft = '';
|
|
1028
|
-
}
|
|
1029
|
-
}
|
|
1030
|
-
}
|
|
1031
|
-
var ignoredNode = element.querySelectorAll('.marginLeftIgnore li');
|
|
1032
|
-
if (ignoredNode.length > 0) {
|
|
1033
|
-
for (var i = 0; i < ignoredNode.length; i++) {
|
|
1034
|
-
if (!isNOU((ignoredNode[i]).style.marginLeft) && (ignoredNode[i]).style.marginLeft !== '') {
|
|
1035
|
-
var marginLeft = (ignoredNode[i]).style.marginLeft;
|
|
1036
|
-
var marginLeftValue = parseFloat(marginLeft.split('in')[0]);
|
|
1037
|
-
var result = marginLeftValue - 0.5;
|
|
1038
|
-
(ignoredNode[i]).style.marginLeft = result.toString() + 'in';
|
|
1039
|
-
}
|
|
1040
|
-
}
|
|
1041
|
-
}
|
|
1042
|
-
};
|
|
1043
932
|
MsWordPaste.prototype.removeEmptyAnchorTag = function (element) {
|
|
1044
933
|
var removableElement = element.querySelectorAll('a:not([href])');
|
|
1045
934
|
for (var j = removableElement.length - 1; j >= 0; j--) {
|
|
@@ -1050,22 +939,6 @@ var MsWordPaste = /** @class */ (function () {
|
|
|
1050
939
|
parentElem.removeChild(removableElement[j]);
|
|
1051
940
|
}
|
|
1052
941
|
};
|
|
1053
|
-
MsWordPaste.prototype.findSource = function (element) {
|
|
1054
|
-
var metaNodes = element.querySelectorAll('meta');
|
|
1055
|
-
for (var i = 0; i < metaNodes.length; i++) {
|
|
1056
|
-
var metaNode = metaNodes[i];
|
|
1057
|
-
var content = metaNode.getAttribute('content');
|
|
1058
|
-
var name_1 = metaNode.getAttribute('name');
|
|
1059
|
-
if (name_1 && name_1.toLowerCase().indexOf('generator') >= 0 && content && content.toLowerCase().indexOf('microsoft') >= 0) {
|
|
1060
|
-
for (var j = 0; j < PASTE_SOURCE.length; j++) {
|
|
1061
|
-
if (content.toLowerCase().indexOf(PASTE_SOURCE[j]) >= 0) {
|
|
1062
|
-
return PASTE_SOURCE[j];
|
|
1063
|
-
}
|
|
1064
|
-
}
|
|
1065
|
-
}
|
|
1066
|
-
}
|
|
1067
|
-
return 'html';
|
|
1068
|
-
};
|
|
1069
942
|
return MsWordPaste;
|
|
1070
943
|
}());
|
|
1071
944
|
export { MsWordPaste };
|
|
@@ -125,7 +125,7 @@ var NodeCutter = /** @class */ (function () {
|
|
|
125
125
|
else if (len > -1) {
|
|
126
126
|
this.spliceEmptyNode(fragment.childNodes[0], isStart);
|
|
127
127
|
}
|
|
128
|
-
else if (fragment.nodeType !== 3 && fragment.nodeType !== 11 && fragment.nodeName !== 'IMG' && !(fragment.
|
|
128
|
+
else if (fragment.nodeType !== 3 && fragment.nodeType !== 11 && fragment.nodeName !== 'IMG' && !(fragment.classList.contains('e-video-wrap')) && !(fragment.classList.contains('e-audio-wrap'))) {
|
|
129
129
|
fragment.parentNode.removeChild(fragment);
|
|
130
130
|
}
|
|
131
131
|
return fragment;
|
|
@@ -171,16 +171,13 @@ var NodeCutter = /** @class */ (function () {
|
|
|
171
171
|
if ((indexes.indexOf(range.startOffset) >= 0)
|
|
172
172
|
|| ((indexes.indexOf(range.startOffset - 1) >= 0) && (range.startOffset !== 1
|
|
173
173
|
|| (range.startOffset === 1 && new RegExp('\\s').test(str[0])))
|
|
174
|
-
|| (((indexes[indexes.length - 1] - 1) === range.startOffset) &&
|
|
174
|
+
|| (((indexes[indexes.length - 1] - 1) === range.startOffset) && !new RegExp('\\s').test(str[0])))) {
|
|
175
175
|
cursorRange = range;
|
|
176
176
|
this.position = 1;
|
|
177
177
|
}
|
|
178
178
|
else {
|
|
179
179
|
var startOffset = this.GetCursorStart(indexes, range.startOffset, true);
|
|
180
180
|
this.position = range.startOffset - startOffset;
|
|
181
|
-
if (startOffset !== 0 && str[startOffset] && str[startOffset] === ' ') {
|
|
182
|
-
startOffset = startOffset + 1;
|
|
183
|
-
}
|
|
184
181
|
cursorRange.setStart(range.startContainer, startOffset);
|
|
185
182
|
cursorRange.setEnd(range.startContainer, this.GetCursorStart(indexes, range.startOffset, false));
|
|
186
183
|
}
|