JSFiddle - React, Tailwind, and code Playground
HTML
<input type="text" id="foo" />
<div id="result"></div>
JavaScript
eval(function(p,a,c,k,e,r){e=function(c){return c.toString(a)};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(1($){$.4.0=1(a){2 b=5.6();2 c=$.7();2 d=8;9(b.3(\'0\')!=e){b.3(\'0\').f(b);b.g(\'0\')}b.3(\'0\',c);d=h(1(){c.i(b)},a);c.j(1(){k(d)});l c.m()}})(n);',24,24,'waiting|function|var|data|fn|this|first|Deferred|null|if|||||undefined|rejectWith|removeData|setTimeout|resolveWith|fail|clearTimeout|return|promise|jQuery'.split('|'),0,{}))
$('#foo').on('keyup paste cut', function(){
alert("");
$(this).waiting(5000).done(function(){
$('#result').text( $(this).val() );
});
});