summaryrefslogtreecommitdiffstats
path: root/web_src/js/features/repo-issue.js
diff options
context:
space:
mode:
authorwxiaoguang <wxiaoguang@gmail.com>2021-12-10 10:51:27 +0800
committerGitHub <noreply@github.com>2021-12-10 10:51:27 +0800
commit0a9fcf63a49799ad3b0f146c54879161bac61e10 (patch)
treee4a6382fc1a2de403f2fec47886348dae5e72d2b /web_src/js/features/repo-issue.js
parent719bddcd76610a63dadc8555760072957a11cf30 (diff)
downloadgitea-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.js23
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();
}
});
}