{"version":3,"sources":["jsdelivr-header.js","/npm/cron-job@1.0.3/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACFA,MAAM,QAAU,MAEhB,IAAI,UAAY,CACZ,SAAS,WACL,IAAI,EAAQ,IAAI,KAKhB,OAJA,EAAM,SAAS,GACf,EAAM,WAAW,GACjB,EAAM,WAAW,GACjB,EAAM,gBAAgB,GACf,KAAK,MAAM,EAAM,UAAU,IACtC,EACC,aAAa,WACV,IAAI,EAAQ,IAAI,KAMhB,OALA,EAAM,QAAQ,GACd,EAAM,SAAS,GACf,EAAM,WAAW,GACjB,EAAM,WAAW,GACjB,EAAM,gBAAgB,GACf,KAAK,MAAM,EAAM,UAAU,IACtC,EACC,gBAAgB,WACb,OAAO,KAAK,OAAM,IAAI,MAAO,UAAU,IAC3C,GASA,eAAiB,SAAS,EAAI,EAAQ,GACtC,EAAI,GACJ,YAAW,WACP,eAAe,EAAI,EAAQ,EAC/B,GAAY,IAAV,EAEN,EAOI,cAAgB,SAAS,EAAI,GAC7B,EAAI,GACJ,YAAW,WACP,cAAc,EAAI,EACtB,GAAE,MACN,EASI,iBAAmB,SAAS,EAAW,EAAI,GAE3C,IAAI,EAAU,EAAa,UAAU,kBACrC,YAAW,WACP,cAAc,EAAI,EACtB,GAAY,IAAV,EACN,EASI,qBAAuB,SAAS,EAAgB,EAAQ,EAAI,GAC5D,IAAI,EAAW,EAAkB,UAAU,kBAC3C,YAAW,WACP,eAAe,EAAI,EAAQ,EAC/B,GAAa,IAAX,EACN,EAEA,OAAO,QAAU,CACb,iBAAiB,iBAChB,qBAAqB,qBACrB,UAAU,UACV,QApFW","file":"/npm/cron-job@1.0.3/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/cron-job@1.0.3/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","/**\n * Created by lance on 16-3-21.\n */\n//constant\nconst ONE_DAY = 24*60*60;//one day.\n\nvar date_util = {\n    getToday:function(){\n        var today = new Date();\n        today.setHours(0);\n        today.setMinutes(0);\n        today.setSeconds(0);\n        today.setMilliseconds(0);\n        return Math.floor(today.getTime()/1000);\n    }\n    ,getThisMonth:function(){\n        var today = new Date();\n        today.setDate(0);\n        today.setHours(0);\n        today.setMinutes(0);\n        today.setSeconds(0);\n        today.setMilliseconds(0);\n        return Math.floor(today.getTime()/1000);\n    }\n    ,getNowTimestamp:function(){\n        return Math.floor(new Date().getTime()/1000);\n    }\n};\n\n/**\n * do job every time gap\n * @param job\n * @param options method's params\n * @param timegap unit:seconds\n */\nvar doJobBytimegap = function(job,options,timegap){\n    job(options);\n    setTimeout(function(){\n        doJobBytimegap(job,options,timegap);\n    },timegap * 1000);\n\n};\n\n/**\n * do job at specific time everyday\n * @param job\n * @param options\n */\nvar doJobEveryday = function(job,options){\n    job(options);\n    setTimeout(function(){\n        doJobEveryday(job,options)\n    },ONE_DAY * 1000);\n};\n\n\n/**\n * start the job everyday\n * @param targettime unit:seconds\n * @param job\n * @param options\n */\nvar startJobEveryDay = function(targettime,job,options){\n    //the time to start\n    var timegap = targettime - date_util.getNowTimestamp();\n    setTimeout(function(){\n        doJobEveryday(job,options);\n    },timegap * 1000);\n};\n\n/**\n * start do the job every time gap\n * @param start_timestamp first time\n * @param timegap\n * @param job\n * @param options\n */\nvar startJobEveryTimegap = function(start_timestamp,timegap,job,options){\n    var timetogo = start_timestamp - date_util.getNowTimestamp();\n    setTimeout(function(){\n        doJobBytimegap(job,options,timegap);\n    },timetogo * 1000);\n};\n\nmodule.exports = {\n    startJobEveryDay:startJobEveryDay\n    ,startJobEveryTimegap:startJobEveryTimegap\n    ,date_util:date_util\n    ,ONE_DAY:ONE_DAY\n};"]}