Remove date related logic
This kept displaying the wrong date/time for certain timezones. So i'll just show the actual ISO date we store in the database. Maybe later i'll figure out what was going on here or use a date library (probably not).
This commit is contained in:
parent
4c185f0346
commit
fd66bd3ab3
40
SetForm.tsx
40
SetForm.tsx
|
@ -1,9 +1,7 @@
|
||||||
import React, {useRef, useState} from 'react';
|
import React, {useRef, useState} from 'react';
|
||||||
import {ScrollView, StyleSheet} from 'react-native';
|
import {ScrollView, StyleSheet, Text} from 'react-native';
|
||||||
import DateTimePickerModal from 'react-native-modal-datetime-picker';
|
|
||||||
import {Button, TextInput} from 'react-native-paper';
|
import {Button, TextInput} from 'react-native-paper';
|
||||||
import Set from './set';
|
import Set from './set';
|
||||||
import {format} from './time';
|
|
||||||
|
|
||||||
export default function SetForm({
|
export default function SetForm({
|
||||||
save,
|
save,
|
||||||
|
@ -15,39 +13,33 @@ export default function SetForm({
|
||||||
const [name, setName] = useState(set.name);
|
const [name, setName] = useState(set.name);
|
||||||
const [reps, setReps] = useState(set.reps.toString());
|
const [reps, setReps] = useState(set.reps.toString());
|
||||||
const [weight, setWeight] = useState(set.weight.toString());
|
const [weight, setWeight] = useState(set.weight.toString());
|
||||||
const [created, setCreated] = useState(new Date(set.created));
|
|
||||||
const [unit, setUnit] = useState(set.unit);
|
const [unit, setUnit] = useState(set.unit);
|
||||||
const [showDate, setShowDate] = useState(false);
|
|
||||||
const [selection, setSelection] = useState({
|
const [selection, setSelection] = useState({
|
||||||
start: 0,
|
start: 0,
|
||||||
end: set.reps.toString().length,
|
end: set.reps.toString().length,
|
||||||
});
|
});
|
||||||
const weightRef = useRef<any>(null);
|
const weightRef = useRef<any>(null);
|
||||||
|
|
||||||
const onConfirm = (date: Date) => {
|
|
||||||
setCreated(date);
|
|
||||||
setShowDate(false);
|
|
||||||
};
|
|
||||||
|
|
||||||
const handleSubmit = () => {
|
const handleSubmit = () => {
|
||||||
save({
|
save({
|
||||||
name,
|
name,
|
||||||
reps: Number(reps),
|
reps: Number(reps),
|
||||||
created: created.toISOString(),
|
created: set.created,
|
||||||
weight: Number(weight),
|
weight: Number(weight),
|
||||||
id: set.id,
|
id: set.id,
|
||||||
unit,
|
unit,
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
const textInputs = (
|
return (
|
||||||
<>
|
<>
|
||||||
|
<ScrollView style={{height: '90%'}}>
|
||||||
<TextInput
|
<TextInput
|
||||||
style={styles.marginBottom}
|
style={styles.marginBottom}
|
||||||
label="Name"
|
label="Name"
|
||||||
value={name}
|
value={name}
|
||||||
onChangeText={setName}
|
onChangeText={setName}
|
||||||
autoCorrect={false}
|
autoCorrect={false}
|
||||||
|
selectTextOnFocus
|
||||||
/>
|
/>
|
||||||
<TextInput
|
<TextInput
|
||||||
style={styles.marginBottom}
|
style={styles.marginBottom}
|
||||||
|
@ -78,27 +70,9 @@ export default function SetForm({
|
||||||
value={unit}
|
value={unit}
|
||||||
onChangeText={setUnit}
|
onChangeText={setUnit}
|
||||||
onSubmitEditing={handleSubmit}
|
onSubmitEditing={handleSubmit}
|
||||||
|
selectTextOnFocus
|
||||||
/>
|
/>
|
||||||
</>
|
<Text>{set.created?.replace('T', ' ')}</Text>
|
||||||
);
|
|
||||||
|
|
||||||
return (
|
|
||||||
<>
|
|
||||||
<ScrollView style={{height: '90%'}}>
|
|
||||||
{textInputs}
|
|
||||||
<Button
|
|
||||||
style={styles.marginBottom}
|
|
||||||
icon="calendar-outline"
|
|
||||||
onPress={() => setShowDate(true)}>
|
|
||||||
{format(created)}
|
|
||||||
</Button>
|
|
||||||
<DateTimePickerModal
|
|
||||||
isVisible={showDate}
|
|
||||||
mode="datetime"
|
|
||||||
onConfirm={onConfirm}
|
|
||||||
onCancel={() => setShowDate(false)}
|
|
||||||
date={created}
|
|
||||||
/>
|
|
||||||
</ScrollView>
|
</ScrollView>
|
||||||
<Button mode="contained" icon="save" onPress={handleSubmit}>
|
<Button mode="contained" icon="save" onPress={handleSubmit}>
|
||||||
Save
|
Save
|
||||||
|
|
|
@ -1,11 +1,10 @@
|
||||||
import {NavigationProp, useNavigation} from '@react-navigation/native';
|
import {NavigationProp, useNavigation} from '@react-navigation/native';
|
||||||
import React, {useCallback, useContext, useMemo, useState} from 'react';
|
import React, {useCallback, useContext, useState} from 'react';
|
||||||
import {GestureResponderEvent, Text} from 'react-native';
|
import {GestureResponderEvent, Text} from 'react-native';
|
||||||
import {Divider, List, Menu} from 'react-native-paper';
|
import {Divider, List, Menu} from 'react-native-paper';
|
||||||
import {DatabaseContext} from './App';
|
import {DatabaseContext} from './App';
|
||||||
import {HomePageParams} from './HomePage';
|
import {HomePageParams} from './HomePage';
|
||||||
import Set from './set';
|
import Set from './set';
|
||||||
import {format} from './time';
|
|
||||||
|
|
||||||
export default function SetItem({
|
export default function SetItem({
|
||||||
item,
|
item,
|
||||||
|
@ -20,7 +19,6 @@ export default function SetItem({
|
||||||
}) {
|
}) {
|
||||||
const [showMenu, setShowMenu] = useState(false);
|
const [showMenu, setShowMenu] = useState(false);
|
||||||
const [anchor, setAnchor] = useState({x: 0, y: 0});
|
const [anchor, setAnchor] = useState({x: 0, y: 0});
|
||||||
const date = useMemo(() => format(new Date(item.created)), [item.created]);
|
|
||||||
const db = useContext(DatabaseContext);
|
const db = useContext(DatabaseContext);
|
||||||
const navigation = useNavigation<NavigationProp<HomePageParams>>();
|
const navigation = useNavigation<NavigationProp<HomePageParams>>();
|
||||||
|
|
||||||
|
@ -32,7 +30,6 @@ export default function SetItem({
|
||||||
|
|
||||||
const copy = useCallback(() => {
|
const copy = useCallback(() => {
|
||||||
const set: Set = {...item};
|
const set: Set = {...item};
|
||||||
set.created = new Date().toISOString();
|
|
||||||
set.id = 0;
|
set.id = 0;
|
||||||
setShowMenu(false);
|
setShowMenu(false);
|
||||||
navigation.navigate('EditSet', {set});
|
navigation.navigate('EditSet', {set});
|
||||||
|
@ -63,7 +60,7 @@ export default function SetItem({
|
||||||
style={{
|
style={{
|
||||||
alignSelf: 'center',
|
alignSelf: 'center',
|
||||||
}}>
|
}}>
|
||||||
{dates ? date : null}
|
{dates ? item.created?.replace('T', ' ') : null}
|
||||||
<Menu
|
<Menu
|
||||||
anchor={anchor}
|
anchor={anchor}
|
||||||
visible={showMenu}
|
visible={showMenu}
|
||||||
|
|
|
@ -31,7 +31,6 @@
|
||||||
"react-native-file-access": "^2.4.3",
|
"react-native-file-access": "^2.4.3",
|
||||||
"react-native-gesture-handler": "^2.5.0",
|
"react-native-gesture-handler": "^2.5.0",
|
||||||
"react-native-linear-gradient": "^2.6.2",
|
"react-native-linear-gradient": "^2.6.2",
|
||||||
"react-native-modal-datetime-picker": "^13.1.2",
|
|
||||||
"react-native-pager-view": "^5.4.24",
|
"react-native-pager-view": "^5.4.24",
|
||||||
"react-native-paper": "^4.12.2",
|
"react-native-paper": "^4.12.2",
|
||||||
"react-native-reanimated": "^2.9.0",
|
"react-native-reanimated": "^2.9.0",
|
||||||
|
|
13
yarn.lock
13
yarn.lock
|
@ -8020,7 +8020,6 @@ __metadata:
|
||||||
react-native-file-access: ^2.4.3
|
react-native-file-access: ^2.4.3
|
||||||
react-native-gesture-handler: ^2.5.0
|
react-native-gesture-handler: ^2.5.0
|
||||||
react-native-linear-gradient: ^2.6.2
|
react-native-linear-gradient: ^2.6.2
|
||||||
react-native-modal-datetime-picker: ^13.1.2
|
|
||||||
react-native-pager-view: ^5.4.24
|
react-native-pager-view: ^5.4.24
|
||||||
react-native-paper: ^4.12.2
|
react-native-paper: ^4.12.2
|
||||||
react-native-reanimated: ^2.9.0
|
react-native-reanimated: ^2.9.0
|
||||||
|
@ -9680,18 +9679,6 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
"react-native-modal-datetime-picker@npm:^13.1.2":
|
|
||||||
version: 13.1.2
|
|
||||||
resolution: "react-native-modal-datetime-picker@npm:13.1.2"
|
|
||||||
dependencies:
|
|
||||||
prop-types: ^15.7.2
|
|
||||||
peerDependencies:
|
|
||||||
"@react-native-community/datetimepicker": ">=3.0.0"
|
|
||||||
react-native: ">=0.65.0"
|
|
||||||
checksum: 70a7875dbeb550f97aa26786262a434a5c88dfd048e642fa6e4a7e0b8411c8ff191463a5bb4a82bb18d603cc3b2ef60891bfcaa3144b9e0a40cd756bf662b4a1
|
|
||||||
languageName: node
|
|
||||||
linkType: hard
|
|
||||||
|
|
||||||
"react-native-pager-view@npm:^5.4.24":
|
"react-native-pager-view@npm:^5.4.24":
|
||||||
version: 5.4.24
|
version: 5.4.24
|
||||||
resolution: "react-native-pager-view@npm:5.4.24"
|
resolution: "react-native-pager-view@npm:5.4.24"
|
||||||
|
|
Loading…
Reference in New Issue
Block a user