Compare commits

...

2 Commits

Author SHA1 Message Date
Ash Keel 2cec7b1ffe
fix: update kilovolt with fixed callbacks concurrency 2024-04-20 14:51:45 +02:00
Ash Keel 9844c5480f
fix: reset chat account and fix onboarding 2024-04-20 14:51:30 +02:00
8 changed files with 50 additions and 27 deletions

View File

@ -23,6 +23,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- The (i) icon next to "Recent events" in the dashboard now uses a custom tooltip that shows up more consistently.
- The "strimertul is already running" message now pops up from the currently running instance.
### Fixed
- Updated Kilovolt to a version that fixes an annoying crash when managing subscriptions.
### Removed
- `twitch/@send-chat-message` has been removed. Use `twitch/chat/@send-message` instead.

View File

@ -75,7 +75,8 @@
"header": "Chat settings",
"cooldown-tip": "Global chat cooldown for commands (in seconds)",
"default-user": "Using stream account, use the button below to authenticate with a different account.",
"chat-account": "Chat account"
"chat-account": "Chat account",
"clear-button": "Revert to default account"
},
"events": {
"loading-data": "Querying user data from Twitch APIs…",
@ -292,7 +293,7 @@
"welcome-continue-button": "Get started",
"skip-button": "Skip onboarding",
"welcome-p1": "It looks like this is the first time you started {{APPNAME}}. You can click the \"Get started\" button at the bottom to set things up one by one, or just skip everything and configure things manually later.",
"welcome-p2": "Heads up: if you're used to other platforms, this unfortunately will require some more work on your end.",
"welcome-p2": "Heads up: if you're used to other tools for streaming, unfortunately this one will require some more work from your end.",
"sections": {
"landing": "Welcome",
"twitch-config": "Twitch integration",

View File

@ -292,7 +292,7 @@
"welcome-continue-button": "Cominciamo",
"welcome-header": "Benvenuto su {{APPNAME}}",
"welcome-p1": "Sembra che questa sia la prima volta che avvii {{APPNAME}}. \nPuoi fare clic sul pulsante \"Cominciamo\" in basso per impostare tutto con una procedura guidata oppure semplicemente saltare tutto e configurare le cose manualmente in un secondo momento.",
"welcome-p2": "Giusto una cosa: se sei abituato ad altre piattaforme, stavolta toccherà un po' più lavoro da parte tua!",
"welcome-p2": "Giusto una cosa: se sei abituato ad altri strumenti di questo tipo, stavolta toccherà un po' più lavoro da parte tua!",
"sections": {
"done": "Pronti a partire!",
"landing": "Benvenuto",

View File

@ -41,7 +41,6 @@ export default function TwitchUserBlock({
const res = await GetTwitchLoggedUser(authKey);
setUser(res);
} catch (e) {
console.error(e);
setUser({ ok: false, error: (e as Error).message });
}
};

View File

@ -465,7 +465,10 @@ function TwitchEventsStep() {
<SectionHeader>
{t('pages.twitch-settings.events.current-status')}
</SectionHeader>
<TwitchUserBlock authKey="twitch/auth-keys" />
<TwitchUserBlock
authKey="twitch/auth-keys"
noUserMessage={t('pages.twitch-settings.events.err-no-user')}
/>
<TextBlock>{t('pages.onboarding.twitch-ev-p3')}</TextBlock>
<Button
variation={'primary'}

View File

@ -1,6 +1,6 @@
import { useTranslation } from 'react-i18next';
import { useModule, useStatus } from '~/lib/react';
import { useAppDispatch } from '~/store';
import { useLiveKeyString, useModule, useStatus } from '~/lib/react';
import { useAppDispatch, useAppSelector } from '~/store';
import apiReducer, { modules } from '~/store/api/reducer';
import { startAuthFlow } from '~/lib/twitch';
import TwitchUserBlock from '~/ui/components/TwitchUserBlock';
@ -9,6 +9,7 @@ import SaveButton from '../../components/forms/SaveButton';
import {
Button,
Field,
FlexRow,
InputBox,
Label,
SectionHeader,
@ -20,6 +21,9 @@ export default function TwitchChatSettings() {
modules.twitchChatConfig,
);
const [twitchConfig, setTwitchConfig] = useModule(modules.twitchConfig);
const kv = useAppSelector((state) => state.api.client);
const authKey = 'twitch/chat/chatter-account';
const authKeyValue = useLiveKeyString('twitch/chat/chatter-account');
const status = useStatus(loadStatus.save);
const dispatch = useAppDispatch();
const { t } = useTranslation();
@ -40,15 +44,29 @@ export default function TwitchChatSettings() {
authKey={'twitch/chat/chatter-account'}
noUserMessage={t('pages.twitch-settings.chat.default-user')}
/>
<Button
variation="primary"
css={{ marginTop: '1rem' }}
onClick={() => {
void startAuthFlow('chat');
}}
>
<ExternalLinkIcon /> {t('pages.twitch-settings.events.auth-button')}
</Button>
<FlexRow align="left" spacing="1">
<Button
variation="primary"
css={{ marginTop: '1rem' }}
onClick={() => {
void startAuthFlow('chat');
}}
>
<ExternalLinkIcon /> {t('pages.twitch-settings.events.auth-button')}
</Button>
{authKeyValue && (
<Button
variation="danger"
css={{ marginTop: '1rem' }}
onClick={() => {
kv.deleteKey(authKey);
}}
>
{t('pages.twitch-settings.chat.clear-button')}
</Button>
)}
</FlexRow>
<SectionHeader>{t('pages.twitch-settings.chat.header')}</SectionHeader>
<Field size="fullWidth">
<Label htmlFor="bot-chat-history">

8
go.mod
View File

@ -2,12 +2,10 @@ module git.sr.ht/~ashkeel/strimertul
go 1.22
toolchain go1.22.0
require (
git.sr.ht/~ashkeel/containers v0.3.6
git.sr.ht/~ashkeel/kilovolt-driver-pebble v1.3.1
git.sr.ht/~ashkeel/kilovolt/v12 v12.0.0
git.sr.ht/~ashkeel/kilovolt-driver-pebble v1.3.3
git.sr.ht/~ashkeel/kilovolt/v12 v12.0.2
github.com/Masterminds/sprig/v3 v3.2.3
github.com/apenwarr/fixconsole v0.0.0-20191012055117-5a9f6489cc29
github.com/cockroachdb/pebble v1.1.0
@ -16,7 +14,7 @@ require (
github.com/nicklaw5/helix/v2 v2.28.1
github.com/samber/slog-multi v1.0.2
github.com/urfave/cli/v2 v2.27.1
github.com/wailsapp/wails/v2 v2.8.0
github.com/wailsapp/wails/v2 v2.8.1
gopkg.in/natefinch/lumberjack.v2 v2.2.1
)

12
go.sum
View File

@ -33,10 +33,10 @@ cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9
dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU=
git.sr.ht/~ashkeel/containers v0.3.6 h1:+umWlQGKhLxGQlaEUt/F6rBZGpeBd1T01fM3wro+qTY=
git.sr.ht/~ashkeel/containers v0.3.6/go.mod h1:i2KocnJfRH0FwfgPi4nw7/ehYLEoLlP3iwdDoBeVdME=
git.sr.ht/~ashkeel/kilovolt-driver-pebble v1.3.1 h1:AQORTHRA6Ce1TW24FgHN1K5hWT8+/5nC7sJ5L2W+tRM=
git.sr.ht/~ashkeel/kilovolt-driver-pebble v1.3.1/go.mod h1:lPYwJ9bumCDzeklkhXh0OCasiB7omzW+ykaLUZ30waE=
git.sr.ht/~ashkeel/kilovolt/v12 v12.0.0 h1:whWstBXDkj3WEEDpQu3+zTWYZNlJtmlDcUkAnkleY4g=
git.sr.ht/~ashkeel/kilovolt/v12 v12.0.0/go.mod h1:FGg4hwyY/e0G/mpLgUA/nYVIpHUTc4uFIwesM/MJVtA=
git.sr.ht/~ashkeel/kilovolt-driver-pebble v1.3.3 h1:+tu5DBT150HRR2gpVEpQwpTclE3niEsy9IyGqLfUZbQ=
git.sr.ht/~ashkeel/kilovolt-driver-pebble v1.3.3/go.mod h1:Jdf48ldD5UTw8m1AB72H3t0ryUotSeobVkkzrxikYVY=
git.sr.ht/~ashkeel/kilovolt/v12 v12.0.2 h1:8NMO/sKsB9rlkFWxeBwv5mKrUvFEQ4RN7/BOcTgrnqU=
git.sr.ht/~ashkeel/kilovolt/v12 v12.0.2/go.mod h1:dRSJpl6ZXNoTAF3pTMC4AO7MLkRgzQqaZYR8S5a46TI=
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo=
github.com/DataDog/zstd v1.4.5 h1:EndNeuB0l9syBZhut0wns3gV1hL8zX8LIu6ZiVHWLIQ=
@ -327,8 +327,8 @@ github.com/wailsapp/go-webview2 v1.0.10 h1:PP5Hug6pnQEAhfRzLCoOh2jJaPdrqeRgJKZhy
github.com/wailsapp/go-webview2 v1.0.10/go.mod h1:Uk2BePfCRzttBBjFrBmqKGJd41P6QIHeV9kTgIeOZNo=
github.com/wailsapp/mimetype v1.4.1 h1:pQN9ycO7uo4vsUUuPeHEYoUkLVkaRntMnHJxVwYhwHs=
github.com/wailsapp/mimetype v1.4.1/go.mod h1:9aV5k31bBOv5z6u+QP8TltzvNGJPmNJD4XlAL3U+j3o=
github.com/wailsapp/wails/v2 v2.8.0 h1:b2NNn99uGPiN6P5bDsnPwOJZWtAOUhNLv7Vl+YxMTr4=
github.com/wailsapp/wails/v2 v2.8.0/go.mod h1:EFUGWkUX3KofO4fmKR/GmsLy3HhPH7NbyOEaMt8lBF0=
github.com/wailsapp/wails/v2 v2.8.1 h1:KAudNjlFaiXnDfFEfSNoLoibJ1ovoutSrJ8poerTPW0=
github.com/wailsapp/wails/v2 v2.8.1/go.mod h1:EFUGWkUX3KofO4fmKR/GmsLy3HhPH7NbyOEaMt8lBF0=
github.com/xrash/smetrics v0.0.0-20201216005158-039620a65673 h1:bAn7/zixMGCfxrRTfdpNzjtPYqr8smhKouy9mxVdGPU=
github.com/xrash/smetrics v0.0.0-20201216005158-039620a65673/go.mod h1:N3UwUGtsrSj3ccvlPHLoLsHnpR27oXr4ZE984MbSER8=
github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=