mirror of
https://github.com/streetwriters/notesnook.git
synced 2025-12-22 22:49:45 +01:00
update colors
This commit is contained in:
@@ -8,8 +8,8 @@ export const ActionIcon = ({onPress, name, color,customStyle}) => {
|
||||
<TouchableOpacity
|
||||
onPress={onPress}
|
||||
style={[{
|
||||
width: 60,
|
||||
height: 50,
|
||||
width: 50,
|
||||
height: 40,
|
||||
justifyContent: 'center',
|
||||
alignItems: 'flex-end',
|
||||
paddingRight: 12,
|
||||
|
||||
@@ -8,7 +8,7 @@ import {eSendEvent} from '../../services/eventManager';
|
||||
import {eClearSearch} from '../../services/events';
|
||||
import {sideMenuRef} from '../../utils/refs';
|
||||
|
||||
export const MenuListItem = ({item, index, noTextMode,ignore}) => {
|
||||
export const MenuListItem = ({item, index, noTextMode, ignore}) => {
|
||||
const [state, dispatch] = useTracked();
|
||||
const {currentScreen, colors} = state;
|
||||
|
||||
@@ -68,7 +68,7 @@ export const MenuListItem = ({item, index, noTextMode,ignore}) => {
|
||||
style={{
|
||||
fontFamily: WEIGHT.regular,
|
||||
fontSize: SIZE.sm,
|
||||
color: colors.pri,
|
||||
color: colors.heading,
|
||||
}}>
|
||||
{item.name}
|
||||
</Text>
|
||||
@@ -81,9 +81,7 @@ export const MenuListItem = ({item, index, noTextMode,ignore}) => {
|
||||
color={item.on ? colors.accent : colors.icon}
|
||||
name={item.on ? 'toggle-switch' : 'toggle-switch-off'}
|
||||
/>
|
||||
) : (
|
||||
undefined
|
||||
)}
|
||||
) : undefined}
|
||||
</TouchableOpacity>
|
||||
);
|
||||
};
|
||||
|
||||
@@ -28,7 +28,7 @@ import {ColorSection} from './ColorSection';
|
||||
import {MenuListItem} from './MenuListItem';
|
||||
import {TagsSection} from './TagsSection';
|
||||
import {UserSection} from './UserSection';
|
||||
import { MMKV } from '../../utils/storage';
|
||||
import {MMKV} from '../../utils/storage';
|
||||
|
||||
const AnimatedSafeAreaView = createAnimatableComponent(SafeAreaView);
|
||||
|
||||
@@ -42,7 +42,6 @@ export const Menu = ({
|
||||
const [state, dispatch] = useTracked();
|
||||
const {colors} = state;
|
||||
|
||||
// todo
|
||||
|
||||
function changeColorScheme(colors = COLOR_SCHEME, accent = ACCENT) {
|
||||
let newColors = setColorScheme(colors, accent);
|
||||
@@ -50,7 +49,6 @@ export const Menu = ({
|
||||
dispatch({type: ACTIONS.THEME, colors: newColors});
|
||||
}
|
||||
|
||||
|
||||
const listItems = [
|
||||
{
|
||||
name: 'Home',
|
||||
@@ -86,7 +84,7 @@ export const Menu = ({
|
||||
icon: 'theme-light-dark',
|
||||
func: () => {
|
||||
if (!colors.night) {
|
||||
MMKV .setStringAsync('theme', JSON.stringify({night: true}));
|
||||
MMKV.setStringAsync('theme', JSON.stringify({night: true}));
|
||||
changeColorScheme(COLOR_SCHEME_DARK);
|
||||
} else {
|
||||
MMKV.setStringAsync('theme', JSON.stringify({night: false}));
|
||||
@@ -171,7 +169,7 @@ export const Menu = ({
|
||||
index={10}
|
||||
item={{
|
||||
name: 'Tags',
|
||||
icon:'tag',
|
||||
icon: 'tag',
|
||||
func: () => {
|
||||
close();
|
||||
NavigationService.navigate('Tags');
|
||||
@@ -196,7 +194,12 @@ export const Menu = ({
|
||||
width: '100%',
|
||||
}}>
|
||||
{listItems2.map((item, index) => (
|
||||
<MenuListItem item={item} index={index} ignore={true} noTextMode={noTextMode} />
|
||||
<MenuListItem
|
||||
item={item}
|
||||
index={index}
|
||||
ignore={true}
|
||||
noTextMode={noTextMode}
|
||||
/>
|
||||
))}
|
||||
</View>
|
||||
|
||||
|
||||
@@ -160,7 +160,7 @@ export default class NoteItem extends React.Component {
|
||||
justifyContent: 'center',
|
||||
alignItems: 'center',
|
||||
}}>
|
||||
{item.colors.map(item => (
|
||||
{item.colors.map((item) => (
|
||||
<View
|
||||
key={item}
|
||||
style={{
|
||||
@@ -253,32 +253,25 @@ export default class NoteItem extends React.Component {
|
||||
</>
|
||||
</TouchableOpacity>
|
||||
|
||||
<View
|
||||
<TouchableOpacity
|
||||
style={{
|
||||
justifyContent: 'center',
|
||||
minHeight: 70,
|
||||
alignItems: 'center',
|
||||
}}
|
||||
onPress={() => {
|
||||
ActionSheetEvent(
|
||||
item,
|
||||
isTrash ? false : true,
|
||||
isTrash ? false : true,
|
||||
isTrash
|
||||
? ['Remove', 'Restore']
|
||||
: ['Add to', 'Share', 'Export', 'Delete', 'Open'],
|
||||
isTrash ? [] : ['Pin', 'Favorite', 'Add to Vault'],
|
||||
);
|
||||
}}>
|
||||
<TouchableOpacity
|
||||
style={{
|
||||
justifyContent: 'center',
|
||||
minHeight: 70,
|
||||
alignItems: 'center',
|
||||
}}
|
||||
onPress={() => {
|
||||
ActionSheetEvent(
|
||||
item,
|
||||
isTrash ? false : true,
|
||||
isTrash ? false : true,
|
||||
isTrash
|
||||
? ['Remove', 'Restore']
|
||||
: ['Add to', 'Share', 'Export', 'Delete', 'Open'],
|
||||
isTrash ? [] : ['Pin', 'Favorite', 'Add to Vault'],
|
||||
);
|
||||
}}>
|
||||
<Icon name="dots-horizontal" size={SIZE.lg} color={colors.icon} />
|
||||
</TouchableOpacity>
|
||||
</View>
|
||||
<Icon name="dots-horizontal" size={SIZE.lg} color={colors.heading} />
|
||||
</TouchableOpacity>
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
||||
@@ -113,7 +113,7 @@ export const NotebookItem = ({
|
||||
style={{
|
||||
fontFamily: WEIGHT.bold,
|
||||
fontSize: SIZE.sm + 1,
|
||||
color: colors.pri,
|
||||
color: colors.heading,
|
||||
maxWidth: '100%',
|
||||
}}>
|
||||
{item.title}
|
||||
@@ -258,7 +258,7 @@ export const NotebookItem = ({
|
||||
notebookID: notebookID,
|
||||
});
|
||||
}}>
|
||||
<Icon name="dots-horizontal" size={SIZE.lg} color={colors.icon} />
|
||||
<Icon name="dots-horizontal" size={SIZE.lg} color={colors.heading} />
|
||||
</TouchableOpacity>
|
||||
)}
|
||||
|
||||
|
||||
@@ -79,7 +79,7 @@ class PremiumDialog extends React.Component {
|
||||
style={{
|
||||
fontSize: SIZE.lg,
|
||||
fontFamily: WEIGHT.bold,
|
||||
color: colors.pri,
|
||||
color: colors.heading,
|
||||
paddingVertical: 20,
|
||||
}}>
|
||||
Unlock Premium Features
|
||||
|
||||
@@ -63,7 +63,7 @@ const SimpleList = ({
|
||||
}}>
|
||||
<Text
|
||||
style={{
|
||||
color: colors.navbg,
|
||||
color: colors.nav,
|
||||
fontSize: SIZE.sm,
|
||||
fontFamily: WEIGHT.regular,
|
||||
}}>
|
||||
|
||||
@@ -28,6 +28,7 @@ import {moveNoteHideEvent} from '../DialogManager/recievers';
|
||||
import {HeaderMenu} from './HeaderMenu';
|
||||
import {HeaderTitle} from './HeaderTitle';
|
||||
import {useHideHeader, useForceUpdate} from '../../utils/hooks';
|
||||
import RNIconic from 'react-native-iconic';
|
||||
|
||||
export const Header = ({showSearch, root}) => {
|
||||
const [state, dispatch] = useTracked();
|
||||
@@ -121,12 +122,13 @@ export const Header = ({showSearch, root}) => {
|
||||
</Animatable.View>
|
||||
|
||||
<View style={styles.leftBtnContainer}>
|
||||
{headerState.menu && !DDS.isTab ? (
|
||||
{!DDS.isTab ? (
|
||||
<TouchableOpacity
|
||||
hitSlop={{top: 20, bottom: 20, left: 50, right: 40}}
|
||||
onPress={onLeftButtonPress}
|
||||
style={styles.leftBtn}>
|
||||
<Icon
|
||||
<RNIconic
|
||||
shape="BURGER"
|
||||
style={{
|
||||
marginLeft: headerState.canGoBack ? -5 : 0,
|
||||
}}
|
||||
|
||||
@@ -56,7 +56,6 @@ export function useHideHeader() {
|
||||
eUnSubscribeEvent(eScrollEvent, onScroll);
|
||||
};
|
||||
}, []);
|
||||
console.log('used',hide)
|
||||
return hide;
|
||||
|
||||
}
|
||||
|
||||
@@ -172,14 +172,16 @@ const Editor = ({noMenu}) => {
|
||||
width: '100%',
|
||||
height: 50,
|
||||
justifyContent: 'space-between',
|
||||
alignItems: 'center',
|
||||
}}>
|
||||
{noMenu ? null : (
|
||||
<ActionIcon
|
||||
name="arrow-left"
|
||||
color={colors.icon}
|
||||
color={colors.heading}
|
||||
onPress={_onBackPress}
|
||||
customStyle={{
|
||||
marginLeft: -5,
|
||||
paddingLeft: 12,
|
||||
}}
|
||||
/>
|
||||
)}
|
||||
@@ -191,7 +193,7 @@ const Editor = ({noMenu}) => {
|
||||
{DDS.isTab && !fullscreen ? (
|
||||
<ActionIcon
|
||||
name="fullscreen"
|
||||
color={colors.icon}
|
||||
color={colors.heading}
|
||||
onPress={() => {
|
||||
eSendEvent(eOpenFullscreenEditor);
|
||||
setFullscreen(true);
|
||||
@@ -208,18 +210,18 @@ const Editor = ({noMenu}) => {
|
||||
|
||||
<ActionIcon
|
||||
name="undo-variant"
|
||||
color={colors.icon}
|
||||
color={colors.heading}
|
||||
onPress={() => {}}
|
||||
/>
|
||||
<ActionIcon
|
||||
name="redo-variant"
|
||||
color={colors.icon}
|
||||
color={colors.heading}
|
||||
onPress={() => {}}
|
||||
/>
|
||||
|
||||
<ActionIcon
|
||||
name="dots-horizontal"
|
||||
color={colors.icon}
|
||||
color={colors.heading}
|
||||
onPress={() => {
|
||||
ActionSheetEvent(
|
||||
getNote(),
|
||||
|
||||
@@ -12,9 +12,7 @@ import {TextInput} from 'react-native-gesture-handler';
|
||||
import QRCode from 'react-native-qrcode-generator';
|
||||
import {useIsFocused} from '@react-navigation/native';
|
||||
import {opacity, pv, SIZE, WEIGHT, ph} from '../../common/common';
|
||||
import {Header} from '../../components/header';
|
||||
import {useTracked} from '../../provider';
|
||||
|
||||
import {
|
||||
eSubscribeEvent,
|
||||
eUnSubscribeEvent,
|
||||
@@ -75,7 +73,7 @@ export const Signup = ({route, navigation}) => {
|
||||
};
|
||||
}, [isFocused]);
|
||||
|
||||
const validateInfo = () => {
|
||||
const validateInfo = () => {
|
||||
if (!password || !email || !username || !passwordReEnter) {
|
||||
ToastEvent.show('All fields are required', 'error');
|
||||
return false;
|
||||
@@ -88,47 +86,41 @@ export const Signup = ({route, navigation}) => {
|
||||
|
||||
if (!invalidEmail && !invalidPassword && !invalidUsername) {
|
||||
ToastEvent.show('Signup information is invalid', 'error');
|
||||
return false;
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
const _signUp = async () => {
|
||||
if (!validateInfo) return;
|
||||
|
||||
setSigningIn(true);
|
||||
setStatus('Creating your account...');
|
||||
try {
|
||||
await db.user.signup(username, email, password);
|
||||
|
||||
setSigningIn(true);
|
||||
setStatus('Creating your account...');
|
||||
try {
|
||||
await db.user.signup(username, email, password);
|
||||
} catch (e) {
|
||||
setSigningIn(false);
|
||||
setFailed(true);
|
||||
ToastEvent.show('Signup failed, Network Error', 'error');
|
||||
return;
|
||||
}
|
||||
|
||||
} catch (e) {
|
||||
setSigningIn(false);
|
||||
setFailed(true);
|
||||
ToastEvent.show('Signup failed, Network Error', 'error');
|
||||
return;
|
||||
}
|
||||
|
||||
let user;
|
||||
try {
|
||||
|
||||
|
||||
user = await db.user.user.get();
|
||||
setStatus('Logging you in...');
|
||||
let k = await db.user.key();
|
||||
setKey(k.key);
|
||||
setStatus('Setting up crenditials...');
|
||||
dispatch({type: ACTIONS.USER, user: user});
|
||||
eSendEvent(eStartSyncer);
|
||||
setTimeout(() => {
|
||||
setModalVisible(true);
|
||||
}, 500);
|
||||
} catch (e) {
|
||||
setSigningIn(false);
|
||||
setFailed(true);
|
||||
ToastEvent.show('Login Failed, try again', 'error');
|
||||
}
|
||||
|
||||
let user;
|
||||
try {
|
||||
user = await db.user.user.get();
|
||||
setStatus('Logging you in...');
|
||||
let k = await db.user.key();
|
||||
setKey(k.key);
|
||||
setStatus('Setting up crenditials...');
|
||||
dispatch({type: ACTIONS.USER, user: user});
|
||||
eSendEvent(eStartSyncer);
|
||||
setTimeout(() => {
|
||||
setModalVisible(true);
|
||||
}, 500);
|
||||
} catch (e) {
|
||||
setSigningIn(false);
|
||||
setFailed(true);
|
||||
ToastEvent.show('Login Failed, try again', 'error');
|
||||
}
|
||||
};
|
||||
|
||||
useEffect(() => {
|
||||
@@ -430,7 +422,7 @@ export const Signup = ({route, navigation}) => {
|
||||
}
|
||||
}}
|
||||
textContentType="username"
|
||||
onChangeText={value => {
|
||||
onChangeText={(value) => {
|
||||
setUsername(value);
|
||||
|
||||
if (invalidUsername && validateUsername(username)) {
|
||||
@@ -520,7 +512,7 @@ export const Signup = ({route, navigation}) => {
|
||||
}
|
||||
}}
|
||||
textContentType="emailAddress"
|
||||
onChangeText={value => {
|
||||
onChangeText={(value) => {
|
||||
setEmail(value);
|
||||
if (invalidEmail && validateEmail(email)) {
|
||||
setInvalidEmail(false);
|
||||
@@ -626,7 +618,7 @@ export const Signup = ({route, navigation}) => {
|
||||
});
|
||||
}
|
||||
}}
|
||||
onChangeText={value => {
|
||||
onChangeText={(value) => {
|
||||
setPassword(value);
|
||||
if (invalidPassword && validatePass(password)) {
|
||||
setInvalidPassword(false);
|
||||
@@ -677,7 +669,7 @@ export const Signup = ({route, navigation}) => {
|
||||
ref={_passConfirm}
|
||||
editable={password && !invalidPassword ? true : false}
|
||||
defaultValue={passwordReEnter}
|
||||
onChangeText={value => {
|
||||
onChangeText={(value) => {
|
||||
setPasswordReEnter(value);
|
||||
if (value !== password) {
|
||||
setConfirmPassword(false);
|
||||
|
||||
Reference in New Issue
Block a user