@syncfusion/ej2-richtexteditor 29.2.4-738301 → 29.2.4-760237

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 (365) hide show
  1. package/.eslintrc.json +262 -260
  2. package/aceconfig.js +17 -0
  3. package/blazorGlobalSrc/common/config.d.ts +63 -0
  4. package/blazorGlobalSrc/common/config.js +123 -0
  5. package/blazorGlobalSrc/common/constant.d.ts +117 -0
  6. package/blazorGlobalSrc/common/constant.js +23 -0
  7. package/blazorGlobalSrc/common/editor-styles.d.ts +1 -0
  8. package/blazorGlobalSrc/common/editor-styles.js +5 -0
  9. package/blazorGlobalSrc/common/index.d.ts +7 -0
  10. package/blazorGlobalSrc/common/index.js +9 -0
  11. package/blazorGlobalSrc/common/interface.d.ts +119 -0
  12. package/blazorGlobalSrc/common/interface.js +4 -0
  13. package/blazorGlobalSrc/common/types.d.ts +25 -0
  14. package/blazorGlobalSrc/common/types.js +4 -0
  15. package/blazorGlobalSrc/common/user-agent.d.ts +41 -0
  16. package/blazorGlobalSrc/common/user-agent.js +71 -0
  17. package/blazorGlobalSrc/common/util.d.ts +70 -0
  18. package/blazorGlobalSrc/common/util.js +222 -0
  19. package/blazorGlobalSrc/components.d.ts +8 -0
  20. package/blazorGlobalSrc/components.js +12 -0
  21. package/blazorGlobalSrc/editor-manager/base/classes.d.ts +31 -0
  22. package/blazorGlobalSrc/editor-manager/base/classes.js +28 -0
  23. package/blazorGlobalSrc/editor-manager/base/constant.d.ts +97 -0
  24. package/blazorGlobalSrc/editor-manager/base/constant.js +41 -0
  25. package/blazorGlobalSrc/editor-manager/base/editor-manager.d.ts +95 -0
  26. package/blazorGlobalSrc/editor-manager/base/editor-manager.js +339 -0
  27. package/blazorGlobalSrc/editor-manager/base/enum.d.ts +17 -0
  28. package/blazorGlobalSrc/editor-manager/base/enum.js +4 -0
  29. package/blazorGlobalSrc/editor-manager/base/interface.d.ts +263 -0
  30. package/blazorGlobalSrc/editor-manager/base/interface.js +4 -0
  31. package/blazorGlobalSrc/editor-manager/base/types.d.ts +7 -0
  32. package/blazorGlobalSrc/editor-manager/base/types.js +4 -0
  33. package/blazorGlobalSrc/editor-manager/base.d.ts +8 -0
  34. package/blazorGlobalSrc/editor-manager/base.js +10 -0
  35. package/blazorGlobalSrc/editor-manager/index.d.ts +5 -0
  36. package/blazorGlobalSrc/editor-manager/index.js +9 -0
  37. package/blazorGlobalSrc/editor-manager/plugin/alignments.d.ts +26 -0
  38. package/blazorGlobalSrc/editor-manager/plugin/alignments.js +105 -0
  39. package/blazorGlobalSrc/editor-manager/plugin/audio.d.ts +34 -0
  40. package/blazorGlobalSrc/editor-manager/plugin/audio.js +145 -0
  41. package/blazorGlobalSrc/editor-manager/plugin/clearformat-exec.d.ts +24 -0
  42. package/blazorGlobalSrc/editor-manager/plugin/clearformat-exec.js +47 -0
  43. package/blazorGlobalSrc/editor-manager/plugin/clearformat.d.ts +29 -0
  44. package/blazorGlobalSrc/editor-manager/plugin/clearformat.js +249 -0
  45. package/blazorGlobalSrc/editor-manager/plugin/dom-node.d.ts +351 -0
  46. package/blazorGlobalSrc/editor-manager/plugin/dom-node.js +737 -0
  47. package/blazorGlobalSrc/editor-manager/plugin/dom-tree.d.ts +84 -0
  48. package/blazorGlobalSrc/editor-manager/plugin/dom-tree.js +164 -0
  49. package/blazorGlobalSrc/editor-manager/plugin/emoji-picker-action.d.ts +10 -0
  50. package/blazorGlobalSrc/editor-manager/plugin/emoji-picker-action.js +86 -0
  51. package/blazorGlobalSrc/editor-manager/plugin/format-painter-actions.d.ts +47 -0
  52. package/blazorGlobalSrc/editor-manager/plugin/format-painter-actions.js +622 -0
  53. package/blazorGlobalSrc/editor-manager/plugin/formats.d.ts +43 -0
  54. package/blazorGlobalSrc/editor-manager/plugin/formats.js +597 -0
  55. package/blazorGlobalSrc/editor-manager/plugin/image.d.ts +48 -0
  56. package/blazorGlobalSrc/editor-manager/plugin/image.js +399 -0
  57. package/blazorGlobalSrc/editor-manager/plugin/indents.d.ts +24 -0
  58. package/blazorGlobalSrc/editor-manager/plugin/indents.js +106 -0
  59. package/blazorGlobalSrc/editor-manager/plugin/insert-methods.d.ts +48 -0
  60. package/blazorGlobalSrc/editor-manager/plugin/insert-methods.js +37 -0
  61. package/blazorGlobalSrc/editor-manager/plugin/insert-text.d.ts +22 -0
  62. package/blazorGlobalSrc/editor-manager/plugin/insert-text.js +36 -0
  63. package/blazorGlobalSrc/editor-manager/plugin/inserthtml-exec.d.ts +22 -0
  64. package/blazorGlobalSrc/editor-manager/plugin/inserthtml-exec.js +49 -0
  65. package/blazorGlobalSrc/editor-manager/plugin/inserthtml.d.ts +51 -0
  66. package/blazorGlobalSrc/editor-manager/plugin/inserthtml.js +985 -0
  67. package/blazorGlobalSrc/editor-manager/plugin/isformatted.d.ts +89 -0
  68. package/blazorGlobalSrc/editor-manager/plugin/isformatted.js +199 -0
  69. package/blazorGlobalSrc/editor-manager/plugin/link.d.ts +41 -0
  70. package/blazorGlobalSrc/editor-manager/plugin/link.js +550 -0
  71. package/blazorGlobalSrc/editor-manager/plugin/lists.d.ts +74 -0
  72. package/blazorGlobalSrc/editor-manager/plugin/lists.js +1503 -0
  73. package/blazorGlobalSrc/editor-manager/plugin/ms-word-clean-up.d.ts +61 -0
  74. package/blazorGlobalSrc/editor-manager/plugin/ms-word-clean-up.js +1136 -0
  75. package/blazorGlobalSrc/editor-manager/plugin/nodecutter.d.ts +64 -0
  76. package/blazorGlobalSrc/editor-manager/plugin/nodecutter.js +167 -0
  77. package/blazorGlobalSrc/editor-manager/plugin/selection-commands.d.ts +41 -0
  78. package/blazorGlobalSrc/editor-manager/plugin/selection-commands.js +1069 -0
  79. package/blazorGlobalSrc/editor-manager/plugin/selection-exec.d.ts +24 -0
  80. package/blazorGlobalSrc/editor-manager/plugin/selection-exec.js +49 -0
  81. package/blazorGlobalSrc/editor-manager/plugin/table-selection.d.ts +26 -0
  82. package/blazorGlobalSrc/editor-manager/plugin/table-selection.js +210 -0
  83. package/blazorGlobalSrc/editor-manager/plugin/table.d.ts +56 -0
  84. package/blazorGlobalSrc/editor-manager/plugin/table.js +1100 -0
  85. package/blazorGlobalSrc/editor-manager/plugin/toolbar-status.d.ts +39 -0
  86. package/blazorGlobalSrc/editor-manager/plugin/toolbar-status.js +384 -0
  87. package/blazorGlobalSrc/editor-manager/plugin/undo.d.ts +85 -0
  88. package/blazorGlobalSrc/editor-manager/plugin/undo.js +216 -0
  89. package/blazorGlobalSrc/editor-manager/plugin/video.d.ts +38 -0
  90. package/blazorGlobalSrc/editor-manager/plugin/video.js +311 -0
  91. package/blazorGlobalSrc/editor-manager/plugin.d.ts +27 -0
  92. package/blazorGlobalSrc/editor-manager/plugin.js +31 -0
  93. package/blazorGlobalSrc/global.d.ts +1 -0
  94. package/blazorGlobalSrc/global.js +3 -0
  95. package/blazorGlobalSrc/index.d.ts +8 -0
  96. package/blazorGlobalSrc/index.js +12 -0
  97. package/blazorGlobalSrc/markdown-parser/base/constant.d.ts +39 -0
  98. package/blazorGlobalSrc/markdown-parser/base/constant.js +10 -0
  99. package/blazorGlobalSrc/markdown-parser/base/interface.d.ts +169 -0
  100. package/blazorGlobalSrc/markdown-parser/base/interface.js +4 -0
  101. package/blazorGlobalSrc/markdown-parser/base/markdown-parser.d.ts +69 -0
  102. package/blazorGlobalSrc/markdown-parser/base/markdown-parser.js +87 -0
  103. package/blazorGlobalSrc/markdown-parser/base/types.d.ts +7 -0
  104. package/blazorGlobalSrc/markdown-parser/base/types.js +4 -0
  105. package/blazorGlobalSrc/markdown-parser/base.d.ts +7 -0
  106. package/blazorGlobalSrc/markdown-parser/base.js +9 -0
  107. package/blazorGlobalSrc/markdown-parser/index.d.ts +5 -0
  108. package/blazorGlobalSrc/markdown-parser/index.js +9 -0
  109. package/blazorGlobalSrc/markdown-parser/plugin/clearformat.d.ts +28 -0
  110. package/blazorGlobalSrc/markdown-parser/plugin/clearformat.js +110 -0
  111. package/blazorGlobalSrc/markdown-parser/plugin/formats.d.ts +32 -0
  112. package/blazorGlobalSrc/markdown-parser/plugin/formats.js +225 -0
  113. package/blazorGlobalSrc/markdown-parser/plugin/insert-text.d.ts +24 -0
  114. package/blazorGlobalSrc/markdown-parser/plugin/insert-text.js +49 -0
  115. package/blazorGlobalSrc/markdown-parser/plugin/link.d.ts +24 -0
  116. package/blazorGlobalSrc/markdown-parser/plugin/link.js +50 -0
  117. package/blazorGlobalSrc/markdown-parser/plugin/lists.d.ts +39 -0
  118. package/blazorGlobalSrc/markdown-parser/plugin/lists.js +462 -0
  119. package/blazorGlobalSrc/markdown-parser/plugin/markdown-selection.d.ts +140 -0
  120. package/blazorGlobalSrc/markdown-parser/plugin/markdown-selection.js +104 -0
  121. package/blazorGlobalSrc/markdown-parser/plugin/md-selection-formats.d.ts +31 -0
  122. package/blazorGlobalSrc/markdown-parser/plugin/md-selection-formats.js +335 -0
  123. package/blazorGlobalSrc/markdown-parser/plugin/table.d.ts +52 -0
  124. package/blazorGlobalSrc/markdown-parser/plugin/table.js +216 -0
  125. package/blazorGlobalSrc/markdown-parser/plugin/undo.d.ts +83 -0
  126. package/blazorGlobalSrc/markdown-parser/plugin/undo.js +147 -0
  127. package/blazorGlobalSrc/markdown-parser/plugin.d.ts +11 -0
  128. package/blazorGlobalSrc/markdown-parser/plugin.js +15 -0
  129. package/blazorGlobalSrc/rich-text-editor/actions/base-quick-toolbar.d.ts +114 -0
  130. package/blazorGlobalSrc/rich-text-editor/actions/base-quick-toolbar.js +465 -0
  131. package/blazorGlobalSrc/rich-text-editor/actions/base-toolbar.d.ts +58 -0
  132. package/blazorGlobalSrc/rich-text-editor/actions/base-toolbar.js +216 -0
  133. package/blazorGlobalSrc/rich-text-editor/actions/color-picker.d.ts +52 -0
  134. package/blazorGlobalSrc/rich-text-editor/actions/color-picker.js +241 -0
  135. package/blazorGlobalSrc/rich-text-editor/actions/count.d.ts +55 -0
  136. package/blazorGlobalSrc/rich-text-editor/actions/count.js +117 -0
  137. package/blazorGlobalSrc/rich-text-editor/actions/dropdown-buttons.d.ts +72 -0
  138. package/blazorGlobalSrc/rich-text-editor/actions/dropdown-buttons.js +552 -0
  139. package/blazorGlobalSrc/rich-text-editor/actions/emoji-picker.d.ts +51 -0
  140. package/blazorGlobalSrc/rich-text-editor/actions/emoji-picker.js +853 -0
  141. package/blazorGlobalSrc/rich-text-editor/actions/enter-key.d.ts +28 -0
  142. package/blazorGlobalSrc/rich-text-editor/actions/enter-key.js +821 -0
  143. package/blazorGlobalSrc/rich-text-editor/actions/execute-command-callback.d.ts +11 -0
  144. package/blazorGlobalSrc/rich-text-editor/actions/execute-command-callback.js +28 -0
  145. package/blazorGlobalSrc/rich-text-editor/actions/file-manager.d.ts +45 -0
  146. package/blazorGlobalSrc/rich-text-editor/actions/file-manager.js +249 -0
  147. package/blazorGlobalSrc/rich-text-editor/actions/format-painter.d.ts +25 -0
  148. package/blazorGlobalSrc/rich-text-editor/actions/format-painter.js +156 -0
  149. package/blazorGlobalSrc/rich-text-editor/actions/full-screen.d.ts +40 -0
  150. package/blazorGlobalSrc/rich-text-editor/actions/full-screen.js +148 -0
  151. package/blazorGlobalSrc/rich-text-editor/actions/html-attributes.d.ts +15 -0
  152. package/blazorGlobalSrc/rich-text-editor/actions/html-attributes.js +50 -0
  153. package/blazorGlobalSrc/rich-text-editor/actions/html-editor.d.ts +120 -0
  154. package/blazorGlobalSrc/rich-text-editor/actions/html-editor.js +1244 -0
  155. package/blazorGlobalSrc/rich-text-editor/actions/html-toolbar-status.d.ts +14 -0
  156. package/blazorGlobalSrc/rich-text-editor/actions/html-toolbar-status.js +47 -0
  157. package/blazorGlobalSrc/rich-text-editor/actions/import-export.d.ts +21 -0
  158. package/blazorGlobalSrc/rich-text-editor/actions/import-export.js +117 -0
  159. package/blazorGlobalSrc/rich-text-editor/actions/keyboard-model.d.ts +30 -0
  160. package/blazorGlobalSrc/rich-text-editor/actions/keyboard.d.ts +110 -0
  161. package/blazorGlobalSrc/rich-text-editor/actions/keyboard.js +163 -0
  162. package/blazorGlobalSrc/rich-text-editor/actions/markdown-editor.d.ts +66 -0
  163. package/blazorGlobalSrc/rich-text-editor/actions/markdown-editor.js +142 -0
  164. package/blazorGlobalSrc/rich-text-editor/actions/markdown-toolbar-status.d.ts +23 -0
  165. package/blazorGlobalSrc/rich-text-editor/actions/markdown-toolbar-status.js +124 -0
  166. package/blazorGlobalSrc/rich-text-editor/actions/paste-clean-up.d.ts +86 -0
  167. package/blazorGlobalSrc/rich-text-editor/actions/paste-clean-up.js +1071 -0
  168. package/blazorGlobalSrc/rich-text-editor/actions/quick-toolbar.d.ts +151 -0
  169. package/blazorGlobalSrc/rich-text-editor/actions/quick-toolbar.js +548 -0
  170. package/blazorGlobalSrc/rich-text-editor/actions/resize.d.ts +37 -0
  171. package/blazorGlobalSrc/rich-text-editor/actions/resize.js +188 -0
  172. package/blazorGlobalSrc/rich-text-editor/actions/sanitize-helper.d.ts +11 -0
  173. package/blazorGlobalSrc/rich-text-editor/actions/sanitize-helper.js +168 -0
  174. package/blazorGlobalSrc/rich-text-editor/actions/toolbar-action.d.ts +18 -0
  175. package/blazorGlobalSrc/rich-text-editor/actions/toolbar-action.js +76 -0
  176. package/blazorGlobalSrc/rich-text-editor/actions/toolbar.d.ts +185 -0
  177. package/blazorGlobalSrc/rich-text-editor/actions/toolbar.js +512 -0
  178. package/blazorGlobalSrc/rich-text-editor/actions/xhtml-validation.d.ts +25 -0
  179. package/blazorGlobalSrc/rich-text-editor/actions/xhtml-validation.js +166 -0
  180. package/blazorGlobalSrc/rich-text-editor/actions.d.ts +26 -0
  181. package/blazorGlobalSrc/rich-text-editor/actions.js +30 -0
  182. package/blazorGlobalSrc/rich-text-editor/audio.d.ts +4 -0
  183. package/blazorGlobalSrc/rich-text-editor/audio.js +8 -0
  184. package/blazorGlobalSrc/rich-text-editor/base/classes.d.ts +628 -0
  185. package/blazorGlobalSrc/rich-text-editor/base/classes.js +129 -0
  186. package/blazorGlobalSrc/rich-text-editor/base/constant.d.ts +808 -0
  187. package/blazorGlobalSrc/rich-text-editor/base/constant.js +334 -0
  188. package/blazorGlobalSrc/rich-text-editor/base/enum.d.ts +81 -0
  189. package/blazorGlobalSrc/rich-text-editor/base/enum.js +37 -0
  190. package/blazorGlobalSrc/rich-text-editor/base/interface.d.ts +1577 -0
  191. package/blazorGlobalSrc/rich-text-editor/base/interface.js +194 -0
  192. package/blazorGlobalSrc/rich-text-editor/base/rich-text-editor-model.d.ts +1032 -0
  193. package/blazorGlobalSrc/rich-text-editor/base/rich-text-editor.d.ts +1699 -0
  194. package/blazorGlobalSrc/rich-text-editor/base/rich-text-editor.js +2645 -0
  195. package/blazorGlobalSrc/rich-text-editor/base/util.d.ts +212 -0
  196. package/blazorGlobalSrc/rich-text-editor/base/util.js +610 -0
  197. package/blazorGlobalSrc/rich-text-editor/base.d.ts +10 -0
  198. package/blazorGlobalSrc/rich-text-editor/base.js +13 -0
  199. package/blazorGlobalSrc/rich-text-editor/formatter/formatter.d.ts +87 -0
  200. package/blazorGlobalSrc/rich-text-editor/formatter/formatter.js +223 -0
  201. package/blazorGlobalSrc/rich-text-editor/formatter/html-formatter.d.ts +34 -0
  202. package/blazorGlobalSrc/rich-text-editor/formatter/html-formatter.js +44 -0
  203. package/blazorGlobalSrc/rich-text-editor/formatter/markdown-formatter.d.ts +39 -0
  204. package/blazorGlobalSrc/rich-text-editor/formatter/markdown-formatter.js +48 -0
  205. package/blazorGlobalSrc/rich-text-editor/formatter.d.ts +6 -0
  206. package/blazorGlobalSrc/rich-text-editor/formatter.js +10 -0
  207. package/blazorGlobalSrc/rich-text-editor/html-editor.d.ts +4 -0
  208. package/blazorGlobalSrc/rich-text-editor/html-editor.js +8 -0
  209. package/blazorGlobalSrc/rich-text-editor/image.d.ts +4 -0
  210. package/blazorGlobalSrc/rich-text-editor/image.js +8 -0
  211. package/blazorGlobalSrc/rich-text-editor/index.d.ts +9 -0
  212. package/blazorGlobalSrc/rich-text-editor/index.js +12 -0
  213. package/blazorGlobalSrc/rich-text-editor/link.d.ts +4 -0
  214. package/blazorGlobalSrc/rich-text-editor/link.js +8 -0
  215. package/blazorGlobalSrc/rich-text-editor/markdown-editor.d.ts +4 -0
  216. package/blazorGlobalSrc/rich-text-editor/markdown-editor.js +8 -0
  217. package/blazorGlobalSrc/rich-text-editor/models/default-locale.d.ts +25 -0
  218. package/blazorGlobalSrc/rich-text-editor/models/default-locale.js +391 -0
  219. package/blazorGlobalSrc/rich-text-editor/models/iframe-settings-model.d.ts +68 -0
  220. package/blazorGlobalSrc/rich-text-editor/models/iframe-settings.d.ts +61 -0
  221. package/blazorGlobalSrc/rich-text-editor/models/iframe-settings.js +60 -0
  222. package/blazorGlobalSrc/rich-text-editor/models/inline-mode-model.d.ts +24 -0
  223. package/blazorGlobalSrc/rich-text-editor/models/inline-mode.d.ts +20 -0
  224. package/blazorGlobalSrc/rich-text-editor/models/inline-mode.js +37 -0
  225. package/blazorGlobalSrc/rich-text-editor/models/items.d.ts +36 -0
  226. package/blazorGlobalSrc/rich-text-editor/models/items.js +1011 -0
  227. package/blazorGlobalSrc/rich-text-editor/models/models.d.ts +7 -0
  228. package/blazorGlobalSrc/rich-text-editor/models/models.js +4 -0
  229. package/blazorGlobalSrc/rich-text-editor/models/slash-menu-settings-model.d.ts +40 -0
  230. package/blazorGlobalSrc/rich-text-editor/models/slash-menu-settings.d.ts +50 -0
  231. package/blazorGlobalSrc/rich-text-editor/models/slash-menu-settings.js +143 -0
  232. package/blazorGlobalSrc/rich-text-editor/models/toolbar-settings-model.d.ts +1130 -0
  233. package/blazorGlobalSrc/rich-text-editor/models/toolbar-settings.d.ts +992 -0
  234. package/blazorGlobalSrc/rich-text-editor/models/toolbar-settings.js +510 -0
  235. package/blazorGlobalSrc/rich-text-editor/models.d.ts +4 -0
  236. package/blazorGlobalSrc/rich-text-editor/models.js +4 -0
  237. package/blazorGlobalSrc/rich-text-editor/quick-toolbar.d.ts +4 -0
  238. package/blazorGlobalSrc/rich-text-editor/quick-toolbar.js +8 -0
  239. package/blazorGlobalSrc/rich-text-editor/renderer/audio-module.d.ts +82 -0
  240. package/blazorGlobalSrc/rich-text-editor/renderer/audio-module.js +886 -0
  241. package/blazorGlobalSrc/rich-text-editor/renderer/content-renderer.d.ts +65 -0
  242. package/blazorGlobalSrc/rich-text-editor/renderer/content-renderer.js +49 -0
  243. package/blazorGlobalSrc/rich-text-editor/renderer/dialog-renderer.d.ts +39 -0
  244. package/blazorGlobalSrc/rich-text-editor/renderer/dialog-renderer.js +111 -0
  245. package/blazorGlobalSrc/rich-text-editor/renderer/iframe-content-renderer.d.ts +33 -0
  246. package/blazorGlobalSrc/rich-text-editor/renderer/iframe-content-renderer.js +101 -0
  247. package/blazorGlobalSrc/rich-text-editor/renderer/image-module.d.ts +199 -0
  248. package/blazorGlobalSrc/rich-text-editor/renderer/image-module.js +2494 -0
  249. package/blazorGlobalSrc/rich-text-editor/renderer/link-module.d.ts +63 -0
  250. package/blazorGlobalSrc/rich-text-editor/renderer/link-module.js +596 -0
  251. package/blazorGlobalSrc/rich-text-editor/renderer/markdown-renderer.d.ts +65 -0
  252. package/blazorGlobalSrc/rich-text-editor/renderer/markdown-renderer.js +38 -0
  253. package/blazorGlobalSrc/rich-text-editor/renderer/popup-renderer.d.ts +54 -0
  254. package/blazorGlobalSrc/rich-text-editor/renderer/popup-renderer.js +35 -0
  255. package/blazorGlobalSrc/rich-text-editor/renderer/render.d.ts +46 -0
  256. package/blazorGlobalSrc/rich-text-editor/renderer/render.js +70 -0
  257. package/blazorGlobalSrc/rich-text-editor/renderer/slash-menu.d.ts +20 -0
  258. package/blazorGlobalSrc/rich-text-editor/renderer/slash-menu.js +224 -0
  259. package/blazorGlobalSrc/rich-text-editor/renderer/table-module.d.ts +155 -0
  260. package/blazorGlobalSrc/rich-text-editor/renderer/table-module.js +2206 -0
  261. package/blazorGlobalSrc/rich-text-editor/renderer/toolbar-renderer.d.ts +131 -0
  262. package/blazorGlobalSrc/rich-text-editor/renderer/toolbar-renderer.js +747 -0
  263. package/blazorGlobalSrc/rich-text-editor/renderer/video-module.d.ts +120 -0
  264. package/blazorGlobalSrc/rich-text-editor/renderer/video-module.js +1507 -0
  265. package/blazorGlobalSrc/rich-text-editor/renderer/view-source.d.ts +74 -0
  266. package/blazorGlobalSrc/rich-text-editor/renderer/view-source.js +225 -0
  267. package/blazorGlobalSrc/rich-text-editor/renderer.d.ts +17 -0
  268. package/blazorGlobalSrc/rich-text-editor/renderer.js +21 -0
  269. package/blazorGlobalSrc/rich-text-editor/services/renderer-factory.d.ts +33 -0
  270. package/blazorGlobalSrc/rich-text-editor/services/renderer-factory.js +29 -0
  271. package/blazorGlobalSrc/rich-text-editor/services/service-locator.d.ts +29 -0
  272. package/blazorGlobalSrc/rich-text-editor/services/service-locator.js +25 -0
  273. package/blazorGlobalSrc/rich-text-editor/services.d.ts +5 -0
  274. package/blazorGlobalSrc/rich-text-editor/services.js +9 -0
  275. package/blazorGlobalSrc/rich-text-editor/toolbar.d.ts +4 -0
  276. package/blazorGlobalSrc/rich-text-editor/toolbar.js +8 -0
  277. package/blazorGlobalSrc/rich-text-editor/video.d.ts +4 -0
  278. package/blazorGlobalSrc/rich-text-editor/video.js +8 -0
  279. package/blazorGlobalSrc/rich-text-editor.d.ts +4 -0
  280. package/blazorGlobalSrc/rich-text-editor.js +8 -0
  281. package/blazorGlobalSrc/selection/index.d.ts +4 -0
  282. package/blazorGlobalSrc/selection/index.js +8 -0
  283. package/blazorGlobalSrc/selection/selection.d.ts +244 -0
  284. package/blazorGlobalSrc/selection/selection.js +309 -0
  285. package/dist/ej2-richtexteditor.umd.min.js +1 -1
  286. package/dist/ej2-richtexteditor.umd.min.js.map +1 -1
  287. package/dist/es6/ej2-richtexteditor.es2015.js +6 -4
  288. package/dist/es6/ej2-richtexteditor.es2015.js.map +1 -1
  289. package/dist/es6/ej2-richtexteditor.es5.js +6 -4
  290. package/dist/es6/ej2-richtexteditor.es5.js.map +1 -1
  291. package/helpers/e2e/index.d.ts +1 -0
  292. package/helpers/e2e/index.js +8 -0
  293. package/helpers/e2e/rte-helper.d.ts +79 -0
  294. package/helpers/e2e/rte-helper.js +81 -0
  295. package/package.json +1 -1
  296. package/src/editor-manager/plugin/dom-tree.js +6 -4
  297. package/src/global.d.ts +1 -0
  298. package/styles/bds-lite.css +7 -17
  299. package/styles/bds.css +11 -22
  300. package/styles/bootstrap-dark-lite.css +3 -13
  301. package/styles/bootstrap-dark.css +3 -14
  302. package/styles/bootstrap-lite.css +3 -13
  303. package/styles/bootstrap.css +3 -14
  304. package/styles/bootstrap4-lite.css +3 -13
  305. package/styles/bootstrap4.css +3 -14
  306. package/styles/bootstrap5-dark-lite.css +3 -13
  307. package/styles/bootstrap5-dark.css +3 -14
  308. package/styles/bootstrap5-lite.css +3 -13
  309. package/styles/bootstrap5.3-lite.css +3 -13
  310. package/styles/bootstrap5.3.css +3 -14
  311. package/styles/bootstrap5.css +3 -14
  312. package/styles/fabric-dark-lite.css +3 -13
  313. package/styles/fabric-dark.css +3 -14
  314. package/styles/fabric-lite.css +3 -13
  315. package/styles/fabric.css +3 -14
  316. package/styles/fluent-dark-lite.css +3 -13
  317. package/styles/fluent-dark.css +3 -14
  318. package/styles/fluent-lite.css +3 -13
  319. package/styles/fluent.css +3 -14
  320. package/styles/fluent2-lite.css +3 -13
  321. package/styles/fluent2.css +3 -14
  322. package/styles/highcontrast-light-lite.css +3 -13
  323. package/styles/highcontrast-light.css +3 -14
  324. package/styles/highcontrast-lite.css +3 -13
  325. package/styles/highcontrast.css +3 -14
  326. package/styles/material-dark-lite.css +3 -13
  327. package/styles/material-dark.css +3 -14
  328. package/styles/material-lite.css +3 -13
  329. package/styles/material.css +3 -14
  330. package/styles/material3-dark-lite.css +3 -13
  331. package/styles/material3-dark.css +3 -14
  332. package/styles/material3-lite.css +3 -13
  333. package/styles/material3.css +3 -14
  334. package/styles/rich-text-editor/_bds-definition.scss +2 -2
  335. package/styles/rich-text-editor/_bigger.scss +0 -1
  336. package/styles/rich-text-editor/_layout.scss +0 -9
  337. package/styles/rich-text-editor/_theme.scss +3 -0
  338. package/styles/rich-text-editor/bds.css +11 -22
  339. package/styles/rich-text-editor/bootstrap-dark.css +3 -14
  340. package/styles/rich-text-editor/bootstrap.css +3 -14
  341. package/styles/rich-text-editor/bootstrap4.css +3 -14
  342. package/styles/rich-text-editor/bootstrap5-dark.css +3 -14
  343. package/styles/rich-text-editor/bootstrap5.3.css +3 -14
  344. package/styles/rich-text-editor/bootstrap5.css +3 -14
  345. package/styles/rich-text-editor/fabric-dark.css +3 -14
  346. package/styles/rich-text-editor/fabric.css +3 -14
  347. package/styles/rich-text-editor/fluent-dark.css +3 -14
  348. package/styles/rich-text-editor/fluent.css +3 -14
  349. package/styles/rich-text-editor/fluent2.css +3 -14
  350. package/styles/rich-text-editor/highcontrast-light.css +3 -14
  351. package/styles/rich-text-editor/highcontrast.css +3 -14
  352. package/styles/rich-text-editor/material-dark.css +3 -14
  353. package/styles/rich-text-editor/material.css +3 -14
  354. package/styles/rich-text-editor/material3-dark.css +3 -14
  355. package/styles/rich-text-editor/material3.css +3 -14
  356. package/styles/rich-text-editor/tailwind-dark.css +3 -14
  357. package/styles/rich-text-editor/tailwind.css +3 -14
  358. package/styles/rich-text-editor/tailwind3.css +3 -14
  359. package/styles/tailwind-dark-lite.css +3 -13
  360. package/styles/tailwind-dark.css +3 -14
  361. package/styles/tailwind-lite.css +3 -13
  362. package/styles/tailwind.css +3 -14
  363. package/styles/tailwind3-lite.css +3 -13
  364. package/styles/tailwind3.css +3 -14
  365. package/tslint.json +111 -0
@@ -0,0 +1,747 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ define(["require", "exports", "@syncfusion/ej2-base", "@syncfusion/ej2-base", "@syncfusion/ej2-navigations", "@syncfusion/ej2-splitbuttons", "@syncfusion/ej2-popups", "../base/classes", "../base/constant", "../base/classes", "@syncfusion/ej2-inputs", "../base/util", "../../editor-manager/plugin/toolbar-status", "../models/default-locale"], function (require, exports, ej2_base_1, ej2_base_2, ej2_navigations_1, ej2_splitbuttons_1, ej2_popups_1, classes, events, classes_1, ej2_inputs_1, util_1, toolbar_status_1, default_locale_1) {
13
+ "use strict";
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ var ToolbarRenderer = (function () {
16
+ function ToolbarRenderer(parent, serviceLocator) {
17
+ this.isEscapeKey = false;
18
+ this.parent = parent;
19
+ this.isDestroyed = false;
20
+ if (serviceLocator) {
21
+ this.l10n = serviceLocator.getService('rteLocale');
22
+ }
23
+ this.wireEvent();
24
+ }
25
+ ToolbarRenderer.prototype.wireEvent = function () {
26
+ this.parent.on(events.destroy, this.destroy, this);
27
+ this.parent.on(events.destroyTooltip, this.destroyTooltip, this);
28
+ this.parent.on(events.closeTooltip, this.closeTooltip, this);
29
+ };
30
+ ToolbarRenderer.prototype.destroyTooltip = function () {
31
+ var currentDocument = this.parent.iframeSettings.enable ? this.parent.contentModule.getPanel().ownerDocument :
32
+ this.parent.contentModule.getDocument();
33
+ if (!ej2_base_1.isNullOrUndefined(currentDocument.querySelector('.e-tooltip-wrap')) && !ej2_base_1.isNullOrUndefined(currentDocument.querySelector('[data-tooltip-id]'))) {
34
+ var tooltipTargetEle = currentDocument.querySelector('[data-tooltip-id]');
35
+ var event_1 = new MouseEvent('mouseleave', { bubbles: true, cancelable: true });
36
+ tooltipTargetEle.dispatchEvent(event_1);
37
+ }
38
+ };
39
+ ToolbarRenderer.prototype.unWireEvent = function () {
40
+ this.parent.off(events.destroy, this.destroy);
41
+ this.parent.off(events.destroyTooltip, this.destroyTooltip);
42
+ this.parent.off(events.closeTooltip, this.closeTooltip);
43
+ };
44
+ ToolbarRenderer.prototype.toolbarBeforeCreate = function (e) {
45
+ if (this.mode === 'Extended') {
46
+ e.enableCollision = false;
47
+ }
48
+ };
49
+ ToolbarRenderer.prototype.toolbarCreated = function () {
50
+ this.parent.notify(events.toolbarCreated, this);
51
+ if (this.mode === 'Extended') {
52
+ var extendedToolbarElement = this.toolbarPanel.querySelector('.e-expended-nav');
53
+ if (extendedToolbarElement) {
54
+ ej2_base_1.EventHandler.add(extendedToolbarElement, 'mousedown', this.extendedToolbarMouseDownHandler, this);
55
+ }
56
+ }
57
+ };
58
+ ToolbarRenderer.prototype.extendedToolbarMouseDownHandler = function () {
59
+ if (this.parent.userAgentData.isSafari()) {
60
+ this.parent.notify(events.selectionSave, {});
61
+ }
62
+ };
63
+ ToolbarRenderer.prototype.toolbarClicked = function (args) {
64
+ var _this = this;
65
+ if (!this.parent.enabled) {
66
+ return;
67
+ }
68
+ var toolbarClickEventArgs = { item: args.item, originalEvent: args.originalEvent, cancel: false };
69
+ this.parent.trigger('toolbarClick', toolbarClickEventArgs, function (clickEventArgs) {
70
+ if ((!_this.parent.readonly || ej2_base_1.isNullOrUndefined(args.item)) && !clickEventArgs.cancel) {
71
+ _this.parent.notify(events.toolbarClick, clickEventArgs);
72
+ }
73
+ });
74
+ };
75
+ ToolbarRenderer.prototype.dropDownSelected = function (args) {
76
+ this.parent.notify(events.dropDownSelect, { element: args.element, item: args.item, originalEvent: args.event });
77
+ this.destroyTooltip();
78
+ };
79
+ ToolbarRenderer.prototype.beforeDropDownItemRender = function (args) {
80
+ if (this.parent.readonly || !this.parent.enabled) {
81
+ return;
82
+ }
83
+ this.parent.notify(events.beforeDropDownItemRender, args);
84
+ };
85
+ ToolbarRenderer.prototype.tooltipBeforeRender = function (args) {
86
+ if (!ej2_base_1.isNullOrUndefined(args.target.getAttribute('title'))) {
87
+ var tooltipTarget = args.target.getAttribute('title');
88
+ var tooltipText = void 0;
89
+ switch (tooltipTarget) {
90
+ case 'Minimize':
91
+ tooltipText = this.l10n.getConstant('minimize');
92
+ args.target.setAttribute('title', tooltipText + ' (Esc)');
93
+ break;
94
+ case 'Maximize':
95
+ tooltipText = this.l10n.getConstant('maximize');
96
+ args.target.setAttribute('title', tooltipText + ' (Ctrl+Shift+F)');
97
+ break;
98
+ }
99
+ }
100
+ if (args.target.querySelector('.e-active')) {
101
+ args.cancel = true;
102
+ if (!ej2_base_1.isNullOrUndefined(args.target.getAttribute('title'))) {
103
+ this.closeTooltip({ target: args.target, isTitle: true });
104
+ }
105
+ }
106
+ };
107
+ ToolbarRenderer.prototype.dropDownOpen = function (args) {
108
+ if (args.element.parentElement.getAttribute('id').indexOf('TableCell') > -1 && !ej2_base_1.isNullOrUndefined(args.element.parentElement.querySelector('.e-cell-merge'))) {
109
+ var listEle = args.element.querySelectorAll('li');
110
+ var selectedEles_1 = this.parent.inputElement.querySelectorAll('.e-cell-select');
111
+ if (selectedEles_1.length === 1) {
112
+ ej2_base_1.addClass([listEle[0]], 'e-disabled');
113
+ ej2_base_1.removeClass([listEle[1], listEle[2]], 'e-disabled');
114
+ }
115
+ else if (selectedEles_1.length > 1) {
116
+ if (!Array.from(selectedEles_1).every(function (element) {
117
+ return element.tagName.toLowerCase() === selectedEles_1[0].tagName.toLowerCase();
118
+ })) {
119
+ ej2_base_1.addClass([listEle[0]], 'e-disabled');
120
+ }
121
+ else {
122
+ ej2_base_1.removeClass([listEle[0]], 'e-disabled');
123
+ }
124
+ ej2_base_1.addClass([listEle[1], listEle[2]], 'e-disabled');
125
+ }
126
+ }
127
+ this.parent.notify(events.selectionSave, args);
128
+ };
129
+ ToolbarRenderer.prototype.dropDownClose = function (args) {
130
+ if (!this.isEscapeKey) {
131
+ this.parent.notify(events.selectionRestore, args);
132
+ }
133
+ this.isEscapeKey = false;
134
+ };
135
+ ToolbarRenderer.prototype.dropDownBeforeClose = function (args) {
136
+ if (!ej2_base_1.isNullOrUndefined(args.event) && args.event.key === 'Escape' && args.event.keyCode === 27) {
137
+ this.isEscapeKey = true;
138
+ this.parent.notify(events.preventQuickToolbarClose, args);
139
+ }
140
+ };
141
+ ToolbarRenderer.prototype.renderToolbar = function (args) {
142
+ this.setPanel(args.target);
143
+ this.renderPanel();
144
+ this.mode = args.overflowMode;
145
+ args.rteToolbarObj.toolbarObj = new ej2_navigations_1.Toolbar({
146
+ items: args.items,
147
+ width: '100%',
148
+ overflowMode: args.overflowMode,
149
+ beforeCreate: this.toolbarBeforeCreate.bind(this),
150
+ created: this.toolbarCreated.bind(this),
151
+ clicked: this.toolbarClicked.bind(this),
152
+ enablePersistence: args.enablePersistence,
153
+ enableRtl: args.enableRtl,
154
+ cssClass: args.cssClass
155
+ });
156
+ args.rteToolbarObj.toolbarObj.isStringTemplate = true;
157
+ args.rteToolbarObj.toolbarObj.createElement = this.parent.createElement;
158
+ args.rteToolbarObj.toolbarObj.appendTo(args.target);
159
+ if (this.parent.showTooltip && args.type === 'toolbar') {
160
+ this.tooltip = new ej2_popups_1.Tooltip({
161
+ target: '#' + this.parent.getID() + '_toolbar_wrapper [title]',
162
+ showTipPointer: true,
163
+ openDelay: 400,
164
+ opensOn: 'Hover',
165
+ beforeRender: this.tooltipBeforeRender.bind(this),
166
+ beforeOpen: this.tooltipBeforeOpen.bind(this),
167
+ cssClass: this.parent.getCssClass(),
168
+ windowCollision: true,
169
+ position: 'BottomCenter'
170
+ });
171
+ this.tooltip.appendTo(args.target.parentElement);
172
+ }
173
+ };
174
+ ToolbarRenderer.prototype.tooltipBeforeOpen = function (args) {
175
+ if (args.element) {
176
+ args.element.setAttribute('data-rte-id', this.parent.getID());
177
+ }
178
+ };
179
+ ToolbarRenderer.prototype.renderDropDownButton = function (args) {
180
+ var _this = this;
181
+ var css;
182
+ var targetEle = args.activeElement;
183
+ args.element.classList.add(classes_1.CLS_DROPDOWN_BTN);
184
+ css = args.cssClass + ' ' + classes_1.CLS_RTE_ELEMENTS + ' ' + classes_1.CLS_TB_BTN;
185
+ if (this.parent.inlineMode.enable && ej2_base_1.Browser.isDevice) {
186
+ css = css + ' ' + classes_1.CLS_INLINE_DROPDOWN;
187
+ }
188
+ var proxy = this;
189
+ var dropDown = new ej2_splitbuttons_1.DropDownButton({
190
+ items: args.items,
191
+ iconCss: args.iconCss,
192
+ cssClass: css,
193
+ content: args.content,
194
+ enablePersistence: this.parent.enablePersistence,
195
+ enableRtl: this.parent.enableRtl,
196
+ select: this.dropDownSelected.bind(this),
197
+ beforeOpen: function (args) {
198
+ if (proxy.parent.readonly || !proxy.parent.enabled) {
199
+ args.cancel = true;
200
+ return;
201
+ }
202
+ if (_this.parent.userAgentData.isSafari() && args.event.type === 'keydown' && _this.parent.formatter.editorManager.nodeSelection &&
203
+ !_this.parent.inputElement.contains(_this.parent.getRange().startContainer)) {
204
+ _this.parent.notify(events.selectionRestore, args);
205
+ }
206
+ if (proxy.parent.editorMode !== 'Markdown') {
207
+ var startNode = proxy.parent.getRange().startContainer.parentElement;
208
+ var tableEle = startNode.closest('table');
209
+ var trow = startNode.closest('tr');
210
+ if (!ej2_base_1.isNullOrUndefined(tableEle) && tableEle.classList.contains('e-dashed-border')) {
211
+ for (var index = 0; index < args.element.childNodes.length; index++) {
212
+ if (args.element.childNodes[index].classList.contains('e-dashed-borders')) {
213
+ ej2_base_1.addClass([args.element.childNodes[index]], 'e-active');
214
+ }
215
+ }
216
+ }
217
+ if (!ej2_base_1.isNullOrUndefined(tableEle) && tableEle.classList.contains('e-alternate-rows') && window.getComputedStyle(trow).backgroundColor !== '') {
218
+ for (var index = 0; index < args.element.childNodes.length; index++) {
219
+ if (args.element.childNodes[index].classList.contains('e-alternate-rows')) {
220
+ ej2_base_1.addClass([args.element.childNodes[index]], 'e-active');
221
+ }
222
+ }
223
+ }
224
+ var alignEle = proxy.parent.getRange().startContainer;
225
+ while (alignEle !== proxy.parent.inputElement && !ej2_base_1.isNullOrUndefined(alignEle.parentElement)) {
226
+ if (alignEle.nodeName === '#text') {
227
+ alignEle = alignEle.parentElement;
228
+ }
229
+ var alignStyle = window.getComputedStyle(alignEle).textAlign;
230
+ if (!ej2_base_1.isNullOrUndefined(args.items[0]) && args.items[0].command === 'Alignments') {
231
+ if ((args.items[0].text === 'Align Left' && (alignStyle === 'left') || alignStyle === 'start')) {
232
+ ej2_base_1.addClass([args.element.childNodes[0]], 'e-active');
233
+ break;
234
+ }
235
+ else if (args.items[1].text === 'Align Center' && alignStyle === 'center') {
236
+ ej2_base_1.addClass([args.element.childNodes[1]], 'e-active');
237
+ break;
238
+ }
239
+ else if (args.items[2].text === 'Align Right' && alignStyle === 'right') {
240
+ ej2_base_1.addClass([args.element.childNodes[2]], 'e-active');
241
+ break;
242
+ }
243
+ else if (args.items[3].text === 'Align Justify' && alignStyle === 'justify') {
244
+ ej2_base_1.addClass([args.element.childNodes[3]], 'e-active');
245
+ break;
246
+ }
247
+ }
248
+ alignEle = alignEle.parentElement;
249
+ }
250
+ var closestNode = startNode.closest('img');
251
+ var imageEle = closestNode ? closestNode : (targetEle ? targetEle : startNode.querySelector('img'));
252
+ if (!ej2_base_1.isNullOrUndefined(args.items[0]) && args.items[0].command === 'Images') {
253
+ if (!ej2_base_1.isNullOrUndefined(imageEle)) {
254
+ var index = void 0;
255
+ if (imageEle.classList.contains('e-imgleft') || imageEle.classList.contains('e-imginline')) {
256
+ index = 0;
257
+ }
258
+ else if (imageEle.classList.contains('e-imgcenter') || imageEle.classList.contains('e-imgbreak')) {
259
+ index = 1;
260
+ }
261
+ else if (imageEle.classList.contains('e-imgright')) {
262
+ index = 2;
263
+ }
264
+ if (!ej2_base_1.isNullOrUndefined(args.element.childNodes[index])) {
265
+ ej2_base_1.addClass([args.element.childNodes[index]], 'e-active');
266
+ }
267
+ }
268
+ }
269
+ var videoClosestNode = startNode.closest('.e-video-wrap');
270
+ var videoEle = videoClosestNode ? videoClosestNode : (targetEle ? targetEle : startNode.querySelector('video'));
271
+ if (!ej2_base_1.isNullOrUndefined(args.items[0]) && args.items[0].command === 'Videos') {
272
+ if (!ej2_base_1.isNullOrUndefined(videoEle)) {
273
+ var index = void 0;
274
+ if (videoEle.classList.contains('e-video-left') || videoEle.classList.contains('e-video-inline')) {
275
+ index = 0;
276
+ }
277
+ else if (videoEle.classList.contains('e-video-center') || videoEle.classList.contains('e-video-break')) {
278
+ index = 1;
279
+ }
280
+ else if (videoEle.classList.contains('e-video-right')) {
281
+ index = 2;
282
+ }
283
+ if (!ej2_base_1.isNullOrUndefined(args.element.childNodes[index])) {
284
+ ej2_base_1.addClass([args.element.childNodes[index]], 'e-active');
285
+ }
286
+ }
287
+ }
288
+ if (!ej2_base_1.isNullOrUndefined(args.items[0]) && (args.items[0].command === 'Formats' || args.items[0].command === 'Font')) {
289
+ var fontName_1 = [];
290
+ var formats_1 = [];
291
+ var hasUpdatedActive = false;
292
+ _this.parent.format.types.forEach(function (item) {
293
+ formats_1.push(item.value.toLocaleLowerCase());
294
+ });
295
+ _this.parent.fontFamily.items.forEach(function (item) {
296
+ fontName_1.push(item.value);
297
+ });
298
+ var toolbarStatus = toolbar_status_1.ToolbarStatus.get(_this.parent.contentModule.getDocument(), _this.parent.contentModule.getEditPanel(), formats_1, null, fontName_1);
299
+ for (var index = 0; index < args.element.childNodes.length; index++) {
300
+ var htmlString = dropDown.content.trim();
301
+ var styleMatch = htmlString.match(/style="([^"]*)"/);
302
+ var styleValue = '';
303
+ if (styleMatch) {
304
+ styleValue = styleMatch[1];
305
+ }
306
+ var updatedHtml = htmlString.replace(/ style="([^"]*)"/, '');
307
+ var divNode = _this.parent.createElement('div');
308
+ divNode.innerHTML = updatedHtml;
309
+ var spanElement = divNode.querySelector('span');
310
+ spanElement.style.cssText = styleValue;
311
+ if (!hasUpdatedActive && ((divNode.textContent.trim() !== ''
312
+ && args.element.childNodes[index].textContent.trim() === divNode.textContent.trim()) ||
313
+ ((args.items[0].command === 'Formats' && !ej2_base_1.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))
314
+ || (args.items[0].subCommand === 'FontName' && args.items[0].command === 'Font' && !ej2_base_1.isNullOrUndefined(toolbarStatus.fontname) && !ej2_base_1.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)))
315
+ || (((args.items[0].subCommand === 'FontName') && _this.parent.fontFamily.items[index].value === '' && ej2_base_1.isNullOrUndefined(toolbarStatus.fontname) && args.element.childNodes[index].classList.contains(_this.parent.fontFamily.items[index].cssClass)) ||
316
+ ((args.items[0].subCommand === 'FontSize') && args.element.childNodes[index].textContent === 'Default' && divNode.textContent === 'Font Size' && _this.parent.fontSize.items[index].value === '' && !ej2_base_1.isNullOrUndefined(toolbarStatus.fontsize))))) {
317
+ if (!args.element.childNodes[index].classList.contains('e-active')) {
318
+ ej2_base_1.addClass([args.element.childNodes[index]], 'e-active');
319
+ hasUpdatedActive = true;
320
+ }
321
+ }
322
+ else {
323
+ ej2_base_1.removeClass([args.element.childNodes[index]], 'e-active');
324
+ }
325
+ }
326
+ }
327
+ }
328
+ else if (proxy.parent.editorMode === 'Markdown') {
329
+ if (args.items[0].command === 'Formats') {
330
+ var formats_2 = [];
331
+ var hasUpdatedActive = false;
332
+ _this.parent.format.types.forEach(function (item) {
333
+ formats_2.push(item.value.toLocaleLowerCase());
334
+ });
335
+ var childNodes = args.element.childNodes;
336
+ for (var index = 0; index < childNodes.length; index++) {
337
+ var divNode = _this.parent.createElement('div');
338
+ divNode.innerHTML = dropDown.content.trim();
339
+ if (!hasUpdatedActive && ((divNode.textContent.trim() !== '' && childNodes[index].textContent.trim() === divNode.textContent.trim()))) {
340
+ if (!childNodes[index].classList.contains('e-active')) {
341
+ ej2_base_1.addClass([childNodes[index]], 'e-active');
342
+ hasUpdatedActive = true;
343
+ }
344
+ }
345
+ else {
346
+ ej2_base_1.removeClass([childNodes[index]], 'e-active');
347
+ }
348
+ }
349
+ }
350
+ }
351
+ proxy.parent.notify(events.beforeDropDownOpen, args);
352
+ },
353
+ close: this.dropDownClose.bind(this),
354
+ beforeClose: this.dropDownBeforeClose.bind(this),
355
+ open: this.dropDownOpen.bind(this),
356
+ beforeItemRender: this.beforeDropDownItemRender.bind(this)
357
+ });
358
+ dropDown.isStringTemplate = true;
359
+ dropDown.createElement = proxy.parent.createElement;
360
+ dropDown.appendTo(args.element);
361
+ args.element.tabIndex = -1;
362
+ var popupElement = document.getElementById(dropDown.element.id + '-popup');
363
+ popupElement.setAttribute('aria-owns', this.parent.getID());
364
+ return dropDown;
365
+ };
366
+ ToolbarRenderer.prototype.mouseOutHandler = function () {
367
+ if (!ej2_base_1.isNullOrUndefined(this.tooltipTargetEle)) {
368
+ this.tooltipTargetEle.setAttribute('title', this.tooltipTargetEle.getAttribute('data-title'));
369
+ }
370
+ else {
371
+ var currentDocument = this.parent.iframeSettings.enable ? this.parent.contentModule.getPanel().ownerDocument :
372
+ this.parent.contentModule.getDocument();
373
+ this.tooltipTargetEle = currentDocument.querySelector('[data-title]');
374
+ this.tooltipTargetEle.setAttribute('title', this.tooltipTargetEle.getAttribute('data-title'));
375
+ }
376
+ this.tooltipTargetEle.removeAttribute('data-title');
377
+ ej2_base_1.EventHandler.remove(this.tooltipTargetEle, 'mouseout', this.mouseOutHandler);
378
+ };
379
+ ToolbarRenderer.prototype.closeTooltip = function (args) {
380
+ if (args.isTitle) {
381
+ this.tooltipTargetEle = args.target;
382
+ this.tooltipTargetEle.setAttribute('data-title', this.tooltipTargetEle.getAttribute('title'));
383
+ this.tooltipTargetEle.removeAttribute('title');
384
+ ej2_base_1.EventHandler.add(this.tooltipTargetEle, 'mouseout', this.mouseOutHandler, this);
385
+ }
386
+ else {
387
+ var currentDocument = this.parent.iframeSettings.enable ? this.parent.contentModule.getPanel().ownerDocument :
388
+ this.parent.contentModule.getDocument();
389
+ this.tooltipTargetEle = ej2_base_2.closest(args.target, '[data-tooltip-id]');
390
+ if (!ej2_base_1.isNullOrUndefined(this.tooltipTargetEle) && this.parent.showTooltip && !ej2_base_1.isNullOrUndefined(currentDocument.querySelector('.e-tooltip-wrap'))) {
391
+ this.destroyTooltip();
392
+ this.tooltipTargetEle.setAttribute('data-title', this.tooltipTargetEle.getAttribute('title'));
393
+ this.tooltipTargetEle.removeAttribute('title');
394
+ ej2_base_1.EventHandler.add(this.tooltipTargetEle, 'mouseout', this.mouseOutHandler, this);
395
+ }
396
+ }
397
+ };
398
+ ToolbarRenderer.prototype.renderListDropDown = function (args) {
399
+ var _this = this;
400
+ var proxy = this;
401
+ var css = classes_1.CLS_RTE_ELEMENTS + ' ' + classes_1.CLS_TB_BTN + ((this.parent.inlineMode) ? (' ' + classes_1.CLS_INLINE_DROPDOWN) : '');
402
+ css += (' ' + ((args.itemName === 'NumberFormatList') ? classes_1.CLS_NUMBERFORMATLIST_TB_BTN : classes_1.CLS_BULLETFORMATLIST_TB_BTN));
403
+ var content = proxy.parent.createElement('span', { className: classes_1.CLS_LIST_PRIMARY_CONTENT });
404
+ var inlineEle = proxy.parent.createElement('span', { className: args.cssClass });
405
+ content.appendChild(inlineEle);
406
+ var dropDown = new ej2_splitbuttons_1.DropDownButton({
407
+ items: args.items,
408
+ cssClass: css,
409
+ content: args.content,
410
+ enablePersistence: this.parent.enablePersistence,
411
+ enableRtl: this.parent.enableRtl,
412
+ select: this.dropDownSelected.bind(this),
413
+ beforeOpen: function (args) {
414
+ if (ej2_base_1.Browser.info.name === 'safari' && !proxy.parent.inputElement.contains(proxy.parent.getRange().startContainer)) {
415
+ proxy.parent.notify(events.selectionRestore, {});
416
+ }
417
+ if (proxy.parent.editorMode !== 'Markdown') {
418
+ var startNode = proxy.parent.getRange().startContainer.parentElement;
419
+ var listElem = startNode.closest('LI');
420
+ var currentLiElem = !ej2_base_1.isNullOrUndefined(listElem) ? listElem.parentElement : null;
421
+ var currentAction = args.items[0].subCommand;
422
+ if (!ej2_base_1.isNullOrUndefined(currentLiElem)) {
423
+ var validNumberFormatAction = (currentAction === 'NumberFormatList' && currentLiElem.nodeName === 'OL');
424
+ var validBulletFormatAction = (currentAction === 'BulletFormatList' && currentLiElem.nodeName === 'UL');
425
+ if (validNumberFormatAction || validBulletFormatAction) {
426
+ var currentListStyle = currentLiElem.style.listStyleType.split('-').join('').toLocaleLowerCase();
427
+ currentListStyle = currentListStyle === 'decimal' ? 'number' : currentListStyle;
428
+ for (var index = 0; index < args.element.childNodes.length; index++) {
429
+ if (currentListStyle === args.element.childNodes[index].innerHTML.split(' ').join('').toLocaleLowerCase()) {
430
+ ej2_base_1.addClass([args.element.childNodes[index]], 'e-active');
431
+ break;
432
+ }
433
+ else if (currentListStyle === '' && args.element.childNodes[index].innerHTML !== 'None') {
434
+ ej2_base_1.addClass([args.element.childNodes[index]], 'e-active');
435
+ break;
436
+ }
437
+ }
438
+ }
439
+ }
440
+ }
441
+ _this.closeTooltip({ target: args.event.target });
442
+ if (proxy.parent.readonly || !proxy.parent.enabled) {
443
+ args.cancel = true;
444
+ return;
445
+ }
446
+ var element = (args.event) ? args.event.target : null;
447
+ proxy.currentElement = dropDown.element;
448
+ proxy.currentDropdown = dropDown;
449
+ if (args.event && args.event.type === 'click' && (element.classList.contains(classes_1.CLS_LIST_PRIMARY_CONTENT)
450
+ || element.parentElement.classList.contains(classes_1.CLS_LIST_PRIMARY_CONTENT))) {
451
+ args.cancel = true;
452
+ return;
453
+ }
454
+ proxy.parent.notify(events.beforeDropDownOpen, args);
455
+ },
456
+ close: this.dropDownClose.bind(this),
457
+ open: this.dropDownOpen.bind(this),
458
+ beforeItemRender: this.beforeDropDownItemRender.bind(this)
459
+ });
460
+ dropDown.isStringTemplate = true;
461
+ dropDown.createElement = proxy.parent.createElement;
462
+ dropDown.appendTo(args.element);
463
+ args.element.tabIndex = -1;
464
+ args.element.setAttribute('role', 'button');
465
+ var popupElement = document.getElementById(dropDown.element.id + '-popup');
466
+ popupElement.setAttribute('aria-owns', this.parent.getID());
467
+ if (args.element.childElementCount === 1) {
468
+ dropDown.element.insertBefore(content, dropDown.element.querySelector('.e-caret'));
469
+ }
470
+ args.element.tabIndex = -1;
471
+ dropDown.element.removeAttribute('type');
472
+ dropDown.element.onmousedown = function () {
473
+ if (ej2_base_1.Browser.info.name === 'safari') {
474
+ proxy.parent.notify(events.selectionSave, {});
475
+ }
476
+ };
477
+ dropDown.element.onkeydown = function () {
478
+ if (ej2_base_1.Browser.info.name === 'safari') {
479
+ proxy.parent.notify(events.selectionSave, {});
480
+ }
481
+ };
482
+ return dropDown;
483
+ };
484
+ ToolbarRenderer.prototype.paletteSelection = function (dropDownArgs, currentElement) {
485
+ var ele = dropDownArgs.element.querySelector('.e-control.e-colorpicker');
486
+ var colorbox = [].slice.call(ej2_base_2.selectAll('.e-tile', ele.parentElement));
487
+ ej2_base_1.removeClass(colorbox, 'e-selected');
488
+ var style = currentElement.querySelector('.' + classes_1.CLS_RTE_ELEMENTS).style.borderBottomColor;
489
+ (colorbox.filter(function (colorbox) {
490
+ if (colorbox.style.backgroundColor === style) {
491
+ ej2_base_1.addClass([colorbox], 'e-selected');
492
+ }
493
+ }));
494
+ };
495
+ ToolbarRenderer.prototype.renderColorPickerDropDown = function (args, item, colorPicker, defaultColor, toolbarType) {
496
+ var _this = this;
497
+ var proxy = this;
498
+ var css = classes_1.CLS_RTE_ELEMENTS + ' ' + classes_1.CLS_TB_BTN + ((this.parent.inlineMode) ? (' ' + classes_1.CLS_INLINE_DROPDOWN) : '');
499
+ css += (' ' + ((item === 'backgroundcolor') ? classes_1.CLS_BACKGROUND_COLOR_DROPDOWN : classes_1.CLS_FONT_COLOR_DROPDOWN));
500
+ css += this.parent.getCssClass(true);
501
+ var content = proxy.parent.createElement('span', { className: classes_1.CLS_COLOR_CONTENT });
502
+ var inlineEle = proxy.parent.createElement('span', { className: args.cssClass });
503
+ var range;
504
+ var initialBackgroundColor = (ej2_base_1.isNullOrUndefined(defaultColor)) ? proxy.parent.backgroundColor.default : defaultColor;
505
+ inlineEle.style.borderBottomColor = (item === 'backgroundcolor') ?
506
+ initialBackgroundColor : proxy.parent.fontColor.default;
507
+ content.appendChild(inlineEle);
508
+ var dropDown = new ej2_splitbuttons_1.DropDownButton({
509
+ target: colorPicker.element.parentElement, cssClass: css,
510
+ enablePersistence: this.parent.enablePersistence, enableRtl: this.parent.enableRtl,
511
+ beforeOpen: function (dropDownArgs) {
512
+ if (proxy.parent.readonly || !proxy.parent.enabled) {
513
+ dropDownArgs.cancel = true;
514
+ return;
515
+ }
516
+ var element = (dropDownArgs.event) ? dropDownArgs.event.target : null;
517
+ proxy.currentElement = dropDown.element;
518
+ proxy.currentDropdown = dropDown;
519
+ proxy.paletteSelection(dropDownArgs, proxy.currentElement);
520
+ if (dropDownArgs.event && dropDownArgs.event.type === 'click' && (element.classList.contains(classes_1.CLS_COLOR_CONTENT)
521
+ || element.parentElement.classList.contains(classes_1.CLS_COLOR_CONTENT))) {
522
+ dropDownArgs.cancel = true;
523
+ var colorpickerValue = element.classList.contains(classes_1.CLS_RTE_ELEMENTS) ? element.style.borderBottomColor :
524
+ element.querySelector('.' + classes_1.CLS_RTE_ELEMENTS).style.borderBottomColor;
525
+ proxy.parent.notify(events.selectionRestore, {});
526
+ range = proxy.parent.formatter.editorManager.nodeSelection.getRange(proxy.parent.contentModule.getDocument());
527
+ var parentNode = range.startContainer.parentNode;
528
+ var closestElement = ej2_base_2.closest(range.startContainer.parentNode, 'table');
529
+ var isMACSelection = _this.parent.userAgentData.getPlatform() === 'macOS' && !range.collapsed;
530
+ var allowSelectionRange = isMACSelection ? true : range.collapsed;
531
+ if ((range.startContainer.nodeName === 'TD' || range.startContainer.nodeName === 'TH' ||
532
+ (ej2_base_2.closest(range.startContainer.parentNode, 'td,th')) ||
533
+ (proxy.parent.iframeSettings.enable && !util_1.hasClass(parentNode.ownerDocument.querySelector('body'), 'e-lib')))
534
+ && allowSelectionRange && args.subCommand === 'BackgroundColor' && (ej2_base_2.closest(closestElement, '.' + classes.CLS_RTE) || proxy.parent.iframeSettings.enable) && toolbarType === 'quick') {
535
+ var colorPickerArgs = __assign({ name: 'tableColorPickerChanged', item: { command: 'Table', subCommand: 'BackgroundColor', value: colorpickerValue } }, args);
536
+ proxy.parent.formatter.process(_this.parent, colorPickerArgs, null, colorpickerValue);
537
+ proxy.parent.notify(events.hideTableQuickToolbar, {});
538
+ }
539
+ else {
540
+ proxy.parent.notify(events.colorPickerChanged, { item: { command: args.command, subCommand: args.subCommand,
541
+ value: colorpickerValue }
542
+ });
543
+ }
544
+ return;
545
+ }
546
+ else {
547
+ var ele = dropDownArgs.element.querySelector('.e-control.e-colorpicker');
548
+ var inst = ej2_base_2.getInstance(ele, ej2_inputs_1.ColorPicker);
549
+ inst.showButtons = (dropDownArgs.element.querySelector('.e-color-palette')) ? false : true;
550
+ inst.dataBind();
551
+ }
552
+ dropDownArgs.element.onclick = function (args) {
553
+ if (args.target.classList.contains('e-cancel')) {
554
+ dropDown.toggle();
555
+ }
556
+ };
557
+ },
558
+ open: function (dropDownArgs) {
559
+ _this.setColorPickerContentWidth(colorPicker);
560
+ var focusEle;
561
+ var ele = dropDownArgs.element.querySelector('.e-control.e-colorpicker');
562
+ if (dropDownArgs.element.querySelector('.e-color-palette')) {
563
+ focusEle = ele.parentElement.querySelector('.e-palette');
564
+ }
565
+ else {
566
+ focusEle = ele.parentElement.querySelector('e-handler');
567
+ }
568
+ if (focusEle) {
569
+ focusEle.focus();
570
+ }
571
+ _this.pickerRefresh(dropDownArgs);
572
+ },
573
+ beforeClose: function (dropDownArgs) {
574
+ var element = (dropDownArgs.event) ? dropDownArgs.event.target : null;
575
+ _this.dropDownBeforeClose(dropDownArgs);
576
+ if (dropDownArgs.event && dropDownArgs.event.type === 'click' && (element.classList.contains(classes_1.CLS_COLOR_CONTENT)
577
+ || element.parentElement.classList.contains(classes_1.CLS_COLOR_CONTENT))) {
578
+ var colorpickerValue = element.classList.contains(classes_1.CLS_RTE_ELEMENTS) ? element.style.borderBottomColor :
579
+ element.querySelector('.' + classes_1.CLS_RTE_ELEMENTS).style.borderBottomColor;
580
+ range = proxy.parent.formatter.editorManager.nodeSelection.getRange(proxy.parent.contentModule.getDocument());
581
+ if ((range.startContainer.nodeName === 'TD' || range.startContainer.nodeName === 'TH' ||
582
+ ej2_base_2.closest(range.startContainer.parentNode, 'td,th')) && range.collapsed && toolbarType === 'quick') {
583
+ var colorPickerArgs = __assign({ name: 'tableColorPickerChanged', item: { command: 'Table', subCommand: 'BackgroundColor', value: colorpickerValue } }, args);
584
+ proxy.parent.formatter.process(_this.parent, colorPickerArgs, null, colorpickerValue);
585
+ proxy.parent.notify(events.hideTableQuickToolbar, {});
586
+ }
587
+ else {
588
+ proxy.parent.notify(events.colorPickerChanged, { item: { command: args.command, subCommand: args.subCommand,
589
+ value: colorpickerValue }
590
+ });
591
+ }
592
+ return;
593
+ }
594
+ },
595
+ close: function () {
596
+ if (!_this.isEscapeKey) {
597
+ proxy.parent.notify(events.selectionRestore, {});
598
+ }
599
+ }
600
+ });
601
+ dropDown.isStringTemplate = true;
602
+ dropDown.createElement = proxy.parent.createElement;
603
+ args.element.setAttribute('role', 'button');
604
+ dropDown.appendTo(args.element);
605
+ var popupElement = document.getElementById(dropDown.element.id + '-popup');
606
+ popupElement.setAttribute('aria-owns', this.parent.getID());
607
+ args.element.setAttribute('aria-label', item === 'backgroundcolor' ? default_locale_1.defaultLocale.backgroundColor : default_locale_1.defaultLocale.fontColor);
608
+ dropDown.element.insertBefore(content, dropDown.element.querySelector('.e-caret'));
609
+ args.element.tabIndex = -1;
610
+ dropDown.element.removeAttribute('type');
611
+ dropDown.element.onmousedown = function () {
612
+ proxy.parent.notify(events.selectionSave, {});
613
+ };
614
+ dropDown.element.onkeydown = function () {
615
+ if (!_this.parent.userAgentData.isSafari() || _this.parent.userAgentData.isSafari()
616
+ && proxy.parent.inputElement.contains(proxy.parent.getRange().startContainer)) {
617
+ proxy.parent.notify(events.selectionSave, {});
618
+ }
619
+ };
620
+ return dropDown;
621
+ };
622
+ ToolbarRenderer.prototype.pickerRefresh = function (dropDownArgs) {
623
+ if (this.parent.backgroundColor.mode === 'Picker') {
624
+ var popupElem = dropDownArgs.element.parentElement;
625
+ popupElem.style.width = (popupElem.offsetWidth + 5).toString() + 'px';
626
+ ej2_base_2.getInstance(popupElem, ej2_popups_1.Popup).refreshPosition(popupElem);
627
+ popupElem.style.width = (popupElem.offsetWidth - 5).toString() + 'px';
628
+ }
629
+ };
630
+ ToolbarRenderer.prototype.setColorPickerContentWidth = function (colorPicker) {
631
+ var colorPickerContent = colorPicker.element.nextSibling;
632
+ if (colorPickerContent.style.width === '0px') {
633
+ colorPickerContent.style.width = '';
634
+ var borderWidth = parseInt(getComputedStyle(colorPickerContent).borderBottomWidth, 10);
635
+ colorPickerContent.style.width = ej2_base_1.formatUnit(colorPickerContent.children[0].offsetWidth
636
+ + borderWidth + borderWidth);
637
+ }
638
+ };
639
+ ToolbarRenderer.prototype.renderColorPicker = function (args, item, toolbarType) {
640
+ var _this = this;
641
+ var proxy = this;
642
+ var value;
643
+ var colorPicker = new ej2_inputs_1.ColorPicker({
644
+ enableRtl: this.parent.enableRtl,
645
+ inline: true,
646
+ value: null,
647
+ cssClass: ((item === 'backgroundcolor') ? classes_1.CLS_BACKGROUND_COLOR_PICKER : classes_1.CLS_FONT_COLOR_PICKER) + ' ' + args.cssClass,
648
+ created: function () {
649
+ var value = (item === 'backgroundcolor') ? proxy.parent.backgroundColor.default : proxy.parent.fontColor.default;
650
+ colorPicker.setProperties({ value: value });
651
+ },
652
+ mode: ((item === 'backgroundcolor') ? proxy.parent.backgroundColor.mode : proxy.parent.fontColor.mode),
653
+ modeSwitcher: ((item === 'backgroundcolor') ? proxy.parent.backgroundColor.modeSwitcher : proxy.parent.fontColor.modeSwitcher),
654
+ presetColors: (item === 'backgroundcolor') ? this.parent.backgroundColor.colorCode : this.parent.fontColor.colorCode,
655
+ columns: (item === 'backgroundcolor') ? this.parent.backgroundColor.columns : this.parent.fontColor.columns,
656
+ beforeTileRender: function (args) {
657
+ args.element.classList.add(classes_1.CLS_COLOR_PALETTE);
658
+ args.element.classList.add(classes_1.CLS_CUSTOM_TILE);
659
+ if (!ej2_base_1.isNullOrUndefined(_this.parent.cssClass)) {
660
+ var allClassName = _this.parent.getCssClass().split(' ');
661
+ for (var i = 0; i < allClassName.length; i++) {
662
+ if (allClassName[i].trim() !== '') {
663
+ args.element.classList.add(allClassName[i]);
664
+ }
665
+ }
666
+ }
667
+ if (args.value === '') {
668
+ args.element.classList.add(classes_1.CLS_NOCOLOR_ITEM);
669
+ }
670
+ },
671
+ change: function (colorPickerArgs) {
672
+ var colorpickerValue = colorPickerArgs.currentValue.rgba;
673
+ colorPickerArgs.item = {
674
+ command: args.command,
675
+ subCommand: args.subCommand,
676
+ value: colorpickerValue
677
+ };
678
+ proxy.parent.notify(events.selectionRestore, {});
679
+ if (proxy.currentElement) {
680
+ proxy.currentElement.querySelector('.' + classes_1.CLS_RTE_ELEMENTS).style.borderBottomColor = colorpickerValue;
681
+ }
682
+ var range = proxy.parent.formatter.editorManager.nodeSelection.getRange(proxy.parent.contentModule.getDocument());
683
+ var closestElement = ej2_base_2.closest(range.startContainer.parentNode, 'table');
684
+ if ((range.startContainer.nodeName === 'TD' || range.startContainer.nodeName === 'TH' || range.startContainer.nodeName === 'BODY' ||
685
+ (range.startContainer.parentNode && ej2_base_2.closest(range.startContainer.parentNode, 'td,th'))) && range.collapsed && args.subCommand === 'BackgroundColor' && (closestElement && ej2_base_2.closest(closestElement, '.' + classes.CLS_RTE) || proxy.parent.iframeSettings.enable)
686
+ && toolbarType === 'quick') {
687
+ colorPickerArgs.name = 'tableColorPickerChanged';
688
+ colorPickerArgs.item.command = 'Table';
689
+ proxy.parent.formatter.process(_this.parent, colorPickerArgs, colorPickerArgs.event, colorPickerArgs.item.value);
690
+ proxy.parent.notify(events.hideTableQuickToolbar, {});
691
+ }
692
+ else {
693
+ proxy.parent.notify(events.colorPickerChanged, colorPickerArgs);
694
+ }
695
+ if (proxy.currentDropdown) {
696
+ proxy.currentDropdown.toggle();
697
+ }
698
+ },
699
+ beforeModeSwitch: function (args) {
700
+ value = colorPicker.value;
701
+ if (value === '') {
702
+ colorPicker.setProperties({ value: ((args.mode === 'Picker') ? '#008000ff' : '') }, true);
703
+ }
704
+ colorPicker.showButtons = args.mode === 'Palette' ? false : true;
705
+ }
706
+ });
707
+ colorPicker.isStringTemplate = true;
708
+ colorPicker.createElement = this.parent.createElement;
709
+ colorPicker.appendTo(document.getElementById(args.target));
710
+ return colorPicker;
711
+ };
712
+ ToolbarRenderer.prototype.renderPanel = function () {
713
+ this.getPanel().classList.add(classes_1.CLS_TOOLBAR);
714
+ };
715
+ ToolbarRenderer.prototype.getPanel = function () {
716
+ return this.toolbarPanel;
717
+ };
718
+ ToolbarRenderer.prototype.setPanel = function (panel) {
719
+ this.toolbarPanel = panel;
720
+ };
721
+ ToolbarRenderer.prototype.destroy = function () {
722
+ if (this.isDestroyed) {
723
+ return;
724
+ }
725
+ if (this.tooltip && !this.tooltip.isDestroyed) {
726
+ this.tooltip.destroy();
727
+ var tooltipElements = document.querySelectorAll('[data-rte-id="' + this.parent.getID() + '"]');
728
+ for (var i = 0; i < tooltipElements.length; i++) {
729
+ var tooltipEle = tooltipElements[i];
730
+ if (this.parent.getID() === tooltipEle.getAttribute('data-rte-id')) {
731
+ ej2_base_1.detach(tooltipEle);
732
+ }
733
+ }
734
+ }
735
+ this.unWireEvent();
736
+ this.mode = null;
737
+ this.toolbarPanel = null;
738
+ this.currentElement = null;
739
+ this.currentDropdown = null;
740
+ this.tooltip = null;
741
+ this.tooltipTargetEle = null;
742
+ this.isDestroyed = true;
743
+ };
744
+ return ToolbarRenderer;
745
+ }());
746
+ exports.ToolbarRenderer = ToolbarRenderer;
747
+ });