mirror of
				https://codeberg.org/forgejo/forgejo.git
				synced 2025-11-04 00:11:04 +00:00 
			
		
		
		
	Close #22847 This PR: * introduce Gitea's own `showElem` and related functions * remove jQuery show/hide * remove .hide class * remove inline style=display:none From now on: do not use: * "[hidden]" attribute: it's too weak, can not be applied to an element with "display: flex" * ".hidden" class: it has been polluted by Fomantic UI in many cases * inline style="display: none": it's difficult to tweak * jQuery's show/hide/toggle: it can not show/hide elements with "display: xxx !important" only use: * this ".gt-hidden" class * showElem/hideElem/toggleElem functions in "utils/dom.js" cc: @silverwind , this is the all-in-one PR
		
			
				
	
	
		
			32 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
import $ from 'jquery';
 | 
						|
import {attachTribute} from './tribute.js';
 | 
						|
import {initCompMarkupContentPreviewTab} from './comp/MarkupContentPreview.js';
 | 
						|
import {initEasyMDEImagePaste} from './comp/ImagePaste.js';
 | 
						|
import {createCommentEasyMDE} from './comp/EasyMDE.js';
 | 
						|
import {hideElem} from '../utils/dom.js';
 | 
						|
 | 
						|
export function initRepoRelease() {
 | 
						|
  $(document).on('click', '.remove-rel-attach', function() {
 | 
						|
    const uuid = $(this).data('uuid');
 | 
						|
    const id = $(this).data('id');
 | 
						|
    $(`input[name='attachment-del-${uuid}']`).attr('value', true);
 | 
						|
    hideElem($(`#attachment-${id}`));
 | 
						|
  });
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
export function initRepoReleaseEditor() {
 | 
						|
  const $editor = $('.repository.new.release .content-editor');
 | 
						|
  if ($editor.length === 0) {
 | 
						|
    return;
 | 
						|
  }
 | 
						|
 | 
						|
  (async () => {
 | 
						|
    const $textarea = $editor.find('textarea');
 | 
						|
    await attachTribute($textarea.get(), {mentions: true, emoji: true});
 | 
						|
    const easyMDE = await createCommentEasyMDE($textarea);
 | 
						|
    initCompMarkupContentPreviewTab($editor);
 | 
						|
    const $dropzone = $editor.parent().find('.dropzone');
 | 
						|
    initEasyMDEImagePaste(easyMDE, $dropzone);
 | 
						|
  })();
 | 
						|
}
 |