jodit 3.18.8 → 3.19.2
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/README.md +29 -2
- package/build/jodit.es2018.en.css +125 -124
- package/build/jodit.es2018.en.js +28267 -23413
- package/build/plugins/{speech/speech-recognize → speech-recognize}/speech-recognize.es2018.en.css +1 -1
- package/build/plugins/{speech/speech-recognize/speech-recognize.js → speech-recognize/speech-recognize.es2018.en.js} +139 -128
- package/package.json +22 -22
- package/src/config.ts +75 -0
- package/src/core/constants.ts +3 -0
- package/src/core/dom/dom.ts +34 -0
- package/src/core/helpers/helpers.test.js +31 -25
- package/src/core/helpers/string/i18n.ts +4 -6
- package/src/core/helpers/utils/align.ts +83 -0
- package/src/core/helpers/utils/default-language.ts +1 -1
- package/src/core/helpers/utils/index.ts +11 -9
- package/src/core/helpers/utils/mark-deprecated.ts +1 -1
- package/src/core/helpers/utils/parse-query.ts +1 -1
- package/src/{plugins/print/helpers.ts → core/helpers/utils/print.ts} +6 -2
- package/src/core/helpers/utils/utils.ts +19 -1
- package/src/core/plugin/plugin-system.ts +23 -7
- package/src/core/request/ajax.ts +9 -3
- package/src/core/ui/icon.ts +11 -3
- package/src/index.ts +2 -8
- package/src/langs/ar.js +0 -4
- package/src/langs/cs_cz.js +0 -4
- package/src/langs/de.js +0 -4
- package/src/langs/es.js +0 -4
- package/src/langs/fa.js +0 -4
- package/src/langs/fr.js +0 -4
- package/src/langs/he.js +0 -4
- package/src/langs/hu.js +0 -4
- package/src/langs/id.js +0 -4
- package/src/langs/index.ts +24 -25
- package/src/langs/it.js +0 -4
- package/src/langs/ja.js +0 -4
- package/src/langs/ko.js +0 -4
- package/src/langs/nl.js +0 -4
- package/src/langs/pl.js +0 -4
- package/src/langs/pt_br.js +0 -4
- package/src/langs/ru.js +0 -4
- package/src/langs/tr.js +0 -4
- package/src/langs/zh_cn.js +0 -4
- package/src/langs/zh_tw.js +0 -4
- package/src/modules/dialog/dialog.test.js +2 -0
- package/src/modules/file-browser/config.ts +3 -2
- package/src/modules/file-browser/file-browser.ts +2 -7
- package/src/modules/image-editor/config.ts +6 -0
- package/src/{styles → modules/image-editor}/icons/crop.svg +0 -0
- package/src/{styles → modules/image-editor}/icons/resize.svg +0 -0
- package/src/modules/table/table.test.js +0 -906
- package/src/modules/widget/color-picker/color-picker.ts +2 -0
- package/src/{styles/icons → modules/widget/color-picker}/palette.svg +0 -0
- package/src/modules/widget/file-selector/file-selector.ts +1 -1
- package/src/{styles/icons → plugins/about}/about.svg +0 -0
- package/src/plugins/about/about.ts +6 -1
- package/src/plugins/add-new-line/add-new-line.test.js +219 -0
- package/src/plugins/add-new-line/add-new-line.ts +3 -0
- package/src/plugins/add-new-line/config.ts +3 -0
- package/src/{styles/icons → plugins/add-new-line}/enter.svg +0 -0
- package/src/plugins/{keyboard/backspace → backspace}/backspace.test.js +0 -0
- package/src/plugins/{keyboard/backspace → backspace}/backspace.ts +10 -9
- package/src/plugins/{keyboard/backspace → backspace}/cases/check-join-neighbors.ts +7 -4
- package/src/plugins/{keyboard/backspace → backspace}/cases/check-join-two-lists.ts +6 -2
- package/src/plugins/{keyboard/backspace → backspace}/cases/check-not-collapsed.ts +4 -0
- package/src/plugins/{keyboard/backspace → backspace}/cases/check-remove-char.ts +7 -2
- package/src/plugins/{keyboard/backspace → backspace}/cases/check-remove-content-not-editable.ts +5 -0
- package/src/plugins/{keyboard/backspace → backspace}/cases/check-remove-empty-neighbor.ts +6 -3
- package/src/plugins/{keyboard/backspace → backspace}/cases/check-remove-empty-parent.ts +11 -3
- package/src/plugins/{keyboard/backspace → backspace}/cases/check-remove-unbreakable-element.ts +7 -2
- package/src/plugins/{keyboard/backspace → backspace}/cases/check-table-cell.ts +5 -1
- package/src/plugins/{keyboard/backspace → backspace}/cases/check-unwrap-first-list-item.ts +5 -1
- package/src/plugins/{keyboard/backspace → backspace}/cases/index.ts +4 -0
- package/src/plugins/{keyboard/backspace → backspace}/config.ts +0 -0
- package/src/plugins/{keyboard → backspace}/helpers.ts +1 -36
- package/src/plugins/{keyboard/backspace → backspace}/interface.d.ts +0 -0
- package/src/plugins/bold/bold.ts +11 -0
- package/src/{styles → plugins/bold}/icons/bold.svg +0 -0
- package/src/{styles → plugins/bold}/icons/italic.svg +0 -0
- package/src/{styles → plugins/bold}/icons/strikethrough.svg +0 -0
- package/src/{styles → plugins/bold}/icons/subscript.svg +0 -0
- package/src/{styles → plugins/bold}/icons/superscript.svg +0 -0
- package/src/{styles → plugins/bold}/icons/underline.svg +0 -0
- package/src/plugins/class-span/{icon.svg → class-span.svg} +0 -0
- package/src/plugins/class-span/class-span.ts +5 -2
- package/src/plugins/{fix/clean-html → clean-html}/README.md +0 -0
- package/src/plugins/{fix/clean-html → clean-html}/clean-html.test.js +0 -0
- package/src/plugins/{fix/clean-html → clean-html}/clean-html.ts +7 -3
- package/src/plugins/{fix/clean-html → clean-html}/config.ts +4 -1
- package/src/{styles/icons → plugins/clean-html}/eraser.svg +0 -0
- package/src/plugins/{fix/clean-html → clean-html}/helpers/get-hash.ts +3 -2
- package/src/plugins/{fix/clean-html → clean-html}/helpers/index.ts +1 -1
- package/src/plugins/{fix/clean-html → clean-html}/helpers/remove-format/remove-format-for-collapsed-selection.ts +1 -1
- package/src/plugins/{fix/clean-html → clean-html}/helpers/remove-format/remove-format-for-selection.ts +3 -3
- package/src/plugins/{fix/clean-html → clean-html}/helpers/visitor/filters/allow-attributes.ts +1 -1
- package/src/plugins/{fix/clean-html → clean-html}/helpers/visitor/filters/fill-empty-paragraph.ts +1 -1
- package/src/plugins/{fix/clean-html → clean-html}/helpers/visitor/filters/index.ts +1 -1
- package/src/plugins/{fix/clean-html → clean-html}/helpers/visitor/filters/remove-inv-text-nodes.ts +1 -1
- package/src/plugins/{fix/clean-html → clean-html}/helpers/visitor/filters/replace-old-tags.ts +1 -1
- package/src/plugins/{fix/clean-html → clean-html}/helpers/visitor/filters/sanitize-attributes.ts +2 -2
- package/src/plugins/{fix/clean-html → clean-html}/helpers/visitor/filters/try-remove-node.ts +7 -36
- package/src/plugins/{fix/clean-html → clean-html}/helpers/visitor/visit-node-walker.ts +3 -2
- package/src/plugins/clipboard/clipboard.ts +19 -10
- package/src/plugins/clipboard/config.ts +6 -0
- package/src/{styles → plugins/clipboard}/icons/copy.svg +0 -0
- package/src/{styles → plugins/clipboard}/icons/cut.svg +0 -0
- package/src/{styles → plugins/clipboard}/icons/paste.svg +0 -0
- package/src/{styles → plugins/clipboard}/icons/select-all.svg +0 -0
- package/src/{styles/icons → plugins/color}/brush.svg +0 -0
- package/src/plugins/color/color.ts +6 -169
- package/src/plugins/color/config.ts +183 -0
- package/src/{styles/icons/copyformat.svg → plugins/copy-format/copy-format.svg} +0 -0
- package/src/plugins/copy-format/copy-format.test.js +223 -0
- package/src/plugins/{clipboard → copy-format}/copy-format.ts +10 -3
- package/src/plugins/copy-format/langs/ar.js +9 -0
- package/src/plugins/copy-format/langs/cs_cz.js +9 -0
- package/src/plugins/copy-format/langs/de.js +9 -0
- package/src/plugins/copy-format/langs/es.js +9 -0
- package/src/plugins/copy-format/langs/fa.js +9 -0
- package/src/plugins/copy-format/langs/fr.js +9 -0
- package/src/plugins/copy-format/langs/he.js +9 -0
- package/src/plugins/{speech/speech-recognize → copy-format}/langs/hu.js +1 -3
- package/src/plugins/{speech/speech-recognize → copy-format}/langs/id.js +1 -3
- package/src/plugins/{speech/speech-recognize → copy-format}/langs/index.ts +0 -0
- package/src/plugins/copy-format/langs/it.js +9 -0
- package/src/plugins/copy-format/langs/ja.js +9 -0
- package/src/plugins/copy-format/langs/ko.js +9 -0
- package/src/plugins/copy-format/langs/nl.js +9 -0
- package/src/plugins/copy-format/langs/pl.js +9 -0
- package/src/plugins/{speech/speech-recognize → copy-format}/langs/pt_br.js +1 -3
- package/src/plugins/copy-format/langs/ru.js +9 -0
- package/src/plugins/copy-format/langs/tr.js +9 -0
- package/src/plugins/{speech/speech-recognize → copy-format}/langs/zh_cn.js +1 -3
- package/src/plugins/copy-format/langs/zh_tw.js +9 -0
- package/src/plugins/{clipboard/drag-and-drop → drag-and-drop}/drag-and-drop.ts +6 -4
- package/src/plugins/drag-and-drop-element/config.ts +22 -0
- package/src/plugins/{clipboard/drag-and-drop-element → drag-and-drop-element}/drag-and-drop-element.test.js +0 -0
- package/src/plugins/{clipboard/drag-and-drop-element → drag-and-drop-element}/drag-and-drop-element.ts +7 -3
- package/src/plugins/{keyboard/enter → enter}/README.md +0 -0
- package/src/plugins/{keyboard/enter → enter}/enter.test.js +0 -0
- package/src/plugins/{keyboard/enter → enter}/enter.ts +7 -3
- package/src/plugins/{keyboard/enter → enter}/helpers/check-br.ts +1 -1
- package/src/plugins/{keyboard/enter → enter}/helpers/check-unsplittable-box.ts +1 -1
- package/src/plugins/{keyboard/enter → enter}/helpers/get-block-wrapper.ts +1 -1
- package/src/plugins/{keyboard/enter → enter}/helpers/has-previous-block.ts +1 -1
- package/src/plugins/{keyboard/enter → enter}/helpers/index.ts +1 -1
- package/src/plugins/{keyboard/enter → enter}/helpers/insert-paragraph.ts +1 -1
- package/src/plugins/{keyboard/enter → enter}/helpers/process-empty-li-leaf.ts +2 -1
- package/src/plugins/{keyboard/enter → enter}/helpers/split-fragment.ts +3 -2
- package/src/plugins/{keyboard/enter → enter}/helpers/wrap-text.ts +1 -1
- package/src/plugins/error-messages/error-messages.ts +3 -0
- package/src/plugins/{media → file}/file.ts +5 -2
- package/src/plugins/focus/focus.ts +3 -0
- package/src/plugins/font/config.ts +151 -0
- package/src/plugins/font/font.ts +6 -134
- package/src/{styles → plugins/font}/icons/font.svg +0 -0
- package/src/{styles → plugins/font}/icons/fontsize.svg +0 -0
- package/src/plugins/format-block/format-block.ts +6 -0
- package/src/{styles/icons → plugins/format-block}/paragraph.svg +0 -0
- package/src/plugins/fullsize/config.ts +73 -0
- package/src/plugins/fullsize/fullsize.test.js +35 -0
- package/src/plugins/fullsize/fullsize.ts +5 -54
- package/src/{styles → plugins/fullsize}/icons/fullsize.svg +0 -0
- package/src/{styles → plugins/fullsize}/icons/shrink.svg +0 -0
- package/src/plugins/hotkeys/config.ts +38 -0
- package/src/plugins/hotkeys/hotkeys.test.js +136 -0
- package/src/plugins/{keyboard → hotkeys}/hotkeys.ts +6 -28
- package/src/{styles/icons → plugins/hr}/hr.svg +0 -0
- package/src/plugins/{insert/insert.test.js → hr/hr.test.js} +0 -0
- package/src/plugins/{insert → hr}/hr.ts +7 -1
- package/src/plugins/iframe/config.ts +0 -21
- package/src/plugins/iframe/iframe.ts +3 -0
- package/src/{styles/icons → plugins/image}/image.svg +0 -0
- package/src/plugins/image/image.ts +6 -0
- package/src/plugins/{image/image-processor → image-processor}/README.md +0 -0
- package/src/plugins/{image/image-processor → image-processor}/config.ts +0 -0
- package/src/plugins/{image/image-processor → image-processor}/image-processor.ts +5 -2
- package/src/plugins/{image/image-properties → image-properties}/config.ts +1 -1
- package/src/plugins/{image/image-properties → image-properties}/image-properties.less +1 -1
- package/src/plugins/image-properties/image-properties.test.js +548 -0
- package/src/plugins/{image/image-properties → image-properties}/image-properties.ts +23 -15
- package/src/plugins/{image/image-properties → image-properties}/templates/form.ts +2 -2
- package/src/plugins/{image/image-properties → image-properties}/templates/main-tab.ts +2 -2
- package/src/plugins/{image/image-properties → image-properties}/templates/position-tab.ts +2 -2
- package/src/plugins/indent/config.ts +57 -0
- package/src/plugins/indent/helpers.ts +23 -0
- package/src/{styles → plugins/indent}/icons/indent.svg +0 -0
- package/src/{styles → plugins/indent}/icons/outdent.svg +0 -0
- package/src/plugins/indent/indent.ts +6 -48
- package/src/plugins/index.ts +61 -53
- package/src/plugins/inline-popup/config/config.ts +9 -0
- package/src/plugins/inline-popup/config/items/img.ts +10 -7
- package/src/{styles → plugins/inline-popup}/icons/addcolumn.svg +0 -0
- package/src/{styles → plugins/inline-popup}/icons/addrow.svg +0 -0
- package/src/{styles → plugins/inline-popup}/icons/merge.svg +0 -0
- package/src/{styles → plugins/inline-popup}/icons/splitg.svg +0 -0
- package/src/{styles → plugins/inline-popup}/icons/splitv.svg +0 -0
- package/src/{styles → plugins/inline-popup}/icons/th-list.svg +0 -0
- package/src/{styles → plugins/inline-popup}/icons/th.svg +0 -0
- package/src/plugins/inline-popup/inline-popup.ts +5 -1
- package/src/{styles/icons → plugins/justify}/justify.svg +0 -0
- package/src/plugins/justify/justify.ts +9 -46
- package/src/plugins/{keyboard → key-arrow-outside}/key-arrow-outside.ts +6 -4
- package/src/plugins/limit/config.ts +30 -0
- package/src/plugins/limit/limit.ts +4 -23
- package/src/plugins/line-height/config.ts +3 -1
- package/src/plugins/line-height/langs/ar.js +9 -0
- package/src/plugins/line-height/langs/cs_cz.js +9 -0
- package/src/plugins/line-height/langs/de.js +9 -0
- package/src/plugins/line-height/langs/es.js +9 -0
- package/src/plugins/line-height/langs/fa.js +9 -0
- package/src/plugins/line-height/langs/fr.js +9 -0
- package/src/plugins/line-height/langs/he.js +9 -0
- package/src/plugins/line-height/langs/hu.js +9 -0
- package/src/plugins/line-height/langs/id.js +9 -0
- package/src/plugins/line-height/langs/index.ts +47 -0
- package/src/plugins/line-height/langs/it.js +9 -0
- package/src/plugins/line-height/langs/ja.js +9 -0
- package/src/plugins/line-height/langs/ko.js +9 -0
- package/src/plugins/line-height/langs/nl.js +9 -0
- package/src/plugins/line-height/langs/pl.js +9 -0
- package/src/plugins/line-height/langs/pt_br.js +9 -0
- package/src/plugins/line-height/langs/ru.js +9 -0
- package/src/plugins/line-height/langs/tr.js +9 -0
- package/src/plugins/line-height/langs/zh_cn.js +9 -0
- package/src/plugins/line-height/langs/zh_tw.js +9 -0
- package/src/{styles/icons → plugins/line-height}/line-height.svg +0 -0
- package/src/plugins/line-height/line-height.ts +12 -3
- package/src/plugins/link/config.ts +6 -0
- package/src/{styles → plugins/link}/icons/link.svg +0 -0
- package/src/{styles → plugins/link}/icons/unlink.svg +0 -0
- package/src/plugins/link/link.ts +5 -1
- package/src/plugins/media/config.ts +30 -0
- package/src/plugins/media/media.ts +5 -24
- package/src/plugins/mobile/mobile.ts +3 -0
- package/src/plugins/ordered-list/config.ts +4 -1
- package/src/{styles → plugins/ordered-list}/icons/ol.svg +0 -0
- package/src/{styles → plugins/ordered-list}/icons/ul.svg +0 -0
- package/src/plugins/ordered-list/ordered-list.ts +3 -0
- package/src/plugins/{clipboard/paste → paste}/README.md +0 -0
- package/src/plugins/{clipboard/paste → paste}/config.ts +5 -12
- package/src/plugins/{clipboard/paste → paste}/helpers.ts +6 -25
- package/src/plugins/{clipboard/paste → paste}/interface.ts +3 -14
- package/src/plugins/{clipboard/paste → paste}/paste.test.js +0 -0
- package/src/plugins/{clipboard/paste → paste}/paste.ts +20 -23
- package/src/plugins/{clipboard/paste-from-word → paste-from-word}/README.md +0 -0
- package/src/plugins/{clipboard/paste-from-word → paste-from-word}/config.ts +2 -3
- package/src/plugins/{clipboard/paste-from-word → paste-from-word}/paste-from-word.ts +15 -16
- package/src/plugins/{clipboard/paste-storage → paste-storage}/paste-storage.less +1 -1
- package/src/plugins/paste-storage/paste-storage.test.js +231 -0
- package/src/plugins/{clipboard/paste-storage → paste-storage}/paste-storage.ts +8 -5
- package/src/plugins/placeholder/placeholder.ts +4 -1
- package/src/plugins/plugins.test.js +0 -2141
- package/src/plugins/powered-by-jodit/powered-by-jodit.ts +9 -5
- package/src/plugins/{print/preview → preview}/preview.less +1 -1
- package/src/plugins/{print/preview → preview}/preview.test.js +0 -0
- package/src/plugins/{print/preview → preview}/preview.ts +4 -1
- package/src/plugins/print/lib/generate-critical-css.ts +3 -0
- package/src/{styles/icons → plugins/print}/print.svg +0 -0
- package/src/plugins/print/print.ts +10 -3
- package/src/{styles → plugins/redo-undo}/icons/redo.svg +0 -0
- package/src/{styles → plugins/redo-undo}/icons/undo.svg +0 -0
- package/src/plugins/redo-undo/redo-undo.ts +10 -1
- package/src/plugins/resize-cells/config.ts +19 -0
- package/src/plugins/resize-cells/resize-cells.less +27 -0
- package/src/plugins/resize-cells/resize-cells.test.js +890 -0
- package/src/plugins/{table → resize-cells}/resize-cells.ts +10 -4
- package/src/plugins/resize-handler/config.ts +21 -0
- package/src/plugins/{size → resize-handler}/resize-handler.ts +5 -0
- package/src/plugins/resizer/config.ts +1 -1
- package/src/plugins/resizer/resizer.ts +6 -2
- package/src/plugins/search/config.ts +3 -0
- package/src/plugins/search/helpers/sentence-finder.ts +1 -1
- package/src/plugins/search/helpers/wrap-ranges-texts-in-tmp-span.ts +1 -1
- package/src/{styles/icons → plugins/search}/search.svg +0 -0
- package/src/plugins/search/search.ts +7 -3
- package/src/plugins/select/config.ts +1 -1
- package/src/plugins/select/select.ts +6 -7
- package/src/plugins/select-cells/config.ts +19 -0
- package/src/plugins/{table → select-cells}/select-cells.ts +10 -5
- package/src/plugins/size/config.ts +0 -56
- package/src/plugins/size/size.test.js +27 -0
- package/src/plugins/size/size.ts +6 -1
- package/src/plugins/source/config.ts +9 -7
- package/src/plugins/source/editor/engines/ace.ts +8 -5
- package/src/plugins/source/editor/engines/area.ts +3 -2
- package/src/plugins/source/editor/engines/custom.ts +1 -0
- package/src/plugins/source/editor/factory.ts +2 -1
- package/src/{styles/icons → plugins/source}/source.svg +0 -0
- package/src/plugins/source/source.ts +9 -4
- package/src/plugins/{speech/speech-recognize → speech-recognize}/README.md +4 -4
- package/src/plugins/{speech/speech-recognize → speech-recognize}/config.ts +5 -3
- package/src/plugins/{speech/speech-recognize → speech-recognize}/constants.ts +2 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/helpers/api.ts +1 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/helpers/exec-spell-command.ts +1 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/helpers/recognize-manager.ts +5 -7
- package/src/plugins/{speech/speech-recognize → speech-recognize}/helpers/sound.ts +4 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/interface.ts +1 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/langs/ar.js +4 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/langs/cs_cz.js +4 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/langs/de.js +4 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/langs/es.js +4 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/langs/fa.js +4 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/langs/fr.js +4 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/langs/he.js +4 -1
- package/src/plugins/speech-recognize/langs/hu.js +14 -0
- package/src/plugins/speech-recognize/langs/id.js +14 -0
- package/src/plugins/speech-recognize/langs/index.ts +47 -0
- package/src/plugins/{speech/speech-recognize → speech-recognize}/langs/it.js +4 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/langs/ja.js +4 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/langs/ko.js +4 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/langs/nl.js +4 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/langs/pl.js +4 -1
- package/src/plugins/speech-recognize/langs/pt_br.js +14 -0
- package/src/plugins/{speech/speech-recognize → speech-recognize}/langs/ru.js +4 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/langs/tr.js +4 -1
- package/src/plugins/speech-recognize/langs/zh_cn.js +14 -0
- package/src/plugins/{speech/speech-recognize → speech-recognize}/langs/zh_tw.js +4 -1
- package/src/plugins/{speech/speech-recognize → speech-recognize}/speech-recognize.less +2 -2
- package/src/plugins/{speech/speech-recognize/icon.svg → speech-recognize/speech-recognize.svg} +0 -0
- package/src/plugins/{speech/speech-recognize → speech-recognize}/speech-recognize.ts +2 -2
- package/src/plugins/spellcheck/config.ts +4 -1
- package/src/plugins/spellcheck/langs/ar.js +9 -0
- package/src/plugins/spellcheck/langs/cs_cz.js +9 -0
- package/src/plugins/spellcheck/langs/de.js +9 -0
- package/src/plugins/spellcheck/langs/es.js +9 -0
- package/src/plugins/spellcheck/langs/fa.js +9 -0
- package/src/plugins/spellcheck/langs/fr.js +9 -0
- package/src/plugins/spellcheck/langs/he.js +9 -0
- package/src/plugins/spellcheck/langs/hu.js +9 -0
- package/src/plugins/spellcheck/langs/id.js +9 -0
- package/src/plugins/spellcheck/langs/index.ts +47 -0
- package/src/plugins/spellcheck/langs/it.js +9 -0
- package/src/plugins/spellcheck/langs/ja.js +9 -0
- package/src/plugins/spellcheck/langs/ko.js +9 -0
- package/src/plugins/spellcheck/langs/nl.js +9 -0
- package/src/plugins/spellcheck/langs/pl.js +9 -0
- package/src/plugins/spellcheck/langs/pt_br.js +9 -0
- package/src/plugins/spellcheck/langs/ru.js +9 -0
- package/src/plugins/spellcheck/langs/tr.js +9 -0
- package/src/plugins/spellcheck/langs/zh_cn.js +9 -0
- package/src/plugins/spellcheck/langs/zh_tw.js +9 -0
- package/src/plugins/spellcheck/spellcheck.ts +8 -0
- package/src/plugins/stat/config.ts +23 -0
- package/src/plugins/stat/stat.ts +6 -14
- package/src/plugins/sticky/config.ts +44 -0
- package/src/plugins/sticky/sticky.test.js +201 -0
- package/src/plugins/sticky/sticky.ts +6 -34
- package/src/plugins/symbols/config.ts +4 -2
- package/src/plugins/symbols/langs/ar.js +9 -0
- package/src/plugins/symbols/langs/cs_cz.js +9 -0
- package/src/plugins/symbols/langs/de.js +9 -0
- package/src/plugins/symbols/langs/es.js +9 -0
- package/src/plugins/symbols/langs/fa.js +9 -0
- package/src/plugins/symbols/langs/fr.js +9 -0
- package/src/plugins/symbols/langs/he.js +9 -0
- package/src/plugins/symbols/langs/hu.js +9 -0
- package/src/plugins/symbols/langs/id.js +9 -0
- package/src/plugins/symbols/langs/index.ts +47 -0
- package/src/plugins/symbols/langs/it.js +9 -0
- package/src/plugins/symbols/langs/ja.js +9 -0
- package/src/plugins/symbols/langs/ko.js +9 -0
- package/src/plugins/symbols/langs/nl.js +9 -0
- package/src/plugins/symbols/langs/pl.js +9 -0
- package/src/plugins/symbols/langs/pt_br.js +9 -0
- package/src/plugins/symbols/langs/ru.js +9 -0
- package/src/plugins/symbols/langs/tr.js +9 -0
- package/src/plugins/symbols/langs/zh_cn.js +9 -0
- package/src/plugins/symbols/langs/zh_tw.js +9 -0
- package/src/{styles/icons/omega.svg → plugins/symbols/symbols.svg} +0 -0
- package/src/plugins/symbols/symbols.test.js +280 -0
- package/src/plugins/symbols/symbols.ts +13 -4
- package/src/plugins/{keyboard/tab → tab}/README.md +0 -0
- package/src/plugins/{keyboard/tab → tab}/cases/index.ts +1 -1
- package/src/plugins/{keyboard/tab → tab}/cases/on-tab-inside-li.ts +3 -2
- package/src/plugins/{keyboard/tab → tab}/config.ts +1 -1
- package/src/plugins/{keyboard/tab → tab}/tab.test.js +0 -0
- package/src/plugins/{keyboard/tab → tab}/tab.ts +7 -4
- package/src/plugins/table/config.ts +3 -4
- package/src/plugins/table/table.less +0 -26
- package/src/{styles/icons → plugins/table}/table.svg +0 -0
- package/src/plugins/table/table.ts +7 -0
- package/src/plugins/{table → table-keyboard-navigation}/table-keyboard-navigation.ts +5 -2
- package/src/plugins/tooltip/tooltip.ts +4 -2
- package/src/plugins/{media/video → video}/config.ts +4 -1
- package/src/{styles/icons → plugins/video}/video.svg +0 -0
- package/src/plugins/{media/video/index.ts → video/video.ts} +6 -2
- package/src/plugins/{fix/wrap-nodes → wrap-nodes}/README.md +0 -0
- package/src/plugins/{fix/wrap-nodes → wrap-nodes}/config.ts +1 -1
- package/src/plugins/{fix/wrap-nodes → wrap-nodes}/wrap-nodes.test.js +0 -0
- package/src/plugins/{fix/wrap-nodes → wrap-nodes}/wrap-nodes.ts +6 -3
- package/src/plugins/xpath/config.ts +19 -0
- package/src/plugins/xpath/xpath.test.js +182 -0
- package/src/plugins/xpath/xpath.ts +9 -13
- package/src/styles/icons/index.ts +2 -114
- package/src/types/ajax.d.ts +7 -4
- package/src/types/file-browser.d.ts +5 -1
- package/src/types/index.d.ts +1 -1
- package/src/types/plugin.d.ts +1 -1
- package/src/types/types.d.ts +7 -0
- package/src/types/uploader.d.ts +6 -2
- package/tsconfig.json +8 -12
- package/types/config.d.ts +69 -1
- package/types/core/constants.d.ts +2 -0
- package/types/core/dom/dom.d.ts +8 -0
- package/types/core/helpers/utils/align.d.ts +18 -0
- package/types/core/helpers/utils/index.d.ts +11 -9
- package/types/core/helpers/utils/mark-deprecated.d.ts +1 -1
- package/types/{plugins/print/helpers.d.ts → core/helpers/utils/print.d.ts} +0 -0
- package/types/core/helpers/utils/utils.d.ts +5 -1
- package/types/index.d.ts +1 -0
- package/types/modules/file-browser/file-browser.d.ts +1 -4
- package/types/plugins/about/about.d.ts +0 -2
- package/types/plugins/{keyboard/backspace → backspace}/backspace.d.ts +2 -5
- package/types/plugins/{keyboard/backspace → backspace}/cases/check-join-neighbors.d.ts +3 -0
- package/types/plugins/{keyboard/backspace → backspace}/cases/check-join-two-lists.d.ts +3 -0
- package/types/plugins/{keyboard/backspace → backspace}/cases/check-not-collapsed.d.ts +3 -0
- package/types/plugins/{keyboard/backspace → backspace}/cases/check-remove-char.d.ts +4 -1
- package/types/plugins/{keyboard/backspace → backspace}/cases/check-remove-content-not-editable.d.ts +3 -0
- package/types/plugins/{keyboard/backspace → backspace}/cases/check-remove-empty-neighbor.d.ts +3 -0
- package/types/plugins/{keyboard/backspace → backspace}/cases/check-remove-empty-parent.d.ts +3 -0
- package/types/plugins/{keyboard/backspace → backspace}/cases/check-remove-unbreakable-element.d.ts +3 -0
- package/types/plugins/{keyboard/backspace → backspace}/cases/check-table-cell.d.ts +3 -0
- package/types/plugins/{keyboard/backspace → backspace}/cases/check-unwrap-first-list-item.d.ts +3 -0
- package/types/plugins/{keyboard/backspace → backspace}/cases/index.d.ts +0 -0
- package/types/plugins/{keyboard/backspace → backspace}/config.d.ts +0 -0
- package/types/plugins/{keyboard → backspace}/helpers.d.ts +0 -8
- package/types/plugins/{fix/clean-html → clean-html}/clean-html.d.ts +2 -2
- package/types/plugins/{fix/clean-html → clean-html}/config.d.ts +1 -1
- package/types/plugins/{fix/clean-html → clean-html}/helpers/get-hash.d.ts +1 -1
- package/types/plugins/{fix/clean-html → clean-html}/helpers/index.d.ts +1 -1
- package/types/plugins/{fix/clean-html → clean-html}/helpers/remove-format/remove-format-for-collapsed-selection.d.ts +1 -1
- package/types/plugins/{fix/clean-html → clean-html}/helpers/remove-format/remove-format-for-selection.d.ts +1 -1
- package/types/plugins/{fix/clean-html → clean-html}/helpers/visitor/filters/allow-attributes.d.ts +1 -1
- package/types/plugins/{fix/clean-html → clean-html}/helpers/visitor/filters/fill-empty-paragraph.d.ts +1 -1
- package/types/plugins/{fix/clean-html → clean-html}/helpers/visitor/filters/index.d.ts +1 -1
- package/types/plugins/{fix/clean-html → clean-html}/helpers/visitor/filters/remove-inv-text-nodes.d.ts +1 -1
- package/types/plugins/{fix/clean-html → clean-html}/helpers/visitor/filters/replace-old-tags.d.ts +1 -1
- package/types/plugins/{fix/clean-html → clean-html}/helpers/visitor/filters/sanitize-attributes.d.ts +1 -1
- package/types/plugins/{fix/clean-html → clean-html}/helpers/visitor/filters/try-remove-node.d.ts +4 -1
- package/types/plugins/{fix/clean-html → clean-html}/helpers/visitor/visit-node-walker.d.ts +1 -1
- package/types/plugins/clipboard/clipboard.d.ts +1 -1
- package/types/plugins/color/color.d.ts +1 -0
- package/types/plugins/{media/video → color}/config.d.ts +0 -0
- package/types/plugins/{clipboard → copy-format}/copy-format.d.ts +0 -0
- package/types/plugins/{clipboard/drag-and-drop → drag-and-drop}/drag-and-drop.d.ts +1 -1
- package/types/plugins/drag-and-drop-element/config.d.ts +14 -0
- package/types/plugins/{clipboard/drag-and-drop-element → drag-and-drop-element}/drag-and-drop-element.d.ts +2 -1
- package/types/plugins/{keyboard/enter → enter}/enter.d.ts +1 -1
- package/types/plugins/{keyboard/enter → enter}/helpers/check-br.d.ts +1 -1
- package/types/plugins/{keyboard/enter → enter}/helpers/check-unsplittable-box.d.ts +1 -1
- package/types/plugins/{keyboard/enter → enter}/helpers/get-block-wrapper.d.ts +1 -1
- package/types/plugins/{keyboard/enter → enter}/helpers/has-previous-block.d.ts +1 -1
- package/types/plugins/{keyboard/enter → enter}/helpers/index.d.ts +1 -1
- package/types/plugins/{keyboard/enter → enter}/helpers/insert-paragraph.d.ts +1 -1
- package/types/plugins/{keyboard/enter → enter}/helpers/process-empty-li-leaf.d.ts +1 -1
- package/types/plugins/{keyboard/enter → enter}/helpers/split-fragment.d.ts +1 -1
- package/types/plugins/{keyboard/enter → enter}/helpers/wrap-text.d.ts +1 -1
- package/types/plugins/{media → file}/file.d.ts +1 -1
- package/types/plugins/font/config.d.ts +11 -0
- package/types/plugins/font/font.d.ts +1 -5
- package/types/plugins/fullsize/config.d.ts +34 -0
- package/types/plugins/fullsize/fullsize.d.ts +1 -25
- package/types/plugins/hotkeys/config.d.ts +14 -0
- package/types/plugins/{keyboard → hotkeys}/hotkeys.d.ts +3 -7
- package/types/plugins/{insert → hr}/hr.d.ts +1 -1
- package/types/plugins/iframe/config.d.ts +0 -17
- package/types/plugins/{image/image-processor → image-processor}/config.d.ts +0 -0
- package/types/plugins/{image/image-processor → image-processor}/image-processor.d.ts +1 -1
- package/types/plugins/{image/image-properties → image-properties}/config.d.ts +0 -0
- package/types/plugins/{image/image-properties → image-properties}/image-properties.d.ts +5 -5
- package/types/plugins/{image/image-properties → image-properties}/templates/form.d.ts +1 -1
- package/types/plugins/{image/image-properties → image-properties}/templates/main-tab.d.ts +1 -1
- package/types/plugins/{image/image-properties → image-properties}/templates/position-tab.d.ts +1 -1
- package/types/plugins/indent/config.d.ts +14 -0
- package/types/plugins/{image → indent}/helpers.d.ts +3 -2
- package/types/plugins/indent/indent.d.ts +1 -8
- package/types/plugins/index.d.ts +61 -45
- package/types/plugins/inline-popup/inline-popup.d.ts +1 -1
- package/types/plugins/justify/justify.d.ts +0 -8
- package/types/plugins/{keyboard → key-arrow-outside}/key-arrow-outside.d.ts +1 -1
- package/types/plugins/limit/config.d.ts +22 -0
- package/types/plugins/limit/limit.d.ts +1 -16
- package/types/plugins/line-height/line-height.d.ts +1 -0
- package/types/plugins/media/config.d.ts +22 -0
- package/types/plugins/media/media.d.ts +1 -16
- package/types/plugins/{clipboard/paste → paste}/config.d.ts +1 -7
- package/types/plugins/{clipboard/paste → paste}/helpers.d.ts +3 -7
- package/types/plugins/{clipboard/paste → paste}/interface.d.ts +2 -3
- package/types/plugins/{clipboard/paste → paste}/paste.d.ts +5 -5
- package/types/plugins/{clipboard/paste-from-word → paste-from-word}/config.d.ts +2 -3
- package/types/plugins/{clipboard/paste-from-word → paste-from-word}/paste-from-word.d.ts +5 -5
- package/types/plugins/{clipboard/paste-storage → paste-storage}/paste-storage.d.ts +2 -2
- package/types/plugins/placeholder/placeholder.d.ts +1 -1
- package/types/plugins/{print/preview → preview}/preview.d.ts +0 -0
- package/types/plugins/print/lib/generate-critical-css.d.ts +3 -0
- package/types/plugins/redo-undo/redo-undo.d.ts +1 -1
- package/types/plugins/resize-cells/config.d.ts +11 -0
- package/types/plugins/{table → resize-cells}/resize-cells.d.ts +4 -3
- package/types/plugins/resize-handler/config.d.ts +12 -0
- package/types/plugins/{size → resize-handler}/resize-handler.d.ts +1 -0
- package/types/plugins/resizer/resizer.d.ts +1 -1
- package/types/plugins/select/select.d.ts +0 -2
- package/types/plugins/select-cells/config.d.ts +11 -0
- package/types/plugins/{table → select-cells}/select-cells.d.ts +2 -1
- package/types/plugins/size/config.d.ts +0 -4
- package/types/plugins/size/size.d.ts +2 -1
- package/types/plugins/source/source.d.ts +1 -0
- package/types/plugins/spellcheck/spellcheck.d.ts +1 -0
- package/types/plugins/stat/config.d.ts +16 -0
- package/types/plugins/stat/stat.d.ts +2 -8
- package/types/plugins/sticky/config.d.ts +32 -0
- package/types/plugins/sticky/sticky.d.ts +2 -27
- package/types/plugins/symbols/symbols.d.ts +3 -2
- package/types/plugins/{keyboard/tab → tab}/cases/index.d.ts +1 -1
- package/types/plugins/{keyboard/tab → tab}/cases/on-tab-inside-li.d.ts +2 -1
- package/types/plugins/{keyboard/tab → tab}/config.d.ts +0 -0
- package/types/plugins/{insert/index.d.ts → tab/tab.d.ts} +1 -4
- package/types/plugins/table/config.d.ts +0 -2
- package/types/plugins/table/table.d.ts +2 -0
- package/types/plugins/{table → table-keyboard-navigation}/table-keyboard-navigation.d.ts +0 -0
- package/types/plugins/tooltip/tooltip.d.ts +0 -13
- package/{src/plugins/insert/index.ts → types/plugins/video/config.d.ts} +1 -6
- package/types/plugins/video/video.d.ts +6 -0
- package/types/plugins/{fix/wrap-nodes → wrap-nodes}/config.d.ts +1 -1
- package/types/plugins/wrap-nodes/wrap-nodes.d.ts +6 -0
- package/types/plugins/xpath/config.d.ts +11 -0
- package/types/plugins/xpath/xpath.d.ts +1 -24
- package/types/styles/icons/index.d.ts +1 -57
- package/types/types/ajax.d.ts +7 -4
- package/types/types/file-browser.d.ts +5 -1
- package/types/types/index.d.ts +1 -1
- package/types/types/plugin.d.ts +1 -1
- package/types/types/types.d.ts +7 -0
- package/types/types/uploader.d.ts +6 -2
- package/.github/ISSUE_TEMPLATE.md +0 -18
- package/.github/PULL_REQUEST_TEMPLATE.md +0 -14
- package/.github/workflows/docs.yml +0 -16
- package/.github/workflows/tests.yml +0 -22
- package/.idea/codeStyles/Project.xml +0 -68
- package/.idea/codeStyles/codeStyleConfig.xml +0 -5
- package/.idea/dictionaries/v_chupurnov.xml +0 -12
- package/.idea/encodings.xml +0 -4
- package/.idea/inspectionProfiles/Project_Default.xml +0 -118
- package/.idea/jodit.iml +0 -12
- package/.idea/jsLibraryMappings.xml +0 -6
- package/.idea/markdown-navigator-enh.xml +0 -29
- package/.idea/markdown-navigator.xml +0 -55
- package/.idea/misc.xml +0 -6
- package/.idea/modules.xml +0 -8
- package/.idea/prettier.xml +0 -6
- package/.idea/stylesheetLinters/stylelint.xml +0 -6
- package/.idea/vcs.xml +0 -6
- package/.idea/watcherTasks.xml +0 -4
- package/.idea/workspace.xml +0 -1521
- package/CHANGELOG.MD +0 -3280
- package/CONTRIBUTING.md +0 -100
- package/SECURITY.md +0 -10
- package/build/jodit.css +0 -5866
- package/build/jodit.es2018.css +0 -4822
- package/build/jodit.es2018.en.min.css +0 -1
- package/build/jodit.es2018.en.min.js +0 -1
- package/build/jodit.es2018.js +0 -34937
- package/build/jodit.es2018.min.css +0 -1
- package/build/jodit.es2018.min.js +0 -1
- package/build/jodit.js +0 -42539
- package/build/jodit.min.css +0 -8
- package/build/jodit.min.js +0 -1
- package/build/plugins/speech/speech-recognize/speech-recognize.css +0 -39
- package/build/plugins/speech/speech-recognize/speech-recognize.es2018.css +0 -39
- package/build/plugins/speech/speech-recognize/speech-recognize.es2018.en.js +0 -920
- package/build/plugins/speech/speech-recognize/speech-recognize.es2018.en.min.css +0 -1
- package/build/plugins/speech/speech-recognize/speech-recognize.es2018.en.min.js +0 -1
- package/build/plugins/speech/speech-recognize/speech-recognize.es2018.js +0 -920
- package/build/plugins/speech/speech-recognize/speech-recognize.es2018.min.css +0 -1
- package/build/plugins/speech/speech-recognize/speech-recognize.es2018.min.js +0 -1
- package/build/plugins/speech/speech-recognize/speech-recognize.min.css +0 -1
- package/build/plugins/speech/speech-recognize/speech-recognize.min.js +0 -1
- package/build/vdom.css +0 -18
- package/build/vdom.js +0 -1297
- package/src/plugins/clipboard/index.ts +0 -18
- package/src/plugins/clipboard/paste/CHANGELOG.md +0 -21
- package/src/plugins/fix/index.ts +0 -12
- package/src/plugins/format-block/CHANGELOG.md +0 -16
- package/src/plugins/image/helpers.ts +0 -44
- package/src/plugins/image/image-properties/templates/index.ts +0 -13
- package/src/plugins/image/index.ts +0 -13
- package/src/plugins/media/index.ts +0 -13
- package/src/plugins/print/index.ts +0 -12
- package/src/plugins/size/index.ts +0 -13
- package/src/plugins/source/const.ts +0 -11
- package/src/plugins/source/index.ts +0 -14
- package/src/plugins/table/index.ts +0 -15
- package/src/styles/icons/arrows-alt.svg +0 -4
- package/src/styles/icons/arrows-h.svg +0 -4
- package/src/styles/icons/attachment.svg +0 -4
- package/src/styles/icons/chain-broken.svg +0 -4
- package/src/styles/icons/check-square.svg +0 -1
- package/src/styles/icons/dedent.svg +0 -4
- package/src/styles/icons/menu.svg +0 -1
- package/src/styles/icons/resizer.svg +0 -4
- package/tsdoc.json +0 -30
- package/types/core/decorators/spy/spy.d.ts +0 -9
- package/types/plugins/clipboard/index.d.ts +0 -16
- package/types/plugins/fix/index.d.ts +0 -10
- package/types/plugins/fix/wrap-nodes/wrap-nodes.d.ts +0 -39
- package/types/plugins/image/image-properties/templates/index.d.ts +0 -11
- package/types/plugins/image/index.d.ts +0 -11
- package/types/plugins/keyboard/tab/tab.d.ts +0 -18
- package/types/plugins/media/index.d.ts +0 -11
- package/types/plugins/media/video/index.d.ts +0 -11
- package/types/plugins/print/index.d.ts +0 -10
- package/types/plugins/size/index.d.ts +0 -11
- package/types/plugins/source/const.d.ts +0 -9
- package/types/plugins/source/index.d.ts +0 -12
- package/types/plugins/speech/speech-recognize/config.d.ts +0 -60
- package/types/plugins/speech/speech-recognize/constants.d.ts +0 -10
- package/types/plugins/speech/speech-recognize/helpers/api.d.ts +0 -10
- package/types/plugins/speech/speech-recognize/helpers/exec-spell-command.d.ts +0 -10
- package/types/plugins/speech/speech-recognize/helpers/recognize-manager.d.ts +0 -48
- package/types/plugins/speech/speech-recognize/helpers/sound.d.ts +0 -11
- package/types/plugins/speech/speech-recognize/interface.d.ts +0 -42
- package/types/plugins/speech/speech-recognize/speech-recognize.d.ts +0 -24
- package/types/plugins/table/index.d.ts +0 -13
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
|
-
* @module plugins/
|
|
8
|
+
* @module plugins/resize-cells
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import './
|
|
11
|
+
import './resize-cells.less';
|
|
12
12
|
|
|
13
13
|
import type { IBound, IJodit } from 'jodit/types';
|
|
14
14
|
import * as consts from 'jodit/core/constants';
|
|
15
|
-
import { Plugin,
|
|
15
|
+
import { Plugin, Table } from 'jodit/modules';
|
|
16
16
|
import {
|
|
17
17
|
$$,
|
|
18
18
|
call,
|
|
@@ -21,6 +21,10 @@ import {
|
|
|
21
21
|
offset
|
|
22
22
|
} from 'jodit/core/helpers';
|
|
23
23
|
import { autobind } from 'jodit/core/decorators';
|
|
24
|
+
import { Dom } from 'jodit/core/dom/dom';
|
|
25
|
+
import { pluginSystem } from 'jodit/core/global';
|
|
26
|
+
|
|
27
|
+
import './config';
|
|
24
28
|
|
|
25
29
|
const key = 'table_processor_observer-resize';
|
|
26
30
|
|
|
@@ -388,7 +392,7 @@ export class resizeCells extends Plugin {
|
|
|
388
392
|
|
|
389
393
|
/** @override */
|
|
390
394
|
afterInit(editor: IJodit): void {
|
|
391
|
-
if (!editor.o.
|
|
395
|
+
if (!editor.o.tableAllowCellResize) {
|
|
392
396
|
return;
|
|
393
397
|
}
|
|
394
398
|
|
|
@@ -488,3 +492,5 @@ export class resizeCells extends Plugin {
|
|
|
488
492
|
}
|
|
489
493
|
}
|
|
490
494
|
}
|
|
495
|
+
|
|
496
|
+
pluginSystem.add('resizeCells', resizeCells);
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
3
|
+
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
4
|
+
* Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @module plugins/resize-handler
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
import { Config } from 'jodit/config';
|
|
12
|
+
|
|
13
|
+
declare module 'jodit/config' {
|
|
14
|
+
interface Config {
|
|
15
|
+
allowResizeX: boolean;
|
|
16
|
+
allowResizeY: boolean;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
Config.prototype.allowResizeX = false;
|
|
21
|
+
Config.prototype.allowResizeY = true;
|
|
@@ -13,6 +13,9 @@ import { Plugin } from 'jodit/core/plugin';
|
|
|
13
13
|
import { Dom } from 'jodit/core/dom';
|
|
14
14
|
import { autobind } from 'jodit/core/decorators';
|
|
15
15
|
import { Icon } from 'jodit/core/ui';
|
|
16
|
+
import { pluginSystem } from 'jodit/core/global';
|
|
17
|
+
|
|
18
|
+
import './config';
|
|
16
19
|
|
|
17
20
|
@autobind
|
|
18
21
|
export class resizeHandler extends Plugin {
|
|
@@ -131,3 +134,5 @@ export class resizeHandler extends Plugin {
|
|
|
131
134
|
this.j.e.off(this.j.ow, 'mouseup touchsend', this.onHandleResizeEnd);
|
|
132
135
|
}
|
|
133
136
|
}
|
|
137
|
+
|
|
138
|
+
pluginSystem.add('resizeHandler', resizeHandler);
|
|
@@ -14,7 +14,7 @@ import type { HTMLTagNames, IBound, Nullable } from 'jodit/types';
|
|
|
14
14
|
import type { IJodit } from 'jodit/types';
|
|
15
15
|
import * as consts from 'jodit/core/constants';
|
|
16
16
|
import { IS_IE, KEY_ALT } from 'jodit/core/constants';
|
|
17
|
-
import { Dom } from 'jodit/core/dom';
|
|
17
|
+
import { Dom } from 'jodit/core/dom/dom';
|
|
18
18
|
import {
|
|
19
19
|
$$,
|
|
20
20
|
attr,
|
|
@@ -24,9 +24,11 @@ import {
|
|
|
24
24
|
markOwner,
|
|
25
25
|
dataBind
|
|
26
26
|
} from 'jodit/core/helpers';
|
|
27
|
-
import { Plugin } from 'jodit/core/plugin';
|
|
27
|
+
import { Plugin } from 'jodit/core/plugin/plugin';
|
|
28
28
|
import { eventEmitter } from 'jodit/core/global';
|
|
29
29
|
import { autobind, debounce, watch } from 'jodit/core/decorators';
|
|
30
|
+
import { pluginSystem } from 'jodit/core/global';
|
|
31
|
+
|
|
30
32
|
import './config';
|
|
31
33
|
|
|
32
34
|
const keyBInd = '__jodit-resizer_binded';
|
|
@@ -590,3 +592,5 @@ export class resizer extends Plugin {
|
|
|
590
592
|
jodit.e.off(this.j.ow, '.resizer').off('.resizer');
|
|
591
593
|
}
|
|
592
594
|
}
|
|
595
|
+
|
|
596
|
+
pluginSystem.add('resizer', resizer);
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
|
|
11
11
|
import type { FuzzySearch, IControlType, IJodit } from 'jodit/types';
|
|
12
12
|
import { Config } from 'jodit/config';
|
|
13
|
+
import { Icon } from 'jodit/core/ui/icon';
|
|
13
14
|
|
|
14
15
|
declare module 'jodit/config' {
|
|
15
16
|
interface Config {
|
|
@@ -46,6 +47,8 @@ Config.prototype.search = {
|
|
|
46
47
|
lazyIdleTimeout: 0
|
|
47
48
|
};
|
|
48
49
|
|
|
50
|
+
Icon.set('search', require('./search.svg'));
|
|
51
|
+
|
|
49
52
|
Config.prototype.controls.find = {
|
|
50
53
|
tooltip: 'Find',
|
|
51
54
|
icon: 'search',
|
|
@@ -14,7 +14,7 @@ import type {
|
|
|
14
14
|
ISelectionRange,
|
|
15
15
|
Nullable
|
|
16
16
|
} from 'jodit/types';
|
|
17
|
-
import { fuzzySearchIndex } from 'jodit/
|
|
17
|
+
import { fuzzySearchIndex } from 'jodit/core/helpers/string/fuzzy-search-index';
|
|
18
18
|
|
|
19
19
|
export interface State {
|
|
20
20
|
query: string;
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
|
|
11
11
|
import type { CanUndef, ICreate, ISelectionRange, Nullable } from 'jodit/types';
|
|
12
12
|
import { Dom } from 'jodit/core/dom';
|
|
13
|
-
import { $$ } from 'jodit/
|
|
13
|
+
import { $$ } from 'jodit/core/helpers/utils/selector';
|
|
14
14
|
|
|
15
15
|
const TMP_ATTR = 'jd-tmp-selection';
|
|
16
16
|
|
|
File without changes
|
|
@@ -22,17 +22,19 @@ import type {
|
|
|
22
22
|
import { Dom, LazyWalker } from 'jodit/core/dom';
|
|
23
23
|
import { Plugin } from 'jodit/core/plugin';
|
|
24
24
|
import { autobind, cache, watch } from 'jodit/core/decorators';
|
|
25
|
+
import { UISearch } from 'jodit/plugins/search/ui/search';
|
|
26
|
+
import { scrollIntoViewIfNeeded } from 'jodit/core/helpers';
|
|
27
|
+
import { pluginSystem } from 'jodit/core/global';
|
|
28
|
+
|
|
25
29
|
import {
|
|
26
30
|
clearSelectionWrappers,
|
|
27
31
|
clearSelectionWrappersFromHTML,
|
|
28
32
|
getSelectionWrappers,
|
|
29
33
|
SentenceFinder,
|
|
30
34
|
wrapRangesTextsInTmpSpan
|
|
31
|
-
} from '
|
|
32
|
-
import { UISearch } from 'jodit/plugins/search/ui/search';
|
|
35
|
+
} from './helpers';
|
|
33
36
|
|
|
34
37
|
import './config';
|
|
35
|
-
import { scrollIntoViewIfNeeded } from 'jodit/core/helpers';
|
|
36
38
|
|
|
37
39
|
/**
|
|
38
40
|
* Search plugin. it is used for custom search in text
|
|
@@ -427,3 +429,5 @@ export class search extends Plugin {
|
|
|
427
429
|
jodit.e.off('.search');
|
|
428
430
|
}
|
|
429
431
|
}
|
|
432
|
+
|
|
433
|
+
pluginSystem.add('search', search);
|
|
@@ -14,13 +14,12 @@ import type { IJodit, Nullable } from 'jodit/types';
|
|
|
14
14
|
import { Plugin } from 'jodit/core/plugin';
|
|
15
15
|
import { autobind, watch } from 'jodit/core/decorators';
|
|
16
16
|
import { camelCase } from 'jodit/core/helpers/string/camel-case';
|
|
17
|
-
import { Dom } from 'jodit/core/dom';
|
|
17
|
+
import { Dom } from 'jodit/core/dom/dom';
|
|
18
18
|
import { Popup, UIElement } from 'jodit/core/ui';
|
|
19
|
+
import { pluginSystem } from 'jodit/core/global';
|
|
19
20
|
|
|
20
21
|
import './config';
|
|
21
22
|
|
|
22
|
-
/* eslint-disable tsdoc/syntax */
|
|
23
|
-
|
|
24
23
|
/**
|
|
25
24
|
* A utility plugin that allows you to subscribe to a click/mousedown/touchstart/mouseup on an element in DOM order
|
|
26
25
|
*
|
|
@@ -41,15 +40,13 @@ export class select extends Plugin {
|
|
|
41
40
|
'touchend'
|
|
42
41
|
];
|
|
43
42
|
|
|
44
|
-
|
|
45
|
-
protected afterInit(jodit: IJodit): void {
|
|
43
|
+
protected override afterInit(jodit: IJodit): void {
|
|
46
44
|
this.proxyEventsList.forEach(eventName => {
|
|
47
45
|
jodit.e.on(eventName + '.select', this.onStartSelection);
|
|
48
46
|
});
|
|
49
47
|
}
|
|
50
48
|
|
|
51
|
-
|
|
52
|
-
protected beforeDestruct(jodit: IJodit): void {
|
|
49
|
+
protected override beforeDestruct(jodit: IJodit): void {
|
|
53
50
|
this.proxyEventsList.forEach(eventName => {
|
|
54
51
|
jodit.e.on(eventName + '.select', this.onStartSelection);
|
|
55
52
|
});
|
|
@@ -127,3 +124,5 @@ export class select extends Plugin {
|
|
|
127
124
|
this.jodit.s.expandSelection();
|
|
128
125
|
}
|
|
129
126
|
}
|
|
127
|
+
|
|
128
|
+
pluginSystem.add('select', select);
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Jodit Editor (https://xdsoft.net/jodit/)
|
|
3
|
+
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
4
|
+
* Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* @module plugins/select-cells
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
import { Config } from 'jodit/config';
|
|
12
|
+
|
|
13
|
+
declare module 'jodit/config' {
|
|
14
|
+
interface Config {
|
|
15
|
+
tableAllowCellSelection: boolean;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
Config.prototype.tableAllowCellSelection = true;
|
|
@@ -5,16 +5,19 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
|
-
* @module plugins/
|
|
8
|
+
* @module plugins/select-cells
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import type { IBound, IJodit, Nullable } from 'jodit/types';
|
|
12
12
|
import { Plugin } from 'jodit/core/plugin';
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import { alignElement } from '
|
|
13
|
+
import { Table } from 'jodit/modules';
|
|
14
|
+
import { Dom } from 'jodit/core/dom/dom';
|
|
15
|
+
import { $$, alignElement, position } from 'jodit/core/helpers';
|
|
16
16
|
import { KEY_TAB } from 'jodit/core/constants';
|
|
17
17
|
import { autobind, watch } from 'jodit/core/decorators';
|
|
18
|
+
import { pluginSystem } from 'jodit/core/global';
|
|
19
|
+
|
|
20
|
+
import './config';
|
|
18
21
|
|
|
19
22
|
const key = 'table_processor_observer';
|
|
20
23
|
const MOUSE_MOVE_LABEL = 'onMoveTableSelectCell';
|
|
@@ -30,7 +33,7 @@ export class selectCells extends Plugin {
|
|
|
30
33
|
}
|
|
31
34
|
|
|
32
35
|
protected afterInit(jodit: IJodit): void {
|
|
33
|
-
if (!jodit.o.
|
|
36
|
+
if (!jodit.o.tableAllowCellSelection) {
|
|
34
37
|
return;
|
|
35
38
|
}
|
|
36
39
|
|
|
@@ -434,3 +437,5 @@ export class selectCells extends Plugin {
|
|
|
434
437
|
jodit.e.off('.select-cells');
|
|
435
438
|
}
|
|
436
439
|
}
|
|
440
|
+
|
|
441
|
+
pluginSystem.add('selectCells', selectCells);
|
|
@@ -12,13 +12,8 @@ import { Config } from 'jodit/config';
|
|
|
12
12
|
|
|
13
13
|
declare module 'jodit/config' {
|
|
14
14
|
interface Config {
|
|
15
|
-
allowResizeX: boolean;
|
|
16
|
-
allowResizeY: boolean;
|
|
17
|
-
|
|
18
15
|
saveHeightInStorage: boolean;
|
|
19
16
|
|
|
20
|
-
width: number | string;
|
|
21
|
-
height: number | string;
|
|
22
17
|
minWidth: number | string;
|
|
23
18
|
minHeight: number | string;
|
|
24
19
|
maxWidth: number | string;
|
|
@@ -26,60 +21,9 @@ declare module 'jodit/config' {
|
|
|
26
21
|
}
|
|
27
22
|
}
|
|
28
23
|
|
|
29
|
-
/**
|
|
30
|
-
* Editor's width
|
|
31
|
-
*
|
|
32
|
-
* @example
|
|
33
|
-
* ```javascript
|
|
34
|
-
* Jodit.make('.editor', {
|
|
35
|
-
* width: '100%',
|
|
36
|
-
* })
|
|
37
|
-
* ```
|
|
38
|
-
* @example
|
|
39
|
-
* ```javascript
|
|
40
|
-
* Jodit.make('.editor', {
|
|
41
|
-
* width: 600, // equivalent for '600px'
|
|
42
|
-
* })
|
|
43
|
-
* ```
|
|
44
|
-
* @example
|
|
45
|
-
* ```javascript
|
|
46
|
-
* Jodit.make('.editor', {
|
|
47
|
-
* width: 'auto', // autosize
|
|
48
|
-
* })
|
|
49
|
-
* ```
|
|
50
|
-
*/
|
|
51
|
-
|
|
52
|
-
Config.prototype.width = 'auto';
|
|
53
24
|
Config.prototype.minWidth = 200;
|
|
54
25
|
Config.prototype.maxWidth = '100%';
|
|
55
26
|
|
|
56
|
-
Config.prototype.allowResizeX = false;
|
|
57
|
-
Config.prototype.allowResizeY = true;
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* Editor's height
|
|
61
|
-
*
|
|
62
|
-
* @example
|
|
63
|
-
* ```javascript
|
|
64
|
-
* Jodit.make('.editor', {
|
|
65
|
-
* height: '100%',
|
|
66
|
-
* })
|
|
67
|
-
* ```
|
|
68
|
-
* @example
|
|
69
|
-
* ```javascript
|
|
70
|
-
* Jodit.make('.editor', {
|
|
71
|
-
* height: 600, // equivalent for '600px'
|
|
72
|
-
* })
|
|
73
|
-
* ```
|
|
74
|
-
* @example
|
|
75
|
-
* ```javascript
|
|
76
|
-
* Jodit.make('.editor', {
|
|
77
|
-
* height: 'auto', // default - autosize
|
|
78
|
-
* })
|
|
79
|
-
* ```
|
|
80
|
-
*/
|
|
81
|
-
Config.prototype.height = 'auto';
|
|
82
|
-
|
|
83
27
|
/**
|
|
84
28
|
* Editor's min-height
|
|
85
29
|
*
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Released under MIT see LICENSE.txt in the project root for license information.
|
|
4
4
|
* Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
|
|
5
5
|
*/
|
|
6
|
+
|
|
6
7
|
describe('Test editor size plugin', function () {
|
|
7
8
|
it('should show resize handler in right-bottom corner and allow resize editor by vertical', function () {
|
|
8
9
|
const editor = getJodit({
|
|
@@ -341,4 +342,30 @@ describe('Test editor size plugin', function () {
|
|
|
341
342
|
});
|
|
342
343
|
});
|
|
343
344
|
});
|
|
345
|
+
|
|
346
|
+
describe('In iframe mode after change mode', function () {
|
|
347
|
+
it('Should set min-height to iframe', function () {
|
|
348
|
+
const editor = getJodit({
|
|
349
|
+
iframe: true,
|
|
350
|
+
minHeight: 300
|
|
351
|
+
});
|
|
352
|
+
|
|
353
|
+
editor.value = '';
|
|
354
|
+
|
|
355
|
+
editor.toggleMode();
|
|
356
|
+
editor.toggleMode();
|
|
357
|
+
|
|
358
|
+
expect(editor.editor.offsetHeight).to.be.above(180);
|
|
359
|
+
});
|
|
360
|
+
});
|
|
361
|
+
|
|
362
|
+
describe('Set height', function () {
|
|
363
|
+
it('Should set container height', function () {
|
|
364
|
+
const editor = getJodit({
|
|
365
|
+
height: 222
|
|
366
|
+
});
|
|
367
|
+
|
|
368
|
+
expect(editor.container.offsetHeight).equals(222);
|
|
369
|
+
});
|
|
370
|
+
});
|
|
344
371
|
});
|
package/src/plugins/size/size.ts
CHANGED
|
@@ -12,8 +12,11 @@ import './size.less';
|
|
|
12
12
|
|
|
13
13
|
import type { IJodit } from 'jodit/types';
|
|
14
14
|
import { css, isNumber } from 'jodit/core/helpers';
|
|
15
|
-
import { Plugin } from 'jodit/core/plugin';
|
|
15
|
+
import { Plugin } from 'jodit/core/plugin/plugin';
|
|
16
16
|
import { autobind } from 'jodit/core/decorators';
|
|
17
|
+
import { pluginSystem } from 'jodit/core/global';
|
|
18
|
+
|
|
19
|
+
import './config';
|
|
17
20
|
|
|
18
21
|
/**
|
|
19
22
|
* Calculate sizes for editor workspace and handle setHeight and setWidth events
|
|
@@ -193,3 +196,5 @@ export class size extends Plugin {
|
|
|
193
196
|
jodit.e.off(jodit.ow, 'load.size', this.resizeWorkspaces).off('.size');
|
|
194
197
|
}
|
|
195
198
|
}
|
|
199
|
+
|
|
200
|
+
pluginSystem.add('size', size);
|
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
|
|
11
11
|
import type { IControlType, IJodit, ISourceEditor } from 'jodit/types';
|
|
12
12
|
import { Config } from 'jodit/config';
|
|
13
|
-
import
|
|
14
|
-
import {
|
|
13
|
+
import { IS_IE, MODE_SOURCE, MODE_SPLIT } from 'jodit/core/constants';
|
|
14
|
+
import { Icon } from 'jodit/core/ui/icon';
|
|
15
15
|
|
|
16
16
|
declare module 'jodit/config' {
|
|
17
17
|
interface Config {
|
|
@@ -86,23 +86,25 @@ Config.prototype.sourceEditorNativeOptions = {
|
|
|
86
86
|
};
|
|
87
87
|
|
|
88
88
|
Config.prototype.sourceEditorCDNUrlsJS = [
|
|
89
|
-
'https://cdnjs.cloudflare.com/ajax/libs/ace/1.4.
|
|
89
|
+
'https://cdnjs.cloudflare.com/ajax/libs/ace/1.4.2/ace.js'
|
|
90
90
|
];
|
|
91
91
|
|
|
92
92
|
Config.prototype.beautifyHTMLCDNUrlsJS = [
|
|
93
|
-
'https://cdnjs.cloudflare.com/ajax/libs/js-beautify/1.
|
|
94
|
-
'https://cdnjs.cloudflare.com/ajax/libs/js-beautify/1.
|
|
93
|
+
'https://cdnjs.cloudflare.com/ajax/libs/js-beautify/1.14.4/beautify.min.js',
|
|
94
|
+
'https://cdnjs.cloudflare.com/ajax/libs/js-beautify/1.14.4/beautify-html.min.js'
|
|
95
95
|
];
|
|
96
96
|
|
|
97
|
+
Icon.set('source', require('./source.svg'));
|
|
98
|
+
|
|
97
99
|
Config.prototype.controls.source = {
|
|
98
|
-
mode:
|
|
100
|
+
mode: MODE_SPLIT,
|
|
99
101
|
|
|
100
102
|
exec: (editor: IJodit) => {
|
|
101
103
|
editor.toggleMode();
|
|
102
104
|
},
|
|
103
105
|
|
|
104
106
|
isActive: (editor: IJodit) => {
|
|
105
|
-
return editor.getRealMode() ===
|
|
107
|
+
return editor.getRealMode() === MODE_SOURCE;
|
|
106
108
|
},
|
|
107
109
|
|
|
108
110
|
tooltip: 'Change mode'
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
import type { IJodit, ISourceEditor } from 'jodit/types';
|
|
12
12
|
import * as constants from 'jodit/core/constants';
|
|
13
13
|
import { isString, loadNext } from 'jodit/core/helpers';
|
|
14
|
+
|
|
14
15
|
import { SourceEditor } from '../sourceEditor';
|
|
15
16
|
|
|
16
17
|
export class AceEditor
|
|
@@ -188,11 +189,13 @@ export class AceEditor
|
|
|
188
189
|
|
|
189
190
|
// global add ace editor in browser
|
|
190
191
|
if (!this.aceExists()) {
|
|
191
|
-
loadNext(editor, editor.o.sourceEditorCDNUrlsJS)
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
192
|
+
loadNext(editor, editor.o.sourceEditorCDNUrlsJS)
|
|
193
|
+
.then(() => {
|
|
194
|
+
if (!editor.isInDestruct) {
|
|
195
|
+
tryInitAceEditor();
|
|
196
|
+
}
|
|
197
|
+
})
|
|
198
|
+
.catch(() => null);
|
|
196
199
|
}
|
|
197
200
|
}
|
|
198
201
|
|
|
@@ -9,8 +9,9 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import type { IJodit, ISourceEditor } from 'jodit/types';
|
|
12
|
-
import { css } from '
|
|
13
|
-
import { Dom } from '
|
|
12
|
+
import { css } from 'jodit/core/helpers/utils/css';
|
|
13
|
+
import { Dom } from 'jodit/core/dom/dom';
|
|
14
|
+
|
|
14
15
|
import { SourceEditor } from '../sourceEditor';
|
|
15
16
|
|
|
16
17
|
export class TextAreaEditor
|
|
@@ -9,9 +9,10 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import type { CallbackFunction, IJodit, ISourceEditor } from 'jodit/types';
|
|
12
|
-
import { AceEditor, TextAreaEditor } from './engines';
|
|
13
12
|
import { isFunction } from 'jodit/core/helpers';
|
|
14
13
|
|
|
14
|
+
import { AceEditor, TextAreaEditor } from './engines';
|
|
15
|
+
|
|
15
16
|
export function createSourceEditor(
|
|
16
17
|
type: 'ace' | 'mirror' | 'area' | ((jodit: IJodit) => ISourceEditor),
|
|
17
18
|
editor: IJodit,
|
|
File without changes
|
|
@@ -16,14 +16,17 @@ import {
|
|
|
16
16
|
INVISIBLE_SPACE,
|
|
17
17
|
KEY_ESC,
|
|
18
18
|
MODE_SOURCE,
|
|
19
|
-
MODE_SPLIT
|
|
19
|
+
MODE_SPLIT,
|
|
20
|
+
SOURCE_CONSUMER
|
|
20
21
|
} from 'jodit/core/constants';
|
|
21
22
|
import { Plugin } from 'jodit/core/plugin';
|
|
22
|
-
import { Dom } from 'jodit/core/dom';
|
|
23
|
+
import { Dom } from 'jodit/core/dom/dom';
|
|
23
24
|
import { isString, loadNext } from 'jodit/core/helpers';
|
|
24
|
-
import { createSourceEditor } from './editor/factory';
|
|
25
25
|
import { autobind, watch } from 'jodit/core/decorators';
|
|
26
|
-
import {
|
|
26
|
+
import { pluginSystem } from 'jodit/core/global';
|
|
27
|
+
|
|
28
|
+
import { createSourceEditor } from './editor/factory';
|
|
29
|
+
import './config';
|
|
27
30
|
|
|
28
31
|
/**
|
|
29
32
|
* Plug-in change simple textarea on CodeMirror editor in Source code mode
|
|
@@ -399,3 +402,5 @@ export class source extends Plugin {
|
|
|
399
402
|
Dom.safeRemove(this.mirrorContainer);
|
|
400
403
|
}
|
|
401
404
|
}
|
|
405
|
+
|
|
406
|
+
pluginSystem.add('source', source);
|
|
@@ -9,8 +9,8 @@ The plugin uses [JS Speech Recognize API](https://developer.mozilla.org/en-US/do
|
|
|
9
9
|
This plugin is not included in the main Jodit build. It must be connected separately.
|
|
10
10
|
|
|
11
11
|
```js
|
|
12
|
-
import 'jodit/build/plugins/speech
|
|
13
|
-
import 'jodit/build/plugins/speech
|
|
12
|
+
import 'jodit/build/plugins/speech-recognize/speech-recognize.js'
|
|
13
|
+
import 'jodit/build/plugins/speech-recognize/speech-recognize.css'
|
|
14
14
|
```
|
|
15
15
|
|
|
16
16
|
Or via CDN:
|
|
@@ -23,9 +23,9 @@ Or via CDN:
|
|
|
23
23
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/jodit/3.18.2/jodit.es2018.min.js"></script>
|
|
24
24
|
<link
|
|
25
25
|
rel="stylesheet"
|
|
26
|
-
href="https://cdnjs.cloudflare.com/ajax/libs/jodit/3.18.2/plugins/speech
|
|
26
|
+
href="https://cdnjs.cloudflare.com/ajax/libs/jodit/3.18.2/plugins/speech-recognize/speech-recognize.css"
|
|
27
27
|
/>
|
|
28
|
-
<script src="https://cdnjs.cloudflare.com/ajax/libs/jodit/3.18.2/plugins/speech
|
|
28
|
+
<script src="https://cdnjs.cloudflare.com/ajax/libs/jodit/3.18.2/plugins/speech-recognize/speech-recognize.js"></script>
|
|
29
29
|
```
|
|
30
30
|
|
|
31
31
|
## Commands
|
|
@@ -5,17 +5,18 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
|
-
* @module plugins/speech
|
|
8
|
+
* @module plugins/speech-recognize
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import type { IControlType, IJodit, IDictionary } from 'jodit/types';
|
|
12
|
-
import type { ISpeechRecognizeConstructor } from './interface';
|
|
13
12
|
|
|
14
13
|
import { Config } from 'jodit/config';
|
|
15
14
|
import { dataBind } from 'jodit/core/helpers/utils/data-bind';
|
|
16
15
|
import { isBoolean } from 'jodit/core/helpers/checker/is-boolean';
|
|
17
16
|
import { Alert } from 'jodit/modules/dialog/alert';
|
|
17
|
+
import { Icon } from 'jodit/core/ui/icon';
|
|
18
18
|
|
|
19
|
+
import type { ISpeechRecognizeConstructor } from './interface';
|
|
19
20
|
import { RecognizeManager } from './helpers/recognize-manager';
|
|
20
21
|
import { SpeechRecognition } from './helpers/api';
|
|
21
22
|
|
|
@@ -95,6 +96,8 @@ Config.prototype.speechRecognize = {
|
|
|
95
96
|
}
|
|
96
97
|
};
|
|
97
98
|
|
|
99
|
+
Icon.set('speech-recognize', require('./speech-recognize.svg'));
|
|
100
|
+
|
|
98
101
|
Config.prototype.controls.speechRecognize = {
|
|
99
102
|
isActive(jodit, _): boolean {
|
|
100
103
|
const api = dataBind<RecognizeManager>(jodit, 'speech');
|
|
@@ -168,7 +171,6 @@ Config.prototype.controls.speechRecognize = {
|
|
|
168
171
|
button.state.activated = api.isEnabled;
|
|
169
172
|
},
|
|
170
173
|
|
|
171
|
-
icon: require('./icon.svg'),
|
|
172
174
|
name: 'speechRecognize',
|
|
173
175
|
command: 'toggleSpeechRecognize',
|
|
174
176
|
tooltip: 'Speech Recognize',
|