mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 16:40:24 +08:00 
			
		
		
		
	move handleGlobalEnterQuickSubmit into a separate file to avoid cycle-import (#20679)
This commit is contained in:
		@@ -5,6 +5,7 @@ import createDropzone from './dropzone.js';
 | 
				
			|||||||
import {initCompColorPicker} from './comp/ColorPicker.js';
 | 
					import {initCompColorPicker} from './comp/ColorPicker.js';
 | 
				
			||||||
import {showGlobalErrorMessage} from '../bootstrap.js';
 | 
					import {showGlobalErrorMessage} from '../bootstrap.js';
 | 
				
			||||||
import {attachDropdownAria} from './aria.js';
 | 
					import {attachDropdownAria} from './aria.js';
 | 
				
			||||||
 | 
					import {handleGlobalEnterQuickSubmit} from './comp/QuickSubmit.js';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const {appUrl, csrfToken} = window.config;
 | 
					const {appUrl, csrfToken} = window.config;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -53,20 +54,6 @@ export function initGlobalEnterQuickSubmit() {
 | 
				
			|||||||
  });
 | 
					  });
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export function handleGlobalEnterQuickSubmit(target) {
 | 
					 | 
				
			||||||
  const $target = $(target);
 | 
					 | 
				
			||||||
  const $form = $(target).closest('form');
 | 
					 | 
				
			||||||
  if ($form.length) {
 | 
					 | 
				
			||||||
    // here use the event to trigger the submit event (instead of calling `submit()` method directly)
 | 
					 | 
				
			||||||
    // otherwise the `areYouSure` handler won't be executed, then there will be an annoying "confirm to leave" dialog
 | 
					 | 
				
			||||||
    $form.trigger('submit');
 | 
					 | 
				
			||||||
  } else {
 | 
					 | 
				
			||||||
    // if no form, then the editor is for an AJAX request, dispatch an event to the target, let the target's event handler to do the AJAX request.
 | 
					 | 
				
			||||||
    // the 'ce-' prefix means this is a CustomEvent
 | 
					 | 
				
			||||||
    $target.trigger('ce-quick-submit');
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
export function initGlobalButtonClickOnEnter() {
 | 
					export function initGlobalButtonClickOnEnter() {
 | 
				
			||||||
  $(document).on('keypress', '.ui.button', (e) => {
 | 
					  $(document).on('keypress', '.ui.button', (e) => {
 | 
				
			||||||
    if (e.keyCode === 13 || e.keyCode === 32) { // enter key or space bar
 | 
					    if (e.keyCode === 13 || e.keyCode === 32) { // enter key or space bar
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,6 @@
 | 
				
			|||||||
import $ from 'jquery';
 | 
					import $ from 'jquery';
 | 
				
			||||||
import attachTribute from '../tribute.js';
 | 
					import attachTribute from '../tribute.js';
 | 
				
			||||||
import {handleGlobalEnterQuickSubmit} from '../common-global.js';
 | 
					import {handleGlobalEnterQuickSubmit} from './QuickSubmit.js';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * @returns {EasyMDE}
 | 
					 * @returns {EasyMDE}
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										15
									
								
								web_src/js/features/comp/QuickSubmit.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								web_src/js/features/comp/QuickSubmit.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,15 @@
 | 
				
			|||||||
 | 
					import $ from 'jquery';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export function handleGlobalEnterQuickSubmit(target) {
 | 
				
			||||||
 | 
					  const $target = $(target);
 | 
				
			||||||
 | 
					  const $form = $(target).closest('form');
 | 
				
			||||||
 | 
					  if ($form.length) {
 | 
				
			||||||
 | 
					    // here use the event to trigger the submit event (instead of calling `submit()` method directly)
 | 
				
			||||||
 | 
					    // otherwise the `areYouSure` handler won't be executed, then there will be an annoying "confirm to leave" dialog
 | 
				
			||||||
 | 
					    $form.trigger('submit');
 | 
				
			||||||
 | 
					  } else {
 | 
				
			||||||
 | 
					    // if no form, then the editor is for an AJAX request, dispatch an event to the target, let the target's event handler to do the AJAX request.
 | 
				
			||||||
 | 
					    // the 'ce-' prefix means this is a CustomEvent
 | 
				
			||||||
 | 
					    $target.trigger('ce-quick-submit');
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
		Reference in New Issue
	
	Block a user