diff options
author | wxiaoguang <wxiaoguang@gmail.com> | 2021-12-10 10:51:27 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-12-10 10:51:27 +0800 |
commit | 0a9fcf63a49799ad3b0f146c54879161bac61e10 (patch) | |
tree | e4a6382fc1a2de403f2fec47886348dae5e72d2b /web_src/js/features/repo-issue.js | |
parent | 719bddcd76610a63dadc8555760072957a11cf30 (diff) | |
download | gitea-0a9fcf63a49799ad3b0f146c54879161bac61e10.tar.gz gitea-0a9fcf63a49799ad3b0f146c54879161bac61e10.zip |
Clean legacy SimpleMDE code (#17926)
Since we are using EasyMDE now, we do not need to keep the SimpleMDE code anymore.
This PR removes all legacy SimpleMDE code, and makes some related changes:
* `createCommentEasyMDE` can accept native DOM element, and it doesn't need `jQuery.data` to store EasyMDE editor object (as discussed about the frontend guideline).
* introduce `getAttachedEasyMDE` to get the attached EasyMDE editor object, it's easier to find all the usage of EasyMDE.
* rename variable names from `$simplemde` to `easyMDE`, the `$` was incorrect because it is a EasyMDE editor, not a jQuery object.
With this PR, it will be easier to do more refactoring or replacing EasyMDE with other editors.
Diffstat (limited to 'web_src/js/features/repo-issue.js')
-rw-r--r-- | web_src/js/features/repo-issue.js | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/web_src/js/features/repo-issue.js b/web_src/js/features/repo-issue.js index 4fc4b13cad..545f59a4d8 100644 --- a/web_src/js/features/repo-issue.js +++ b/web_src/js/features/repo-issue.js @@ -1,6 +1,6 @@ import {htmlEscape} from 'escape-goat'; import attachTribute from './tribute.js'; -import {createCommentSimpleMDE} from './comp/CommentSimpleMDE.js'; +import {createCommentEasyMDE, getAttachedEasyMDE} from './comp/CommentEasyMDE.js'; import {initCompImagePaste} from './comp/ImagePaste.js'; import {initCompMarkupContentPreviewTab} from './comp/MarkupContentPreview.js'; @@ -213,8 +213,8 @@ export function initRepoIssueStatusButton() { // Change status const $statusButton = $('#status-button'); $('#comment-form textarea').on('keyup', function () { - const $simplemde = $(this).data('simplemde'); - const value = ($simplemde && $simplemde.value()) ? $simplemde.value() : $(this).val(); + const easyMDE = getAttachedEasyMDE(this); + const value = easyMDE?.value() || $(this).val(); $statusButton.text($statusButton.data(value.length === 0 ? 'status' : 'status-and-comment')); }); $statusButton.on('click', () => { @@ -445,22 +445,19 @@ export function initRepoPullRequestReview() { const form = $(this).closest('.comment-code-cloud').find('.comment-form'); form.removeClass('hide'); const $textarea = form.find('textarea'); - let $simplemde; - if ($textarea.data('simplemde')) { - $simplemde = $textarea.data('simplemde'); - } else { + let easyMDE = getAttachedEasyMDE($textarea); + if (!easyMDE) { attachTribute($textarea.get(), {mentions: true, emoji: true}); - $simplemde = createCommentSimpleMDE($textarea); - $textarea.data('simplemde', $simplemde); + easyMDE = createCommentEasyMDE($textarea); } $textarea.focus(); - $simplemde.codemirror.focus(); + easyMDE.codemirror.focus(); assignMenuAttributes(form.find('.menu')); }); const $reviewBox = $('.review-box'); if ($reviewBox.length === 1) { - createCommentSimpleMDE($reviewBox.find('textarea')); + createCommentEasyMDE($reviewBox.find('textarea')); initCompImagePaste($reviewBox); } @@ -519,9 +516,9 @@ export function initRepoPullRequestReview() { td.find("input[name='path']").val(path); const $textarea = commentCloud.find('textarea'); attachTribute($textarea.get(), {mentions: true, emoji: true}); - const $simplemde = createCommentSimpleMDE($textarea); + const easyMDE = createCommentEasyMDE($textarea); $textarea.focus(); - $simplemde.codemirror.focus(); + easyMDE.codemirror.focus(); } }); } |