PATH: /home/hwyuvbry/dear.waroenkhoki123.web.id/staff/assets/vendor/libs/idletimer
FILE_BARU
CREATE
FOLDER_BARU
MKDIR
UPLOAD_FILE
GO
[ .. KEMBALI ]
📄 idletimer.js
↓
X
SAVING...
BERHASIL DIUBAH!
EDITING: idletimer.js
/* * ATTENTION: An "eval-source-map" devtool has been used. * This devtool is neither made for production nor for readable output files. * It uses "eval()" calls to create a separate source file with attached SourceMaps in the browser devtools. * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) * or disable the default devtool with "devtool: false". * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). */ (function webpackUniversalModuleDefinition(root, factory) { if(typeof exports === 'object' && typeof module === 'object') module.exports = factory(); else if(typeof define === 'function' && define.amd) define([], factory); else { var a = factory(); for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i]; } })(self, function() { return /******/ (function() { // webpackBootstrap /******/ var __webpack_modules__ = ({ /***/ "./libs/idletimer/idletimer.js": /*!*************************************!*\ !*** ./libs/idletimer/idletimer.js ***! \*************************************/ /***/ (function() { eval("function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n/*! Idle Timer - v1.1.1 - 2020-06-25\n * https://github.com/thorst/jquery-idletimer\n * Copyright (c) 2020 Paul Irish; Licensed MIT */\n/*\n\tmousewheel (deprecated) -> IE6.0, Chrome, Opera, Safari\n\tDOMMouseScroll (deprecated) -> Firefox 1.0\n\twheel (standard) -> Chrome 31, Firefox 17, IE9, Firefox Mobile 17.0\n\n\t//No need to use, use DOMMouseScroll\n\tMozMousePixelScroll -> Firefox 3.5, Firefox Mobile 1.0\n\n\t//Events\n\tWheelEvent -> see wheel\n\tMouseWheelEvent -> see mousewheel\n\tMouseScrollEvent -> Firefox 3.5, Firefox Mobile 1.0\n*/\n(function ($) {\n $.idleTimer = function (firstParam, elem) {\n var opts;\n if (_typeof(firstParam) === 'object') {\n opts = firstParam;\n firstParam = null;\n } else if (typeof firstParam === 'number') {\n opts = {\n timeout: firstParam\n };\n firstParam = null;\n }\n\n // element to watch\n elem = elem || document;\n\n // defaults that are to be stored as instance props on the elem\n opts = $.extend({\n idle: false,\n // indicates if the user is idle\n timeout: 30000,\n // the amount of time (ms) before the user is considered idle\n events: 'mousemove keydown wheel DOMMouseScroll mousewheel mousedown touchstart touchmove MSPointerDown MSPointerMove' // define active events\n }, opts);\n var jqElem = $(elem),\n obj = jqElem.data('idleTimerObj') || {},\n /* (intentionally not documented)\n * Toggles the idle state and fires an appropriate event.\n * @return {void}\n */\n toggleIdleState = function toggleIdleState(e) {\n var obj = $.data(elem, 'idleTimerObj') || {};\n\n // toggle the state\n obj.idle = !obj.idle;\n\n // store toggle state date time\n obj.olddate = +new Date();\n\n // create a custom event, with state and name space\n var event = $.Event((obj.idle ? 'idle' : 'active') + '.idleTimer');\n\n // trigger event on object with elem and copy of obj\n $(elem).trigger(event, [elem, $.extend({}, obj), e]);\n },\n /**\n * Handle event triggers\n * @return {void}\n * @method event\n * @static\n */\n handleEvent = function handleEvent(e) {\n var obj = $.data(elem, 'idleTimerObj') || {};\n\n // ignore writting to storage unless related to idleTimer\n if (e.type === 'storage' && e.originalEvent.key !== obj.timerSyncId) {\n return;\n }\n\n // this is already paused, ignore events for now\n if (obj.remaining != null) {\n return;\n }\n\n /*\n mousemove is kinda buggy, it can be triggered when it should be idle.\n Typically is happening between 115 - 150 milliseconds after idle triggered.\n @psyafter & @kaellis report \"always triggered if using modal (jQuery ui, with overlay)\"\n @thorst has similar issues on ios7 \"after $.scrollTop() on text area\"\n */\n if (e.type === 'mousemove') {\n // if coord are same, it didn't move\n if (e.pageX === obj.pageX && e.pageY === obj.pageY) {\n return;\n }\n // if coord don't exist how could it move\n if (typeof e.pageX === 'undefined' && typeof e.pageY === 'undefined') {\n return;\n }\n // under 200 ms is hard to do, and you would have to stop, as continuous activity will bypass this\n var elapsed = +new Date() - obj.olddate;\n if (elapsed < 200) {\n return;\n }\n }\n\n // clear any existing timeout\n clearTimeout(obj.tId);\n\n // if the idle timer is enabled, flip\n if (obj.idle) {\n toggleIdleState(e);\n }\n\n // store when user was last active\n obj.lastActive = +new Date();\n\n // update mouse coord\n obj.pageX = e.pageX;\n obj.pageY = e.pageY;\n\n // sync lastActive\n if (e.type !== 'storage' && obj.timerSyncId) {\n if (typeof localStorage !== 'undefined') {\n localStorage.setItem(obj.timerSyncId, obj.lastActive);\n }\n }\n\n // set a new timeout\n obj.tId = setTimeout(toggleIdleState, obj.timeout);\n },\n /**\n * Restore initial settings and restart timer\n * @return {void}\n * @method reset\n * @static\n */\n reset = function reset() {\n var obj = $.data(elem, 'idleTimerObj') || {};\n\n // reset settings\n obj.idle = obj.idleBackup;\n obj.olddate = +new Date();\n obj.lastActive = obj.olddate;\n obj.remaining = null;\n\n // reset Timers\n clearTimeout(obj.tId);\n if (!obj.idle) {\n obj.tId = setTimeout(toggleIdleState, obj.timeout);\n }\n },\n /**\n * Store remaining time, stop timer\n * You can pause from an idle OR active state\n * @return {void}\n * @method pause\n * @static\n */\n pause = function pause() {\n var obj = $.data(elem, 'idleTimerObj') || {};\n\n // this is already paused\n if (obj.remaining != null) {\n return;\n }\n\n // define how much is left on the timer\n obj.remaining = obj.timeout - (+new Date() - obj.olddate);\n\n // clear any existing timeout\n clearTimeout(obj.tId);\n },\n /**\n * Start timer with remaining value\n * @return {void}\n * @method resume\n * @static\n */\n resume = function resume() {\n var obj = $.data(elem, 'idleTimerObj') || {};\n\n // this isn't paused yet\n if (obj.remaining == null) {\n return;\n }\n\n // start timer\n if (!obj.idle) {\n obj.tId = setTimeout(toggleIdleState, obj.remaining);\n }\n\n // clear remaining\n obj.remaining = null;\n },\n /**\n * Stops the idle timer. This removes appropriate event handlers\n * and cancels any pending timeouts.\n * @return {void}\n * @method destroy\n * @static\n */\n destroy = function destroy() {\n var obj = $.data(elem, 'idleTimerObj') || {};\n\n //clear any pending timeouts\n clearTimeout(obj.tId);\n\n //Remove data\n jqElem.removeData('idleTimerObj');\n\n //detach the event handlers\n jqElem.off('._idleTimer');\n },\n /**\n * Returns the time until becoming idle\n * @return {number}\n * @method remainingtime\n * @static\n */\n remainingtime = function remainingtime() {\n var obj = $.data(elem, 'idleTimerObj') || {};\n\n //If idle there is no time remaining\n if (obj.idle) {\n return 0;\n }\n\n //If its paused just return that\n if (obj.remaining != null) {\n return obj.remaining;\n }\n\n //Determine remaining, if negative idle didn't finish flipping, just return 0\n var remaining = obj.timeout - (+new Date() - obj.lastActive);\n if (remaining < 0) {\n remaining = 0;\n }\n\n //If this is paused return that number, else return current remaining\n return remaining;\n };\n\n // determine which function to call\n if (firstParam === null && typeof obj.idle !== 'undefined') {\n // they think they want to init, but it already is, just reset\n reset();\n return jqElem;\n } else if (firstParam === null) {\n // they want to init\n } else if (firstParam !== null && typeof obj.idle === 'undefined') {\n // they want to do something, but it isnt init\n // not sure the best way to handle this\n return false;\n } else if (firstParam === 'destroy') {\n destroy();\n return jqElem;\n } else if (firstParam === 'pause') {\n pause();\n return jqElem;\n } else if (firstParam === 'resume') {\n resume();\n return jqElem;\n } else if (firstParam === 'reset') {\n reset();\n return jqElem;\n } else if (firstParam === 'getRemainingTime') {\n return remainingtime();\n } else if (firstParam === 'getElapsedTime') {\n return +new Date() - obj.olddate;\n } else if (firstParam === 'getLastActiveTime') {\n return obj.lastActive;\n } else if (firstParam === 'isIdle') {\n return obj.idle;\n }\n\n // Test via a getter in the options object to see if the passive property is accessed\n // This isnt working in jquery, though is planned for 4.0\n // https://github.com/jquery/jquery/issues/2871\n /*var supportsPassive = false;\n try {\n var Popts = Object.defineProperty({}, \"passive\", {\n get: function() {\n supportsPassive = true;\n }\n });\n window.addEventListener(\"test\", null, Popts);\n } catch (e) {}\n */\n\n /* (intentionally not documented)\n * Handles a user event indicating that the user isn't idle. namespaced with internal idleTimer\n * @param {Event} event A DOM2-normalized event object.\n * @return {void}\n */\n jqElem.on((opts.events + ' ').split(' ').join('._idleTimer ').trim(), function (e) {\n handleEvent(e);\n });\n //}, supportsPassive ? { passive: true } : false);\n\n if (opts.timerSyncId) {\n $(window).on('storage', handleEvent);\n }\n\n // Internal Object Properties, This isn't all necessary, but we\n // explicitly define all keys here so we know what we are working with\n obj = $.extend({}, {\n olddate: +new Date(),\n // the last time state changed\n lastActive: +new Date(),\n // the last time timer was active\n idle: opts.idle,\n // current state\n idleBackup: opts.idle,\n // backup of idle parameter since it gets modified\n timeout: opts.timeout,\n // the interval to change state\n remaining: null,\n // how long until state changes\n timerSyncId: opts.timerSyncId,\n // localStorage key to use for syncing this timer\n tId: null,\n // the idle timer setTimeout\n pageX: null,\n // used to store the mouse coord\n pageY: null\n });\n\n // set a timeout to toggle state. May wish to omit this in some situations\n if (!obj.idle) {\n obj.tId = setTimeout(toggleIdleState, obj.timeout);\n }\n\n // store our instance on the object\n $.data(elem, 'idleTimerObj', obj);\n return jqElem;\n };\n\n // This allows binding to element\n $.fn.idleTimer = function (firstParam) {\n if (this[0]) {\n return $.idleTimer(firstParam, this[0]);\n }\n return this;\n };\n})(jQuery);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9saWJzL2lkbGV0aW1lci9pZGxldGltZXIuanMuanMiLCJuYW1lcyI6WyIkIiwiaWRsZVRpbWVyIiwiZmlyc3RQYXJhbSIsImVsZW0iLCJvcHRzIiwidGltZW91dCIsImRvY3VtZW50IiwiZXh0ZW5kIiwiaWRsZSIsImV2ZW50cyIsImpxRWxlbSIsIm9iaiIsImRhdGEiLCJ0b2dnbGVJZGxlU3RhdGUiLCJlIiwib2xkZGF0ZSIsIkRhdGUiLCJldmVudCIsIkV2ZW50IiwidHJpZ2dlciIsImhhbmRsZUV2ZW50IiwidHlwZSIsIm9yaWdpbmFsRXZlbnQiLCJrZXkiLCJ0aW1lclN5bmNJZCIsInJlbWFpbmluZyIsInBhZ2VYIiwicGFnZVkiLCJlbGFwc2VkIiwiY2xlYXJUaW1lb3V0IiwidElkIiwibGFzdEFjdGl2ZSIsImxvY2FsU3RvcmFnZSIsInNldEl0ZW0iLCJzZXRUaW1lb3V0IiwicmVzZXQiLCJpZGxlQmFja3VwIiwicGF1c2UiLCJyZXN1bWUiLCJkZXN0cm95IiwicmVtb3ZlRGF0YSIsIm9mZiIsInJlbWFpbmluZ3RpbWUiLCJvbiIsInNwbGl0Iiwiam9pbiIsInRyaW0iLCJ3aW5kb3ciLCJmbiIsImpRdWVyeSJdLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vTWF0ZXJpYWxpemUvLi9saWJzL2lkbGV0aW1lci9pZGxldGltZXIuanM/ZDkzNSJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgSWRsZSBUaW1lciAtIHYxLjEuMSAtIDIwMjAtMDYtMjVcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS90aG9yc3QvanF1ZXJ5LWlkbGV0aW1lclxuICogQ29weXJpZ2h0IChjKSAyMDIwIFBhdWwgSXJpc2g7IExpY2Vuc2VkIE1JVCAqL1xuLypcblx0bW91c2V3aGVlbCAoZGVwcmVjYXRlZCkgLT4gSUU2LjAsIENocm9tZSwgT3BlcmEsIFNhZmFyaVxuXHRET01Nb3VzZVNjcm9sbCAoZGVwcmVjYXRlZCkgLT4gRmlyZWZveCAxLjBcblx0d2hlZWwgKHN0YW5kYXJkKSAtPiBDaHJvbWUgMzEsIEZpcmVmb3ggMTcsIElFOSwgRmlyZWZveCBNb2JpbGUgMTcuMFxuXG5cdC8vTm8gbmVlZCB0byB1c2UsIHVzZSBET01Nb3VzZVNjcm9sbFxuXHRNb3pNb3VzZVBpeGVsU2Nyb2xsIC0+IEZpcmVmb3ggMy41LCBGaXJlZm94IE1vYmlsZSAxLjBcblxuXHQvL0V2ZW50c1xuXHRXaGVlbEV2ZW50IC0+IHNlZSB3aGVlbFxuXHRNb3VzZVdoZWVsRXZlbnQgLT4gc2VlIG1vdXNld2hlZWxcblx0TW91c2VTY3JvbGxFdmVudCAtPiBGaXJlZm94IDMuNSwgRmlyZWZveCBNb2JpbGUgMS4wXG4qL1xuKGZ1bmN0aW9uICgkKSB7XG4gICQuaWRsZVRpbWVyID0gZnVuY3Rpb24gKGZpcnN0UGFyYW0sIGVsZW0pIHtcbiAgICB2YXIgb3B0cztcbiAgICBpZiAodHlwZW9mIGZpcnN0UGFyYW0gPT09ICdvYmplY3QnKSB7XG4gICAgICBvcHRzID0gZmlyc3RQYXJhbTtcbiAgICAgIGZpcnN0UGFyYW0gPSBudWxsO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIGZpcnN0UGFyYW0gPT09ICdudW1iZXInKSB7XG4gICAgICBvcHRzID0geyB0aW1lb3V0OiBmaXJzdFBhcmFtIH07XG4gICAgICBmaXJzdFBhcmFtID0gbnVsbDtcbiAgICB9XG5cbiAgICAvLyBlbGVtZW50IHRvIHdhdGNoXG4gICAgZWxlbSA9IGVsZW0gfHwgZG9jdW1lbnQ7XG5cbiAgICAvLyBkZWZhdWx0cyB0aGF0IGFyZSB0byBiZSBzdG9yZWQgYXMgaW5zdGFuY2UgcHJvcHMgb24gdGhlIGVsZW1cbiAgICBvcHRzID0gJC5leHRlbmQoXG4gICAgICB7XG4gICAgICAgIGlkbGU6IGZhbHNlLCAvLyBpbmRpY2F0ZXMgaWYgdGhlIHVzZXIgaXMgaWRsZVxuICAgICAgICB0aW1lb3V0OiAzMDAwMCwgLy8gdGhlIGFtb3VudCBvZiB0aW1lIChtcykgYmVmb3JlIHRoZSB1c2VyIGlzIGNvbnNpZGVyZWQgaWRsZVxuICAgICAgICBldmVudHM6XG4gICAgICAgICAgJ21vdXNlbW92ZSBrZXlkb3duIHdoZWVsIERPTU1vdXNlU2Nyb2xsIG1vdXNld2hlZWwgbW91c2Vkb3duIHRvdWNoc3RhcnQgdG91Y2htb3ZlIE1TUG9pbnRlckRvd24gTVNQb2ludGVyTW92ZScgLy8gZGVmaW5lIGFjdGl2ZSBldmVudHNcbiAgICAgIH0sXG4gICAgICBvcHRzXG4gICAgKTtcblxuICAgIHZhciBqcUVsZW0gPSAkKGVsZW0pLFxuICAgICAgb2JqID0ganFFbGVtLmRhdGEoJ2lkbGVUaW1lck9iaicpIHx8IHt9LFxuICAgICAgLyogKGludGVudGlvbmFsbHkgbm90IGRvY3VtZW50ZWQpXG4gICAgICAgKiBUb2dnbGVzIHRoZSBpZGxlIHN0YXRlIGFuZCBmaXJlcyBhbiBhcHByb3ByaWF0ZSBldmVudC5cbiAgICAgICAqIEByZXR1cm4ge3ZvaWR9XG4gICAgICAgKi9cbiAgICAgIHRvZ2dsZUlkbGVTdGF0ZSA9IGZ1bmN0aW9uIChlKSB7XG4gICAgICAgIHZhciBvYmogPSAkLmRhdGEoZWxlbSwgJ2lkbGVUaW1lck9iaicpIHx8IHt9O1xuXG4gICAgICAgIC8vIHRvZ2dsZSB0aGUgc3RhdGVcbiAgICAgICAgb2JqLmlkbGUgPSAhb2JqLmlkbGU7XG5cbiAgICAgICAgLy8gc3RvcmUgdG9nZ2xlIHN0YXRlIGRhdGUgdGltZVxuICAgICAgICBvYmoub2xkZGF0ZSA9ICtuZXcgRGF0ZSgpO1xuXG4gICAgICAgIC8vIGNyZWF0ZSBhIGN1c3RvbSBldmVudCwgd2l0aCBzdGF0ZSBhbmQgbmFtZSBzcGFjZVxuICAgICAgICB2YXIgZXZlbnQgPSAkLkV2ZW50KChvYmouaWRsZSA/ICdpZGxlJyA6ICdhY3RpdmUnKSArICcuaWRsZVRpbWVyJyk7XG5cbiAgICAgICAgLy8gdHJpZ2dlciBldmVudCBvbiBvYmplY3Qgd2l0aCBlbGVtIGFuZCBjb3B5IG9mIG9ialxuICAgICAgICAkKGVsZW0pLnRyaWdnZXIoZXZlbnQsIFtlbGVtLCAkLmV4dGVuZCh7fSwgb2JqKSwgZV0pO1xuICAgICAgfSxcbiAgICAgIC8qKlxuICAgICAgICogSGFuZGxlIGV2ZW50IHRyaWdnZXJzXG4gICAgICAgKiBAcmV0dXJuIHt2b2lkfVxuICAgICAgICogQG1ldGhvZCBldmVudFxuICAgICAgICogQHN0YXRpY1xuICAgICAgICovXG4gICAgICBoYW5kbGVFdmVudCA9IGZ1bmN0aW9uIChlKSB7XG4gICAgICAgIHZhciBvYmogPSAkLmRhdGEoZWxlbSwgJ2lkbGVUaW1lck9iaicpIHx8IHt9O1xuXG4gICAgICAgIC8vIGlnbm9yZSB3cml0dGluZyB0byBzdG9yYWdlIHVubGVzcyByZWxhdGVkIHRvIGlkbGVUaW1lclxuICAgICAgICBpZiAoZS50eXBlID09PSAnc3RvcmFnZScgJiYgZS5vcmlnaW5hbEV2ZW50LmtleSAhPT0gb2JqLnRpbWVyU3luY0lkKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gdGhpcyBpcyBhbHJlYWR5IHBhdXNlZCwgaWdub3JlIGV2ZW50cyBmb3Igbm93XG4gICAgICAgIGlmIChvYmoucmVtYWluaW5nICE9IG51bGwpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvKlxuICAgICAgICAgICAgICBtb3VzZW1vdmUgaXMga2luZGEgYnVnZ3ksIGl0IGNhbiBiZSB0cmlnZ2VyZWQgd2hlbiBpdCBzaG91bGQgYmUgaWRsZS5cbiAgICAgICAgICAgICAgVHlwaWNhbGx5IGlzIGhhcHBlbmluZyBiZXR3ZWVuIDExNSAtIDE1MCBtaWxsaXNlY29uZHMgYWZ0ZXIgaWRsZSB0cmlnZ2VyZWQuXG4gICAgICAgICAgICAgIEBwc3lhZnRlciAmIEBrYWVsbGlzIHJlcG9ydCBcImFsd2F5cyB0cmlnZ2VyZWQgaWYgdXNpbmcgbW9kYWwgKGpRdWVyeSB1aSwgd2l0aCBvdmVybGF5KVwiXG4gICAgICAgICAgICAgIEB0aG9yc3QgaGFzIHNpbWlsYXIgaXNzdWVzIG9uIGlvczcgXCJhZnRlciAkLnNjcm9sbFRvcCgpIG9uIHRleHQgYXJlYVwiXG4gICAgICAgICAgICAgICovXG4gICAgICAgIGlmIChlLnR5cGUgPT09ICdtb3VzZW1vdmUnKSB7XG4gICAgICAgICAgLy8gaWYgY29vcmQgYXJlIHNhbWUsIGl0IGRpZG4ndCBtb3ZlXG4gICAgICAgICAgaWYgKGUucGFnZVggPT09IG9iai5wYWdlWCAmJiBlLnBhZ2VZID09PSBvYmoucGFnZVkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgLy8gaWYgY29vcmQgZG9uJ3QgZXhpc3QgaG93IGNvdWxkIGl0IG1vdmVcbiAgICAgICAgICBpZiAodHlwZW9mIGUucGFnZVggPT09ICd1bmRlZmluZWQnICYmIHR5cGVvZiBlLnBhZ2VZID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgICAvLyB1bmRlciAyMDAgbXMgaXMgaGFyZCB0byBkbywgYW5kIHlvdSB3b3VsZCBoYXZlIHRvIHN0b3AsIGFzIGNvbnRpbnVvdXMgYWN0aXZpdHkgd2lsbCBieXBhc3MgdGhpc1xuICAgICAgICAgIHZhciBlbGFwc2VkID0gK25ldyBEYXRlKCkgLSBvYmoub2xkZGF0ZTtcbiAgICAgICAgICBpZiAoZWxhcHNlZCA8IDIwMCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGNsZWFyIGFueSBleGlzdGluZyB0aW1lb3V0XG4gICAgICAgIGNsZWFyVGltZW91dChvYmoudElkKTtcblxuICAgICAgICAvLyBpZiB0aGUgaWRsZSB0aW1lciBpcyBlbmFibGVkLCBmbGlwXG4gICAgICAgIGlmIChvYmouaWRsZSkge1xuICAgICAgICAgIHRvZ2dsZUlkbGVTdGF0ZShlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHN0b3JlIHdoZW4gdXNlciB3YXMgbGFzdCBhY3RpdmVcbiAgICAgICAgb2JqLmxhc3RBY3RpdmUgPSArbmV3IERhdGUoKTtcblxuICAgICAgICAvLyB1cGRhdGUgbW91c2UgY29vcmRcbiAgICAgICAgb2JqLnBhZ2VYID0gZS5wYWdlWDtcbiAgICAgICAgb2JqLnBhZ2VZID0gZS5wYWdlWTtcblxuICAgICAgICAvLyBzeW5jIGxhc3RBY3RpdmVcbiAgICAgICAgaWYgKGUudHlwZSAhPT0gJ3N0b3JhZ2UnICYmIG9iai50aW1lclN5bmNJZCkge1xuICAgICAgICAgIGlmICh0eXBlb2YgbG9jYWxTdG9yYWdlICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0ob2JqLnRpbWVyU3luY0lkLCBvYmoubGFzdEFjdGl2ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gc2V0IGEgbmV3IHRpbWVvdXRcbiAgICAgICAgb2JqLnRJZCA9IHNldFRpbWVvdXQodG9nZ2xlSWRsZVN0YXRlLCBvYmoudGltZW91dCk7XG4gICAgICB9LFxuICAgICAgLyoqXG4gICAgICAgKiBSZXN0b3JlIGluaXRpYWwgc2V0dGluZ3MgYW5kIHJlc3RhcnQgdGltZXJcbiAgICAgICAqIEByZXR1cm4ge3ZvaWR9XG4gICAgICAgKiBAbWV0aG9kIHJlc2V0XG4gICAgICAgKiBAc3RhdGljXG4gICAgICAgKi9cbiAgICAgIHJlc2V0ID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgb2JqID0gJC5kYXRhKGVsZW0sICdpZGxlVGltZXJPYmonKSB8fCB7fTtcblxuICAgICAgICAvLyByZXNldCBzZXR0aW5nc1xuICAgICAgICBvYmouaWRsZSA9IG9iai5pZGxlQmFja3VwO1xuICAgICAgICBvYmoub2xkZGF0ZSA9ICtuZXcgRGF0ZSgpO1xuICAgICAgICBvYmoubGFzdEFjdGl2ZSA9IG9iai5vbGRkYXRlO1xuICAgICAgICBvYmoucmVtYWluaW5nID0gbnVsbDtcblxuICAgICAgICAvLyByZXNldCBUaW1lcnNcbiAgICAgICAgY2xlYXJUaW1lb3V0KG9iai50SWQpO1xuICAgICAgICBpZiAoIW9iai5pZGxlKSB7XG4gICAgICAgICAgb2JqLnRJZCA9IHNldFRpbWVvdXQodG9nZ2xlSWRsZVN0YXRlLCBvYmoudGltZW91dCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICAvKipcbiAgICAgICAqIFN0b3JlIHJlbWFpbmluZyB0aW1lLCBzdG9wIHRpbWVyXG4gICAgICAgKiBZb3UgY2FuIHBhdXNlIGZyb20gYW4gaWRsZSBPUiBhY3RpdmUgc3RhdGVcbiAgICAgICAqIEByZXR1cm4ge3ZvaWR9XG4gICAgICAgKiBAbWV0aG9kIHBhdXNlXG4gICAgICAgKiBAc3RhdGljXG4gICAgICAgKi9cbiAgICAgIHBhdXNlID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgb2JqID0gJC5kYXRhKGVsZW0sICdpZGxlVGltZXJPYmonKSB8fCB7fTtcblxuICAgICAgICAvLyB0aGlzIGlzIGFscmVhZHkgcGF1c2VkXG4gICAgICAgIGlmIChvYmoucmVtYWluaW5nICE9IG51bGwpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBkZWZpbmUgaG93IG11Y2ggaXMgbGVmdCBvbiB0aGUgdGltZXJcbiAgICAgICAgb2JqLnJlbWFpbmluZyA9IG9iai50aW1lb3V0IC0gKCtuZXcgRGF0ZSgpIC0gb2JqLm9sZGRhdGUpO1xuXG4gICAgICAgIC8vIGNsZWFyIGFueSBleGlzdGluZyB0aW1lb3V0XG4gICAgICAgIGNsZWFyVGltZW91dChvYmoudElkKTtcbiAgICAgIH0sXG4gICAgICAvKipcbiAgICAgICAqIFN0YXJ0IHRpbWVyIHdpdGggcmVtYWluaW5nIHZhbHVlXG4gICAgICAgKiBAcmV0dXJuIHt2b2lkfVxuICAgICAgICogQG1ldGhvZCByZXN1bWVcbiAgICAgICAqIEBzdGF0aWNcbiAgICAgICAqL1xuICAgICAgcmVzdW1lID0gZnVuY3Rpb24gKCkge1xuICAgICAgICB2YXIgb2JqID0gJC5kYXRhKGVsZW0sICdpZGxlVGltZXJPYmonKSB8fCB7fTtcblxuICAgICAgICAvLyB0aGlzIGlzbid0IHBhdXNlZCB5ZXRcbiAgICAgICAgaWYgKG9iai5yZW1haW5pbmcgPT0gbnVsbCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHN0YXJ0IHRpbWVyXG4gICAgICAgIGlmICghb2JqLmlkbGUpIHtcbiAgICAgICAgICBvYmoudElkID0gc2V0VGltZW91dCh0b2dnbGVJZGxlU3RhdGUsIG9iai5yZW1haW5pbmcpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gY2xlYXIgcmVtYWluaW5nXG4gICAgICAgIG9iai5yZW1haW5pbmcgPSBudWxsO1xuICAgICAgfSxcbiAgICAgIC8qKlxuICAgICAgICogU3RvcHMgdGhlIGlkbGUgdGltZXIuIFRoaXMgcmVtb3ZlcyBhcHByb3ByaWF0ZSBldmVudCBoYW5kbGVyc1xuICAgICAgICogYW5kIGNhbmNlbHMgYW55IHBlbmRpbmcgdGltZW91dHMuXG4gICAgICAgKiBAcmV0dXJuIHt2b2lkfVxuICAgICAgICogQG1ldGhvZCBkZXN0cm95XG4gICAgICAgKiBAc3RhdGljXG4gICAgICAgKi9cbiAgICAgIGRlc3Ryb3kgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBvYmogPSAkLmRhdGEoZWxlbSwgJ2lkbGVUaW1lck9iaicpIHx8IHt9O1xuXG4gICAgICAgIC8vY2xlYXIgYW55IHBlbmRpbmcgdGltZW91dHNcbiAgICAgICAgY2xlYXJUaW1lb3V0KG9iai50SWQpO1xuXG4gICAgICAgIC8vUmVtb3ZlIGRhdGFcbiAgICAgICAganFFbGVtLnJlbW92ZURhdGEoJ2lkbGVUaW1lck9iaicpO1xuXG4gICAgICAgIC8vZGV0YWNoIHRoZSBldmVudCBoYW5kbGVyc1xuICAgICAgICBqcUVsZW0ub2ZmKCcuX2lkbGVUaW1lcicpO1xuICAgICAgfSxcbiAgICAgIC8qKlxuICAgICAgICogUmV0dXJucyB0aGUgdGltZSB1bnRpbCBiZWNvbWluZyBpZGxlXG4gICAgICAgKiBAcmV0dXJuIHtudW1iZXJ9XG4gICAgICAgKiBAbWV0aG9kIHJlbWFpbmluZ3RpbWVcbiAgICAgICAqIEBzdGF0aWNcbiAgICAgICAqL1xuICAgICAgcmVtYWluaW5ndGltZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdmFyIG9iaiA9ICQuZGF0YShlbGVtLCAnaWRsZVRpbWVyT2JqJykgfHwge307XG5cbiAgICAgICAgLy9JZiBpZGxlIHRoZXJlIGlzIG5vIHRpbWUgcmVtYWluaW5nXG4gICAgICAgIGlmIChvYmouaWRsZSkge1xuICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLy9JZiBpdHMgcGF1c2VkIGp1c3QgcmV0dXJuIHRoYXRcbiAgICAgICAgaWYgKG9iai5yZW1haW5pbmcgIT0gbnVsbCkge1xuICAgICAgICAgIHJldHVybiBvYmoucmVtYWluaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgLy9EZXRlcm1pbmUgcmVtYWluaW5nLCBpZiBuZWdhdGl2ZSBpZGxlIGRpZG4ndCBmaW5pc2ggZmxpcHBpbmcsIGp1c3QgcmV0dXJuIDBcbiAgICAgICAgdmFyIHJlbWFpbmluZyA9IG9iai50aW1lb3V0IC0gKCtuZXcgRGF0ZSgpIC0gb2JqLmxhc3RBY3RpdmUpO1xuICAgICAgICBpZiAocmVtYWluaW5nIDwgMCkge1xuICAgICAgICAgIHJlbWFpbmluZyA9IDA7XG4gICAgICAgIH1cblxuICAgICAgICAvL0lmIHRoaXMgaXMgcGF1c2VkIHJldHVybiB0aGF0IG51bWJlciwgZWxzZSByZXR1cm4gY3VycmVudCByZW1haW5pbmdcbiAgICAgICAgcmV0dXJuIHJlbWFpbmluZztcbiAgICAgIH07XG5cbiAgICAvLyBkZXRlcm1pbmUgd2hpY2ggZnVuY3Rpb24gdG8gY2FsbFxuICAgIGlmIChmaXJzdFBhcmFtID09PSBudWxsICYmIHR5cGVvZiBvYmouaWRsZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIC8vIHRoZXkgdGhpbmsgdGhleSB3YW50IHRvIGluaXQsIGJ1dCBpdCBhbHJlYWR5IGlzLCBqdXN0IHJlc2V0XG4gICAgICByZXNldCgpO1xuICAgICAgcmV0dXJuIGpxRWxlbTtcbiAgICB9IGVsc2UgaWYgKGZpcnN0UGFyYW0gPT09IG51bGwpIHtcbiAgICAgIC8vIHRoZXkgd2FudCB0byBpbml0XG4gICAgfSBlbHNlIGlmIChmaXJzdFBhcmFtICE9PSBudWxsICYmIHR5cGVvZiBvYmouaWRsZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIC8vIHRoZXkgd2FudCB0byBkbyBzb21ldGhpbmcsIGJ1dCBpdCBpc250IGluaXRcbiAgICAgIC8vIG5vdCBzdXJlIHRoZSBiZXN0IHdheSB0byBoYW5kbGUgdGhpc1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH0gZWxzZSBpZiAoZmlyc3RQYXJhbSA9PT0gJ2Rlc3Ryb3knKSB7XG4gICAgICBkZXN0cm95KCk7XG4gICAgICByZXR1cm4ganFFbGVtO1xuICAgIH0gZWxzZSBpZiAoZmlyc3RQYXJhbSA9PT0gJ3BhdXNlJykge1xuICAgICAgcGF1c2UoKTtcbiAgICAgIHJldHVybiBqcUVsZW07XG4gICAgfSBlbHNlIGlmIChmaXJzdFBhcmFtID09PSAncmVzdW1lJykge1xuICAgICAgcmVzdW1lKCk7XG4gICAgICByZXR1cm4ganFFbGVtO1xuICAgIH0gZWxzZSBpZiAoZmlyc3RQYXJhbSA9PT0gJ3Jlc2V0Jykge1xuICAgICAgcmVzZXQoKTtcbiAgICAgIHJldHVybiBqcUVsZW07XG4gICAgfSBlbHNlIGlmIChmaXJzdFBhcmFtID09PSAnZ2V0UmVtYWluaW5nVGltZScpIHtcbiAgICAgIHJldHVybiByZW1haW5pbmd0aW1lKCk7XG4gICAgfSBlbHNlIGlmIChmaXJzdFBhcmFtID09PSAnZ2V0RWxhcHNlZFRpbWUnKSB7XG4gICAgICByZXR1cm4gK25ldyBEYXRlKCkgLSBvYmoub2xkZGF0ZTtcbiAgICB9IGVsc2UgaWYgKGZpcnN0UGFyYW0gPT09ICdnZXRMYXN0QWN0aXZlVGltZScpIHtcbiAgICAgIHJldHVybiBvYmoubGFzdEFjdGl2ZTtcbiAgICB9IGVsc2UgaWYgKGZpcnN0UGFyYW0gPT09ICdpc0lkbGUnKSB7XG4gICAgICByZXR1cm4gb2JqLmlkbGU7XG4gICAgfVxuXG4gICAgLy8gVGVzdCB2aWEgYSBnZXR0ZXIgaW4gdGhlIG9wdGlvbnMgb2JqZWN0IHRvIHNlZSBpZiB0aGUgcGFzc2l2ZSBwcm9wZXJ0eSBpcyBhY2Nlc3NlZFxuICAgIC8vIFRoaXMgaXNudCB3b3JraW5nIGluIGpxdWVyeSwgdGhvdWdoIGlzIHBsYW5uZWQgZm9yIDQuMFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9qcXVlcnkvanF1ZXJ5L2lzc3Vlcy8yODcxXG4gICAgLyp2YXIgc3VwcG9ydHNQYXNzaXZlID0gZmFsc2U7XG4gICAgICB0cnkge1xuICAgICAgICAgIHZhciBQb3B0cyA9IE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwgXCJwYXNzaXZlXCIsIHtcbiAgICAgICAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgICAgICAgIHN1cHBvcnRzUGFzc2l2ZSA9IHRydWU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInRlc3RcIiwgbnVsbCwgUG9wdHMpO1xuICAgICAgfSBjYXRjaCAoZSkge31cbiovXG5cbiAgICAvKiAoaW50ZW50aW9uYWxseSBub3QgZG9jdW1lbnRlZClcbiAgICAgKiBIYW5kbGVzIGEgdXNlciBldmVudCBpbmRpY2F0aW5nIHRoYXQgdGhlIHVzZXIgaXNuJ3QgaWRsZS4gbmFtZXNwYWNlZCB3aXRoIGludGVybmFsIGlkbGVUaW1lclxuICAgICAqIEBwYXJhbSB7RXZlbnR9IGV2ZW50IEEgRE9NMi1ub3JtYWxpemVkIGV2ZW50IG9iamVjdC5cbiAgICAgKiBAcmV0dXJuIHt2b2lkfVxuICAgICAqL1xuICAgIGpxRWxlbS5vbigob3B0cy5ldmVudHMgKyAnICcpLnNwbGl0KCcgJykuam9pbignLl9pZGxlVGltZXIgJykudHJpbSgpLCBmdW5jdGlvbiAoZSkge1xuICAgICAgaGFuZGxlRXZlbnQoZSk7XG4gICAgfSk7XG4gICAgLy99LCBzdXBwb3J0c1Bhc3NpdmUgPyB7IHBhc3NpdmU6IHRydWUgfSA6IGZhbHNlKTtcblxuICAgIGlmIChvcHRzLnRpbWVyU3luY0lkKSB7XG4gICAgICAkKHdpbmRvdykub24oJ3N0b3JhZ2UnLCBoYW5kbGVFdmVudCk7XG4gICAgfVxuXG4gICAgLy8gSW50ZXJuYWwgT2JqZWN0IFByb3BlcnRpZXMsIFRoaXMgaXNuJ3QgYWxsIG5lY2Vzc2FyeSwgYnV0IHdlXG4gICAgLy8gZXhwbGljaXRseSBkZWZpbmUgYWxsIGtleXMgaGVyZSBzbyB3ZSBrbm93IHdoYXQgd2UgYXJlIHdvcmtpbmcgd2l0aFxuICAgIG9iaiA9ICQuZXh0ZW5kKFxuICAgICAge30sXG4gICAgICB7XG4gICAgICAgIG9sZGRhdGU6ICtuZXcgRGF0ZSgpLCAvLyB0aGUgbGFzdCB0aW1lIHN0YXRlIGNoYW5nZWRcbiAgICAgICAgbGFzdEFjdGl2ZTogK25ldyBEYXRlKCksIC8vIHRoZSBsYXN0IHRpbWUgdGltZXIgd2FzIGFjdGl2ZVxuICAgICAgICBpZGxlOiBvcHRzLmlkbGUsIC8vIGN1cnJlbnQgc3RhdGVcbiAgICAgICAgaWRsZUJhY2t1cDogb3B0cy5pZGxlLCAvLyBiYWNrdXAgb2YgaWRsZSBwYXJhbWV0ZXIgc2luY2UgaXQgZ2V0cyBtb2RpZmllZFxuICAgICAgICB0aW1lb3V0OiBvcHRzLnRpbWVvdXQsIC8vIHRoZSBpbnRlcnZhbCB0byBjaGFuZ2Ugc3RhdGVcbiAgICAgICAgcmVtYWluaW5nOiBudWxsLCAvLyBob3cgbG9uZyB1bnRpbCBzdGF0ZSBjaGFuZ2VzXG4gICAgICAgIHRpbWVyU3luY0lkOiBvcHRzLnRpbWVyU3luY0lkLCAvLyBsb2NhbFN0b3JhZ2Uga2V5IHRvIHVzZSBmb3Igc3luY2luZyB0aGlzIHRpbWVyXG4gICAgICAgIHRJZDogbnVsbCwgLy8gdGhlIGlkbGUgdGltZXIgc2V0VGltZW91dFxuICAgICAgICBwYWdlWDogbnVsbCwgLy8gdXNlZCB0byBzdG9yZSB0aGUgbW91c2UgY29vcmRcbiAgICAgICAgcGFnZVk6IG51bGxcbiAgICAgIH1cbiAgICApO1xuXG4gICAgLy8gc2V0IGEgdGltZW91dCB0byB0b2dnbGUgc3RhdGUuIE1heSB3aXNoIHRvIG9taXQgdGhpcyBpbiBzb21lIHNpdHVhdGlvbnNcbiAgICBpZiAoIW9iai5pZGxlKSB7XG4gICAgICBvYmoudElkID0gc2V0VGltZW91dCh0b2dnbGVJZGxlU3RhdGUsIG9iai50aW1lb3V0KTtcbiAgICB9XG5cbiAgICAvLyBzdG9yZSBvdXIgaW5zdGFuY2Ugb24gdGhlIG9iamVjdFxuICAgICQuZGF0YShlbGVtLCAnaWRsZVRpbWVyT2JqJywgb2JqKTtcblxuICAgIHJldHVybiBqcUVsZW07XG4gIH07XG5cbiAgLy8gVGhpcyBhbGxvd3MgYmluZGluZyB0byBlbGVtZW50XG4gICQuZm4uaWRsZVRpbWVyID0gZnVuY3Rpb24gKGZpcnN0UGFyYW0pIHtcbiAgICBpZiAodGhpc1swXSkge1xuICAgICAgcmV0dXJuICQuaWRsZVRpbWVyKGZpcnN0UGFyYW0sIHRoaXNbMF0pO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzO1xuICB9O1xufSkoalF1ZXJ5KTtcbiJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQ0FBQyxVQUFVQSxDQUFDLEVBQUU7RUFDWkEsQ0FBQyxDQUFDQyxTQUFTLEdBQUcsVUFBVUMsVUFBVSxFQUFFQyxJQUFJLEVBQUU7SUFDeEMsSUFBSUMsSUFBSTtJQUNSLElBQUksUUFBT0YsVUFBVSxNQUFLLFFBQVEsRUFBRTtNQUNsQ0UsSUFBSSxHQUFHRixVQUFVO01BQ2pCQSxVQUFVLEdBQUcsSUFBSTtJQUNuQixDQUFDLE1BQU0sSUFBSSxPQUFPQSxVQUFVLEtBQUssUUFBUSxFQUFFO01BQ3pDRSxJQUFJLEdBQUc7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\n//# sourceURL=webpack-internal:///./libs/idletimer/idletimer.js\n"); /***/ }) /******/ }); /************************************************************************/ /******/ /******/ // startup /******/ // Load entry module and return exports /******/ // This entry module can't be inlined because the eval-source-map devtool is used. /******/ var __webpack_exports__ = {}; /******/ __webpack_modules__["./libs/idletimer/idletimer.js"](); /******/ /******/ return __webpack_exports__; /******/ })() ; });
SIMPAN PERUBAHAN