From e6c079e926a754099d04155a397c33121feee15e Mon Sep 17 00:00:00 2001 From: Zack Williamson Date: Fri, 16 Feb 2024 16:30:38 -0500 Subject: [PATCH 1/5] chore: better negative mathing --- src/backend/restrictions/builtin/channel-currency.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/restrictions/builtin/channel-currency.js b/src/backend/restrictions/builtin/channel-currency.js index e80344b5d..d8ab3d230 100644 --- a/src/backend/restrictions/builtin/channel-currency.js +++ b/src/backend/restrictions/builtin/channel-currency.js @@ -138,7 +138,7 @@ const model = { await currencyManager.adjustCurrencyForViewer( username, currencyId, - -Math.abs(currencyAmount) // force value negative to make it deduct the amount from user + 0 - Math.abs(currencyAmount) // force value negative to make it deduct the amount from user ); } }; From 7b511166f4a5c8c8b2dee6e0680da12c75eb204e Mon Sep 17 00:00:00 2001 From: SReject Date: Sat, 17 Feb 2024 00:07:08 -0500 Subject: [PATCH 2/5] feat: presetListArgs shorthand --- src/backend/variables/replace-variable-manager.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/backend/variables/replace-variable-manager.js b/src/backend/variables/replace-variable-manager.js index b1e67f156..522ea1275 100644 --- a/src/backend/variables/replace-variable-manager.js +++ b/src/backend/variables/replace-variable-manager.js @@ -111,6 +111,12 @@ class ReplaceVariableManager extends EventEmitter { } return result == null ? null : result; } + })], + ['#', name => ({ + evaluator: (trigger) => { + const arg = (trigger.metadata?.presetListArgs || {})[name]; + return arg == null ? null : arg; + } })] ]), onlyValidate: !!onlyValidate From daf78448555f28d61989b216f1548f63951d4541 Mon Sep 17 00:00:00 2001 From: SReject Date: Sat, 17 Feb 2024 00:09:02 -0500 Subject: [PATCH 3/5] feat: spoof $#name shorthand variable --- .../spoofed/preset-list-args-shorthand.ts | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 src/backend/variables/builtin/spoofed/preset-list-args-shorthand.ts diff --git a/src/backend/variables/builtin/spoofed/preset-list-args-shorthand.ts b/src/backend/variables/builtin/spoofed/preset-list-args-shorthand.ts new file mode 100644 index 000000000..e7bf33dba --- /dev/null +++ b/src/backend/variables/builtin/spoofed/preset-list-args-shorthand.ts @@ -0,0 +1,21 @@ +import { ReplaceVariable } from "../../../../types/variables"; +import { OutputDataType, VariableCategory } from "../../../../shared/variable-constants"; + +const model : ReplaceVariable = { + definition: { + handle: "#name", + usage: "#name", + description: 'Retrieves the preset-list arg of the give name', + examples: [ + { + usage: '#example', + description: "Returns the value of the preset-list arg 'example'; Synonymous with $presetListArgs[example]" + } + ], + categories: [VariableCategory.ADVANCED], + possibleDataOutput: [OutputDataType.ALL], + spoof: true + } +}; + +export default model; \ No newline at end of file From d6acdfad0205229ecce09f723e59f24d818dc7c7 Mon Sep 17 00:00:00 2001 From: Zack Williamson Date: Sat, 17 Feb 2024 21:25:11 -0500 Subject: [PATCH 4/5] fix(database): fix viewer watch time accrual --- src/backend/viewers/viewer-online-status-manager.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/viewers/viewer-online-status-manager.ts b/src/backend/viewers/viewer-online-status-manager.ts index bdd44d46c..763cdf766 100644 --- a/src/backend/viewers/viewer-online-status-manager.ts +++ b/src/backend/viewers/viewer-online-status-manager.ts @@ -18,10 +18,10 @@ class ViewerOnlineStatusManager { await this.setAllViewersOffline(); // update online viewer's lastSeen prop every minute - this._updateLastSeenIntervalId = setInterval(this.setLastSeenDateTime, 60000); + this._updateLastSeenIntervalId = setInterval(async () => await this.setLastSeenDateTime(), 60000); // Update online viewer minutes every 15 minutes. - this._updateTimeIntervalId = setInterval(this.calcAllViewersOnlineMinutes, 900000); + this._updateTimeIntervalId = setInterval(async () => await this.calcAllViewersOnlineMinutes(), 900000); }); frontendCommunicator.onAsync("disconnect-viewer-db", async () => { From a7a9d330567f4e6f5d2436f725ffddd3da79234d Mon Sep 17 00:00:00 2001 From: Zack Williamson Date: Sat, 17 Feb 2024 21:25:38 -0500 Subject: [PATCH 5/5] 5.61.2 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 662fffa5d..725fbfb1d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "firebotv5", - "version": "5.61.1", + "version": "5.61.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "firebotv5", - "version": "5.61.1", + "version": "5.61.2", "license": "GPL-3.0", "dependencies": { "@aws-sdk/client-polly": "^3.26.0", diff --git a/package.json b/package.json index f07ccf7ba..476fc5149 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "firebotv5", - "version": "5.61.1", + "version": "5.61.2", "description": "Powerful all-in-one bot for Twitch streamers.", "main": "build/main.js", "scripts": {