chore: enable disable logging

This commit is contained in:
Sebastian Velez
2023-01-16 14:21:47 -05:00
parent 949fff2cf7
commit ca5f25c4a3
11 changed files with 121 additions and 113 deletions

View File

@@ -1,20 +1,13 @@
import React, { useEffect, useState } from 'react';
import React, { useEffect } from 'react';
import { useSelector, useDispatch } from 'react-redux';
import { ApiKeyReducer, ReduxSelector } from '../types/store';
import config from '../config/config';
import { fetchUserData } from '../utils/user';
import changeExtensionState from '../utils/changeExtensionState';
import NavBar from './NavBar';
import MainList from './MainList';
export default function WakaTime(): JSX.Element {
const dispatch = useDispatch();
const defaultState = {
loggingEnabled: config.loggingEnabled,
totalTimeLoggedToday: '0 minutes',
};
const [state, setState] = useState(defaultState);
const {
apiKey: apiKeyFromRedux,
loggingEnabled,
@@ -25,53 +18,13 @@ export default function WakaTime(): JSX.Element {
fetchUserData(apiKeyFromRedux, dispatch);
}, []);
const disableLogging = async () => {
setState({
...state,
loggingEnabled: false,
});
await changeExtensionState('notLogging');
await browser.storage.sync.set({
loggingEnabled: false,
});
};
const enableLogging = async () => {
setState({
...state,
loggingEnabled: true,
});
await changeExtensionState('allGood');
await browser.storage.sync.set({
loggingEnabled: true,
});
};
const logoutUser = async () => {
await browser.storage.sync.set({ apiKey: '' });
setState(defaultState);
await changeExtensionState('notSignedIn');
};
return (
<div>
<NavBar />
<div className="container">
<div className="row">
<div className="col-md-12">
<MainList
disableLogging={disableLogging}
enableLogging={enableLogging}
loggingEnabled={loggingEnabled}
totalTimeLoggedToday={totalTimeLoggedToday}
logoutUser={logoutUser}
/>
<MainList loggingEnabled={loggingEnabled} totalTimeLoggedToday={totalTimeLoggedToday} />
</div>
</div>
</div>