{"version":3,"sources":["node_modules\\debounce\\index.js"],"names":["module","exports","debounce","func","wait","immediate","timeout","args","context","timestamp","result","later","last","Date","now","setTimeout","apply","debounced","arguments","callNow","clear","clearTimeout"],"mappings":";;;;;;;;;;;;;;;AAeAA,OAAOC,OAAP,CAAiB,QAASC,SAAT,CAAkBC,IAAlB,CAAwBC,IAAxB,CAA8BC,SAA9B,CAAwC;AACvD,GAAIC,QAAJ,CAAaC,IAAb,CAAmBC,OAAnB,CAA4BC,SAA5B,CAAuCC,MAAvC;AACA,GAAI,MAAQN,IAAZ,CAAkBA,KAAO,GAAP;;AAElB,QAASO,MAAT,EAAiB;AACf,GAAIC,MAAOC,KAAKC,GAAL,GAAaL,SAAxB;;AAEA,GAAIG,KAAOR,IAAP,EAAeQ,MAAQ,CAA3B,CAA8B;AAC5BN,QAAUS,WAAWJ,KAAX,CAAkBP,KAAOQ,IAAzB,CAAV;AACD,CAFD,IAEO;AACLN,QAAU,IAAV;AACA,GAAI,CAACD,SAAL,CAAgB;AACdK,OAASP,KAAKa,KAAL,CAAWR,OAAX,CAAoBD,IAApB,CAAT;AACAC,QAAUD,KAAO,IAAjB;AACD;AACF;AACF;;AAED,GAAIU,WAAY,QAAZA,UAAY,EAAU;AACxBT,QAAU,IAAV;AACAD,KAAOW,SAAP;AACAT,UAAYI,KAAKC,GAAL,EAAZ;AACA,GAAIK,SAAUd,WAAa,CAACC,OAA5B;AACA,GAAI,CAACA,OAAL,CAAcA,QAAUS,WAAWJ,KAAX,CAAkBP,IAAlB,CAAV;AACd,GAAIe,OAAJ,CAAa;AACXT,OAASP,KAAKa,KAAL,CAAWR,OAAX,CAAoBD,IAApB,CAAT;AACAC,QAAUD,KAAO,IAAjB;AACD;;AAED,MAAOG,OAAP;AACD,CAZD;;AAcAO,UAAUG,KAAV,CAAkB,UAAW;AAC3B,GAAId,OAAJ,CAAa;AACXe,aAAaf,OAAb;AACAA,QAAU,IAAV;AACD;AACF,CALD;;AAOA,MAAOW,UAAP;AACD,CAxCD","file":"index.js","sourceRoot":"D:/Work/Office/react-native-on-web/cli/tmpl/project","sourcesContent":["/**\n * Returns a function, that, as long as it continues to be invoked, will not\n * be triggered. The function will be called after it stops being called for\n * N milliseconds. If `immediate` is passed, trigger the function on the\n * leading edge, instead of the trailing. The function also has a property 'clear' \n * that is a function which will clear the timer to prevent previously scheduled executions. \n *\n * @source underscore.js\n * @see http://unscriptable.com/2009/03/20/debouncing-javascript-methods/\n * @param {Function} function to wrap\n * @param {Number} timeout in ms (`100`)\n * @param {Boolean} whether to execute at the beginning (`false`)\n * @api public\n */\n\nmodule.exports = function debounce(func, wait, immediate){\n  var timeout, args, context, timestamp, result;\n  if (null == wait) wait = 100;\n\n  function later() {\n    var last = Date.now() - timestamp;\n\n    if (last < wait && last >= 0) {\n      timeout = setTimeout(later, wait - last);\n    } else {\n      timeout = null;\n      if (!immediate) {\n        result = func.apply(context, args);\n        context = args = null;\n      }\n    }\n  };\n\n  var debounced = function(){\n    context = this;\n    args = arguments;\n    timestamp = Date.now();\n    var callNow = immediate && !timeout;\n    if (!timeout) timeout = setTimeout(later, wait);\n    if (callNow) {\n      result = func.apply(context, args);\n      context = args = null;\n    }\n\n    return result;\n  };\n\n  debounced.clear = function() {\n    if (timeout) {\n      clearTimeout(timeout);\n      timeout = null;\n    }\n  };\n\n  return debounced;\n};\n"]}