1
0
Fork 0
mirror of https://git.sr.ht/~ashkeel/strimertul synced 2024-09-20 02:00:49 +00:00

Remove "enabled" toggle on timer module

This commit is contained in:
Ash Keel 2021-12-05 22:18:08 +01:00
parent bcb15ab4a9
commit 776abe186e
No known key found for this signature in database
GPG key ID: BAD8D93E7314ED3E
3 changed files with 12 additions and 55 deletions

View file

@ -155,13 +155,6 @@ export const modules = {
state.moduleConfigs.twitchBotConfig = payload; state.moduleConfigs.twitchBotConfig = payload;
}, },
), ),
twitchBotModulesConfig: makeModule(
'twitch/bot-modules/config',
(state) => state.twitchBot?.modules,
(state, { payload }) => {
state.twitchBot.modules = payload;
},
),
twitchBotCommands: makeModule( twitchBotCommands: makeModule(
'twitch/bot-custom-commands', 'twitch/bot-custom-commands',
(state) => state.twitchBot?.commands, (state) => state.twitchBot?.commands,
@ -252,7 +245,6 @@ const initialState: APIState = {
}, },
twitchBot: { twitchBot: {
commands: null, commands: null,
modules: null,
timers: null, timers: null,
}, },
moduleConfigs: { moduleConfigs: {

View file

@ -31,10 +31,6 @@ interface TwitchBotConfig {
chat_history: number; chat_history: number;
} }
interface TwitchModulesConfig {
enable_timers: boolean;
}
export type AccessLevelType = export type AccessLevelType =
| 'everyone' | 'everyone'
| 'subscribers' | 'subscribers'
@ -134,7 +130,6 @@ export interface APIState {
}; };
twitchBot: { twitchBot: {
commands: TwitchBotCustomCommands; commands: TwitchBotCustomCommands;
modules: TwitchModulesConfig;
timers: TwitchBotTimersConfig; timers: TwitchBotTimersConfig;
}; };
moduleConfigs: { moduleConfigs: {

View file

@ -244,9 +244,6 @@ export default function TwitchBotTimersPage(
props: RouteComponentProps<unknown>, props: RouteComponentProps<unknown>,
): React.ReactElement { ): React.ReactElement {
const [twitchConfig] = useModule(modules.twitchConfig); const [twitchConfig] = useModule(modules.twitchConfig);
const [moduleConfig, setModuleConfig] = useModule(
modules.twitchBotModulesConfig,
);
const [timerConfig, setTimerConfig] = useModule(modules.twitchBotTimers); const [timerConfig, setTimerConfig] = useModule(modules.twitchBotTimers);
const dispatch = useDispatch(); const dispatch = useDispatch();
const { t } = useTranslation(); const { t } = useTranslation();
@ -257,8 +254,6 @@ export default function TwitchBotTimersPage(
const timerFilterLC = timerFilter.toLowerCase(); const timerFilterLC = timerFilter.toLowerCase();
const botActive = twitchConfig?.enable_bot ?? false; const botActive = twitchConfig?.enable_bot ?? false;
const timersActive = moduleConfig?.enable_timers ?? false;
const active = botActive && timersActive;
const createTimer = (name: string, data: TwitchBotTimer): void => { const createTimer = (name: string, data: TwitchBotTimer): void => {
dispatch( dispatch(
@ -333,31 +328,9 @@ export default function TwitchBotTimersPage(
return ( return (
<> <>
<h1 className="title is-4">{t('twitch.timers.header')}</h1> <h1 className="title is-4">{t('twitch.timers.header')}</h1>
<Field>
<label className="checkbox">
<input
type="checkbox"
disabled={!botActive}
checked={active}
onChange={(ev) =>
dispatch(
setModuleConfig({
...moduleConfig,
enable_timers: ev.target.checked,
}),
)
}
/>
{` ${t('twitch.timers.enable')} `}
</label>
</Field>
<div className="field is-grouped"> <div className="field is-grouped">
<p className="control"> <p className="control">
<button <button className="button" onClick={() => setCreateModal(true)}>
className="button"
disabled={!timersActive}
onClick={() => setCreateModal(true)}
>
{t('twitch.timers.new-timer')} {t('twitch.timers.new-timer')}
</button> </button>
</p> </p>
@ -366,7 +339,6 @@ export default function TwitchBotTimersPage(
<input <input
className="input" className="input"
type="text" type="text"
disabled={!timersActive}
placeholder={t('twitch.timers.search')} placeholder={t('twitch.timers.search')}
value={timerFilter} value={timerFilter}
onChange={(ev) => setTimerFilter(ev.target.value)} onChange={(ev) => setTimerFilter(ev.target.value)}
@ -397,19 +369,17 @@ export default function TwitchBotTimersPage(
/> />
) : null} ) : null}
<div className="reward-list" style={{ marginTop: '1rem' }}> <div className="reward-list" style={{ marginTop: '1rem' }}>
{timersActive {Object.keys(timerConfig?.timers ?? {})
? Object.keys(timerConfig?.timers ?? {}) ?.filter((cmd) => cmd.toLowerCase().includes(timerFilterLC))
?.filter((cmd) => cmd.toLowerCase().includes(timerFilterLC)) .map((timer) => (
.map((timer) => ( <TimerItem
<TimerItem key={timer}
key={timer} item={timerConfig.timers[timer]}
item={timerConfig.timers[timer]} onDelete={() => deleteTimer(timer)}
onDelete={() => deleteTimer(timer)} onEdit={() => setShowModifyTimer(timer)}
onEdit={() => setShowModifyTimer(timer)} onToggleState={() => toggleTimer(timer)}
onToggleState={() => toggleTimer(timer)} />
/> ))}
))
: null}
</div> </div>
</> </>
); );