This commit is contained in:
ammarahm-ed
2020-01-17 21:24:29 +05:00
33 changed files with 238 additions and 146 deletions

View File

@@ -10,6 +10,7 @@ import {Menu} from './src/components/Menu';
import SideMenu from './src/components/SideMenu';
import Storage from 'notes-core/api/database';
import StorageInterface from './src/utils/storage';
<<<<<<< HEAD
import {useTracked, ACTIONS} from './src/provider';
import {DeviceDetectionService} from './src/utils/deviceDetection';
import {
@@ -18,14 +19,26 @@ import {
_unSubscribeEvent,
} from './src/components/DialogManager';
import {getColorScheme} from './src/common/common';
=======
import {DeviceDetectionService} from './src/utils/deviceDetection';
import {DialogManager} from './src/components/DialogManager';
import {useAppContext} from './src/provider/useAppContext';
import {AppProvider} from './src/provider';
import {COLOR_SCHEME_LIGHT} from './src/common/common';
>>>>>>> cfee96fb230bdd33c710a5e72a80ccf2b82a8646
export const DDS = new DeviceDetectionService();
export const db = new Storage(StorageInterface);
let sideMenuRef;
const App = () => {
<<<<<<< HEAD
const [state, dispatch] = useTracked();
const {colors} = state;
=======
const [colors, setColors] = useState(COLOR_SCHEME_LIGHT);
// Global State
>>>>>>> cfee96fb230bdd33c710a5e72a80ccf2b82a8646
// Local State
const [sidebar, setSidebar] = useState(w * 0.3);
@@ -89,7 +102,7 @@ const App = () => {
setInit(true);
});
});
}, []);
});
async function updateAppTheme(colors = state.colors) {
let newColors = await getColorScheme(colors);
@@ -97,12 +110,16 @@ const App = () => {
}
// Render
if (!init) {
return <></>;
}
return (
<<<<<<< HEAD
<>
=======
<AppProvider>
>>>>>>> cfee96fb230bdd33c710a5e72a80ccf2b82a8646
<View
style={{
width: '100%',
@@ -165,9 +182,15 @@ const App = () => {
</SideMenu>
)}
<Toast />
<<<<<<< HEAD
<DialogManager colors={colors} />
</View>
</>
=======
</View>
<DialogManager colors={colors} />
</AppProvider>
>>>>>>> cfee96fb230bdd33c710a5e72a80ccf2b82a8646
);
};

View File

@@ -5,15 +5,5 @@
import {AppRegistry} from 'react-native';
import App, {db} from './App';
import {name as appName} from './app.json';
import React, {useEffect} from 'react';
import {Provider} from './src/provider';
const AppProvider = () => {
return (
<Provider>
<App />
</Provider>
);
};
AppRegistry.registerComponent(appName, () => AppProvider);
AppRegistry.registerComponent(appName, () => App);

View File

@@ -20,7 +20,8 @@ import Icon from 'react-native-vector-icons/Feather';
import NavigationService from '../../services/NavigationService';
import {db} from '../../../App';
import FastStorage from 'react-native-fast-storage';
import {useTracked} from '../../provider';
import {_recieveEvent, _unSubscribeEvent} from '../DialogManager';
const w = Dimensions.get('window').width;
const h = Dimensions.get('window').height;
@@ -34,11 +35,11 @@ export const ActionSheetComponent = ({
rowItems = [],
columnItems = [],
}) => {
const [state, dispatch] = useTracked();
const {colors} = state;
const {colors, updateDB, changeColorScheme} = useAppContext();
// Todo
<<<<<<< HEAD
function changeColorScheme(colors = COLOR_SCHEME, accent = ACCENT) {
let newColors = setColorScheme(colors, accent);
StatusBar.setBarStyle(newColors.night ? 'light-content' : 'dark-content');
@@ -46,6 +47,8 @@ export const ActionSheetComponent = ({
dispatch({type: ACTIONS.THEME, colors: newColors});
}
=======
>>>>>>> cfee96fb230bdd33c710a5e72a80ccf2b82a8646
const [focused, setFocused] = useState(false);
const [note, setNote] = useState(
item
@@ -160,7 +163,7 @@ export const ActionSheetComponent = ({
}
}
dispatch({type: type});
updateDB();
setNote({...toAdd});
};

View File

@@ -13,13 +13,12 @@ import {getElevation, ToastEvent} from '../../utils/utils';
import {FlatList, TextInput} from 'react-native-gesture-handler';
import {db, DDS} from '../../../App';
import {useAppContext} from '../../provider/useAppContext';
import {useTracked} from '../../provider';
let refs = [];
export const AddNotebookDialog = ({visible, close, toEdit = null}) => {
const [state, dispatch] = useTracked();
const {colors} = state;
const {colors} = useAppContext();
const [topics, setTopics] = useState(['']);
const [title, setTitle] = useState(null);

View File

@@ -28,7 +28,7 @@ import {FlatList, TextInput} from 'react-native-gesture-handler';
import {useForceUpdate} from '../../views/ListsEditor';
import {db} from '../../../App';
import {useAppContext} from '../../provider/useAppContext';
import {useTracked} from '../../provider';
export const AddTopicDialog = ({
visible,
@@ -36,8 +36,7 @@ export const AddTopicDialog = ({
notebookID,
toEdit = null,
}) => {
const [state, dispatch] = useTracked();
const {colors} = state;
const {colors} = useAppContext();
const [titleFocused, setTitleFocused] = useState(false);
let title = null;

View File

@@ -19,7 +19,7 @@ import NavigationService from '../../services/NavigationService';
import * as Animatable from 'react-native-animatable';
import {useAppContext} from '../../provider/useAppContext';
import {DDS} from '../../../App';
import {useTracked} from '../../provider';
export const AnimatedSafeAreaView = Animatable.createAnimatableComponent(
SafeAreaView,
);
@@ -31,8 +31,7 @@ export const Container = ({
noBottomButton = false,
}) => {
// State
const [state, dispatch] = useTracked();
const {colors} = state;
const {colors} = useAppContext();
const [buttonHide, setButtonHide] = useState(false);

View File

@@ -13,6 +13,10 @@ import {
} from '../../common/common';
import Icon from 'react-native-vector-icons/Feather';
import {getElevation, ToastEvent} from '../../utils/utils';
<<<<<<< HEAD
=======
>>>>>>> cfee96fb230bdd33c710a5e72a80ccf2b82a8646
import {dialogActions, updateEvent} from '../DialogManager';
import {db} from '../../../App';

View File

@@ -69,6 +69,10 @@ export class DialogManager extends Component {
super(props);
this.actionSheet;
this.opened = false;
<<<<<<< HEAD
=======
>>>>>>> cfee96fb230bdd33c710a5e72a80ccf2b82a8646
this.state = {
item: {},
actionSheetData: {

View File

@@ -26,7 +26,7 @@ import {AnimatedSafeAreaView} from '../../views/Home';
import {TextInput} from 'react-native-gesture-handler';
import {useAppContext} from '../../provider/useAppContext';
import {VaultDialog} from '../VaultDialog';
import {useTracked} from '../../provider';
let tagsInputRef;
let tagsList;
@@ -39,11 +39,9 @@ export const EditorMenu = ({
note,
timestamp,
}) => {
const [state, dispatch] = useTracked();
const {colors} = state;
const {colors, changeColorScheme} = useAppContext();
// Todo
const changeColorScheme = () => {};
///////
const [unlock, setUnlock] = useState(false);

View File

@@ -14,12 +14,11 @@ import Icon from 'react-native-vector-icons/Ionicons';
import {getElevation} from '../../utils/utils';
import {FlatList} from 'react-native-gesture-handler';
import {useAppContext} from '../../provider/useAppContext';
import {useTracked} from '../../provider';
const w = Dimensions.get('window').width;
const h = Dimensions.get('window').height;
export const ListItem = props => {
const [state, dispatch] = useTracked();
const {colors} = state;
const {colors} = useAppContext();
return (
<View

View File

@@ -22,11 +22,14 @@ import {
import Icon from 'react-native-vector-icons/Feather';
import {AnimatedSafeAreaView} from '../../views/Home';
import FastStorage from 'react-native-fast-storage';
<<<<<<< HEAD
import {useTracked, ACTIONS} from '../../provider';
=======
>>>>>>> cfee96fb230bdd33c710a5e72a80ccf2b82a8646
export const Menu = ({close = () => {}, hide, update = () => {}}) => {
const [state, dispatch] = useTracked();
const {colors} = state;
const {colors} = useAppContext();
// todo

View File

@@ -67,7 +67,11 @@ export default class NoteItem extends React.Component {
update,
index,
} = this.props;
<<<<<<< HEAD
console.log('rendering', index);
=======
console.log('rerendering', index);
>>>>>>> cfee96fb230bdd33c710a5e72a80ccf2b82a8646
return (
<View
style={[

View File

@@ -27,11 +27,9 @@ export const NotebookItem = ({
customStyle,
onLongPress,
}) => {
const [state, dispatch] = useTracked();
const {colors} = state;
const {colors, updateDB} = useAppContext();
///
const updateDB = () => {};
const [isVisible, setVisible] = useState(false);
const [addTopic, setAddTopic] = useState(false);

View File

@@ -15,10 +15,9 @@ import {getElevation, w} from '../../utils/utils';
import * as Animatable from 'react-native-animatable';
import {DDS} from '../../../App';
import {useAppContext} from '../../provider/useAppContext';
import {useTracked} from '../../provider';
export const Search = props => {
const [state, dispatch] = useTracked();
const {colors} = state;
const {colors} = useAppContext();
const [focus, setFocus] = useState(false);

View File

@@ -5,7 +5,7 @@ import {w} from '../../utils/utils';
import Icon from 'react-native-vector-icons/Feather';
import * as Animatable from 'react-native-animatable';
import {useAppContext} from '../../provider/useAppContext';
import {useTracked} from '../../provider';
export const AnimatedSafeAreaView = Animatable.createAnimatableComponent(
SafeAreaView,
@@ -13,13 +13,14 @@ export const AnimatedSafeAreaView = Animatable.createAnimatableComponent(
export const SelectionHeader = ({navigation}) => {
// State
const [state, dispatch] = useTracked();
const {colors, selectionMode, selectedItemsList} = state;
///
const updateDB = () => {};
const updateSelectionList = () => {};
const changeSelectionMode = () => {};
const {
colors,
selectionMode,
selectedItemsList,
updateDB,
updateSelectionList,
changeSelectionMode,
} = useAppContext();
// Render

View File

@@ -3,16 +3,18 @@ import {View, TouchableOpacity} from 'react-native';
import {SIZE} from '../../common/common';
import Icon from 'react-native-vector-icons/Feather';
import {w} from '../../utils/utils';
import {useTracked} from '../../provider';
import {useAppContext} from '../../provider/useAppContext';
const SelectionWrapper = ({children, item}) => {
const [state, dispatch] = useTracked();
const {colors, selectionMode, selectedItemsList} = state;
const {
colors,
selectionMode,
selectedItemsList,
updateDB,
updateSelectionList,
changeSelectionMode,
} = useAppContext();
///
const updateDB = () => {};
const updateSelectionList = () => {};
const changeSelectionMode = () => {};
return (
<View
style={{

View File

@@ -12,14 +12,13 @@ import Icon from 'react-native-vector-icons/Feather';
import * as Animatable from 'react-native-animatable';
import {h, w} from '../../utils/utils';
import {useAppContext} from '../../provider/useAppContext';
import {useTracked} from '../../provider';
const AnimatedTouchableOpacity = Animatable.createAnimatableComponent(
TouchableOpacity,
);
export const Toast = () => {
const [state, dispatch] = useTracked();
const {colors} = state;
const {colors} = useAppContext();
const [toast, setToast] = useState(false);
const [message, setMessage] = useState([]);

View File

@@ -7,7 +7,7 @@ import * as Animatable from 'react-native-animatable';
import NavigationService from '../../services/NavigationService';
import {DDS} from '../../../App';
import {useAppContext} from '../../provider/useAppContext';
import {useTracked} from '../../provider';
let isOpen = false;
export const Header = ({
heading,
@@ -18,8 +18,7 @@ export const Header = ({
verticalMenu = false,
sendHeight = e => {},
}) => {
const [state, dispatch] = useTracked();
const {colors} = state;
const {colors} = useAppContext();
return (
<Animatable.View

View File

@@ -1,6 +1,9 @@
import React, {useReducer} from 'react';
import React, {createContext, useEffect, useState} from 'react';
import {View, Text} from 'react-native';
import {useImmer} from 'use-immer';
import {DDS, db} from '../../App';
import {createContainer} from 'react-tracked';
import {getColorScheme} from '../common/common';
const defaultState = {
isMenuOpen: {
current: false,
@@ -32,8 +35,11 @@ const defaultState = {
warningBg: '#FEEFB3',
warningText: '#9F6000',
},
selectionMode: false,
selectedItemsList: [],
};
<<<<<<< HEAD
export const ACTIONS = {
NOTES: 'note',
NOTEBOOKS: 'notebook',
@@ -65,9 +71,49 @@ const reducer = (state, action) => {
}
default:
throw new Error('unknown action type');
=======
const AppContext = createContext([defaultState, function() {}]);
const AppProvider = ({children}) => {
const [state, dispatch] = useImmer({...defaultState});
const [loading, setLoading] = useState(true);
async function init() {
let newColors = await getColorScheme();
dispatch(draft => {
draft.colors = {...newColors};
draft.notes = db.groupNotes();
draft.notebooks = db.getNotebooks();
draft.trash = db.getTrash();
draft.favorites = db.getFavorites();
draft.pinned = db.getPinned();
});
setLoading(false);
>>>>>>> cfee96fb230bdd33c710a5e72a80ccf2b82a8646
}
useEffect(() => {
init();
}, []);
return (
<AppContext.Provider value={[state, dispatch]}>
{loading ? (
<View
style={{
width: '100%',
height: '100%',
backgroundColor: 'white',
justifyContent: 'center',
alignItems: 'center',
}}>
<Text>Loading...</Text>
</View>
) : (
children
)}
</AppContext.Provider>
);
};
const useValue = () => useReducer(reducer, defaultState);
export const {Provider, useTracked} = createContainer(useValue);
export {AppProvider, AppContext};

View File

@@ -4,11 +4,10 @@ import {SIZE, pv, opacity, WEIGHT} from '../../common/common';
import {Header} from '../../components/header';
import {AnimatedSafeAreaView} from '../Home';
import {useAppContext} from '../../provider/useAppContext';
import {useTracked} from '../../provider';
export const AccountSettings = ({navigation}) => {
const [state, dispatch] = useTracked();
const {colors} = state;
const {colors} = useAppContext();
return (
<AnimatedSafeAreaView

View File

@@ -25,12 +25,16 @@ import ActionSheet from '../../components/ActionSheet';
import {ActionSheetComponent} from '../../components/ActionSheetComponent';
import {VaultDialog} from '../../components/VaultDialog';
import {useIsFocused} from 'react-navigation-hooks';
<<<<<<< HEAD
import {useTracked} from '../../provider';
import {
simpleDialogEvent,
TEMPLATE_EXIT,
ActionSheetEvent,
} from '../../components/DialogManager';
=======
>>>>>>> cfee96fb230bdd33c710a5e72a80ccf2b82a8646
const w = Dimensions.get('window').width;
const h = Dimensions.get('window').height;
@@ -43,11 +47,7 @@ var title = null;
let timer = null;
const Editor = ({navigation}) => {
// Global State
const [state, dispatch] = useTracked();
const {colors} = state;
///
const updateDB = () => {};
const {colors, updateDB} = useAppContext();
// Local State

View File

@@ -10,15 +10,17 @@ import {NotebookItem} from '../../components/NotebookItem';
import {FavoritesPlaceHolder} from '../../components/ListPlaceholders';
import Container from '../../components/Container';
import {useIsFocused} from 'react-navigation-hooks';
import {useTracked} from '../../provider';
export const Favorites = ({navigation}) => {
// Global State
const [state, dispatch] = useTracked();
const {colors, selectionMode, pinned, selectedItemsList, favorites} = state;
const updateSelectionList = () => {};
const changeSelectionMode = () => {};
const {
colors,
selectionMode,
favorites,
updateSelectionList,
changeSelectionMode,
} = useAppContext();
// Local State
const [text, setText] = useState('');

View File

@@ -14,16 +14,18 @@ import SelectionHeader from '../../components/SelectionHeader';
import SelectionWrapper from '../../components/SelectionWrapper';
import {w} from '../../utils/utils';
import {useIsFocused} from 'react-navigation-hooks';
import {useTracked} from '../../provider';
export const Folders = ({navigation}) => {
const [state, dispatch] = useTracked();
const {colors, selectionMode, pinned, notebooks} = state;
///
const updateDB = () => {};
const updateSelectionList = () => {};
const changeSelectionMode = () => {};
const {
colors,
selectionMode,
pinned,
notebooks,
updateDB,
updateSelectionList,
changeSelectionMode,
} = useAppContext();
const [addNotebook, setAddNotebook] = useState(false);
const [hideHeader, setHideHeader] = useState(false);

View File

@@ -33,16 +33,17 @@ import {NavigationEvents} from 'react-navigation';
import {Header} from '../../components/header';
import {useForceUpdate} from '../ListsEditor';
import {useAppContext} from '../../provider/useAppContext';
import {useTracked} from '../../provider';
export const ForgotPassword = ({navigation}) => {
const [state, dispatch] = useTracked();
const {colors, selectionMode, pinned, selectedItemsList} = state;
const {
colors,
updateDB,
updateSelectionList,
changeSelectionMode,
} = useAppContext();
///
const updateDB = () => {};
const updateSelectionList = () => {};
const changeSelectionMode = () => {};
useEffect(() => {
DeviceEventEmitter.emit('hide');

View File

@@ -1,5 +1,5 @@
import React, {useEffect, useState} from 'react';
import {SafeAreaView} from 'react-native';
import {SafeAreaView, Text} from 'react-native';
import {Search} from '../../components/SearchInput';
import {w, h, SideMenuEvent, ToastEvent} from '../../utils/utils';
import {Header} from '../../components/header';
@@ -11,26 +11,28 @@ import {useAppContext} from '../../provider/useAppContext';
import {DDS} from '../../../App';
import Container from '../../components/Container';
import SelectionHeader from '../../components/SelectionHeader';
import {useIsFocused} from 'react-navigation-hooks';
import {useTracked, ACTIONS} from '../../provider';
import {_recieveEvent, _unSubscribeEvent} from '../../components/DialogManager';
import {useIsFocused, useFocusEffect} from 'react-navigation-hooks';
import {
_recieveEvent,
_unSubscribeEvent,
updateEvent,
} from '../../components/DialogManager';
export const AnimatedSafeAreaView = Animatable.createAnimatableComponent(
SafeAreaView,
);
let intervals;
let counter = 0;
export const Home = ({navigation}) => {
// State
const [state, dispatch] = useTracked();
const {colors, selectionMode, notes} = state;
///
const updateDB = () => {};
const updateSelectionList = () => {};
const changeSelectionMode = () => {};
const {
colors,
selectionMode,
pinned,
notes,
updateDB,
updateSelectionList,
changeSelectionMode,
} = useAppContext();
const [text, setText] = useState('');
const [hideHeader, setHideHeader] = useState(false);
@@ -47,7 +49,18 @@ export const Home = ({navigation}) => {
// Effects
useEffect(() => {
<<<<<<< HEAD
dispatch({type: ACTIONS.NOTES, payload: 'hello there'});
=======
_recieveEvent('updateEvent', () => {
updateDB();
});
return () => {
_unSubscribeEvent('updateEvent', () => {
updateDB();
});
};
>>>>>>> cfee96fb230bdd33c710a5e72a80ccf2b82a8646
}, []);
// Functions
@@ -103,7 +116,7 @@ export const Home = ({navigation}) => {
};
// Render
console.log('rerender');
return (
<Container
bottomButtonText="Add a new note"
@@ -130,6 +143,7 @@ export const Home = ({navigation}) => {
hide={hideHeader}
verticalMenu
showSearch={() => {
let counter = updateCounter;
setHideHeader(false);
countUp = 0;
countDown = 0;

View File

@@ -24,14 +24,13 @@ import Icon from 'react-native-vector-icons/Ionicons';
import {Reminder} from '../../components/Reminder';
import {ListItem} from '../../components/ListItem';
import {useAppContext} from '../../provider/useAppContext';
import {useTracked} from '../../provider';
const w = Dimensions.get('window').width;
const h = Dimensions.get('window').height;
export const Lists = ({navigation}) => {
const [state, dispatch] = useTracked();
const {colors} = state;
const {colors} = useAppContext();
return (
<SafeAreaView>

View File

@@ -14,10 +14,9 @@ import {NavigationEvents} from 'react-navigation';
import {Header} from '../../components/header';
import {DDS} from '../../../App';
import {useAppContext} from '../../provider/useAppContext';
import {useTracked} from '../../provider';
export const Login = ({navigation}) => {
const [state, dispatch] = useTracked();
const {colors} = state;
const {colors} = useAppContext();
useEffect(() => {
DeviceEventEmitter.emit('hide');

View File

@@ -9,16 +9,17 @@ import * as Animatable from 'react-native-animatable';
import {useAppContext} from '../../provider/useAppContext';
import {useIsFocused} from 'react-navigation-hooks';
import Container from '../../components/Container';
import {useTracked} from '../../provider';
export const Notebook = ({navigation}) => {
const [state, dispatch] = useTracked();
const {colors, selectionMode, pinned, selectedItemsList} = state;
const {
colors,
selectionMode,
updateDB,
updateSelectionList,
changeSelectionMode,
} = useAppContext();
///
const updateDB = () => {};
const updateSelectionList = () => {};
const changeSelectionMode = () => {};
const params = navigation.state.params;
const [hideHeader, setHideHeader] = useState(false);
const [buttonHide, setButtonHide] = useState(false);

View File

@@ -7,16 +7,17 @@ import * as Animatable from 'react-native-animatable';
import {useAppContext} from '../../provider/useAppContext';
import Container from '../../components/Container';
import {useIsFocused} from 'react-navigation-hooks';
import {useTracked} from '../../provider';
export const Notes = ({navigation}) => {
const [state, dispatch] = useTracked();
const {colors, selectionMode, pinned, selectedItemsList} = state;
const {
colors,
selectionMode,
updateDB,
updateSelectionList,
changeSelectionMode,
} = useAppContext();
///
const updateDB = () => {};
const updateSelectionList = () => {};
const changeSelectionMode = () => {};
const [hideHeader, setHideHeader] = useState(false);
const [margin, setMargin] = useState(200);
const [buttonHide, setButtonHide] = useState(false);

View File

@@ -24,15 +24,19 @@ import {useAppContext} from '../../provider/useAppContext';
import {useIsFocused} from 'react-navigation-hooks';
import Container from '../../components/Container';
import FastStorage from 'react-native-fast-storage';
import {useTracked} from '../../provider';
export const Settings = ({navigation}) => {
const [state, dispatch] = useTracked();
const {colors} = state;
export const Settings = ({navigation}) => {
const {colors, changeAccentColor, changeColorScheme} = useAppContext();
<<<<<<< HEAD
///
function changeColorScheme(colors = COLOR_SCHEME, accent = ACCENT) {
let newColors = setColorScheme(colors, accent);
StatusBar.setBarStyle(newColors.night ? 'light-content' : 'dark-content');
=======
//const [colors, setColors] = useState(COLOR_SCHEME_LIGHT);
let isFocused = useIsFocused();
>>>>>>> cfee96fb230bdd33c710a5e72a80ccf2b82a8646
dispatch({type: ACTIONS.THEME, colors: newColors});
}

View File

@@ -12,11 +12,10 @@ import {NavigationEvents} from 'react-navigation';
import {Header} from '../../components/header';
import {DDS} from '../../../App';
import {useAppContext} from '../../provider/useAppContext';
import {useTracked} from '../../provider';
export const Signup = ({navigation}) => {
const [state, dispatch] = useTracked();
const {colors} = state;
const {colors} = useAppContext();
useEffect(() => {
DeviceEventEmitter.emit('hide');
return () => {

View File

@@ -5,13 +5,13 @@ import {SIZE, pv, WEIGHT} from '../../common/common';
import {Header} from '../../components/header';
import {useAppContext} from '../../provider/useAppContext';
import {TagsPlaceHolder} from '../../components/ListPlaceholders';
import {useTracked} from '../../provider';
const w = Dimensions.get('window').width;
const h = Dimensions.get('window').height;
export const Tags = ({navigation}) => {
const [state, dispatch] = useTracked();
const {colors} = state;
const {colors, tags} = useAppContext();
let isFocused = useIsFocused();
if (!isFocused) {

View File

@@ -13,15 +13,17 @@ import {TrashPlaceHolder} from '../../components/ListPlaceholders';
import Container from '../../components/Container';
import SelectionHeader from '../../components/SelectionHeader';
import {useIsFocused} from 'react-navigation-hooks';
import {useTracked} from '../../provider';
export const Trash = ({navigation}) => {
const [state, dispatch] = useTracked();
const {colors, selectionMode, trash} = state;
const updateDB = () => {};
const changeSelectionMode = () => {};
const updateSelectionList = () => {};
const {
colors,
selectionMode,
updateDB,
updateSelectionList,
changeSelectionMode,
trash,
} = useAppContext();
const [dialog, setDialog] = useState(false);
let isFocused = useIsFocused();