@sapphire/timer-manager 1.0.5-next.fb5ad246 → 1.0.5-next.fff340cc

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/lib/TimerManager.ts"],"names":[],"mappings":";;;;;;;;AAGO,IAAM,aAAA,GAAN,MAAM,aAAA,SAAqB,IAAK,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAiBtC,OAAc,UAAA,CAAwB,EAA4B,EAAA,KAAA,EAAA,GAAkB,IAA2B,EAAA;AAC9G,IAAM,MAAA,OAAA,GAAU,WAAW,MAAM;AAChC,MAAK,IAAA,CAAA,cAAA,CAAe,OAAO,OAAO,CAAA;AAClC,MAAA,EAAA,CAAG,GAAG,IAAI,CAAA;AAAA,OACR,KAAK,CAAA;AACR,IAAK,IAAA,CAAA,cAAA,CAAe,IAAI,OAAO,CAAA;AAC/B,IAAO,OAAA,OAAA;AAAA;AACR;AAAA;AAAA;AAAA;AAAA,EAMA,OAAc,aAAa,OAA+B,EAAA;AACzD,IAAA,YAAA,CAAa,OAAO,CAAA;AACpB,IAAK,IAAA,CAAA,cAAA,CAAe,OAAO,OAAO,CAAA;AAAA;AACnC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAc,WAAA,CAAyB,EAA4B,EAAA,KAAA,EAAA,GAAkB,IAA2B,EAAA;AAC/G,IAAA,MAAM,QAAW,GAAA,WAAA,CAAY,EAAI,EAAA,KAAA,EAAO,GAAG,IAAI,CAAA;AAC/C,IAAK,IAAA,CAAA,eAAA,CAAgB,IAAI,QAAQ,CAAA;AACjC,IAAO,OAAA,QAAA;AAAA;AACR;AAAA;AAAA;AAAA;AAAA,EAMA,OAAc,cAAc,QAAgC,EAAA;AAC3D,IAAA,aAAA,CAAc,QAAQ,CAAA;AACtB,IAAK,IAAA,CAAA,eAAA,CAAgB,OAAO,QAAQ,CAAA;AAAA;AACrC;AAAA;AAAA;AAAA,EAKA,OAAc,OAAgB,GAAA;AAC7B,IAAA,KAAA,MAAW,CAAK,IAAA,IAAA,CAAK,cAAgB,EAAA,YAAA,CAAa,CAAC,CAAA;AACnD,IAAA,KAAA,MAAW,CAAK,IAAA,IAAA,CAAK,eAAiB,EAAA,aAAA,CAAc,CAAC,CAAA;AACrD,IAAA,IAAA,CAAK,eAAe,KAAM,EAAA;AAC1B,IAAA,IAAA,CAAK,gBAAgB,KAAM,EAAA;AAAA;AAE7B,CAAA;AAjEuC,MAAA,CAAA,aAAA,EAAA,cAAA,CAAA;AAAA;AAAA;AAAA;AAItC,aAJY,CAAA,aAAA,EAIG,gBAAiB,kBAAA,IAAI,GAAoB,EAAA,CAAA;AAAA;AAAA;AAAA;AAKxD,aATY,CAAA,aAAA,EASG,iBAAkB,kBAAA,IAAI,GAAoB,EAAA,CAAA;AATnD,IAAM,YAAN,GAAA","file":"index.cjs","sourcesContent":["/**\n * Manages timers so that this application can be cleanly exited\n */\nexport class TimerManager extends null {\n\t/**\n\t * A set of timeouts to clear on destroy\n\t */\n\tprivate static storedTimeouts = new Set<NodeJS.Timeout>();\n\n\t/**\n\t * A set of intervals to clear on destroy\n\t */\n\tprivate static storedIntervals = new Set<NodeJS.Timeout>();\n\n\t/**\n\t * Creates a timeout gets cleared when destroyed\n\t * @param fn callback function\n\t * @param delay amount of time before running the callback\n\t * @param args additional arguments to pass back to the callback\n\t */\n\tpublic static setTimeout<A = unknown>(fn: (...args: A[]) => void, delay: number, ...args: A[]): NodeJS.Timeout {\n\t\tconst timeout = setTimeout(() => {\n\t\t\tthis.storedTimeouts.delete(timeout);\n\t\t\tfn(...args);\n\t\t}, delay);\n\t\tthis.storedTimeouts.add(timeout);\n\t\treturn timeout;\n\t}\n\n\t/**\n\t * Clears a timeout created through this class\n\t * @param timeout The timeout to clear\n\t */\n\tpublic static clearTimeout(timeout: NodeJS.Timeout): void {\n\t\tclearTimeout(timeout);\n\t\tthis.storedTimeouts.delete(timeout);\n\t}\n\n\t/**\n\t * Creates an interval gets cleared when destroyed\n\t * @param fn callback function\n\t * @param delay amount of time before running the callback\n\t * @param args additional arguments to pass back to the callback\n\t */\n\tpublic static setInterval<A = unknown>(fn: (...args: A[]) => void, delay: number, ...args: A[]): NodeJS.Timeout {\n\t\tconst interval = setInterval(fn, delay, ...args);\n\t\tthis.storedIntervals.add(interval);\n\t\treturn interval;\n\t}\n\n\t/**\n\t * Clears an internal created through this class\n\t * @param interval The interval to clear\n\t */\n\tpublic static clearInterval(interval: NodeJS.Timeout): void {\n\t\tclearInterval(interval);\n\t\tthis.storedIntervals.delete(interval);\n\t}\n\n\t/**\n\t * Clears running timeouts and intervals created through this class so NodeJS can gracefully exit\n\t */\n\tpublic static destroy(): void {\n\t\tfor (const i of this.storedTimeouts) clearTimeout(i);\n\t\tfor (const i of this.storedIntervals) clearInterval(i);\n\t\tthis.storedTimeouts.clear();\n\t\tthis.storedIntervals.clear();\n\t}\n}\n"]}
1
+ {"version":3,"sources":["../../src/lib/TimerManager.ts"],"names":[],"mappings":";;;;;;;;AAGO,IAAM,aAAA,GAAN,MAAM,aAAA,SAAqB,IAAA,CAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAiBtC,OAAc,UAAA,CAAwB,EAAA,EAA4B,KAAA,EAAA,GAAkB,IAAA,EAA2B;AAC9G,IAAA,MAAM,OAAA,GAAU,WAAW,MAAM;AAChC,MAAA,IAAA,CAAK,cAAA,CAAe,OAAO,OAAO,CAAA;AAClC,MAAA,EAAA,CAAG,GAAG,IAAI,CAAA;AAAA,IACX,GAAG,KAAK,CAAA;AACR,IAAA,IAAA,CAAK,cAAA,CAAe,IAAI,OAAO,CAAA;AAC/B,IAAA,OAAO,OAAA;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,OAAc,aAAa,OAAA,EAA+B;AACzD,IAAA,YAAA,CAAa,OAAO,CAAA;AACpB,IAAA,IAAA,CAAK,cAAA,CAAe,OAAO,OAAO,CAAA;AAAA,EACnC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAc,WAAA,CAAyB,EAAA,EAA4B,KAAA,EAAA,GAAkB,IAAA,EAA2B;AAC/G,IAAA,MAAM,QAAA,GAAW,WAAA,CAAY,EAAA,EAAI,KAAA,EAAO,GAAG,IAAI,CAAA;AAC/C,IAAA,IAAA,CAAK,eAAA,CAAgB,IAAI,QAAQ,CAAA;AACjC,IAAA,OAAO,QAAA;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,OAAc,cAAc,QAAA,EAAgC;AAC3D,IAAA,aAAA,CAAc,QAAQ,CAAA;AACtB,IAAA,IAAA,CAAK,eAAA,CAAgB,OAAO,QAAQ,CAAA;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA,EAKA,OAAc,OAAA,GAAgB;AAC7B,IAAA,KAAA,MAAW,CAAA,IAAK,IAAA,CAAK,cAAA,EAAgB,YAAA,CAAa,CAAC,CAAA;AACnD,IAAA,KAAA,MAAW,CAAA,IAAK,IAAA,CAAK,eAAA,EAAiB,aAAA,CAAc,CAAC,CAAA;AACrD,IAAA,IAAA,CAAK,eAAe,KAAA,EAAM;AAC1B,IAAA,IAAA,CAAK,gBAAgB,KAAA,EAAM;AAAA,EAC5B;AACD,CAAA;AAjEuC,MAAA,CAAA,aAAA,EAAA,cAAA,CAAA;AAAA;AAAA;AAAA;AAItC,aAAA,CAJY,aAAA,EAIG,gBAAA,kBAAiB,IAAI,GAAA,EAAoB,CAAA;AAAA;AAAA;AAAA;AAKxD,aAAA,CATY,aAAA,EASG,iBAAA,kBAAkB,IAAI,GAAA,EAAoB,CAAA;AATnD,IAAM,YAAA,GAAN","file":"index.cjs","sourcesContent":["/**\n * Manages timers so that this application can be cleanly exited\n */\nexport class TimerManager extends null {\n\t/**\n\t * A set of timeouts to clear on destroy\n\t */\n\tprivate static storedTimeouts = new Set<NodeJS.Timeout>();\n\n\t/**\n\t * A set of intervals to clear on destroy\n\t */\n\tprivate static storedIntervals = new Set<NodeJS.Timeout>();\n\n\t/**\n\t * Creates a timeout gets cleared when destroyed\n\t * @param fn callback function\n\t * @param delay amount of time before running the callback\n\t * @param args additional arguments to pass back to the callback\n\t */\n\tpublic static setTimeout<A = unknown>(fn: (...args: A[]) => void, delay: number, ...args: A[]): NodeJS.Timeout {\n\t\tconst timeout = setTimeout(() => {\n\t\t\tthis.storedTimeouts.delete(timeout);\n\t\t\tfn(...args);\n\t\t}, delay);\n\t\tthis.storedTimeouts.add(timeout);\n\t\treturn timeout;\n\t}\n\n\t/**\n\t * Clears a timeout created through this class\n\t * @param timeout The timeout to clear\n\t */\n\tpublic static clearTimeout(timeout: NodeJS.Timeout): void {\n\t\tclearTimeout(timeout);\n\t\tthis.storedTimeouts.delete(timeout);\n\t}\n\n\t/**\n\t * Creates an interval gets cleared when destroyed\n\t * @param fn callback function\n\t * @param delay amount of time before running the callback\n\t * @param args additional arguments to pass back to the callback\n\t */\n\tpublic static setInterval<A = unknown>(fn: (...args: A[]) => void, delay: number, ...args: A[]): NodeJS.Timeout {\n\t\tconst interval = setInterval(fn, delay, ...args);\n\t\tthis.storedIntervals.add(interval);\n\t\treturn interval;\n\t}\n\n\t/**\n\t * Clears an internal created through this class\n\t * @param interval The interval to clear\n\t */\n\tpublic static clearInterval(interval: NodeJS.Timeout): void {\n\t\tclearInterval(interval);\n\t\tthis.storedIntervals.delete(interval);\n\t}\n\n\t/**\n\t * Clears running timeouts and intervals created through this class so NodeJS can gracefully exit\n\t */\n\tpublic static destroy(): void {\n\t\tfor (const i of this.storedTimeouts) clearTimeout(i);\n\t\tfor (const i of this.storedIntervals) clearInterval(i);\n\t\tthis.storedTimeouts.clear();\n\t\tthis.storedIntervals.clear();\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/lib/TimerManager.ts"],"names":[],"mappings":";;;;;;AAGO,IAAM,aAAA,GAAN,MAAM,aAAA,SAAqB,IAAK,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAiBtC,OAAc,UAAA,CAAwB,EAA4B,EAAA,KAAA,EAAA,GAAkB,IAA2B,EAAA;AAC9G,IAAM,MAAA,OAAA,GAAU,WAAW,MAAM;AAChC,MAAK,IAAA,CAAA,cAAA,CAAe,OAAO,OAAO,CAAA;AAClC,MAAA,EAAA,CAAG,GAAG,IAAI,CAAA;AAAA,OACR,KAAK,CAAA;AACR,IAAK,IAAA,CAAA,cAAA,CAAe,IAAI,OAAO,CAAA;AAC/B,IAAO,OAAA,OAAA;AAAA;AACR;AAAA;AAAA;AAAA;AAAA,EAMA,OAAc,aAAa,OAA+B,EAAA;AACzD,IAAA,YAAA,CAAa,OAAO,CAAA;AACpB,IAAK,IAAA,CAAA,cAAA,CAAe,OAAO,OAAO,CAAA;AAAA;AACnC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAc,WAAA,CAAyB,EAA4B,EAAA,KAAA,EAAA,GAAkB,IAA2B,EAAA;AAC/G,IAAA,MAAM,QAAW,GAAA,WAAA,CAAY,EAAI,EAAA,KAAA,EAAO,GAAG,IAAI,CAAA;AAC/C,IAAK,IAAA,CAAA,eAAA,CAAgB,IAAI,QAAQ,CAAA;AACjC,IAAO,OAAA,QAAA;AAAA;AACR;AAAA;AAAA;AAAA;AAAA,EAMA,OAAc,cAAc,QAAgC,EAAA;AAC3D,IAAA,aAAA,CAAc,QAAQ,CAAA;AACtB,IAAK,IAAA,CAAA,eAAA,CAAgB,OAAO,QAAQ,CAAA;AAAA;AACrC;AAAA;AAAA;AAAA,EAKA,OAAc,OAAgB,GAAA;AAC7B,IAAA,KAAA,MAAW,CAAK,IAAA,IAAA,CAAK,cAAgB,EAAA,YAAA,CAAa,CAAC,CAAA;AACnD,IAAA,KAAA,MAAW,CAAK,IAAA,IAAA,CAAK,eAAiB,EAAA,aAAA,CAAc,CAAC,CAAA;AACrD,IAAA,IAAA,CAAK,eAAe,KAAM,EAAA;AAC1B,IAAA,IAAA,CAAK,gBAAgB,KAAM,EAAA;AAAA;AAE7B,CAAA;AAjEuC,MAAA,CAAA,aAAA,EAAA,cAAA,CAAA;AAAA;AAAA;AAAA;AAItC,aAJY,CAAA,aAAA,EAIG,gBAAiB,kBAAA,IAAI,GAAoB,EAAA,CAAA;AAAA;AAAA;AAAA;AAKxD,aATY,CAAA,aAAA,EASG,iBAAkB,kBAAA,IAAI,GAAoB,EAAA,CAAA;AATnD,IAAM,YAAN,GAAA","file":"index.mjs","sourcesContent":["/**\n * Manages timers so that this application can be cleanly exited\n */\nexport class TimerManager extends null {\n\t/**\n\t * A set of timeouts to clear on destroy\n\t */\n\tprivate static storedTimeouts = new Set<NodeJS.Timeout>();\n\n\t/**\n\t * A set of intervals to clear on destroy\n\t */\n\tprivate static storedIntervals = new Set<NodeJS.Timeout>();\n\n\t/**\n\t * Creates a timeout gets cleared when destroyed\n\t * @param fn callback function\n\t * @param delay amount of time before running the callback\n\t * @param args additional arguments to pass back to the callback\n\t */\n\tpublic static setTimeout<A = unknown>(fn: (...args: A[]) => void, delay: number, ...args: A[]): NodeJS.Timeout {\n\t\tconst timeout = setTimeout(() => {\n\t\t\tthis.storedTimeouts.delete(timeout);\n\t\t\tfn(...args);\n\t\t}, delay);\n\t\tthis.storedTimeouts.add(timeout);\n\t\treturn timeout;\n\t}\n\n\t/**\n\t * Clears a timeout created through this class\n\t * @param timeout The timeout to clear\n\t */\n\tpublic static clearTimeout(timeout: NodeJS.Timeout): void {\n\t\tclearTimeout(timeout);\n\t\tthis.storedTimeouts.delete(timeout);\n\t}\n\n\t/**\n\t * Creates an interval gets cleared when destroyed\n\t * @param fn callback function\n\t * @param delay amount of time before running the callback\n\t * @param args additional arguments to pass back to the callback\n\t */\n\tpublic static setInterval<A = unknown>(fn: (...args: A[]) => void, delay: number, ...args: A[]): NodeJS.Timeout {\n\t\tconst interval = setInterval(fn, delay, ...args);\n\t\tthis.storedIntervals.add(interval);\n\t\treturn interval;\n\t}\n\n\t/**\n\t * Clears an internal created through this class\n\t * @param interval The interval to clear\n\t */\n\tpublic static clearInterval(interval: NodeJS.Timeout): void {\n\t\tclearInterval(interval);\n\t\tthis.storedIntervals.delete(interval);\n\t}\n\n\t/**\n\t * Clears running timeouts and intervals created through this class so NodeJS can gracefully exit\n\t */\n\tpublic static destroy(): void {\n\t\tfor (const i of this.storedTimeouts) clearTimeout(i);\n\t\tfor (const i of this.storedIntervals) clearInterval(i);\n\t\tthis.storedTimeouts.clear();\n\t\tthis.storedIntervals.clear();\n\t}\n}\n"]}
1
+ {"version":3,"sources":["../../src/lib/TimerManager.ts"],"names":[],"mappings":";;;;;;AAGO,IAAM,aAAA,GAAN,MAAM,aAAA,SAAqB,IAAA,CAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAiBtC,OAAc,UAAA,CAAwB,EAAA,EAA4B,KAAA,EAAA,GAAkB,IAAA,EAA2B;AAC9G,IAAA,MAAM,OAAA,GAAU,WAAW,MAAM;AAChC,MAAA,IAAA,CAAK,cAAA,CAAe,OAAO,OAAO,CAAA;AAClC,MAAA,EAAA,CAAG,GAAG,IAAI,CAAA;AAAA,IACX,GAAG,KAAK,CAAA;AACR,IAAA,IAAA,CAAK,cAAA,CAAe,IAAI,OAAO,CAAA;AAC/B,IAAA,OAAO,OAAA;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,OAAc,aAAa,OAAA,EAA+B;AACzD,IAAA,YAAA,CAAa,OAAO,CAAA;AACpB,IAAA,IAAA,CAAK,cAAA,CAAe,OAAO,OAAO,CAAA;AAAA,EACnC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAc,WAAA,CAAyB,EAAA,EAA4B,KAAA,EAAA,GAAkB,IAAA,EAA2B;AAC/G,IAAA,MAAM,QAAA,GAAW,WAAA,CAAY,EAAA,EAAI,KAAA,EAAO,GAAG,IAAI,CAAA;AAC/C,IAAA,IAAA,CAAK,eAAA,CAAgB,IAAI,QAAQ,CAAA;AACjC,IAAA,OAAO,QAAA;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,OAAc,cAAc,QAAA,EAAgC;AAC3D,IAAA,aAAA,CAAc,QAAQ,CAAA;AACtB,IAAA,IAAA,CAAK,eAAA,CAAgB,OAAO,QAAQ,CAAA;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA,EAKA,OAAc,OAAA,GAAgB;AAC7B,IAAA,KAAA,MAAW,CAAA,IAAK,IAAA,CAAK,cAAA,EAAgB,YAAA,CAAa,CAAC,CAAA;AACnD,IAAA,KAAA,MAAW,CAAA,IAAK,IAAA,CAAK,eAAA,EAAiB,aAAA,CAAc,CAAC,CAAA;AACrD,IAAA,IAAA,CAAK,eAAe,KAAA,EAAM;AAC1B,IAAA,IAAA,CAAK,gBAAgB,KAAA,EAAM;AAAA,EAC5B;AACD,CAAA;AAjEuC,MAAA,CAAA,aAAA,EAAA,cAAA,CAAA;AAAA;AAAA;AAAA;AAItC,aAAA,CAJY,aAAA,EAIG,gBAAA,kBAAiB,IAAI,GAAA,EAAoB,CAAA;AAAA;AAAA;AAAA;AAKxD,aAAA,CATY,aAAA,EASG,iBAAA,kBAAkB,IAAI,GAAA,EAAoB,CAAA;AATnD,IAAM,YAAA,GAAN","file":"index.mjs","sourcesContent":["/**\n * Manages timers so that this application can be cleanly exited\n */\nexport class TimerManager extends null {\n\t/**\n\t * A set of timeouts to clear on destroy\n\t */\n\tprivate static storedTimeouts = new Set<NodeJS.Timeout>();\n\n\t/**\n\t * A set of intervals to clear on destroy\n\t */\n\tprivate static storedIntervals = new Set<NodeJS.Timeout>();\n\n\t/**\n\t * Creates a timeout gets cleared when destroyed\n\t * @param fn callback function\n\t * @param delay amount of time before running the callback\n\t * @param args additional arguments to pass back to the callback\n\t */\n\tpublic static setTimeout<A = unknown>(fn: (...args: A[]) => void, delay: number, ...args: A[]): NodeJS.Timeout {\n\t\tconst timeout = setTimeout(() => {\n\t\t\tthis.storedTimeouts.delete(timeout);\n\t\t\tfn(...args);\n\t\t}, delay);\n\t\tthis.storedTimeouts.add(timeout);\n\t\treturn timeout;\n\t}\n\n\t/**\n\t * Clears a timeout created through this class\n\t * @param timeout The timeout to clear\n\t */\n\tpublic static clearTimeout(timeout: NodeJS.Timeout): void {\n\t\tclearTimeout(timeout);\n\t\tthis.storedTimeouts.delete(timeout);\n\t}\n\n\t/**\n\t * Creates an interval gets cleared when destroyed\n\t * @param fn callback function\n\t * @param delay amount of time before running the callback\n\t * @param args additional arguments to pass back to the callback\n\t */\n\tpublic static setInterval<A = unknown>(fn: (...args: A[]) => void, delay: number, ...args: A[]): NodeJS.Timeout {\n\t\tconst interval = setInterval(fn, delay, ...args);\n\t\tthis.storedIntervals.add(interval);\n\t\treturn interval;\n\t}\n\n\t/**\n\t * Clears an internal created through this class\n\t * @param interval The interval to clear\n\t */\n\tpublic static clearInterval(interval: NodeJS.Timeout): void {\n\t\tclearInterval(interval);\n\t\tthis.storedIntervals.delete(interval);\n\t}\n\n\t/**\n\t * Clears running timeouts and intervals created through this class so NodeJS can gracefully exit\n\t */\n\tpublic static destroy(): void {\n\t\tfor (const i of this.storedTimeouts) clearTimeout(i);\n\t\tfor (const i of this.storedIntervals) clearInterval(i);\n\t\tthis.storedTimeouts.clear();\n\t\tthis.storedIntervals.clear();\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/lib/TimerManager.ts"],"names":[],"mappings":";;;;;;;;;EAGO,IAAM,aAAA,GAAN,MAAM,aAAA,SAAqB,IAAK,CAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA,EAiBtC,OAAc,UAAA,CAAwB,EAA4B,EAAA,KAAA,EAAA,GAAkB,IAA2B,EAAA;EAC9G,IAAM,MAAA,OAAA,GAAU,WAAW,MAAM;EAChC,MAAK,IAAA,CAAA,cAAA,CAAe,OAAO,OAAO,CAAA;EAClC,MAAA,EAAA,CAAG,GAAG,IAAI,CAAA;EAAA,OACR,KAAK,CAAA;EACR,IAAK,IAAA,CAAA,cAAA,CAAe,IAAI,OAAO,CAAA;EAC/B,IAAO,OAAA,OAAA;EAAA;EACR;EAAA;EAAA;EAAA;EAAA,EAMA,OAAc,aAAa,OAA+B,EAAA;EACzD,IAAA,YAAA,CAAa,OAAO,CAAA;EACpB,IAAK,IAAA,CAAA,cAAA,CAAe,OAAO,OAAO,CAAA;EAAA;EACnC;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA,EAQA,OAAc,WAAA,CAAyB,EAA4B,EAAA,KAAA,EAAA,GAAkB,IAA2B,EAAA;EAC/G,IAAA,MAAM,QAAW,GAAA,WAAA,CAAY,EAAI,EAAA,KAAA,EAAO,GAAG,IAAI,CAAA;EAC/C,IAAK,IAAA,CAAA,eAAA,CAAgB,IAAI,QAAQ,CAAA;EACjC,IAAO,OAAA,QAAA;EAAA;EACR;EAAA;EAAA;EAAA;EAAA,EAMA,OAAc,cAAc,QAAgC,EAAA;EAC3D,IAAA,aAAA,CAAc,QAAQ,CAAA;EACtB,IAAK,IAAA,CAAA,eAAA,CAAgB,OAAO,QAAQ,CAAA;EAAA;EACrC;EAAA;EAAA;EAAA,EAKA,OAAc,OAAgB,GAAA;EAC7B,IAAA,KAAA,MAAW,CAAK,IAAA,IAAA,CAAK,cAAgB,EAAA,YAAA,CAAa,CAAC,CAAA;EACnD,IAAA,KAAA,MAAW,CAAK,IAAA,IAAA,CAAK,eAAiB,EAAA,aAAA,CAAc,CAAC,CAAA;EACrD,IAAA,IAAA,CAAK,eAAe,KAAM,EAAA;EAC1B,IAAA,IAAA,CAAK,gBAAgB,KAAM,EAAA;EAAA;EAE7B,CAAA;EAjEuC,MAAA,CAAA,aAAA,EAAA,cAAA,CAAA;EAAA;EAAA;EAAA;EAItC,aAJY,CAAA,aAAA,EAIG,gBAAiB,kBAAA,IAAI,GAAoB,EAAA,CAAA;EAAA;EAAA;EAAA;EAKxD,aATY,CAAA,aAAA,EASG,iBAAkB,kBAAA,IAAI,GAAoB,EAAA,CAAA;AATnD,MAAM,YAAN,GAAA","file":"index.global.js","sourcesContent":["/**\n * Manages timers so that this application can be cleanly exited\n */\nexport class TimerManager extends null {\n\t/**\n\t * A set of timeouts to clear on destroy\n\t */\n\tprivate static storedTimeouts = new Set<NodeJS.Timeout>();\n\n\t/**\n\t * A set of intervals to clear on destroy\n\t */\n\tprivate static storedIntervals = new Set<NodeJS.Timeout>();\n\n\t/**\n\t * Creates a timeout gets cleared when destroyed\n\t * @param fn callback function\n\t * @param delay amount of time before running the callback\n\t * @param args additional arguments to pass back to the callback\n\t */\n\tpublic static setTimeout<A = unknown>(fn: (...args: A[]) => void, delay: number, ...args: A[]): NodeJS.Timeout {\n\t\tconst timeout = setTimeout(() => {\n\t\t\tthis.storedTimeouts.delete(timeout);\n\t\t\tfn(...args);\n\t\t}, delay);\n\t\tthis.storedTimeouts.add(timeout);\n\t\treturn timeout;\n\t}\n\n\t/**\n\t * Clears a timeout created through this class\n\t * @param timeout The timeout to clear\n\t */\n\tpublic static clearTimeout(timeout: NodeJS.Timeout): void {\n\t\tclearTimeout(timeout);\n\t\tthis.storedTimeouts.delete(timeout);\n\t}\n\n\t/**\n\t * Creates an interval gets cleared when destroyed\n\t * @param fn callback function\n\t * @param delay amount of time before running the callback\n\t * @param args additional arguments to pass back to the callback\n\t */\n\tpublic static setInterval<A = unknown>(fn: (...args: A[]) => void, delay: number, ...args: A[]): NodeJS.Timeout {\n\t\tconst interval = setInterval(fn, delay, ...args);\n\t\tthis.storedIntervals.add(interval);\n\t\treturn interval;\n\t}\n\n\t/**\n\t * Clears an internal created through this class\n\t * @param interval The interval to clear\n\t */\n\tpublic static clearInterval(interval: NodeJS.Timeout): void {\n\t\tclearInterval(interval);\n\t\tthis.storedIntervals.delete(interval);\n\t}\n\n\t/**\n\t * Clears running timeouts and intervals created through this class so NodeJS can gracefully exit\n\t */\n\tpublic static destroy(): void {\n\t\tfor (const i of this.storedTimeouts) clearTimeout(i);\n\t\tfor (const i of this.storedIntervals) clearInterval(i);\n\t\tthis.storedTimeouts.clear();\n\t\tthis.storedIntervals.clear();\n\t}\n}\n"]}
1
+ {"version":3,"sources":["../../src/lib/TimerManager.ts"],"names":[],"mappings":";;;;;;;;;EAGO,IAAM,aAAA,GAAN,MAAM,aAAA,SAAqB,IAAA,CAAK;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA,EAiBtC,OAAc,UAAA,CAAwB,EAAA,EAA4B,KAAA,EAAA,GAAkB,IAAA,EAA2B;EAC9G,IAAA,MAAM,OAAA,GAAU,WAAW,MAAM;EAChC,MAAA,IAAA,CAAK,cAAA,CAAe,OAAO,OAAO,CAAA;EAClC,MAAA,EAAA,CAAG,GAAG,IAAI,CAAA;EAAA,IACX,GAAG,KAAK,CAAA;EACR,IAAA,IAAA,CAAK,cAAA,CAAe,IAAI,OAAO,CAAA;EAC/B,IAAA,OAAO,OAAA;EAAA,EACR;EAAA;EAAA;EAAA;EAAA;EAAA,EAMA,OAAc,aAAa,OAAA,EAA+B;EACzD,IAAA,YAAA,CAAa,OAAO,CAAA;EACpB,IAAA,IAAA,CAAK,cAAA,CAAe,OAAO,OAAO,CAAA;EAAA,EACnC;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA,EAQA,OAAc,WAAA,CAAyB,EAAA,EAA4B,KAAA,EAAA,GAAkB,IAAA,EAA2B;EAC/G,IAAA,MAAM,QAAA,GAAW,WAAA,CAAY,EAAA,EAAI,KAAA,EAAO,GAAG,IAAI,CAAA;EAC/C,IAAA,IAAA,CAAK,eAAA,CAAgB,IAAI,QAAQ,CAAA;EACjC,IAAA,OAAO,QAAA;EAAA,EACR;EAAA;EAAA;EAAA;EAAA;EAAA,EAMA,OAAc,cAAc,QAAA,EAAgC;EAC3D,IAAA,aAAA,CAAc,QAAQ,CAAA;EACtB,IAAA,IAAA,CAAK,eAAA,CAAgB,OAAO,QAAQ,CAAA;EAAA,EACrC;EAAA;EAAA;EAAA;EAAA,EAKA,OAAc,OAAA,GAAgB;EAC7B,IAAA,KAAA,MAAW,CAAA,IAAK,IAAA,CAAK,cAAA,EAAgB,YAAA,CAAa,CAAC,CAAA;EACnD,IAAA,KAAA,MAAW,CAAA,IAAK,IAAA,CAAK,eAAA,EAAiB,aAAA,CAAc,CAAC,CAAA;EACrD,IAAA,IAAA,CAAK,eAAe,KAAA,EAAM;EAC1B,IAAA,IAAA,CAAK,gBAAgB,KAAA,EAAM;EAAA,EAC5B;EACD,CAAA;EAjEuC,MAAA,CAAA,aAAA,EAAA,cAAA,CAAA;EAAA;EAAA;EAAA;EAItC,aAAA,CAJY,aAAA,EAIG,gBAAA,kBAAiB,IAAI,GAAA,EAAoB,CAAA;EAAA;EAAA;EAAA;EAKxD,aAAA,CATY,aAAA,EASG,iBAAA,kBAAkB,IAAI,GAAA,EAAoB,CAAA;AATnD,MAAM,YAAA,GAAN","file":"index.global.js","sourcesContent":["/**\n * Manages timers so that this application can be cleanly exited\n */\nexport class TimerManager extends null {\n\t/**\n\t * A set of timeouts to clear on destroy\n\t */\n\tprivate static storedTimeouts = new Set<NodeJS.Timeout>();\n\n\t/**\n\t * A set of intervals to clear on destroy\n\t */\n\tprivate static storedIntervals = new Set<NodeJS.Timeout>();\n\n\t/**\n\t * Creates a timeout gets cleared when destroyed\n\t * @param fn callback function\n\t * @param delay amount of time before running the callback\n\t * @param args additional arguments to pass back to the callback\n\t */\n\tpublic static setTimeout<A = unknown>(fn: (...args: A[]) => void, delay: number, ...args: A[]): NodeJS.Timeout {\n\t\tconst timeout = setTimeout(() => {\n\t\t\tthis.storedTimeouts.delete(timeout);\n\t\t\tfn(...args);\n\t\t}, delay);\n\t\tthis.storedTimeouts.add(timeout);\n\t\treturn timeout;\n\t}\n\n\t/**\n\t * Clears a timeout created through this class\n\t * @param timeout The timeout to clear\n\t */\n\tpublic static clearTimeout(timeout: NodeJS.Timeout): void {\n\t\tclearTimeout(timeout);\n\t\tthis.storedTimeouts.delete(timeout);\n\t}\n\n\t/**\n\t * Creates an interval gets cleared when destroyed\n\t * @param fn callback function\n\t * @param delay amount of time before running the callback\n\t * @param args additional arguments to pass back to the callback\n\t */\n\tpublic static setInterval<A = unknown>(fn: (...args: A[]) => void, delay: number, ...args: A[]): NodeJS.Timeout {\n\t\tconst interval = setInterval(fn, delay, ...args);\n\t\tthis.storedIntervals.add(interval);\n\t\treturn interval;\n\t}\n\n\t/**\n\t * Clears an internal created through this class\n\t * @param interval The interval to clear\n\t */\n\tpublic static clearInterval(interval: NodeJS.Timeout): void {\n\t\tclearInterval(interval);\n\t\tthis.storedIntervals.delete(interval);\n\t}\n\n\t/**\n\t * Clears running timeouts and intervals created through this class so NodeJS can gracefully exit\n\t */\n\tpublic static destroy(): void {\n\t\tfor (const i of this.storedTimeouts) clearTimeout(i);\n\t\tfor (const i of this.storedIntervals) clearInterval(i);\n\t\tthis.storedTimeouts.clear();\n\t\tthis.storedIntervals.clear();\n\t}\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sapphire/timer-manager",
3
- "version": "1.0.5-next.fb5ad246",
3
+ "version": "1.0.5-next.fff340cc",
4
4
  "description": "A timer manager utility library for JavaScript.",
5
5
  "author": "@sapphire",
6
6
  "license": "MIT",
@@ -64,12 +64,12 @@
64
64
  },
65
65
  "devDependencies": {
66
66
  "@favware/cliff-jumper": "^6.0.0",
67
- "@vitest/coverage-v8": "^3.1.3",
68
- "tsup": "^8.4.0",
69
- "tsx": "^4.19.4",
67
+ "@vitest/coverage-v8": "^4.0.14",
68
+ "tsup": "^8.5.1",
69
+ "tsx": "^4.20.6",
70
70
  "typedoc": "^0.26.11",
71
71
  "typedoc-json-parser": "^10.2.0",
72
72
  "typescript": "~5.4.5",
73
- "vitest": "^3.1.3"
73
+ "vitest": "^4.0.14"
74
74
  }
75
75
  }