mirror of
				https://github.com/zadam/trilium.git
				synced 2025-10-31 19:49:01 +01:00 
			
		
		
		
	fix debounce webpack
This commit is contained in:
		
							parent
							
								
									15a9ff4450
								
							
						
					
					
						commit
						8fcc76ad6d
					
				| @ -1,70 +0,0 @@ | ||||
| /** | ||||
|  * Returns a function, that, as long as it continues to be invoked, will not | ||||
|  * be triggered. The function will be called after it stops being called for | ||||
|  * N milliseconds. If `immediate` is passed, trigger the function on the | ||||
|  * leading edge, instead of the trailing. The function also has a property 'clear' | ||||
|  * that is a function which will clear the timer to prevent previously scheduled executions. | ||||
|  * | ||||
|  * @source underscore.js | ||||
|  * @see http://unscriptable.com/2009/03/20/debouncing-javascript-methods/
 | ||||
|  * @param {Function} function to wrap | ||||
|  * @param {Number} timeout in ms (`100`) | ||||
|  * @param {Boolean} whether to execute at the beginning (`false`) | ||||
|  * @api public | ||||
|  */ | ||||
| function debounce(func, wait_ms, immediate){ | ||||
|   var timeout, args, context, timestamp, result; | ||||
|   if (null == wait_ms) wait_ms = 100; | ||||
| 
 | ||||
|   function later() { | ||||
|     var last = Date.now() - timestamp; | ||||
| 
 | ||||
|     if (last < wait_ms && last >= 0) { | ||||
|       timeout = setTimeout(later, wait_ms - last); | ||||
|     } else { | ||||
|       timeout = null; | ||||
|       if (!immediate) { | ||||
|         result = func.apply(context, args); | ||||
|         context = args = null; | ||||
|       } | ||||
|     } | ||||
|   }; | ||||
| 
 | ||||
|   var debounced = function(){ | ||||
|     context = this; | ||||
|     args = arguments; | ||||
|     timestamp = Date.now(); | ||||
|     var callNow = immediate && !timeout; | ||||
|     if (!timeout) timeout = setTimeout(later, wait_ms); | ||||
|     if (callNow) { | ||||
|       result = func.apply(context, args); | ||||
|       context = args = null; | ||||
|     } | ||||
| 
 | ||||
|     return result; | ||||
|   }; | ||||
| 
 | ||||
|   debounced.clear = function() { | ||||
|     if (timeout) { | ||||
|       clearTimeout(timeout); | ||||
|       timeout = null; | ||||
|     } | ||||
|   }; | ||||
| 
 | ||||
|   debounced.flush = function() { | ||||
|     if (timeout) { | ||||
|       result = func.apply(context, args); | ||||
|       context = args = null; | ||||
| 
 | ||||
|       clearTimeout(timeout); | ||||
|       timeout = null; | ||||
|     } | ||||
|   }; | ||||
| 
 | ||||
|   return debounced; | ||||
| }; | ||||
| 
 | ||||
| // Adds compatibility for ES modules
 | ||||
| debounce.debounce = debounce; | ||||
| 
 | ||||
| export default debounce; | ||||
							
								
								
									
										70
									
								
								src/public/app/services/debounce.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								src/public/app/services/debounce.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,70 @@ | ||||
| /** | ||||
|  * Returns a function, that, as long as it continues to be invoked, will not | ||||
|  * be triggered. The function will be called after it stops being called for | ||||
|  * N milliseconds. If `immediate` is passed, trigger the function on the | ||||
|  * leading edge, instead of the trailing. The function also has a property 'clear' | ||||
|  * that is a function which will clear the timer to prevent previously scheduled executions. | ||||
|  * | ||||
|  * @source underscore.js | ||||
|  * @see http://unscriptable.com/2009/03/20/debouncing-javascript-methods/
 | ||||
|  * @param {Function} function to wrap | ||||
|  * @param {Number} timeout in ms (`100`) | ||||
|  * @param {Boolean} whether to execute at the beginning (`false`) | ||||
|  * @api public | ||||
|  */ | ||||
| function debounce(func, wait_ms, immediate){ | ||||
|     var timeout, args, context, timestamp, result; | ||||
|     if (null == wait_ms) wait_ms = 100; | ||||
| 
 | ||||
|     function later() { | ||||
|         var last = Date.now() - timestamp; | ||||
| 
 | ||||
|         if (last < wait_ms && last >= 0) { | ||||
|             timeout = setTimeout(later, wait_ms - last); | ||||
|         } else { | ||||
|             timeout = null; | ||||
|             if (!immediate) { | ||||
|                 result = func.apply(context, args); | ||||
|                 context = args = null; | ||||
|             } | ||||
|         } | ||||
|     }; | ||||
| 
 | ||||
|     var debounced = function(){ | ||||
|         context = this; | ||||
|         args = arguments; | ||||
|         timestamp = Date.now(); | ||||
|         var callNow = immediate && !timeout; | ||||
|         if (!timeout) timeout = setTimeout(later, wait_ms); | ||||
|         if (callNow) { | ||||
|             result = func.apply(context, args); | ||||
|             context = args = null; | ||||
|         } | ||||
| 
 | ||||
|         return result; | ||||
|     }; | ||||
| 
 | ||||
|     debounced.clear = function() { | ||||
|         if (timeout) { | ||||
|             clearTimeout(timeout); | ||||
|             timeout = null; | ||||
|         } | ||||
|     }; | ||||
| 
 | ||||
|     debounced.flush = function() { | ||||
|         if (timeout) { | ||||
|             result = func.apply(context, args); | ||||
|             context = args = null; | ||||
| 
 | ||||
|             clearTimeout(timeout); | ||||
|             timeout = null; | ||||
|         } | ||||
|     }; | ||||
| 
 | ||||
|     return debounced; | ||||
| }; | ||||
| 
 | ||||
| // Adds compatibility for ES modules
 | ||||
| debounce.debounce = debounce; | ||||
| 
 | ||||
| export default debounce; | ||||
| @ -2,7 +2,7 @@ import libraryLoader from "../../services/library_loader.js"; | ||||
| import TypeWidget from "./type_widget.js"; | ||||
| import utils from '../../services/utils.js'; | ||||
| import froca from "../../services/froca.js"; | ||||
| import debounce from "../../../libraries/lodash.debounce.js"; | ||||
| import debounce from "../../services/debounce.js"; | ||||
| 
 | ||||
| const {sleep} = utils; | ||||
| 
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 zadam
						zadam