[jsscripting] Fix timerId not returned by JS timer methods (#15308)

Regression from #15193.
Reported on the community, see https://community.openhab.org/t/openhab-4-0-release-discussion/147957/53?u=florian-h05.

Signed-off-by: Florian Hotze <florianh_dev@icloud.com>
This commit is contained in:
Florian Hotze 2023-07-26 16:28:46 +02:00 committed by Jacob Laursen
parent 8f5fab45fa
commit 974847fc0a

View File

@ -29,7 +29,7 @@
}
// JSON.stringify all objects that do not polyfill toString()
const str = value.toString();
if (typeof value === 'object' && (str === '[object Object]') || str === '[object Java]') {
if (typeof value === 'object' && (str === '[object Object]' || str === '[object Java]')) {
return JSON.stringify(value, null, 2);
}
return str;
@ -164,11 +164,11 @@
// Polyfill common NodeJS functions onto the global object
globalThis.console = console;
globalThis.setTimeout = function (functionRef, delay, ...args) {
ThreadsafeTimers.setTimeout(() => functionRef(...args), delay);
return ThreadsafeTimers.setTimeout(() => functionRef(...args), delay);
};
globalThis.clearTimeout = ThreadsafeTimers.clearTimeout;
globalThis.setInterval = function (functionRef, delay, ...args) {
ThreadsafeTimers.setInterval(() => functionRef(...args), delay);
return ThreadsafeTimers.setInterval(() => functionRef(...args), delay);
};
globalThis.clearInterval = ThreadsafeTimers.clearInterval;