@sapui5/sap.ui.richtexteditor 1.84.44 → 1.84.45
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/LICENSE.txt +13 -10
- package/README.md +1 -1
- package/package.json +1 -1
- package/src/sap/ui/richtexteditor/.library +2 -2
- package/src/sap/ui/richtexteditor/RTESplitButton.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/icons/default/icons.js +3 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/icons/default/icons.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/ar.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/bg_BG.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/ca.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/cs.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/da.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/de.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/el.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/es.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/eu.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/fa.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/fi.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/fr_FR.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/he_IL.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/hi.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/hr.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/hu_HU.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/id.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/it.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/ja.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/kk.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/ko_KR.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/ms.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/nb_NO.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/nl.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/pl.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/pt_BR.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/pt_PT.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/ro.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/ru.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/sk.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/sl_SI.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/sv_SE.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/th_TH.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/tr.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/uk.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/vi.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/zh_CN.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/zh_TW.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/models/dom/model.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/models/dom/model.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/accordion/plugin.js +39 -18
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/accordion/plugin.min.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/CHANGELOG.md +10 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/codemirror.min.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/codemirror.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/codemirror_css.js +13 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/customeditor.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/customeditor.min.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/plugin.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/plugin.min.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/readme.txt +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/version.txt +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advlist/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advlist/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/anchor/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/anchor/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/autolink/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/autolink/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/autoresize/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/autoresize/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/autosave/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/autosave/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/charmap/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/charmap/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/code/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/code/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/codesample/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/codesample/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/directionality/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/directionality/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/emoticons/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/emoticons/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/fullscreen/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/fullscreen/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/ar.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/bg_BG.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/ca.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/cs.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/da.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/de.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/el.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/en.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/es.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/eu.js +6 -6
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/fa.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/fi.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/fr_FR.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/he_IL.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/hi.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/hr.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/hu_HU.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/id.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/it.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/ja.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/kk.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/ko_KR.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/ms.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/nb_NO.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/nl.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/pl.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/pt_BR.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/pt_PT.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/ro.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/ru.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/sk.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/sl_SI.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/sv_SE.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/th_TH.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/tr.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/uk.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/vi.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/zh_CN.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/zh_TW.js +5 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/plugin.js +10 -5
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/plugin.min.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/image/plugin.js +4 -3
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/image/plugin.min.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/importcss/plugin.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/importcss/plugin.min.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/insertdatetime/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/insertdatetime/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/link/plugin.js +3 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/link/plugin.min.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/lists/plugin.js +282 -58
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/lists/plugin.min.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/media/plugin.js +7 -25
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/media/plugin.min.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/nonbreaking/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/nonbreaking/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/pagebreak/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/pagebreak/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/CHANGELOG.md +19 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/js/wordimport.js +1972 -1673
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/ar.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/bg_BG.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/ca.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/cs.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/da.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/de.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/el.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/es.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/eu.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/fa.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/fi.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/fr_FR.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/he_IL.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/hi.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/hr.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/hu_HU.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/id.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/it.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/ja.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/kk.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/ko_KR.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/ms.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/nb_NO.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/nl.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/pl.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/pt_BR.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/pt_PT.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/ro.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/ru.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/sk.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/sl_SI.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/sv_SE.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/th_TH.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/tr.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/uk.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/vi.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/zh_CN.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/zh_TW.js +0 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/plugin.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/plugin.min.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/readme.txt +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/version.txt +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/preview/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/preview/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/quickbars/plugin.js +13 -4
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/quickbars/plugin.min.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/save/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/save/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/searchreplace/plugin.js +3 -3
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/searchreplace/plugin.min.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/table/plugin.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/table/plugin.min.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/template/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/template/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/visualblocks/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/visualblocks/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/visualchars/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/visualchars/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/wordcount/plugin.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/wordcount/plugin.min.js +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/readme.txt +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/dark/content.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/default/content.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/document/content.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/tinymce-5/content.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/tinymce-5-dark/content.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/writer/content.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/content.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/content.inline.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/content.inline.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/content.inline.min.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/content.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/content.min.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/skin.css +86 -11
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/skin.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/skin.min.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/skin.shadowdom.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/content.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/content.inline.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/content.inline.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/content.inline.min.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/content.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/content.min.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/skin.css +89 -14
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/skin.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/skin.min.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/skin.shadowdom.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/content.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/content.inline.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/content.inline.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/content.inline.min.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/content.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/content.min.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/skin.css +86 -11
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/skin.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/skin.min.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/skin.shadowdom.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/content.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/content.inline.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/content.inline.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/content.inline.min.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/content.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/content.min.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/skin.css +86 -11
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/skin.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/skin.min.css +1 -1
- package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/skin.shadowdom.js +8 -0
- package/src/sap/ui/richtexteditor/js/tiny_mce6/themes/silver/theme.js +20786 -20200
- package/src/sap/ui/richtexteditor/js/tiny_mce6/themes/silver/theme.min.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/tinymce.d.ts +40 -8
- package/src/sap/ui/richtexteditor/js/tiny_mce6/tinymce.js +2031 -1572
- package/src/sap/ui/richtexteditor/js/tiny_mce6/tinymce.min.js +2 -2
- package/src/sap/ui/richtexteditor/js/tiny_mce6/version.txt +1 -1
- package/src/sap/ui/richtexteditor/library.js +1 -1
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Copyright (c) 2023 Ephox Corporation DBA Tiny Technologies, Inc.
|
|
5
5
|
* Licensed under the Tiny commercial license. See https://www.tiny.cloud/legal/
|
|
6
6
|
*
|
|
7
|
-
* Version: 6.
|
|
7
|
+
* Version: 6.8.2
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
(function () {
|
|
@@ -45,6 +45,7 @@
|
|
|
45
45
|
|
|
46
46
|
const noop = () => {
|
|
47
47
|
};
|
|
48
|
+
const compose1 = (fbc, fab) => a => fbc(fab(a));
|
|
48
49
|
const constant = value => {
|
|
49
50
|
return () => {
|
|
50
51
|
return value;
|
|
@@ -53,6 +54,12 @@
|
|
|
53
54
|
const tripleEquals = (a, b) => {
|
|
54
55
|
return a === b;
|
|
55
56
|
};
|
|
57
|
+
function curry(fn, ...initialArgs) {
|
|
58
|
+
return (...restArgs) => {
|
|
59
|
+
const all = initialArgs.concat(restArgs);
|
|
60
|
+
return fn.apply(null, all);
|
|
61
|
+
};
|
|
62
|
+
}
|
|
56
63
|
const not = f => t => !f(t);
|
|
57
64
|
const never = constant(false);
|
|
58
65
|
|
|
@@ -266,7 +273,11 @@
|
|
|
266
273
|
const equals = (lhs, rhs, comparator = tripleEquals) => lift2(lhs, rhs, comparator).getOr(lhs.isNone() && rhs.isNone());
|
|
267
274
|
const lift2 = (oa, ob, f) => oa.isSome() && ob.isSome() ? Optional.some(f(oa.getOrDie(), ob.getOrDie())) : Optional.none();
|
|
268
275
|
|
|
276
|
+
const COMMENT = 8;
|
|
277
|
+
const DOCUMENT = 9;
|
|
278
|
+
const DOCUMENT_FRAGMENT = 11;
|
|
269
279
|
const ELEMENT = 1;
|
|
280
|
+
const TEXT = 3;
|
|
270
281
|
|
|
271
282
|
const fromHtml = (html, scope) => {
|
|
272
283
|
const doc = scope || document;
|
|
@@ -332,17 +343,39 @@
|
|
|
332
343
|
};
|
|
333
344
|
const is = is$1;
|
|
334
345
|
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
346
|
+
const Global = typeof window !== 'undefined' ? window : Function('return this;')();
|
|
347
|
+
|
|
348
|
+
const path = (parts, scope) => {
|
|
349
|
+
let o = scope !== undefined && scope !== null ? scope : Global;
|
|
350
|
+
for (let i = 0; i < parts.length && o !== undefined && o !== null; ++i) {
|
|
351
|
+
o = o[parts[i]];
|
|
352
|
+
}
|
|
353
|
+
return o;
|
|
354
|
+
};
|
|
355
|
+
const resolve = (p, scope) => {
|
|
356
|
+
const parts = p.split('.');
|
|
357
|
+
return path(parts, scope);
|
|
358
|
+
};
|
|
359
|
+
|
|
360
|
+
const unsafe = (name, scope) => {
|
|
361
|
+
return resolve(name, scope);
|
|
362
|
+
};
|
|
363
|
+
const getOrDie = (name, scope) => {
|
|
364
|
+
const actual = unsafe(name, scope);
|
|
365
|
+
if (actual === undefined || actual === null) {
|
|
366
|
+
throw new Error(name + ' not available on this browser');
|
|
342
367
|
}
|
|
368
|
+
return actual;
|
|
343
369
|
};
|
|
344
370
|
|
|
345
|
-
|
|
371
|
+
const getPrototypeOf = Object.getPrototypeOf;
|
|
372
|
+
const sandHTMLElement = scope => {
|
|
373
|
+
return getOrDie('HTMLElement', scope);
|
|
374
|
+
};
|
|
375
|
+
const isPrototypeOf = x => {
|
|
376
|
+
const scope = resolve('ownerDocument.defaultView', x);
|
|
377
|
+
return isObject(x) && (sandHTMLElement(scope).prototype.isPrototypeOf(x) || /^HTML\w*Element$/.test(getPrototypeOf(x).constructor.name));
|
|
378
|
+
};
|
|
346
379
|
|
|
347
380
|
const name = element => {
|
|
348
381
|
const r = element.dom.nodeName;
|
|
@@ -350,9 +383,16 @@
|
|
|
350
383
|
};
|
|
351
384
|
const type = element => element.dom.nodeType;
|
|
352
385
|
const isType = t => element => type(element) === t;
|
|
386
|
+
const isComment = element => type(element) === COMMENT || name(element) === '#comment';
|
|
387
|
+
const isHTMLElement = element => isElement$1(element) && isPrototypeOf(element.dom);
|
|
353
388
|
const isElement$1 = isType(ELEMENT);
|
|
389
|
+
const isText = isType(TEXT);
|
|
390
|
+
const isDocument = isType(DOCUMENT);
|
|
391
|
+
const isDocumentFragment = isType(DOCUMENT_FRAGMENT);
|
|
354
392
|
const isTag = tag => e => isElement$1(e) && name(e) === tag;
|
|
355
393
|
|
|
394
|
+
const owner = element => SugarElement.fromDom(element.dom.ownerDocument);
|
|
395
|
+
const documentOrOwner = dos => isDocument(dos) ? dos : owner(dos);
|
|
356
396
|
const parent = element => Optional.from(element.dom.parentNode).map(SugarElement.fromDom);
|
|
357
397
|
const parentElement = element => Optional.from(element.dom.parentElement).map(SugarElement.fromDom);
|
|
358
398
|
const nextSibling = element => Optional.from(element.dom.nextSibling).map(SugarElement.fromDom);
|
|
@@ -364,7 +404,35 @@
|
|
|
364
404
|
const firstChild = element => child(element, 0);
|
|
365
405
|
const lastChild = element => child(element, element.dom.childNodes.length - 1);
|
|
366
406
|
|
|
367
|
-
const
|
|
407
|
+
const isShadowRoot = dos => isDocumentFragment(dos) && isNonNullable(dos.dom.host);
|
|
408
|
+
const supported = isFunction(Element.prototype.attachShadow) && isFunction(Node.prototype.getRootNode);
|
|
409
|
+
const getRootNode = supported ? e => SugarElement.fromDom(e.dom.getRootNode()) : documentOrOwner;
|
|
410
|
+
const getShadowRoot = e => {
|
|
411
|
+
const r = getRootNode(e);
|
|
412
|
+
return isShadowRoot(r) ? Optional.some(r) : Optional.none();
|
|
413
|
+
};
|
|
414
|
+
const getShadowHost = e => SugarElement.fromDom(e.dom.host);
|
|
415
|
+
|
|
416
|
+
const inBody = element => {
|
|
417
|
+
const dom = isText(element) ? element.dom.parentNode : element.dom;
|
|
418
|
+
if (dom === undefined || dom === null || dom.ownerDocument === null) {
|
|
419
|
+
return false;
|
|
420
|
+
}
|
|
421
|
+
const doc = dom.ownerDocument;
|
|
422
|
+
return getShadowRoot(SugarElement.fromDom(dom)).fold(() => doc.body.contains(dom), compose1(inBody, getShadowHost));
|
|
423
|
+
};
|
|
424
|
+
|
|
425
|
+
var ClosestOrAncestor = (is, ancestor, scope, a, isRoot) => {
|
|
426
|
+
if (is(scope, a)) {
|
|
427
|
+
return Optional.some(scope);
|
|
428
|
+
} else if (isFunction(isRoot) && isRoot(scope)) {
|
|
429
|
+
return Optional.none();
|
|
430
|
+
} else {
|
|
431
|
+
return ancestor(scope, a, isRoot);
|
|
432
|
+
}
|
|
433
|
+
};
|
|
434
|
+
|
|
435
|
+
const ancestor$3 = (scope, predicate, isRoot) => {
|
|
368
436
|
let element = scope.dom;
|
|
369
437
|
const stop = isFunction(isRoot) ? isRoot : never;
|
|
370
438
|
while (element.parentNode) {
|
|
@@ -378,10 +446,26 @@
|
|
|
378
446
|
}
|
|
379
447
|
return Optional.none();
|
|
380
448
|
};
|
|
381
|
-
const closest = (scope, predicate, isRoot) => {
|
|
449
|
+
const closest$2 = (scope, predicate, isRoot) => {
|
|
382
450
|
const is = (s, test) => test(s);
|
|
383
|
-
return ClosestOrAncestor(is, ancestor, scope, predicate, isRoot);
|
|
451
|
+
return ClosestOrAncestor(is, ancestor$3, scope, predicate, isRoot);
|
|
452
|
+
};
|
|
453
|
+
|
|
454
|
+
const ancestor$2 = (scope, selector, isRoot) => ancestor$3(scope, e => is$1(e, selector), isRoot);
|
|
455
|
+
const closest$1 = (scope, selector, isRoot) => {
|
|
456
|
+
const is = (element, selector) => is$1(element, selector);
|
|
457
|
+
return ClosestOrAncestor(is, ancestor$2, scope, selector, isRoot);
|
|
458
|
+
};
|
|
459
|
+
|
|
460
|
+
const closest = target => closest$1(target, '[contenteditable]');
|
|
461
|
+
const isEditable = (element, assumeEditable = false) => {
|
|
462
|
+
if (inBody(element)) {
|
|
463
|
+
return element.dom.isContentEditable;
|
|
464
|
+
} else {
|
|
465
|
+
return closest(element).fold(constant(assumeEditable), editable => getRaw(editable) === 'true');
|
|
466
|
+
}
|
|
384
467
|
};
|
|
468
|
+
const getRaw = element => element.dom.contentEditable;
|
|
385
469
|
|
|
386
470
|
const before$1 = (marker, element) => {
|
|
387
471
|
const parent$1 = parent(marker);
|
|
@@ -400,6 +484,14 @@
|
|
|
400
484
|
before$1(v, element);
|
|
401
485
|
});
|
|
402
486
|
};
|
|
487
|
+
const prepend = (parent, element) => {
|
|
488
|
+
const firstChild$1 = firstChild(parent);
|
|
489
|
+
firstChild$1.fold(() => {
|
|
490
|
+
append$1(parent, element);
|
|
491
|
+
}, v => {
|
|
492
|
+
parent.dom.insertBefore(element.dom, v.dom);
|
|
493
|
+
});
|
|
494
|
+
};
|
|
403
495
|
const append$1 = (parent, element) => {
|
|
404
496
|
parent.dom.appendChild(element.dom);
|
|
405
497
|
};
|
|
@@ -721,6 +813,7 @@
|
|
|
721
813
|
const parentBlock = find(parentBlocks, elm => isListHost(editor.schema, elm));
|
|
722
814
|
return parentBlock.getOr(editor.getBody());
|
|
723
815
|
};
|
|
816
|
+
const isListInsideAnLiWithFirstAndLastNotListElement = list => parent(list).exists(parent => isListItemNode(parent.dom) && firstChild(parent).exists(firstChild => !isListNode(firstChild.dom)) && lastChild(parent).exists(lastChild => !isListNode(lastChild.dom)));
|
|
724
817
|
const findLastParentListNode = (editor, elm) => {
|
|
725
818
|
const parentLists = editor.dom.getParents(elm, 'ol,ul', getClosestListHost(editor, elm));
|
|
726
819
|
return last(parentLists);
|
|
@@ -730,9 +823,14 @@
|
|
|
730
823
|
const subsequentLists = filter$1(editor.selection.getSelectedBlocks(), isOlUlNode);
|
|
731
824
|
return firstList.toArray().concat(subsequentLists);
|
|
732
825
|
};
|
|
826
|
+
const getParentLists = editor => {
|
|
827
|
+
const elm = editor.selection.getStart();
|
|
828
|
+
return editor.dom.getParents(elm, 'ol,ul', getClosestListHost(editor, elm));
|
|
829
|
+
};
|
|
733
830
|
const getSelectedListRoots = editor => {
|
|
734
831
|
const selectedLists = getSelectedLists(editor);
|
|
735
|
-
|
|
832
|
+
const parentLists = getParentLists(editor);
|
|
833
|
+
return find(parentLists, p => isListInsideAnLiWithFirstAndLastNotListElement(SugarElement.fromDom(p))).fold(() => getUniqueListRoots(editor, selectedLists), l => [l]);
|
|
736
834
|
};
|
|
737
835
|
const getUniqueListRoots = (editor, lists) => {
|
|
738
836
|
const listRoots = map(lists, list => findLastParentListNode(editor, list).getOr(list));
|
|
@@ -795,6 +893,32 @@
|
|
|
795
893
|
internalSet(dom, property, value);
|
|
796
894
|
};
|
|
797
895
|
|
|
896
|
+
const isList = el => is(el, 'OL,UL');
|
|
897
|
+
const isListItem = el => is(el, 'LI');
|
|
898
|
+
const hasFirstChildList = el => firstChild(el).exists(isList);
|
|
899
|
+
const hasLastChildList = el => lastChild(el).exists(isList);
|
|
900
|
+
|
|
901
|
+
const isEntryList = entry => 'listAttributes' in entry;
|
|
902
|
+
const isEntryComment = entry => 'isComment' in entry;
|
|
903
|
+
const isEntryFragment = entry => 'isFragment' in entry;
|
|
904
|
+
const isIndented = entry => entry.depth > 0;
|
|
905
|
+
const isSelected = entry => entry.isSelected;
|
|
906
|
+
const cloneItemContent = li => {
|
|
907
|
+
const children$1 = children(li);
|
|
908
|
+
const content = hasLastChildList(li) ? children$1.slice(0, -1) : children$1;
|
|
909
|
+
return map(content, deep);
|
|
910
|
+
};
|
|
911
|
+
const createEntry = (li, depth, isSelected) => parent(li).filter(isElement$1).map(list => ({
|
|
912
|
+
depth,
|
|
913
|
+
dirty: false,
|
|
914
|
+
isSelected,
|
|
915
|
+
content: cloneItemContent(li),
|
|
916
|
+
itemAttributes: clone$1(li),
|
|
917
|
+
listAttributes: clone$1(list),
|
|
918
|
+
listType: name(list),
|
|
919
|
+
isInPreviousLi: false
|
|
920
|
+
}));
|
|
921
|
+
|
|
798
922
|
const joinSegment = (parent, child) => {
|
|
799
923
|
append$1(parent.item, child.list);
|
|
800
924
|
};
|
|
@@ -817,7 +941,7 @@
|
|
|
817
941
|
const createSegments = (scope, entry, size) => {
|
|
818
942
|
const segments = [];
|
|
819
943
|
for (let i = 0; i < size; i++) {
|
|
820
|
-
segments.push(createSegment(scope, entry.listType));
|
|
944
|
+
segments.push(createSegment(scope, isEntryList(entry) ? entry.listType : entry.parentListType));
|
|
821
945
|
}
|
|
822
946
|
return segments;
|
|
823
947
|
};
|
|
@@ -826,8 +950,10 @@
|
|
|
826
950
|
set(segments[i].item, 'list-style-type', 'none');
|
|
827
951
|
}
|
|
828
952
|
last(segments).each(segment => {
|
|
829
|
-
|
|
830
|
-
|
|
953
|
+
if (isEntryList(entry)) {
|
|
954
|
+
setAll(segment.list, entry.listAttributes);
|
|
955
|
+
setAll(segment.item, entry.itemAttributes);
|
|
956
|
+
}
|
|
831
957
|
append(segment.item, entry.content);
|
|
832
958
|
});
|
|
833
959
|
};
|
|
@@ -850,9 +976,16 @@
|
|
|
850
976
|
const writeShallow = (scope, cast, entry) => {
|
|
851
977
|
const newCast = cast.slice(0, entry.depth);
|
|
852
978
|
last(newCast).each(segment => {
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
979
|
+
if (isEntryList(entry)) {
|
|
980
|
+
const item = createItem(scope, entry.itemAttributes, entry.content);
|
|
981
|
+
appendItem(segment, item);
|
|
982
|
+
normalizeSegment(segment, entry);
|
|
983
|
+
} else if (isEntryFragment(entry)) {
|
|
984
|
+
append(segment.item, entry.content);
|
|
985
|
+
} else {
|
|
986
|
+
const item = SugarElement.fromHtml(`<!--${ entry.content }-->`);
|
|
987
|
+
append$1(segment.list, item);
|
|
988
|
+
}
|
|
856
989
|
});
|
|
857
990
|
return newCast;
|
|
858
991
|
};
|
|
@@ -864,33 +997,27 @@
|
|
|
864
997
|
return cast.concat(segments);
|
|
865
998
|
};
|
|
866
999
|
const composeList = (scope, entries) => {
|
|
867
|
-
|
|
868
|
-
|
|
1000
|
+
let firstCommentEntryOpt = Optional.none();
|
|
1001
|
+
const cast = foldl(entries, (cast, entry, i) => {
|
|
1002
|
+
if (!isEntryComment(entry)) {
|
|
1003
|
+
return entry.depth > cast.length ? writeDeep(scope, cast, entry) : writeShallow(scope, cast, entry);
|
|
1004
|
+
} else {
|
|
1005
|
+
if (i === 0) {
|
|
1006
|
+
firstCommentEntryOpt = Optional.some(entry);
|
|
1007
|
+
return cast;
|
|
1008
|
+
}
|
|
1009
|
+
return writeShallow(scope, cast, entry);
|
|
1010
|
+
}
|
|
869
1011
|
}, []);
|
|
1012
|
+
firstCommentEntryOpt.each(firstCommentEntry => {
|
|
1013
|
+
const item = SugarElement.fromHtml(`<!--${ firstCommentEntry.content }-->`);
|
|
1014
|
+
head(cast).each(fistCast => {
|
|
1015
|
+
prepend(fistCast.list, item);
|
|
1016
|
+
});
|
|
1017
|
+
});
|
|
870
1018
|
return head(cast).map(segment => segment.list);
|
|
871
1019
|
};
|
|
872
1020
|
|
|
873
|
-
const isList = el => is(el, 'OL,UL');
|
|
874
|
-
const hasFirstChildList = el => firstChild(el).exists(isList);
|
|
875
|
-
const hasLastChildList = el => lastChild(el).exists(isList);
|
|
876
|
-
|
|
877
|
-
const isIndented = entry => entry.depth > 0;
|
|
878
|
-
const isSelected = entry => entry.isSelected;
|
|
879
|
-
const cloneItemContent = li => {
|
|
880
|
-
const children$1 = children(li);
|
|
881
|
-
const content = hasLastChildList(li) ? children$1.slice(0, -1) : children$1;
|
|
882
|
-
return map(content, deep);
|
|
883
|
-
};
|
|
884
|
-
const createEntry = (li, depth, isSelected) => parent(li).filter(isElement$1).map(list => ({
|
|
885
|
-
depth,
|
|
886
|
-
dirty: false,
|
|
887
|
-
isSelected,
|
|
888
|
-
content: cloneItemContent(li),
|
|
889
|
-
itemAttributes: clone$1(li),
|
|
890
|
-
listAttributes: clone$1(list),
|
|
891
|
-
listType: name(list)
|
|
892
|
-
}));
|
|
893
|
-
|
|
894
1021
|
const indentEntry = (indentation, entry) => {
|
|
895
1022
|
switch (indentation) {
|
|
896
1023
|
case 'Indent':
|
|
@@ -906,8 +1033,10 @@
|
|
|
906
1033
|
};
|
|
907
1034
|
|
|
908
1035
|
const cloneListProperties = (target, source) => {
|
|
909
|
-
target
|
|
910
|
-
|
|
1036
|
+
if (isEntryList(target) && isEntryList(source)) {
|
|
1037
|
+
target.listType = source.listType;
|
|
1038
|
+
target.listAttributes = { ...source.listAttributes };
|
|
1039
|
+
}
|
|
911
1040
|
};
|
|
912
1041
|
const cleanListProperties = entry => {
|
|
913
1042
|
entry.listAttributes = filter(entry.listAttributes, (_value, key) => key !== 'start');
|
|
@@ -921,7 +1050,7 @@
|
|
|
921
1050
|
const normalizeEntries = entries => {
|
|
922
1051
|
each$1(entries, (entry, i) => {
|
|
923
1052
|
closestSiblingEntry(entries, i).fold(() => {
|
|
924
|
-
if (entry.dirty) {
|
|
1053
|
+
if (entry.dirty && isEntryList(entry)) {
|
|
925
1054
|
cleanListProperties(entry);
|
|
926
1055
|
}
|
|
927
1056
|
}, matchingEntry => cloneListProperties(entry, matchingEntry));
|
|
@@ -943,7 +1072,17 @@
|
|
|
943
1072
|
};
|
|
944
1073
|
};
|
|
945
1074
|
|
|
946
|
-
const
|
|
1075
|
+
const parseSingleItem = (depth, itemSelection, selectionState, item) => {
|
|
1076
|
+
var _a;
|
|
1077
|
+
if (isComment(item)) {
|
|
1078
|
+
return [{
|
|
1079
|
+
depth: depth + 1,
|
|
1080
|
+
content: (_a = item.dom.nodeValue) !== null && _a !== void 0 ? _a : '',
|
|
1081
|
+
dirty: false,
|
|
1082
|
+
isSelected: false,
|
|
1083
|
+
isComment: true
|
|
1084
|
+
}];
|
|
1085
|
+
}
|
|
947
1086
|
itemSelection.each(selection => {
|
|
948
1087
|
if (eq(selection.start, item)) {
|
|
949
1088
|
selectionState.set(true);
|
|
@@ -957,7 +1096,29 @@
|
|
|
957
1096
|
});
|
|
958
1097
|
const childListEntries = lastChild(item).filter(isList).map(list => parseList(depth, itemSelection, selectionState, list)).getOr([]);
|
|
959
1098
|
return currentItemEntry.toArray().concat(childListEntries);
|
|
960
|
-
}
|
|
1099
|
+
};
|
|
1100
|
+
const parseItem = (depth, itemSelection, selectionState, item) => firstChild(item).filter(isList).fold(() => parseSingleItem(depth, itemSelection, selectionState, item), list => {
|
|
1101
|
+
const parsedSiblings = foldl(children(item), (acc, liChild, i) => {
|
|
1102
|
+
if (i === 0) {
|
|
1103
|
+
return acc;
|
|
1104
|
+
} else {
|
|
1105
|
+
if (isListItem(liChild)) {
|
|
1106
|
+
return acc.concat(parseSingleItem(depth, itemSelection, selectionState, liChild));
|
|
1107
|
+
} else {
|
|
1108
|
+
const fragment = {
|
|
1109
|
+
isFragment: true,
|
|
1110
|
+
depth,
|
|
1111
|
+
content: [liChild],
|
|
1112
|
+
isSelected: false,
|
|
1113
|
+
dirty: false,
|
|
1114
|
+
parentListType: name(list)
|
|
1115
|
+
};
|
|
1116
|
+
return acc.concat(fragment);
|
|
1117
|
+
}
|
|
1118
|
+
}
|
|
1119
|
+
}, []);
|
|
1120
|
+
return parseList(depth, itemSelection, selectionState, list).concat(parsedSiblings);
|
|
1121
|
+
});
|
|
961
1122
|
const parseList = (depth, itemSelection, selectionState, list) => bind(children(list), element => {
|
|
962
1123
|
const parser = isList(element) ? parseList : parseItem;
|
|
963
1124
|
const newDepth = depth + 1;
|
|
@@ -975,7 +1136,7 @@
|
|
|
975
1136
|
const outdentedComposer = (editor, entries) => {
|
|
976
1137
|
const normalizedEntries = normalizeEntries(entries);
|
|
977
1138
|
return map(normalizedEntries, entry => {
|
|
978
|
-
const content = fromElements(entry.content);
|
|
1139
|
+
const content = !isEntryComment(entry) ? fromElements(entry.content) : fromElements([SugarElement.fromHtml(`<!--${ entry.content }-->`)]);
|
|
979
1140
|
return SugarElement.fromDom(createTextBlock(editor, content.dom));
|
|
980
1141
|
});
|
|
981
1142
|
};
|
|
@@ -1033,6 +1194,10 @@
|
|
|
1033
1194
|
const zeroWidth = '\uFEFF';
|
|
1034
1195
|
const isZwsp = char => char === zeroWidth;
|
|
1035
1196
|
|
|
1197
|
+
const ancestor$1 = (scope, predicate, isRoot) => ancestor$3(scope, predicate, isRoot).isSome();
|
|
1198
|
+
|
|
1199
|
+
const ancestor = (element, target) => ancestor$1(element, curry(eq, target));
|
|
1200
|
+
|
|
1036
1201
|
var global$1 = tinymce.util.Tools.resolve('tinymce.dom.BookmarkManager');
|
|
1037
1202
|
|
|
1038
1203
|
const DOM$1 = global$3.DOM;
|
|
@@ -1152,9 +1317,15 @@
|
|
|
1152
1317
|
if (!start && isBr(container.nextSibling)) {
|
|
1153
1318
|
container = container.nextSibling;
|
|
1154
1319
|
}
|
|
1320
|
+
const findBlockAncestor = node => {
|
|
1321
|
+
while (!editor.dom.isBlock(node) && node.parentNode && root !== node) {
|
|
1322
|
+
node = node.parentNode;
|
|
1323
|
+
}
|
|
1324
|
+
return node;
|
|
1325
|
+
};
|
|
1155
1326
|
const findBetterContainer = (container, forward) => {
|
|
1156
1327
|
var _a;
|
|
1157
|
-
const walker = new global$5(container,
|
|
1328
|
+
const walker = new global$5(container, findBlockAncestor(container));
|
|
1158
1329
|
const dir = forward ? 'next' : 'prev';
|
|
1159
1330
|
let node;
|
|
1160
1331
|
while (node = walker[dir]()) {
|
|
@@ -1249,10 +1420,19 @@
|
|
|
1249
1420
|
detailStyle = detailStyle === null ? '' : detailStyle;
|
|
1250
1421
|
return sibStyle === detailStyle;
|
|
1251
1422
|
};
|
|
1423
|
+
const getRootSearchStart = (editor, range) => {
|
|
1424
|
+
const start = editor.selection.getStart(true);
|
|
1425
|
+
const startPoint = getEndPointNode(editor, range, true, editor.getBody());
|
|
1426
|
+
if (ancestor(SugarElement.fromDom(startPoint), SugarElement.fromDom(range.commonAncestorContainer))) {
|
|
1427
|
+
return range.commonAncestorContainer;
|
|
1428
|
+
} else {
|
|
1429
|
+
return start;
|
|
1430
|
+
}
|
|
1431
|
+
};
|
|
1252
1432
|
const applyList = (editor, listName, detail) => {
|
|
1253
1433
|
const rng = editor.selection.getRng();
|
|
1254
1434
|
let listItemName = 'LI';
|
|
1255
|
-
const root = getClosestListHost(editor, editor
|
|
1435
|
+
const root = getClosestListHost(editor, getRootSearchStart(editor, rng));
|
|
1256
1436
|
const dom = editor.dom;
|
|
1257
1437
|
if (dom.getContentEditable(editor.selection.getNode()) === 'false') {
|
|
1258
1438
|
return;
|
|
@@ -1339,9 +1519,27 @@
|
|
|
1339
1519
|
fireListEvent(editor, listToggleActionFromListName(listName), list);
|
|
1340
1520
|
}
|
|
1341
1521
|
};
|
|
1522
|
+
const updateCustomList = (editor, list, listName, detail) => {
|
|
1523
|
+
list.classList.forEach((cls, _, classList) => {
|
|
1524
|
+
if (cls.startsWith('tox-')) {
|
|
1525
|
+
classList.remove(cls);
|
|
1526
|
+
if (classList.length === 0) {
|
|
1527
|
+
list.removeAttribute('class');
|
|
1528
|
+
}
|
|
1529
|
+
}
|
|
1530
|
+
});
|
|
1531
|
+
if (list.nodeName !== listName) {
|
|
1532
|
+
const newList = editor.dom.rename(list, listName);
|
|
1533
|
+
updateListWithDetails(editor.dom, newList, detail);
|
|
1534
|
+
fireListEvent(editor, listToggleActionFromListName(listName), newList);
|
|
1535
|
+
} else {
|
|
1536
|
+
updateListWithDetails(editor.dom, list, detail);
|
|
1537
|
+
fireListEvent(editor, listToggleActionFromListName(listName), list);
|
|
1538
|
+
}
|
|
1539
|
+
};
|
|
1342
1540
|
const toggleMultipleLists = (editor, parentList, lists, listName, detail) => {
|
|
1343
1541
|
const parentIsList = isListNode(parentList);
|
|
1344
|
-
if (parentIsList && parentList.nodeName === listName && !hasListStyleDetail(detail)) {
|
|
1542
|
+
if (parentIsList && parentList.nodeName === listName && !hasListStyleDetail(detail) && !isCustomList(parentList)) {
|
|
1345
1543
|
flattenListSelection(editor);
|
|
1346
1544
|
} else {
|
|
1347
1545
|
applyList(editor, listName, detail);
|
|
@@ -1350,8 +1548,9 @@
|
|
|
1350
1548
|
parentList,
|
|
1351
1549
|
...lists
|
|
1352
1550
|
] : lists;
|
|
1551
|
+
const updateFunction = parentIsList && isCustomList(parentList) ? updateCustomList : updateList$1;
|
|
1353
1552
|
global$2.each(allLists, elm => {
|
|
1354
|
-
|
|
1553
|
+
updateFunction(editor, elm, listName, detail);
|
|
1355
1554
|
});
|
|
1356
1555
|
editor.selection.setRng(resolveBookmark(bookmark));
|
|
1357
1556
|
}
|
|
@@ -1368,6 +1567,16 @@
|
|
|
1368
1567
|
flattenListSelection(editor);
|
|
1369
1568
|
} else {
|
|
1370
1569
|
const bookmark = createBookmark(editor.selection.getRng());
|
|
1570
|
+
if (isCustomList(parentList)) {
|
|
1571
|
+
parentList.classList.forEach((cls, _, classList) => {
|
|
1572
|
+
if (cls.startsWith('tox-')) {
|
|
1573
|
+
classList.remove(cls);
|
|
1574
|
+
if (classList.length === 0) {
|
|
1575
|
+
parentList.removeAttribute('class');
|
|
1576
|
+
}
|
|
1577
|
+
}
|
|
1578
|
+
});
|
|
1579
|
+
}
|
|
1371
1580
|
updateListWithDetails(editor.dom, parentList, detail);
|
|
1372
1581
|
const newList = editor.dom.rename(parentList, listName);
|
|
1373
1582
|
mergeWithAdjacentLists(editor.dom, newList);
|
|
@@ -1382,7 +1591,7 @@
|
|
|
1382
1591
|
};
|
|
1383
1592
|
const toggleList = (editor, listName, _detail) => {
|
|
1384
1593
|
const parentList = getParentList(editor);
|
|
1385
|
-
if (isWithinNonEditableList(editor, parentList)
|
|
1594
|
+
if (isWithinNonEditableList(editor, parentList)) {
|
|
1386
1595
|
return;
|
|
1387
1596
|
}
|
|
1388
1597
|
const selectedSubLists = getSelectedSubLists(editor);
|
|
@@ -1456,8 +1665,9 @@
|
|
|
1456
1665
|
const childNodes = elm.childNodes;
|
|
1457
1666
|
return childNodes.length === 1 && !isListNode(childNodes[0]) && dom.isBlock(childNodes[0]);
|
|
1458
1667
|
};
|
|
1668
|
+
const isUnwrappable = node => Optional.from(node).map(SugarElement.fromDom).filter(isHTMLElement).exists(el => isEditable(el) && !contains$1(['details'], name(el)));
|
|
1459
1669
|
const unwrapSingleBlockChild = (dom, elm) => {
|
|
1460
|
-
if (hasOnlyOneBlockChild(dom, elm)) {
|
|
1670
|
+
if (hasOnlyOneBlockChild(dom, elm) && isUnwrappable(elm.firstChild)) {
|
|
1461
1671
|
dom.remove(elm.firstChild, true);
|
|
1462
1672
|
}
|
|
1463
1673
|
};
|
|
@@ -1538,7 +1748,8 @@
|
|
|
1538
1748
|
}
|
|
1539
1749
|
const rng = normalizeRange(selection.getRng());
|
|
1540
1750
|
const otherLi = dom.getParent(findNextCaretContainer(editor, rng, isForward, root), 'LI', root);
|
|
1541
|
-
|
|
1751
|
+
const willMergeParentIntoChild = otherLi && (isForward ? dom.isChildOf(li, otherLi) : dom.isChildOf(otherLi, li));
|
|
1752
|
+
if (otherLi && otherLi !== li && !willMergeParentIntoChild) {
|
|
1542
1753
|
editor.undoManager.transact(() => {
|
|
1543
1754
|
if (isForward) {
|
|
1544
1755
|
mergeForward(editor, rng, otherLi, li);
|
|
@@ -1551,6 +1762,18 @@
|
|
|
1551
1762
|
}
|
|
1552
1763
|
});
|
|
1553
1764
|
return true;
|
|
1765
|
+
} else if (willMergeParentIntoChild && !isForward && otherLi !== li) {
|
|
1766
|
+
editor.undoManager.transact(() => {
|
|
1767
|
+
if (rng.commonAncestorContainer.parentElement) {
|
|
1768
|
+
const bookmark = createBookmark(rng);
|
|
1769
|
+
const oldParentElRef = rng.commonAncestorContainer.parentElement;
|
|
1770
|
+
moveChildren(dom, rng.commonAncestorContainer.parentElement, otherLi);
|
|
1771
|
+
oldParentElRef.remove();
|
|
1772
|
+
const resolvedBookmark = resolveBookmark(bookmark);
|
|
1773
|
+
editor.selection.setRng(resolvedBookmark);
|
|
1774
|
+
}
|
|
1775
|
+
});
|
|
1776
|
+
return true;
|
|
1554
1777
|
} else if (!otherLi) {
|
|
1555
1778
|
if (!isForward && rng.startOffset === 0 && rng.endOffset === 0) {
|
|
1556
1779
|
editor.undoManager.transact(() => {
|
|
@@ -1584,14 +1807,15 @@
|
|
|
1584
1807
|
'caption'
|
|
1585
1808
|
], name(element));
|
|
1586
1809
|
const findRoot = node => node.dom === root;
|
|
1587
|
-
const otherLiCell = closest(SugarElement.fromDom(otherLi), findValidElement, findRoot);
|
|
1588
|
-
const caretCell = closest(SugarElement.fromDom(rng.startContainer), findValidElement, findRoot);
|
|
1810
|
+
const otherLiCell = closest$2(SugarElement.fromDom(otherLi), findValidElement, findRoot);
|
|
1811
|
+
const caretCell = closest$2(SugarElement.fromDom(rng.startContainer), findValidElement, findRoot);
|
|
1589
1812
|
if (!equals(otherLiCell, caretCell, eq)) {
|
|
1590
1813
|
return false;
|
|
1591
1814
|
}
|
|
1592
1815
|
editor.undoManager.transact(() => {
|
|
1816
|
+
const parentNode = otherLi.parentNode;
|
|
1593
1817
|
removeBlock(dom, block, root);
|
|
1594
|
-
mergeWithAdjacentLists(dom,
|
|
1818
|
+
mergeWithAdjacentLists(dom, parentNode);
|
|
1595
1819
|
editor.selection.select(otherLi, true);
|
|
1596
1820
|
editor.selection.collapse(isForward);
|
|
1597
1821
|
});
|