diff --git a/package-lock.json b/package-lock.json index c8e945247..1e9cbf3f9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "firebotv5", - "version": "5.66.0", + "version": "5.66.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "firebotv5", - "version": "5.66.0", + "version": "5.66.1", "license": "GPL-3.0", "dependencies": { "@aws-sdk/client-polly": "^3.26.0", @@ -48,7 +48,7 @@ "escape-html": "^1.0.3", "eventsource": "^1.0.7", "express": "^5.1.0", - "expressionish": "github:SReject/expressionish#27f38753346b60c5a09d69ebe407bf70583eec2d", + "expressionish": "github:SReject/expressionish#2e798f91c640384b0bf0b2b4bfa589d5e7ad2a51", "extra-life-ts": "^0.4.0", "firebot-nutjs": "github:crowbartools/firebot-nutjs#f52581d4c4426cf7f4dcc2b0d26cf56777e115f8", "form-data": "^4.0.5", @@ -6757,8 +6757,8 @@ }, "node_modules/expressionish": { "version": "0.0.5", - "resolved": "git+ssh://git@github.com/SReject/expressionish.git#27f38753346b60c5a09d69ebe407bf70583eec2d", - "integrity": "sha512-CfodJDY96u3bjKg9kSGt9h8XRwmbDiI//6RtVNXZunDkzY3xUdytnrTn31m1zp254VeTievsIGNEFC2rn6lYsA==", + "resolved": "git+ssh://git@github.com/SReject/expressionish.git#2e798f91c640384b0bf0b2b4bfa589d5e7ad2a51", + "integrity": "sha512-WNMve0hH2EKiYCJioJsFvJ84nteMadCnLOksjU4e/tfSytHcD0ndg//A73vI3WVWq59HXyUo0omDy2QcPipi1w==", "license": "ISC" }, "node_modules/extend": { diff --git a/package.json b/package.json index 746cfbb18..a23311a6f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "firebotv5", - "version": "5.66.0", + "version": "5.66.1", "description": "Powerful all-in-one bot for Twitch streamers.", "main": "build/main.js", "scripts": { @@ -91,7 +91,7 @@ "escape-html": "^1.0.3", "eventsource": "^1.0.7", "express": "^5.1.0", - "expressionish": "github:SReject/expressionish#27f38753346b60c5a09d69ebe407bf70583eec2d", + "expressionish": "github:SReject/expressionish#2e798f91c640384b0bf0b2b4bfa589d5e7ad2a51", "extra-life-ts": "^0.4.0", "firebot-nutjs": "github:crowbartools/firebot-nutjs#f52581d4c4426cf7f4dcc2b0d26cf56777e115f8", "form-data": "^4.0.5", diff --git a/src/backend/chat/frontend-chat-helpers.ts b/src/backend/chat/frontend-chat-helpers.ts index 35cc94669..4856379ce 100644 --- a/src/backend/chat/frontend-chat-helpers.ts +++ b/src/backend/chat/frontend-chat-helpers.ts @@ -20,7 +20,7 @@ class FirebotFrontendChatHelpers { chatMessage: FirebotChatMessage ): void { if (chatWidget.settings.delayMessages === true) { - if (this._pendingMessageCache[chatWidget.id].some(m => m === chatMessage.id)) { + if ((this._pendingMessageCache[chatWidget.id] ?? []).some(m => m === chatMessage.id)) { // Remove it from the pending list so we know we've taken care of it this._pendingMessageCache[chatWidget.id] = this._pendingMessageCache[chatWidget.id] .filter(m => m !== chatMessage.id); @@ -85,16 +85,18 @@ class FirebotFrontendChatHelpers { const advancedChatWidgets = overlayWidgetConfigManager.getConfigsOfType>("firebot:chat-advanced"); for (const chatWidget of [...chatWidgets, ...advancedChatWidgets]) { - if (chatWidget.settings.delayMessages === true && chatWidget.settings.messageDelay) { - this._pendingMessageCache[chatWidget.id] ??= []; + if (!!chatWidget.active) { + if (chatWidget.settings.delayMessages === true && chatWidget.settings.messageDelay) { + this._pendingMessageCache[chatWidget.id] ??= []; - this._pendingMessageCache[chatWidget.id].push(chatMessage.id); + this._pendingMessageCache[chatWidget.id].push(chatMessage.id); - setTimeout(() => { + setTimeout(() => { + this.sendChatMessageToChatWidget(chatWidget, chatMessage); + }, chatWidget.settings.messageDelay * 1000); + } else { this.sendChatMessageToChatWidget(chatWidget, chatMessage); - }, chatWidget.settings.messageDelay * 1000); - } else { - this.sendChatMessageToChatWidget(chatWidget, chatMessage); + } } } } diff --git a/src/backend/crowbar-relay/crowbar-relay-websocket.ts b/src/backend/crowbar-relay/crowbar-relay-websocket.ts index c7b3b68bf..2f6356857 100644 --- a/src/backend/crowbar-relay/crowbar-relay-websocket.ts +++ b/src/backend/crowbar-relay/crowbar-relay-websocket.ts @@ -74,7 +74,7 @@ class CrowbarRelayWebSocket extends TypedEmitter<{ }); this.ws.addEventListener("error", (err) => { - logger.error("Crowbar Relay WebSocket errored", err); + logger.error("Crowbar Relay WebSocket errored", err.message); }); this.ws.addEventListener("close", (closedEvent) => { diff --git a/src/backend/effects/builtin/clips.js b/src/backend/effects/builtin/clips.js index 8d4faeea2..c0ab4835c 100644 --- a/src/backend/effects/builtin/clips.js +++ b/src/backend/effects/builtin/clips.js @@ -373,7 +373,7 @@ const clip = { videoElement = `