@syncfusion/ej2-richtexteditor 20.4.44 → 20.4.48

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 (63) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/ej2-richtexteditor.min.js +2 -2
  3. package/dist/ej2-richtexteditor.umd.min.js +2 -2
  4. package/dist/ej2-richtexteditor.umd.min.js.map +1 -1
  5. package/dist/es6/ej2-richtexteditor.es2015.js +18 -16
  6. package/dist/es6/ej2-richtexteditor.es2015.js.map +1 -1
  7. package/dist/es6/ej2-richtexteditor.es5.js +18 -16
  8. package/dist/es6/ej2-richtexteditor.es5.js.map +1 -1
  9. package/dist/global/ej2-richtexteditor.min.js +2 -2
  10. package/dist/global/ej2-richtexteditor.min.js.map +1 -1
  11. package/dist/global/index.d.ts +1 -1
  12. package/package.json +12 -12
  13. package/src/editor-manager/plugin/inserthtml.js +1 -1
  14. package/src/editor-manager/plugin/selection-commands.js +13 -13
  15. package/src/rich-text-editor/base/rich-text-editor-model.d.ts +1 -1
  16. package/src/rich-text-editor/base/rich-text-editor.d.ts +1 -1
  17. package/src/rich-text-editor/models/items.js +1 -1
  18. package/src/rich-text-editor/renderer/toolbar-renderer.js +3 -1
  19. package/styles/bootstrap-dark.css +18 -18
  20. package/styles/bootstrap.css +18 -18
  21. package/styles/bootstrap4.css +18 -18
  22. package/styles/bootstrap5-dark.css +18 -18
  23. package/styles/bootstrap5.css +18 -18
  24. package/styles/fabric-dark.css +18 -18
  25. package/styles/fabric.css +18 -18
  26. package/styles/fluent-dark.css +18 -18
  27. package/styles/fluent.css +18 -18
  28. package/styles/highcontrast-light.css +18 -18
  29. package/styles/highcontrast.css +18 -18
  30. package/styles/material-dark.css +18 -18
  31. package/styles/material.css +18 -18
  32. package/styles/rich-text-editor/_layout.scss +3 -3
  33. package/styles/rich-text-editor/bootstrap-dark.css +18 -18
  34. package/styles/rich-text-editor/bootstrap.css +18 -18
  35. package/styles/rich-text-editor/bootstrap4.css +18 -18
  36. package/styles/rich-text-editor/bootstrap5-dark.css +18 -18
  37. package/styles/rich-text-editor/bootstrap5.css +18 -18
  38. package/styles/rich-text-editor/fabric-dark.css +18 -18
  39. package/styles/rich-text-editor/fabric.css +18 -18
  40. package/styles/rich-text-editor/fluent-dark.css +18 -18
  41. package/styles/rich-text-editor/fluent.css +18 -18
  42. package/styles/rich-text-editor/highcontrast-light.css +18 -18
  43. package/styles/rich-text-editor/highcontrast.css +18 -18
  44. package/styles/rich-text-editor/icons/_bootstrap-dark.scss +1 -1
  45. package/styles/rich-text-editor/icons/_bootstrap.scss +1 -1
  46. package/styles/rich-text-editor/icons/_bootstrap4.scss +1 -1
  47. package/styles/rich-text-editor/icons/_bootstrap5.scss +1 -1
  48. package/styles/rich-text-editor/icons/_fabric-dark.scss +1 -1
  49. package/styles/rich-text-editor/icons/_fabric.scss +1 -1
  50. package/styles/rich-text-editor/icons/_fluent.scss +1 -1
  51. package/styles/rich-text-editor/icons/_fusionnew.scss +1 -1
  52. package/styles/rich-text-editor/icons/_highcontrast-light.scss +1 -1
  53. package/styles/rich-text-editor/icons/_highcontrast.scss +1 -1
  54. package/styles/rich-text-editor/icons/_material-dark.scss +1 -1
  55. package/styles/rich-text-editor/icons/_material.scss +1 -1
  56. package/styles/rich-text-editor/icons/_material3.scss +1 -1
  57. package/styles/rich-text-editor/icons/_tailwind.scss +1 -1
  58. package/styles/rich-text-editor/material-dark.css +18 -18
  59. package/styles/rich-text-editor/material.css +18 -18
  60. package/styles/rich-text-editor/tailwind-dark.css +18 -18
  61. package/styles/rich-text-editor/tailwind.css +18 -18
  62. package/styles/tailwind-dark.css +18 -18
  63. package/styles/tailwind.css +18 -18
@@ -1457,7 +1457,7 @@ let tools = {
1457
1457
  },
1458
1458
  'fontcolor': {
1459
1459
  'id': 'FontColor',
1460
- 'icon': 'e-font-color',
1460
+ 'icon': 'e-rte-font-color',
1461
1461
  'tooltip': 'Font Color',
1462
1462
  'command': 'Font',
1463
1463
  'subCommand': 'FontColor',
@@ -3330,6 +3330,8 @@ class ToolbarRenderer {
3330
3330
  target: colorPicker.element.parentElement, cssClass: css,
3331
3331
  enablePersistence: this.parent.enablePersistence, enableRtl: this.parent.enableRtl,
3332
3332
  beforeOpen: (dropDownArgs) => {
3333
+ colorPicker.inline = true;
3334
+ colorPicker.dataBind();
3333
3335
  if (proxy.parent.readonly || !proxy.parent.enabled) {
3334
3336
  dropDownArgs.cancel = true;
3335
3337
  return;
@@ -3496,7 +3498,7 @@ class ToolbarRenderer {
3496
3498
  const colorPicker = new ColorPicker({
3497
3499
  enablePersistence: this.parent.enablePersistence,
3498
3500
  enableRtl: this.parent.enableRtl,
3499
- inline: true,
3501
+ inline: false,
3500
3502
  value: '#fff',
3501
3503
  created: () => {
3502
3504
  const value = (item === 'backgroundcolor') ? proxy.parent.backgroundColor.default : proxy.parent.fontColor.default;
@@ -13007,7 +13009,7 @@ class InsertHtml {
13007
13009
  detach(currentNode.nextSibling);
13008
13010
  }
13009
13011
  }
13010
- else if (currentNode.nodeName === '#text' && !isNullOrUndefined(currentNode.parentElement) &&
13012
+ else if ((currentNode.nodeName === '#text' || currentNode.nodeName === "BR") && !isNullOrUndefined(currentNode.parentElement) &&
13011
13013
  (currentNode.parentElement.nodeName === 'LI' || (blockNode === editNode && currentNode.parentElement === blockNode)) &&
13012
13014
  currentNode.parentElement.textContent.trim().length > 0) {
13013
13015
  splitedElm = currentNode;
@@ -15627,7 +15629,7 @@ class SelectionCommands {
15627
15629
  isSubSup = formatNode === null ? false : true;
15628
15630
  }
15629
15631
  }
15630
- else if ((format === 'fontsize' || format === 'fontname' || format === 'fontcolor') && range.startContainer.parentElement === endNode) {
15632
+ else if ((format === 'fontsize' || format === 'fontname' || format === 'fontcolor' || format === 'backgroundcolor') && range.startContainer.parentElement === endNode) {
15631
15633
  formatNode = null;
15632
15634
  }
15633
15635
  if (index === 0 && formatNode === null) {
@@ -15893,21 +15895,21 @@ class SelectionCommands {
15893
15895
  return nodes[index];
15894
15896
  }
15895
15897
  static insertFormat(docElement, nodes, index, formatNode, isCursor, isFormat, isFontStyle, range, nodeCutter, format, value, domNode, endNode) {
15896
- let rootBlockNode;
15898
+ let rootElementNode;
15897
15899
  if (!isCursor) {
15898
15900
  if ((formatNode === null && isFormat) || isFontStyle) {
15899
15901
  if (nodes[index].nodeName !== 'BR') {
15900
- if (format === 'fontsize' || format === 'fontname' || format === 'fontcolor') {
15902
+ if (format === 'fontsize' || format === 'fontname' || format === 'fontcolor' || format === 'backgroundcolor') {
15901
15903
  let rangeNode = nodes[index];
15902
15904
  while (rangeNode && !domNode.isBlockNode(rangeNode) && rangeNode !== endNode) {
15903
15905
  if (domNode.isBlockNode(rangeNode.parentElement)) {
15904
- rootBlockNode = rangeNode;
15906
+ rootElementNode = rangeNode;
15905
15907
  }
15906
15908
  rangeNode = rangeNode.parentElement;
15907
15909
  }
15908
- if (rootBlockNode && rootBlockNode.nodeType !== 3) {
15909
- nodeCutter.SplitNode(range, rootBlockNode, true).cloneNode(true);
15910
- nodeCutter.SplitNode(range, rootBlockNode, false).cloneNode(false);
15910
+ if (rootElementNode && rootElementNode.nodeType !== 3) {
15911
+ nodeCutter.SplitNode(range, rootElementNode, true).cloneNode(true);
15912
+ nodeCutter.SplitNode(range, rootElementNode, false).cloneNode(false);
15911
15913
  }
15912
15914
  }
15913
15915
  nodes[index] = nodeCutter.GetSpliceNode(range, nodes[index]);
@@ -15919,11 +15921,11 @@ class SelectionCommands {
15919
15921
  }
15920
15922
  else if (!(isFontStyle === true && value === '')) {
15921
15923
  const element = this.GetFormatNode(format, value);
15922
- if (format === 'fontsize' || format === 'fontcolor' || format === 'fontname') {
15923
- if (format !== 'fontname') {
15924
+ if (format === 'fontsize' || format === 'fontcolor' || format === 'fontname' || format === 'backgroundcolor') {
15925
+ if (format !== 'fontname' && format !== 'backgroundcolor') {
15924
15926
  let liElement = nodes[index].parentElement;
15925
15927
  let parentElement = nodes[index].parentElement;
15926
- while (!isNullOrUndefined(parentElement) && parentElement.tagName.toLowerCase() !== 'li') {
15928
+ while (!isNullOrUndefined(parentElement) && parentElement.tagName.toLowerCase() !== 'li' && parentElement !== endNode) {
15927
15929
  parentElement = parentElement.parentElement;
15928
15930
  liElement = parentElement;
15929
15931
  }
@@ -15938,13 +15940,13 @@ class SelectionCommands {
15938
15940
  }
15939
15941
  }
15940
15942
  }
15941
- if (rootBlockNode && rootBlockNode.nodeType !== 3) {
15943
+ if (rootElementNode && rootElementNode.nodeType !== 3) {
15942
15944
  const save = new NodeSelection();
15943
15945
  save.save(range, docElement);
15944
15946
  domNode.setMarker(save);
15945
- var cloneNode = rootBlockNode.cloneNode(true);
15947
+ var cloneNode = rootElementNode.cloneNode(true);
15946
15948
  element.appendChild(cloneNode);
15947
- domNode.replaceWith(rootBlockNode, element.outerHTML);
15949
+ domNode.replaceWith(rootElementNode, element.outerHTML);
15948
15950
  const currentStartNode = endNode.querySelector('.e-editor-select-start');
15949
15951
  const currrentEndNode = endNode.querySelector('.e-editor-select-end');
15950
15952
  if (index === 0) {