mirror of
				https://github.com/lingble/chatwoot.git
				synced 2025-11-03 20:48:07 +00:00 
			
		
		
		
	* fix: Send message with "enter" also do new line * chore: Review fixes * chore: Naming fixes * chore: Minor fixes * chore: Fix line break issue when cmd plus enter enabled
		
			
				
	
	
		
			122 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			122 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
export const isEnter = e => {
 | 
						|
  return e.keyCode === 13;
 | 
						|
};
 | 
						|
 | 
						|
export const isEscape = e => {
 | 
						|
  return e.keyCode === 27;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedShift = e => {
 | 
						|
  return e.shiftKey;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedCommand = e => {
 | 
						|
  return e.metaKey;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedEnterAndNotCmdOrShift = e => {
 | 
						|
  return isEnter(e) && !hasPressedCommand(e) && !hasPressedShift(e);
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedCommandAndEnter = e => {
 | 
						|
  return e.metaKey && e.keyCode === 13;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedCommandAndForwardSlash = e => {
 | 
						|
  return e.metaKey && e.keyCode === 191;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedAltAndCKey = e => {
 | 
						|
  return e.altKey && e.keyCode === 67;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedAltAndVKey = e => {
 | 
						|
  return e.altKey && e.keyCode === 86;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedAltAndRKey = e => {
 | 
						|
  return e.altKey && e.keyCode === 82;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedAltAndSKey = e => {
 | 
						|
  return e.altKey && e.keyCode === 83;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedAltAndBKey = e => {
 | 
						|
  return e.altKey && e.keyCode === 66;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedAltAndNKey = e => {
 | 
						|
  return e.altKey && e.keyCode === 78;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedAltAndAKey = e => {
 | 
						|
  return e.altKey && e.keyCode === 65;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedAltAndPKey = e => {
 | 
						|
  return e.altKey && e.keyCode === 80;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedAltAndLKey = e => {
 | 
						|
  return e.altKey && e.keyCode === 76;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedAltAndEKey = e => {
 | 
						|
  return e.altKey && e.keyCode === 69;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedCommandPlusAltAndEKey = e => {
 | 
						|
  return e.metaKey && e.altKey && e.keyCode === 69;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedAltAndOKey = e => {
 | 
						|
  return e.altKey && e.keyCode === 79;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedAltAndJKey = e => {
 | 
						|
  return e.altKey && e.keyCode === 74;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedAltAndKKey = e => {
 | 
						|
  return e.altKey && e.keyCode === 75;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedAltAndMKey = e => {
 | 
						|
  return e.altKey && e.keyCode === 77;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedArrowUpKey = e => {
 | 
						|
  return e.keyCode === 38;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedArrowDownKey = e => {
 | 
						|
  return e.keyCode === 40;
 | 
						|
};
 | 
						|
 | 
						|
export const hasPressedCommandPlusKKey = e => {
 | 
						|
  return e.metaKey && e.keyCode === 75;
 | 
						|
};
 | 
						|
 | 
						|
export const buildHotKeys = e => {
 | 
						|
  const key = e.key.toLowerCase();
 | 
						|
  if (['shift', 'meta', 'alt', 'control'].includes(key)) {
 | 
						|
    return key;
 | 
						|
  }
 | 
						|
  let hotKeyPattern = '';
 | 
						|
  if (e.altKey) {
 | 
						|
    hotKeyPattern += 'alt+';
 | 
						|
  }
 | 
						|
  if (e.ctrlKey) {
 | 
						|
    hotKeyPattern += 'ctrl+';
 | 
						|
  }
 | 
						|
  if (e.metaKey && !e.ctrlKey) {
 | 
						|
    hotKeyPattern += 'meta+';
 | 
						|
  }
 | 
						|
  if (e.shiftKey) {
 | 
						|
    hotKeyPattern += 'shift+';
 | 
						|
  }
 | 
						|
  hotKeyPattern += key;
 | 
						|
  return hotKeyPattern;
 | 
						|
};
 |