@syncfusion/ej2-richtexteditor 25.1.41 → 25.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/CHANGELOG.md +38 -0
- package/dist/ej2-richtexteditor.min.js +2 -2
- package/dist/ej2-richtexteditor.umd.min.js +2 -2
- package/dist/ej2-richtexteditor.umd.min.js.map +1 -1
- package/dist/es6/ej2-richtexteditor.es2015.js +226 -90
- package/dist/es6/ej2-richtexteditor.es2015.js.map +1 -1
- package/dist/es6/ej2-richtexteditor.es5.js +226 -91
- package/dist/es6/ej2-richtexteditor.es5.js.map +1 -1
- package/dist/global/ej2-richtexteditor.min.js +2 -2
- package/dist/global/ej2-richtexteditor.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +23 -13
- package/src/common/util.d.ts +8 -0
- package/src/common/util.js +52 -0
- package/src/editor-manager/plugin/inserthtml.js +8 -2
- package/src/editor-manager/plugin/lists.d.ts +1 -0
- package/src/editor-manager/plugin/lists.js +97 -51
- package/src/editor-manager/plugin/ms-word-clean-up.js +2 -2
- package/src/editor-manager/plugin/nodecutter.js +2 -2
- package/src/editor-manager/plugin/undo.js +3 -1
- package/src/rich-text-editor/actions/emoji-picker.js +1 -1
- package/src/rich-text-editor/actions/enter-key.js +9 -0
- package/src/rich-text-editor/actions/html-editor.js +10 -12
- package/src/rich-text-editor/actions/paste-clean-up.js +13 -9
- package/src/rich-text-editor/base/enum.d.ts +4 -4
- package/src/rich-text-editor/base/enum.js +9 -9
- package/src/rich-text-editor/base/interface.d.ts +3 -3
- package/src/rich-text-editor/base/rich-text-editor.js +7 -0
- package/src/rich-text-editor/renderer/iframe-content-renderer.js +1 -1
- package/src/rich-text-editor/renderer/image-module.js +3 -3
- package/src/rich-text-editor/renderer/link-module.js +3 -0
- package/src/rich-text-editor/renderer/table-module.js +3 -0
- package/src/rich-text-editor/renderer/toolbar-renderer.d.ts +2 -0
- package/src/rich-text-editor/renderer/toolbar-renderer.js +7 -1
- package/styles/bootstrap-dark.css +7 -6
- package/styles/bootstrap.css +7 -6
- package/styles/bootstrap4.css +7 -6
- package/styles/bootstrap5-dark.css +7 -6
- package/styles/bootstrap5.css +7 -6
- package/styles/fabric-dark.css +7 -6
- package/styles/fabric.css +7 -6
- package/styles/fluent-dark.css +7 -6
- package/styles/fluent.css +7 -6
- package/styles/highcontrast-light.css +7 -6
- package/styles/highcontrast.css +7 -6
- package/styles/material-dark.css +7 -6
- package/styles/material.css +7 -6
- package/styles/material3-dark.css +7 -6
- package/styles/material3.css +7 -6
- package/styles/rich-text-editor/_layout.scss +7 -6
- package/styles/rich-text-editor/bootstrap-dark.css +7 -6
- package/styles/rich-text-editor/bootstrap.css +7 -6
- package/styles/rich-text-editor/bootstrap4.css +7 -6
- package/styles/rich-text-editor/bootstrap5-dark.css +7 -6
- package/styles/rich-text-editor/bootstrap5.css +7 -6
- package/styles/rich-text-editor/fabric-dark.css +7 -6
- package/styles/rich-text-editor/fabric.css +7 -6
- package/styles/rich-text-editor/fluent-dark.css +7 -6
- package/styles/rich-text-editor/fluent.css +7 -6
- package/styles/rich-text-editor/highcontrast-light.css +7 -6
- package/styles/rich-text-editor/highcontrast.css +7 -6
- package/styles/rich-text-editor/material-dark.css +7 -6
- package/styles/rich-text-editor/material.css +7 -6
- package/styles/rich-text-editor/material3-dark.css +7 -6
- package/styles/rich-text-editor/material3.css +7 -6
- package/styles/rich-text-editor/tailwind-dark.css +7 -6
- package/styles/rich-text-editor/tailwind.css +7 -6
- package/styles/tailwind-dark.css +7 -6
- package/styles/tailwind.css +7 -6
|
@@ -1651,15 +1651,15 @@ var DialogType;
|
|
|
1651
1651
|
/**
|
|
1652
1652
|
* Defines types to be used as inserted image.
|
|
1653
1653
|
*/
|
|
1654
|
-
var
|
|
1655
|
-
(function (
|
|
1656
|
-
/** Defines
|
|
1657
|
-
|
|
1658
|
-
/** Defines
|
|
1659
|
-
|
|
1660
|
-
/** Defines
|
|
1661
|
-
|
|
1662
|
-
})(
|
|
1654
|
+
var ImageInputSource;
|
|
1655
|
+
(function (ImageInputSource) {
|
|
1656
|
+
/** Defines ImageInputSource as Uploaded */
|
|
1657
|
+
ImageInputSource["Uploaded"] = "Uploaded";
|
|
1658
|
+
/** Defines ImageInputSource as Dropped */
|
|
1659
|
+
ImageInputSource["Dropped"] = "Dropped";
|
|
1660
|
+
/** Defines ImageInputSource as Pasted */
|
|
1661
|
+
ImageInputSource["Pasted"] = "Pasted";
|
|
1662
|
+
})(ImageInputSource || (ImageInputSource = {}));
|
|
1663
1663
|
|
|
1664
1664
|
/* eslint-disable */
|
|
1665
1665
|
/**
|
|
@@ -4477,6 +4477,10 @@ function updateTextNode$1(value, enterAction) {
|
|
|
4477
4477
|
tableElm[i].classList.remove('e-rte-paste-onenote-table');
|
|
4478
4478
|
continue;
|
|
4479
4479
|
}
|
|
4480
|
+
else if (tableElm[i].classList.contains('e-rte-paste-html-table')) {
|
|
4481
|
+
tableElm[i].classList.remove('e-rte-paste-html-table');
|
|
4482
|
+
continue;
|
|
4483
|
+
}
|
|
4480
4484
|
}
|
|
4481
4485
|
}
|
|
4482
4486
|
const imageElm = resultElm.querySelectorAll('img');
|
|
@@ -4581,6 +4585,54 @@ function nestedListCleanUp(range) {
|
|
|
4581
4585
|
}
|
|
4582
4586
|
}
|
|
4583
4587
|
}
|
|
4588
|
+
/**
|
|
4589
|
+
* Method to scroll the content to the cursor position
|
|
4590
|
+
*
|
|
4591
|
+
* @param {Document} document - specifies the document.
|
|
4592
|
+
* @param {HTMLElement | HTMLBodyElement} inputElement - specifies the input element.
|
|
4593
|
+
* @returns {void}
|
|
4594
|
+
*/
|
|
4595
|
+
function scrollToCursor(document, inputElement) {
|
|
4596
|
+
const rootElement = inputElement.nodeName === 'BODY' ?
|
|
4597
|
+
inputElement.ownerDocument.defaultView.frameElement.closest('.e-richtexteditor') :
|
|
4598
|
+
inputElement.closest('.e-richtexteditor');
|
|
4599
|
+
const height = rootElement.style.height;
|
|
4600
|
+
if (document.getSelection().rangeCount === 0) {
|
|
4601
|
+
return;
|
|
4602
|
+
}
|
|
4603
|
+
const range = document.getSelection().getRangeAt(0);
|
|
4604
|
+
const finalFocusElement = range.startContainer.nodeName === '#text' ? range.startContainer.parentElement :
|
|
4605
|
+
range.startContainer;
|
|
4606
|
+
const rect = finalFocusElement.getBoundingClientRect();
|
|
4607
|
+
const cursorTop = rect.top;
|
|
4608
|
+
const cursorBottom = rect.bottom;
|
|
4609
|
+
const rootRect = rootElement.getBoundingClientRect();
|
|
4610
|
+
const hasMargin = rootElement.querySelectorAll('.e-count-enabled, .e-resize-enabled').length > 0;
|
|
4611
|
+
if (inputElement.nodeName === 'BODY') {
|
|
4612
|
+
if (height === 'auto') {
|
|
4613
|
+
if (window.innerHeight < cursorTop) {
|
|
4614
|
+
finalFocusElement.scrollIntoView(false);
|
|
4615
|
+
}
|
|
4616
|
+
}
|
|
4617
|
+
else {
|
|
4618
|
+
if (cursorTop > inputElement.getBoundingClientRect().height) {
|
|
4619
|
+
finalFocusElement.scrollIntoView({ block: 'nearest', inline: 'nearest' });
|
|
4620
|
+
}
|
|
4621
|
+
}
|
|
4622
|
+
}
|
|
4623
|
+
else {
|
|
4624
|
+
if (height === 'auto') {
|
|
4625
|
+
if (window.innerHeight < cursorTop) {
|
|
4626
|
+
finalFocusElement.scrollIntoView({ block: 'end', inline: 'nearest' });
|
|
4627
|
+
}
|
|
4628
|
+
}
|
|
4629
|
+
else {
|
|
4630
|
+
if (cursorBottom > rootRect.bottom) {
|
|
4631
|
+
rootElement.querySelector('.e-rte-content').scrollTop += (cursorBottom - rootRect.bottom) + (hasMargin ? 20 : 0);
|
|
4632
|
+
}
|
|
4633
|
+
}
|
|
4634
|
+
}
|
|
4635
|
+
}
|
|
4584
4636
|
|
|
4585
4637
|
/**
|
|
4586
4638
|
* Update Toolbar Status
|
|
@@ -5091,6 +5143,7 @@ class ToolbarRenderer {
|
|
|
5091
5143
|
openDelay: 400,
|
|
5092
5144
|
opensOn: 'Hover',
|
|
5093
5145
|
beforeRender: this.tooltipBeforeRender.bind(this),
|
|
5146
|
+
beforeOpen: this.tooltipBeforeOpen.bind(this),
|
|
5094
5147
|
cssClass: this.parent.getCssClass(),
|
|
5095
5148
|
windowCollision: true,
|
|
5096
5149
|
position: 'BottomCenter'
|
|
@@ -5212,7 +5265,7 @@ class ToolbarRenderer {
|
|
|
5212
5265
|
if ((divNode.textContent.trim() !== ''
|
|
5213
5266
|
&& args.element.childNodes[index].textContent.trim() === divNode.textContent.trim()) ||
|
|
5214
5267
|
((args.items[0].command === 'Formats' && !isNullOrUndefined(toolbarStatus.formats) && this.parent.format.types[index].value.toLowerCase() === toolbarStatus.formats.toLowerCase() && args.element.childNodes[index].classList.contains(this.parent.format.types[index].cssClass))
|
|
5215
|
-
|| (args.items[0].command === 'Font' && !isNullOrUndefined(toolbarStatus.fontname) && this.parent.fontFamily.items[index].value.toLowerCase() === toolbarStatus.fontname.toLowerCase() && args.element.childNodes[index].classList.contains(this.parent.fontFamily.items[index].cssClass)))) {
|
|
5268
|
+
|| (args.items[0].subCommand === 'FontName' && args.items[0].command === 'Font' && !isNullOrUndefined(toolbarStatus.fontname) && !isNullOrUndefined(this.parent.fontFamily.items[index]) && this.parent.fontFamily.items[index].value.toLowerCase() === toolbarStatus.fontname.toLowerCase() && args.element.childNodes[index].classList.contains(this.parent.fontFamily.items[index].cssClass)))) {
|
|
5216
5269
|
if (!args.element.childNodes[index].classList.contains('e-active')) {
|
|
5217
5270
|
addClass([args.element.childNodes[index]], 'e-active');
|
|
5218
5271
|
}
|
|
@@ -5595,6 +5648,11 @@ class ToolbarRenderer {
|
|
|
5595
5648
|
colorPicker.appendTo(document.getElementById(args.target));
|
|
5596
5649
|
return colorPicker;
|
|
5597
5650
|
}
|
|
5651
|
+
tooltipBeforeOpen(args) {
|
|
5652
|
+
if (args.element) {
|
|
5653
|
+
args.element.setAttribute('data-rte-id', this.parent.getID());
|
|
5654
|
+
}
|
|
5655
|
+
}
|
|
5598
5656
|
/**
|
|
5599
5657
|
* The function is used to render Rich Text Editor toolbar
|
|
5600
5658
|
*
|
|
@@ -13347,58 +13405,36 @@ class Lists {
|
|
|
13347
13405
|
let listsNodes = this.domNode.blockNodes(true);
|
|
13348
13406
|
if (e.enterAction === 'BR') {
|
|
13349
13407
|
this.setSelectionBRConfig();
|
|
13350
|
-
const
|
|
13351
|
-
|
|
13352
|
-
|
|
13353
|
-
|
|
13354
|
-
|
|
13355
|
-
|
|
13356
|
-
|
|
13357
|
-
|
|
13358
|
-
|
|
13359
|
-
|
|
13360
|
-
|
|
13361
|
-
|
|
13362
|
-
|
|
13363
|
-
|
|
13364
|
-
|
|
13408
|
+
const selectedNodes = this.parent.domNode.blockNodes();
|
|
13409
|
+
if (selectedNodes.length > 1) {
|
|
13410
|
+
let i = 0;
|
|
13411
|
+
let currentAlignmentNode = selectedNodes[0];
|
|
13412
|
+
while (!isNullOrUndefined(currentAlignmentNode)) {
|
|
13413
|
+
if (currentAlignmentNode.nodeName === 'BR') {
|
|
13414
|
+
const nextNode = currentAlignmentNode.nextSibling;
|
|
13415
|
+
detach(currentAlignmentNode);
|
|
13416
|
+
currentAlignmentNode = nextNode;
|
|
13417
|
+
}
|
|
13418
|
+
if (!isNullOrUndefined(currentAlignmentNode)) {
|
|
13419
|
+
selectedNodes[i] = currentAlignmentNode.nodeName === 'LI' || this.parent.domNode.isBlockNode(currentAlignmentNode) ?
|
|
13420
|
+
currentAlignmentNode : this.gatherElementsAround(currentAlignmentNode);
|
|
13421
|
+
const currentSelectNode = selectedNodes[i].nodeName === 'LI' ? selectedNodes[i].parentElement : selectedNodes[i];
|
|
13422
|
+
const currentElementCheckNode = currentAlignmentNode.nodeName === '#text' ? currentAlignmentNode.parentElement : currentAlignmentNode;
|
|
13423
|
+
currentAlignmentNode = !isNullOrUndefined(currentElementCheckNode.querySelector('.e-editor-select-end')) ||
|
|
13424
|
+
!isNullOrUndefined(closest(currentAlignmentNode, '.e-editor-select-end')) ?
|
|
13425
|
+
null : currentSelectNode.nextSibling;
|
|
13426
|
+
if (currentAlignmentNode === null && !isNullOrUndefined(currentSelectNode.nextSibling) && currentSelectNode.nextSibling.nodeName === 'BR') {
|
|
13427
|
+
detach(currentSelectNode.nextSibling);
|
|
13428
|
+
}
|
|
13429
|
+
}
|
|
13430
|
+
i++;
|
|
13365
13431
|
}
|
|
13366
13432
|
}
|
|
13367
|
-
|
|
13368
|
-
if (!this.parent.domNode.isBlockNode(
|
|
13369
|
-
|
|
13370
|
-
|
|
13371
|
-
|
|
13372
|
-
previousNode = currentNode;
|
|
13373
|
-
currentNode = currentNode.parentElement;
|
|
13374
|
-
}
|
|
13375
|
-
let tempElem;
|
|
13376
|
-
if (this.parent.domNode.isBlockNode(previousNode.parentElement) &&
|
|
13377
|
-
previousNode.parentElement === this.parent.editableElement) {
|
|
13378
|
-
tempElem = createElement('p');
|
|
13379
|
-
previousNode.parentElement.insertBefore(tempElem, previousNode);
|
|
13380
|
-
tempElem.appendChild(previousNode);
|
|
13381
|
-
}
|
|
13382
|
-
else {
|
|
13383
|
-
tempElem = previousNode;
|
|
13384
|
-
}
|
|
13385
|
-
let preNode = tempElem.previousSibling;
|
|
13386
|
-
while (!isNullOrUndefined(preNode) && preNode.nodeName !== 'BR' &&
|
|
13387
|
-
!this.parent.domNode.isBlockNode(preNode)) {
|
|
13388
|
-
tempElem.firstChild.parentElement.insertBefore(preNode, tempElem.firstChild);
|
|
13389
|
-
preNode = tempElem.previousSibling;
|
|
13390
|
-
}
|
|
13391
|
-
if (!isNullOrUndefined(preNode) && preNode.nodeName === 'BR') {
|
|
13392
|
-
detach(preNode);
|
|
13393
|
-
}
|
|
13394
|
-
let postNode = tempElem.nextSibling;
|
|
13395
|
-
while (!isNullOrUndefined(postNode) && postNode.nodeName !== 'BR' &&
|
|
13396
|
-
!this.parent.domNode.isBlockNode(postNode)) {
|
|
13397
|
-
tempElem.appendChild(postNode);
|
|
13398
|
-
postNode = tempElem.nextSibling;
|
|
13399
|
-
}
|
|
13400
|
-
if (!isNullOrUndefined(postNode) && postNode.nodeName === 'BR') {
|
|
13401
|
-
detach(postNode);
|
|
13433
|
+
else {
|
|
13434
|
+
if (!this.parent.domNode.isBlockNode(selectedNodes[0])) {
|
|
13435
|
+
selectedNodes[0] = this.gatherElementsAround(selectedNodes[0]);
|
|
13436
|
+
if (!isNullOrUndefined(selectedNodes[0].nextSibling) && (selectedNodes[0].nextSibling.nodeName === 'BR')) {
|
|
13437
|
+
detach(selectedNodes[0].nextSibling);
|
|
13402
13438
|
}
|
|
13403
13439
|
}
|
|
13404
13440
|
}
|
|
@@ -13500,6 +13536,16 @@ class Lists {
|
|
|
13500
13536
|
}
|
|
13501
13537
|
}
|
|
13502
13538
|
this.cleanNode();
|
|
13539
|
+
if (e.enterAction === 'BR') {
|
|
13540
|
+
const spansToRemove = document.querySelectorAll('span#removeSpan');
|
|
13541
|
+
spansToRemove.forEach((span) => {
|
|
13542
|
+
const fragment = document.createDocumentFragment();
|
|
13543
|
+
while (span.firstChild) {
|
|
13544
|
+
fragment.appendChild(span.firstChild);
|
|
13545
|
+
}
|
|
13546
|
+
span.parentNode.replaceChild(fragment, span);
|
|
13547
|
+
});
|
|
13548
|
+
}
|
|
13503
13549
|
this.parent.editableElement.focus();
|
|
13504
13550
|
if (isIDevice$1()) {
|
|
13505
13551
|
setEditFrameFocus(this.parent.editableElement, selector);
|
|
@@ -13697,6 +13743,12 @@ class Lists {
|
|
|
13697
13743
|
if (e.enterAction !== 'BR') {
|
|
13698
13744
|
this.domNode.wrapInner(element, this.domNode.parseHTMLFragment(wrapper));
|
|
13699
13745
|
}
|
|
13746
|
+
else {
|
|
13747
|
+
const wrapperSpan = '<span class=e-rte-wrap-inner id=removeSpan></span>';
|
|
13748
|
+
const br = document.createElement('br');
|
|
13749
|
+
this.domNode.wrapInner(element, this.domNode.parseHTMLFragment(wrapperSpan));
|
|
13750
|
+
element.appendChild(br);
|
|
13751
|
+
}
|
|
13700
13752
|
}
|
|
13701
13753
|
else if (this.domNode.contents(element)[0].nodeType === 3) {
|
|
13702
13754
|
const replace = this.domNode.createTagString(DEFAULT_TAG, parentNode, this.parent.domNode.encode(this.domNode.contents(element)[0].textContent));
|
|
@@ -13709,8 +13761,18 @@ class Lists {
|
|
|
13709
13761
|
}
|
|
13710
13762
|
else {
|
|
13711
13763
|
const childNode = element.firstChild;
|
|
13764
|
+
if (childNode) {
|
|
13765
|
+
const attributes$$1 = element.parentElement.attributes;
|
|
13766
|
+
if (attributes$$1.length > 0) {
|
|
13767
|
+
for (let d = 0; d < attributes$$1.length; d++) {
|
|
13768
|
+
const e = attributes$$1[d];
|
|
13769
|
+
const existingValue = childNode.getAttribute(e.nodeName);
|
|
13770
|
+
const parentValue = (element.parentElement).getAttribute(e.nodeName);
|
|
13771
|
+
childNode.setAttribute(e.nodeName, existingValue ? parentValue + ' ' + existingValue : parentValue);
|
|
13772
|
+
}
|
|
13773
|
+
}
|
|
13774
|
+
}
|
|
13712
13775
|
className = childNode.getAttribute('class');
|
|
13713
|
-
attributes(childNode, this.domNode.rawAttributes(parentNode));
|
|
13714
13776
|
if (className && childNode.getAttribute('class')) {
|
|
13715
13777
|
attributes(childNode, { 'class': className + ' ' + childNode.getAttribute('class') });
|
|
13716
13778
|
}
|
|
@@ -13751,6 +13813,48 @@ class Lists {
|
|
|
13751
13813
|
closeTag(type) {
|
|
13752
13814
|
return this.domNode.parseHTMLFragment('<span class="e-rte-list-close-' + type.toLowerCase() + '"></span>');
|
|
13753
13815
|
}
|
|
13816
|
+
gatherElementsAround(node) {
|
|
13817
|
+
const pWrap = document.createElement('p');
|
|
13818
|
+
// Insert the new div before the current node
|
|
13819
|
+
let currentNode = node.previousSibling;
|
|
13820
|
+
const classNode = node.parentNode;
|
|
13821
|
+
if (classNode.className === 'e-editor-select-start') {
|
|
13822
|
+
node.parentNode.parentNode.insertBefore(pWrap, node.parentNode);
|
|
13823
|
+
}
|
|
13824
|
+
else if (node.parentNode) {
|
|
13825
|
+
node.parentNode.insertBefore(pWrap, node);
|
|
13826
|
+
}
|
|
13827
|
+
// Gather text and inline elements before the currentNode
|
|
13828
|
+
let i = 0;
|
|
13829
|
+
while (currentNode !== null && currentNode.nodeName !== 'BR' &&
|
|
13830
|
+
!this.parent.domNode.isBlockNode(currentNode)) {
|
|
13831
|
+
const prevSibling = currentNode.previousSibling;
|
|
13832
|
+
if (currentNode.nodeType === 3 || currentNode.nodeType === 1) {
|
|
13833
|
+
if (i === 0) {
|
|
13834
|
+
pWrap.appendChild(currentNode);
|
|
13835
|
+
}
|
|
13836
|
+
else {
|
|
13837
|
+
pWrap.insertBefore(currentNode, pWrap.firstChild);
|
|
13838
|
+
}
|
|
13839
|
+
}
|
|
13840
|
+
currentNode = prevSibling;
|
|
13841
|
+
i++;
|
|
13842
|
+
}
|
|
13843
|
+
// Add the current node to the new p
|
|
13844
|
+
pWrap.appendChild(node);
|
|
13845
|
+
// Gather text and inline elements after the currentNode
|
|
13846
|
+
currentNode = pWrap.nextSibling ? pWrap.nextSibling : pWrap.parentElement.nextSibling;
|
|
13847
|
+
while (currentNode !== null && currentNode.nodeName !== 'BR' &&
|
|
13848
|
+
!this.parent.domNode.isBlockNode(currentNode)) {
|
|
13849
|
+
const nextSibling = currentNode.nextSibling ?
|
|
13850
|
+
currentNode.nextSibling : currentNode.parentElement.nextSibling;
|
|
13851
|
+
if (currentNode.nodeType === 3 || currentNode.nodeType === 1) {
|
|
13852
|
+
pWrap.appendChild(currentNode);
|
|
13853
|
+
}
|
|
13854
|
+
currentNode = nextSibling;
|
|
13855
|
+
}
|
|
13856
|
+
return pWrap;
|
|
13857
|
+
}
|
|
13754
13858
|
}
|
|
13755
13859
|
|
|
13756
13860
|
/**
|
|
@@ -13875,7 +13979,7 @@ class NodeCutter {
|
|
|
13875
13979
|
fragment = this.spliceEmptyNode(fragment, false);
|
|
13876
13980
|
if (fragment && fragment.childNodes.length > 0) {
|
|
13877
13981
|
const isEmpty = (fragment.childNodes.length === 1 && fragment.childNodes[0].nodeName !== 'IMG' && !(fragment.querySelectorAll('img').length > 0)
|
|
13878
|
-
&& this.isRteElm(fragment) && fragment.textContent === '') ? true : false;
|
|
13982
|
+
&& this.isRteElm(fragment) && fragment.textContent.trim() === '') ? true : false;
|
|
13879
13983
|
if (!isEmpty) {
|
|
13880
13984
|
if (node) {
|
|
13881
13985
|
InsertMethods.AppendBefore(fragment, node);
|
|
@@ -13896,7 +14000,7 @@ class NodeCutter {
|
|
|
13896
14000
|
fragment = this.spliceEmptyNode(fragment, true);
|
|
13897
14001
|
if (fragment && fragment.childNodes.length > 0) {
|
|
13898
14002
|
const isEmpty = (fragment.childNodes.length === 1 && fragment.childNodes[0].nodeName !== 'IMG'
|
|
13899
|
-
&& this.isRteElm(fragment) && fragment.textContent === '') ? true : false;
|
|
14003
|
+
&& this.isRteElm(fragment) && fragment.textContent.trim() === '') ? true : false;
|
|
13900
14004
|
if (!isEmpty) {
|
|
13901
14005
|
if (node) {
|
|
13902
14006
|
InsertMethods.AppendBefore(fragment, node, true);
|
|
@@ -14498,7 +14602,7 @@ class InsertHtml {
|
|
|
14498
14602
|
range.startContainer === range.endContainer;
|
|
14499
14603
|
const isCollapsed = range.collapsed;
|
|
14500
14604
|
const nodes = this.getNodeCollection(range, nodeSelection, node);
|
|
14501
|
-
const closestParentNode = (node.nodeName.toLowerCase() === 'table') ? this.closestEle(nodes[0].parentNode, editNode) : nodes[0];
|
|
14605
|
+
const closestParentNode = (node.nodeName.toLowerCase() === 'table') ? (!isNullOrUndefined(nodes[0]) ? this.closestEle(nodes[0].parentNode, editNode) : range.startContainer) : nodes[0];
|
|
14502
14606
|
if (closestParentNode && closestParentNode.nodeName === 'LI' && node.nodeName.toLowerCase() === 'table') {
|
|
14503
14607
|
this.insertTableInList(range, node, closestParentNode, nodes[0], nodeCutter);
|
|
14504
14608
|
return;
|
|
@@ -14543,7 +14647,7 @@ class InsertHtml {
|
|
|
14543
14647
|
nodes[index].parentNode.removeChild(nodes[index]);
|
|
14544
14648
|
}
|
|
14545
14649
|
}
|
|
14546
|
-
if (sibNode) {
|
|
14650
|
+
if (!isNullOrUndefined(sibNode) && !isNullOrUndefined(sibNode.parentNode)) {
|
|
14547
14651
|
InsertMethods.AppendBefore(node, sibNode, true);
|
|
14548
14652
|
}
|
|
14549
14653
|
else {
|
|
@@ -14794,6 +14898,12 @@ class InsertHtml {
|
|
|
14794
14898
|
node.parentNode.replaceChild(fragment, node);
|
|
14795
14899
|
}
|
|
14796
14900
|
}
|
|
14901
|
+
if (lastSelectionNode.nodeName === 'TABLE') {
|
|
14902
|
+
const pTag = createElement('p');
|
|
14903
|
+
pTag.appendChild(createElement('br'));
|
|
14904
|
+
lastSelectionNode.parentElement.insertBefore(pTag, lastSelectionNode.nextSibling);
|
|
14905
|
+
lastSelectionNode = pTag;
|
|
14906
|
+
}
|
|
14797
14907
|
if (lastSelectionNode.nodeName === '#text') {
|
|
14798
14908
|
this.placeCursorEnd(lastSelectionNode, node, nodeSelection, docElement, editNode);
|
|
14799
14909
|
}
|
|
@@ -18895,6 +19005,7 @@ class UndoRedoManager {
|
|
|
18895
19005
|
this.parent.editableElement.innerHTML = '';
|
|
18896
19006
|
this.parent.editableElement.appendChild(removedContent.cloneNode(true));
|
|
18897
19007
|
this.parent.editableElement.focus();
|
|
19008
|
+
scrollToCursor(this.parent.currentDocument, this.parent.editableElement);
|
|
18898
19009
|
if (isIDevice$1()) {
|
|
18899
19010
|
setEditFrameFocus(this.parent.editableElement, e.selector);
|
|
18900
19011
|
}
|
|
@@ -18927,6 +19038,7 @@ class UndoRedoManager {
|
|
|
18927
19038
|
this.parent.editableElement.innerHTML = '';
|
|
18928
19039
|
this.parent.editableElement.appendChild(addedContent.cloneNode(true));
|
|
18929
19040
|
this.parent.editableElement.focus();
|
|
19041
|
+
scrollToCursor(this.parent.currentDocument, this.parent.editableElement);
|
|
18930
19042
|
if (isIDevice$1()) {
|
|
18931
19043
|
setEditFrameFocus(this.parent.editableElement, e.selector);
|
|
18932
19044
|
}
|
|
@@ -19027,9 +19139,9 @@ class MsWordPaste {
|
|
|
19027
19139
|
const patern2 = /class="?Mso|style="[^ ]*\bmso-/i;
|
|
19028
19140
|
const patern3 = /(class="?Mso|class='?Mso|class="?Xl|class='?Xl|class=Xl|style="[^"]*\bmso-|style='[^']*\bmso-|w:WordDocument)/gi;
|
|
19029
19141
|
const pattern4 = /style='mso-width-source:/i;
|
|
19142
|
+
const source = this.findSource(elm);
|
|
19030
19143
|
if (patern.test(tempHTMLContent) || patern2.test(tempHTMLContent) || patern3.test(tempHTMLContent) ||
|
|
19031
19144
|
pattern4.test(tempHTMLContent)) {
|
|
19032
|
-
const source = this.findSource(elm);
|
|
19033
19145
|
tempHTMLContent = tempHTMLContent.replace(/<img[^>]+>/i, '');
|
|
19034
19146
|
this.addListClass(elm);
|
|
19035
19147
|
listNodes = this.cleanUp(elm, listNodes);
|
|
@@ -19054,7 +19166,7 @@ class MsWordPaste {
|
|
|
19054
19166
|
e.callBack(elm.innerHTML, this.cropImageDimensions, source);
|
|
19055
19167
|
}
|
|
19056
19168
|
else {
|
|
19057
|
-
e.callBack(elm.innerHTML);
|
|
19169
|
+
e.callBack(elm.innerHTML, null, source);
|
|
19058
19170
|
}
|
|
19059
19171
|
}
|
|
19060
19172
|
addDoubleBr(elm) {
|
|
@@ -21256,6 +21368,7 @@ const IFRAMEHEADER = `
|
|
|
21256
21368
|
overflow-x: auto;padding: 16px;position: relative;text-align: inherit;z-index: 2;}
|
|
21257
21369
|
p{margin: 0 0 10px;margin-bottom: 10px;}
|
|
21258
21370
|
li{margin-bottom: 10px;}
|
|
21371
|
+
table{margin-bottom: 10px;}
|
|
21259
21372
|
h1{font-size: 2.17em;font-weight: 400;line-height: 1;margin: 10px 0;}
|
|
21260
21373
|
h2{font-size: 1.74em;font-weight: 400;margin: 10px 0;}
|
|
21261
21374
|
h3{font-size: 1.31em;font-weight: 400;margin: 10px 0;}
|
|
@@ -21738,8 +21851,14 @@ class HtmlEditor {
|
|
|
21738
21851
|
range.insertNode(tempSpan);
|
|
21739
21852
|
}
|
|
21740
21853
|
let currentChild = this.parent.inputElement.firstChild;
|
|
21741
|
-
while (!isNullOrUndefined(currentChild)
|
|
21742
|
-
currentChild.
|
|
21854
|
+
while (!isNullOrUndefined(currentChild)) {
|
|
21855
|
+
if (currentChild.nodeName === '#text') {
|
|
21856
|
+
currentChild = currentChild.nextElementSibling;
|
|
21857
|
+
continue;
|
|
21858
|
+
}
|
|
21859
|
+
if (currentChild.textContent.replace(regEx, '').trim().length > 0) {
|
|
21860
|
+
currentChild.innerHTML = currentChild.innerHTML.replace(regEx, '');
|
|
21861
|
+
}
|
|
21743
21862
|
currentChild = currentChild.nextElementSibling;
|
|
21744
21863
|
}
|
|
21745
21864
|
let tempSpanToRemove = this.parent.inputElement.querySelector('.tempSpan');
|
|
@@ -21837,15 +21956,7 @@ class HtmlEditor {
|
|
|
21837
21956
|
}
|
|
21838
21957
|
else {
|
|
21839
21958
|
this.parent.notify(enterHandler, { args: e.args });
|
|
21840
|
-
|
|
21841
|
-
if (!isNullOrUndefined(newRange.startContainer) && this.parent.height !== 'auto' && newRange.startContainer.nodeName !== '#text'
|
|
21842
|
-
&& !this.parent.iframeSettings.enable && newRange.startContainer.getBoundingClientRect().bottom > this.parent.element.getBoundingClientRect().bottom) {
|
|
21843
|
-
this.parent.element.querySelector('.e-rte-content').scrollTop += newRange.startContainer.getBoundingClientRect().bottom - this.parent.element.getBoundingClientRect().bottom;
|
|
21844
|
-
}
|
|
21845
|
-
else if (!isNullOrUndefined(newRange.startContainer) && this.parent.height === 'auto' && newRange.startContainer.nodeName !== '#text'
|
|
21846
|
-
&& !this.parent.iframeSettings.enable && window.innerHeight < newRange.startContainer.getBoundingClientRect().top) {
|
|
21847
|
-
newRange.startContainer.scrollIntoView({ block: 'end', inline: 'nearest' });
|
|
21848
|
-
}
|
|
21959
|
+
scrollToCursor(this.parent.contentModule.getDocument(), this.parent.inputElement);
|
|
21849
21960
|
}
|
|
21850
21961
|
}
|
|
21851
21962
|
}
|
|
@@ -22877,12 +22988,14 @@ class PasteCleanup {
|
|
|
22877
22988
|
popupObj.close();
|
|
22878
22989
|
}
|
|
22879
22990
|
this.parent.trigger(imageUploadFailed, e);
|
|
22880
|
-
uploadObj.
|
|
22991
|
+
if (uploadObj && document.body.contains(uploadObj.element)) {
|
|
22992
|
+
uploadObj.destroy();
|
|
22993
|
+
}
|
|
22881
22994
|
}
|
|
22882
22995
|
popupClose(popupObj, uploadObj, imgElem, e) {
|
|
22883
22996
|
this.parent.inputElement.contentEditable = 'true';
|
|
22884
22997
|
e.element = imgElem;
|
|
22885
|
-
e.
|
|
22998
|
+
e.detectImageSource = ImageInputSource.Pasted;
|
|
22886
22999
|
this.parent.trigger(imageUploadSuccess, e, (e) => {
|
|
22887
23000
|
if (!isNullOrUndefined(this.parent.insertImageSettings.path)) {
|
|
22888
23001
|
const url = this.parent.insertImageSettings.path + e.file.name;
|
|
@@ -22892,7 +23005,7 @@ class PasteCleanup {
|
|
|
22892
23005
|
});
|
|
22893
23006
|
popupObj.close();
|
|
22894
23007
|
imgElem.style.opacity = '1';
|
|
22895
|
-
if (
|
|
23008
|
+
if (uploadObj && document.body.contains(uploadObj.element)) {
|
|
22896
23009
|
uploadObj.destroy();
|
|
22897
23010
|
}
|
|
22898
23011
|
this.toolbarEnableDisable(false);
|
|
@@ -23190,6 +23303,7 @@ class PasteCleanup {
|
|
|
23190
23303
|
extend(args, { elements: returnArgs.elements, imageElements: returnArgs.imgElem }, true);
|
|
23191
23304
|
this.parent.formatter.onSuccess(this.parent, args);
|
|
23192
23305
|
}, clipBoardElem, null, null, this.parent.enterKey);
|
|
23306
|
+
scrollToCursor(this.parent.contentModule.getDocument(), this.parent.inputElement);
|
|
23193
23307
|
this.removeTempClass();
|
|
23194
23308
|
this.parent.notify(toolbarRefresh, {});
|
|
23195
23309
|
this.cropImageHandler(this.parent.inputElement);
|
|
@@ -23240,15 +23354,15 @@ class PasteCleanup {
|
|
|
23240
23354
|
}
|
|
23241
23355
|
}
|
|
23242
23356
|
addTableClass(element, source) {
|
|
23243
|
-
source = isNullOrUndefined(source) ? '' : source;
|
|
23244
23357
|
const tableElement = element.querySelectorAll('table');
|
|
23245
23358
|
for (let i = 0; i < tableElement.length; i++) {
|
|
23246
|
-
|
|
23247
|
-
|
|
23248
|
-
}
|
|
23249
|
-
else if (source && source !== 'html') {
|
|
23359
|
+
const isMSTeamsTable = tableElement[i].parentElement.nodeName === 'FIGURE';
|
|
23360
|
+
if (this.parent.pasteCleanupSettings.keepFormat && source && !isMSTeamsTable) {
|
|
23250
23361
|
tableElement[i].classList.add('e-rte-paste-' + source + '-table');
|
|
23251
23362
|
}
|
|
23363
|
+
else if (!tableElement[i].classList.contains('e-rte-table')) {
|
|
23364
|
+
tableElement[i].classList.add('e-rte-table');
|
|
23365
|
+
}
|
|
23252
23366
|
}
|
|
23253
23367
|
return element;
|
|
23254
23368
|
}
|
|
@@ -25142,7 +25256,7 @@ class EmojiPicker {
|
|
|
25142
25256
|
const popupHeight = 330;
|
|
25143
25257
|
let popupTop = cursorTop;
|
|
25144
25258
|
const popupLeft = cursorLeft + rect.width;
|
|
25145
|
-
if (rteEle.getBoundingClientRect().top < 0) {
|
|
25259
|
+
if (rteEle.getBoundingClientRect().top < 0 && !this.parent.inlineMode.enable) {
|
|
25146
25260
|
popupTop = popupTop + rteContent.getBoundingClientRect().top - toolbarHeight;
|
|
25147
25261
|
}
|
|
25148
25262
|
if (rect.top < popupHeight) {
|
|
@@ -25809,7 +25923,10 @@ class Link {
|
|
|
25809
25923
|
this.selection.restore();
|
|
25810
25924
|
}
|
|
25811
25925
|
else {
|
|
25926
|
+
const x = window.scrollX;
|
|
25927
|
+
const y = window.scrollY;
|
|
25812
25928
|
this.selfLink.parent.contentModule.getEditPanel().focus();
|
|
25929
|
+
window.scrollTo(x, y);
|
|
25813
25930
|
}
|
|
25814
25931
|
}
|
|
25815
25932
|
onDocumentClick(e) {
|
|
@@ -27634,7 +27751,7 @@ class Image$1 {
|
|
|
27634
27751
|
}
|
|
27635
27752
|
},
|
|
27636
27753
|
success: (e) => {
|
|
27637
|
-
e.
|
|
27754
|
+
e.detectImageSource = ImageInputSource.Uploaded;
|
|
27638
27755
|
this.parent.trigger(imageUploadSuccess, e, (e) => {
|
|
27639
27756
|
if (!isNullOrUndefined(this.parent.insertImageSettings.path)) {
|
|
27640
27757
|
const url = this.parent.insertImageSettings.path + e.file.name;
|
|
@@ -28074,7 +28191,7 @@ class Image$1 {
|
|
|
28074
28191
|
imageElement.style.opacity = '1';
|
|
28075
28192
|
imageElement.classList.add(CLS_IMG_FOCUS);
|
|
28076
28193
|
e.element = imageElement;
|
|
28077
|
-
e.
|
|
28194
|
+
e.detectImageSource = ImageInputSource.Dropped;
|
|
28078
28195
|
this.parent.trigger(imageUploadSuccess, e, (e) => {
|
|
28079
28196
|
if (!isNullOrUndefined(this.parent.insertImageSettings.path)) {
|
|
28080
28197
|
const url = this.parent.insertImageSettings.path + e.file.name;
|
|
@@ -31341,8 +31458,11 @@ class Table {
|
|
|
31341
31458
|
if (proxy.editdlgObj) {
|
|
31342
31459
|
proxy.editdlgObj.hide();
|
|
31343
31460
|
}
|
|
31461
|
+
const x = window.scrollX;
|
|
31462
|
+
const y = window.scrollY;
|
|
31344
31463
|
proxy.parent.formatter.process(proxy.parent, selectionObj.args, selectionObj.args.originalEvent, value);
|
|
31345
31464
|
proxy.contentModule.getEditPanel().focus();
|
|
31465
|
+
window.scrollTo(x, y);
|
|
31346
31466
|
proxy.parent.on(mouseDown, proxy.cellSelect, proxy);
|
|
31347
31467
|
}
|
|
31348
31468
|
cellSelect(e) {
|
|
@@ -33575,6 +33695,7 @@ class EnterKeyAction {
|
|
|
33575
33695
|
else {
|
|
33576
33696
|
currentParent = this.startNode;
|
|
33577
33697
|
}
|
|
33698
|
+
const currentParentStyle = window.getComputedStyle(currentParent);
|
|
33578
33699
|
this.removeBRElement(currentParent);
|
|
33579
33700
|
let currentParentLastChild = currentParent.lastChild;
|
|
33580
33701
|
while (!isNullOrUndefined(currentParentLastChild) && !(currentParentLastChild.nodeName === '#text' || currentParentLastChild.nodeName === 'BR'
|
|
@@ -33638,6 +33759,14 @@ class EnterKeyAction {
|
|
|
33638
33759
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
33639
33760
|
|
|
33640
33761
|
}
|
|
33762
|
+
else if (currentParent !== this.parent.inputElement &&
|
|
33763
|
+
(currentParentStyle.display === 'inline' || currentParentStyle.display === 'inline-block')) {
|
|
33764
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
33765
|
+
newElem = this.parent.formatter.editorManager.nodeCutter.SplitNode(this.range, currentParent, true).cloneNode(true);
|
|
33766
|
+
currentParent.parentElement.insertBefore(outerBRElem, currentParent);
|
|
33767
|
+
this.parent.formatter.editorManager.nodeSelection.setCursorPoint(this.parent.contentModule.getDocument(), currentParent, 0);
|
|
33768
|
+
this.insertFocusContent();
|
|
33769
|
+
}
|
|
33641
33770
|
else {
|
|
33642
33771
|
this.insertBRElement();
|
|
33643
33772
|
}
|
|
@@ -34771,6 +34900,13 @@ let RichTextEditor = class RichTextEditor extends Component {
|
|
|
34771
34900
|
clearInterval(this.timeInterval);
|
|
34772
34901
|
this.timeInterval = null;
|
|
34773
34902
|
}
|
|
34903
|
+
const tooltipElements = document.querySelectorAll('[data-rte-id="' + this.getID() + '"]');
|
|
34904
|
+
for (let i = 0; i < tooltipElements.length; i++) {
|
|
34905
|
+
const tooltipEle = tooltipElements[i];
|
|
34906
|
+
if (this.getID() === tooltipEle.getAttribute('data-rte-id')) {
|
|
34907
|
+
detach(tooltipEle);
|
|
34908
|
+
}
|
|
34909
|
+
}
|
|
34774
34910
|
if (this.element.offsetParent === null) {
|
|
34775
34911
|
if (!isNullOrUndefined(this.toolbarModule)) {
|
|
34776
34912
|
this.toolbarModule.destroy();
|
|
@@ -36622,5 +36758,5 @@ RichTextEditor = __decorate$1([
|
|
|
36622
36758
|
* Rich Text Editor component exported items
|
|
36623
36759
|
*/
|
|
36624
36760
|
|
|
36625
|
-
export { Toolbar$2 as Toolbar, KeyboardEvents$1 as KeyboardEvents, BaseToolbar, BaseQuickToolbar, QuickToolbar, Count, ColorPickerInput, MarkdownToolbarStatus, ExecCommandCallBack, ToolbarAction, MarkdownEditor, HtmlEditor, PasteCleanup, Resize, DropDownButtons, FileManager$1 as FileManager, FullScreen, setAttributes, HtmlToolbarStatus, XhtmlValidation, FormatPainter, EmojiPicker, HTMLFormatter, Formatter, MarkdownFormatter, ContentRender, Render, ToolbarRenderer, Link, Image$1 as Image, Audio, Video, ViewSource, Table, DialogRenderer, IframeContentRender, MarkdownRender, PopupRenderer, RichTextEditor, RenderType, ToolbarType, DialogType,
|
|
36761
|
+
export { Toolbar$2 as Toolbar, KeyboardEvents$1 as KeyboardEvents, BaseToolbar, BaseQuickToolbar, QuickToolbar, Count, ColorPickerInput, MarkdownToolbarStatus, ExecCommandCallBack, ToolbarAction, MarkdownEditor, HtmlEditor, PasteCleanup, Resize, DropDownButtons, FileManager$1 as FileManager, FullScreen, setAttributes, HtmlToolbarStatus, XhtmlValidation, FormatPainter, EmojiPicker, HTMLFormatter, Formatter, MarkdownFormatter, ContentRender, Render, ToolbarRenderer, Link, Image$1 as Image, Audio, Video, ViewSource, Table, DialogRenderer, IframeContentRender, MarkdownRender, PopupRenderer, RichTextEditor, RenderType, ToolbarType, DialogType, ImageInputSource, executeGroup, created, destroyed, tableclass, load, initialLoad, contentChanged, initialEnd, iframeMouseDown, destroy, toolbarClick, toolbarRefresh, refreshBegin, toolbarUpdated, bindOnEnd, renderColorPicker, htmlToolbarClick, markdownToolbarClick, destroyColorPicker, modelChanged, tableModulekeyUp, keyUp, keyDown, mouseUp, toolbarCreated, toolbarRenderComplete, enableFullScreen, disableFullScreen, dropDownSelect, beforeDropDownItemRender, execCommandCallBack, imageToolbarAction, audioToolbarAction, videoToolbarAction, linkToolbarAction, windowResize, resizeStart, onResize, resizeStop, undo, redo, insertLink, unLink, editLink, openLink, actionBegin, actionComplete, updatedToolbarStatus, actionSuccess, updateToolbarItem, insertImage, insertAudio, insertVideo, insertCompleted, imageLeft, imageRight, imageCenter, imageBreak, imageInline, imageLink, imageAlt, imageDelete, audioDelete, videoDelete, imageCaption, imageSize, videoSize, sourceCode, updateSource, toolbarOpen, beforeDropDownOpen, selectionSave, selectionRestore, expandPopupClick, count, contentFocus, contentBlur, mouseDown, sourceCodeMouseDown, editAreaClick, scroll, contentscroll, colorPickerChanged, tableColorPickerChanged, focusChange, selectAll$1 as selectAll, selectRange, getSelectedHtml, renderInlineToolbar, paste, imgModule, rtlMode, createTable, docClick, tableToolbarAction, checkUndo, readOnlyMode, moduleDestroy, pasteClean, enterHandler, beforeDialogOpen, clearDialogObj, dialogOpen, beforeDialogClose, dialogClose, beforeQuickToolbarOpen, quickToolbarOpen, quickToolbarClose, popupHide, imageSelected, imageUploading, imageUploadSuccess, imageUploadFailed, imageRemoving, fileSelected, fileUploading, fileUploadSuccess, fileUploadFailed, fileRemoving, afterImageDelete, afterMediaDelete, drop, xhtmlValidation, beforeImageUpload, beforeFileUpload, resizeInitialized, renderFileManager, beforeImageDrop, dynamicModule, beforePasteCleanup, afterPasteCleanup, updateTbItemsStatus, showLinkDialog, closeLinkDialog, showImageDialog, showAudioDialog, showVideoDialog, closeImageDialog, closeAudioDialog, closeVideoDialog, showTableDialog, closeTableDialog, bindCssClass, formatPainterClick, formatPainterDoubleClick, emojiPicker, destroyTooltip, hidePopup, cleanupResizeElements, afterKeyDown, updateValueOnIdle, documentClickClosedBy, showColorPicker, closeTooltip, blockEmptyNodes, inlineEmptyNodes, supportedUnits, conversionFactors, onHandleFontsizeChange, CLS_RTE, CLS_RTL, CLS_CONTENT, CLS_DISABLED, CLS_SCRIPT_SHEET, CLS_STYLE_SHEET, CLS_TOOLBAR, CLS_TB_FIXED, CLS_TB_FLOAT, CLS_INLINE, CLS_TB_INLINE, CLS_RTE_EXPAND_TB, CLS_FULL_SCREEN, CLS_QUICK_TB, CLS_TEXT_QUICK_TB, CLS_POP, CLS_TB_STATIC, CLS_QUICK_POP, CLS_QUICK_DROPDOWN, CLS_IMAGE_POP, CLS_TEXT_POP, CLS_INLINE_POP, CLS_INLINE_DROPDOWN, CLS_DROPDOWN_POPUP, CLS_DROPDOWN_ICONS, CLS_DROPDOWN_ITEMS, CLS_DROPDOWN_BTN, CLS_RTE_CONTENT, CLS_TB_ITEM, CLS_TB_EXTENDED, CLS_TB_WRAP, CLS_POPUP, CLS_SEPARATOR, CLS_MINIMIZE, CLS_MAXIMIZE, CLS_BACK, CLS_SHOW, CLS_HIDE, CLS_VISIBLE, CLS_FOCUS, CLS_RM_WHITE_SPACE, CLS_IMGRIGHT, CLS_IMGLEFT, CLS_IMGCENTER, CLS_IMGBREAK, CLS_AUDIOBREAK, CLS_CLICKELEM, CLS_VID_CLICK_ELEM, CLS_AUDIOWRAP, CLS_VIDEOWRAP, CLS_VIDEOBREAK, CLS_CAPTION, CLS_RTE_CAPTION, CLS_CAPINLINE, CLS_IMGINLINE, CLS_AUDIOINLINE, CLS_VIDEOINLINE, CLS_COUNT, CLS_WARNING, CLS_ERROR, CLS_ICONS, CLS_ACTIVE, CLS_EXPAND_OPEN, CLS_RTE_ELEMENTS, CLS_TB_BTN, CLS_HR_SEPARATOR, CLS_TB_IOS_FIX, CLS_LIST_PRIMARY_CONTENT, CLS_NUMBERFORMATLIST_TB_BTN, CLS_BULLETFORMATLIST_TB_BTN, CLS_FORMATS_TB_BTN, CLS_FONT_NAME_TB_BTN, CLS_FONT_SIZE_TB_BTN, CLS_ALIGN_TB_BTN, CLS_FONT_COLOR_TARGET, CLS_BACKGROUND_COLOR_TARGET, CLS_COLOR_CONTENT, CLS_FONT_COLOR_DROPDOWN, CLS_BACKGROUND_COLOR_DROPDOWN, CLS_COLOR_PALETTE, CLS_FONT_COLOR_PICKER, CLS_BACKGROUND_COLOR_PICKER, CLS_RTE_READONLY, CLS_TABLE_SEL, CLS_TB_DASH_BOR, CLS_TB_ALT_BOR, CLS_TB_COL_RES, CLS_TB_ROW_RES, CLS_TB_BOX_RES, CLS_RTE_HIDDEN, CLS_RTE_PASTE_KEEP_FORMAT, CLS_RTE_PASTE_REMOVE_FORMAT, CLS_RTE_PASTE_PLAIN_FORMAT, CLS_RTE_PASTE_OK, CLS_RTE_PASTE_CANCEL, CLS_RTE_DIALOG_MIN_HEIGHT, CLS_RTE_RES_HANDLE, CLS_RTE_RES_EAST, CLS_RTE_IMAGE, CLS_RESIZE, CLS_IMG_FOCUS, CLS_AUD_FOCUS, CLS_VID_FOCUS, CLS_RTE_DRAG_IMAGE, CLS_RTE_UPLOAD_POPUP, CLS_POPUP_OPEN, CLS_IMG_RESIZE, CLS_DROPAREA, CLS_IMG_INNER, CLS_UPLOAD_FILES, CLS_RTE_DIALOG_UPLOAD, CLS_RTE_RES_CNT, CLS_CUSTOM_TILE, CLS_NOCOLOR_ITEM, CLS_TABLE, CLS_TABLE_BORDER, CLS_RTE_TABLE_RESIZE, CLS_RTE_FIXED_TB_EXPAND, CLS_RTE_TB_ENABLED, CLS_RTE_RES_WEST, CLS_RTE_SOURCE_CODE_TXTAREA, getIndex, hasClass, getDropDownValue, isIDevice, getFormattedFontSize, pageYOffset, getTooltipText, setToolbarStatus, getCollection, getTBarItemsIndex, updateUndoRedoStatus, dispatchEvent, parseHtml, getTextNodesUnder, toObjectLowerCase, getEditValue, updateTextNode, getDefaultValue, isEditableValueEmpty, decode, sanitizeHelper, convertToBlob, getLocaleFontFormat, updateDropDownFontFormatLocale, ServiceLocator, RendererFactory, EditorManager, IMAGE, AUDIO, VIDEO, TABLE, LINK, INSERT_ROW, INSERT_COLUMN, DELETEROW, DELETECOLUMN, REMOVETABLE, TABLEHEADER, TABLE_VERTICAL_ALIGN, TABLE_MERGE, TABLE_VERTICAL_SPLIT, TABLE_HORIZONTAL_SPLIT, TABLE_MOVE, ALIGNMENT_TYPE, INDENT_TYPE, DEFAULT_TAG, BLOCK_TAGS, IGNORE_BLOCK_TAGS, TABLE_BLOCK_TAGS, SELECTION_TYPE, INSERTHTML_TYPE, INSERT_TEXT_TYPE, CLEAR_TYPE, SELF_CLOSING_TAGS, PASTE_SOURCE, CLASS_IMAGE_RIGHT, CLASS_IMAGE_LEFT, CLASS_IMAGE_CENTER, CLASS_VIDEO_RIGHT, CLASS_VIDEO_LEFT, CLASS_VIDEO_CENTER, CLASS_IMAGE_BREAK, CLASS_AUDIO_BREAK, CLASS_VIDEO_BREAK, CLASS_CAPTION, CLASS_RTE_CAPTION, CLASS_CAPTION_INLINE, CLASS_IMAGE_INLINE, CLASS_AUDIO_INLINE, CLASS_CLICK_ELEM, CLASS_VIDEO_CLICK_ELEM, CLASS_AUDIO, CLASS_VIDEO, CLASS_AUDIO_WRAP, CLASS_VIDEO_WRAP, CLASS_EMBED_VIDEO_WRAP, CLASS_AUDIO_FOCUS, CLASS_VIDEO_FOCUS, CLASS_VIDEO_INLINE, Lists, markerClassName, DOMNode, Alignments, Indents, Formats, LinkCommand, InsertMethods, InsertTextExec, InsertHtmlExec, InsertHtml, IsFormatted, MsWordPaste, NodeCutter, ImageCommand, AudioCommand, VideoCommand, SelectionCommands, SelectionBasedExec, ClearFormatExec, UndoRedoManager, TableCommand, statusCollection, ToolbarStatus, FormatPainterActions, EmojiPickerAction, NodeSelection, MarkdownParser, LISTS_COMMAND, selectionCommand, LINK_COMMAND, CLEAR_COMMAND, MD_TABLE, INSERT_TEXT_COMMAND, ClearFormat, MDLists, MDFormats, MarkdownSelection, UndoRedoCommands, MDSelectionFormats, MDLink, MDTable, markdownFormatTags, markdownSelectionTags, markdownListsTags, htmlKeyConfig, markdownKeyConfig, pasteCleanupGroupingTags, listConversionFilters, selfClosingTags, imageResizeFactor, KEY_DOWN, ACTION, FORMAT_TYPE, KEY_DOWN_HANDLER, LIST_TYPE, KEY_UP_HANDLER, KEY_UP, MODEL_CHANGED_PLUGIN, MODEL_CHANGED, MS_WORD_CLEANUP_PLUGIN, MS_WORD_CLEANUP, ON_BEGIN, SPACE_ACTION, FORMAT_PAINTER_ACTIONS, EMOJI_PICKER_ACTIONS, MOUSE_DOWN };
|
|
36626
36762
|
//# sourceMappingURL=ej2-richtexteditor.es2015.js.map
|