diff --git a/EditSet.tsx b/EditSet.tsx index af009d4..9c385dc 100644 --- a/EditSet.tsx +++ b/EditSet.tsx @@ -1,3 +1,4 @@ +import {DateTimePickerAndroid} from '@react-native-community/datetimepicker' import { RouteProp, useFocusEffect, @@ -29,6 +30,7 @@ export default function EditSet() { const [weight, setWeight] = useState(set.weight?.toString()) const [newImage, setNewImage] = useState(set.image) const [unit, setUnit] = useState(set.unit) + const [created, setCreated] = useState(new Date(set.created)) const [showRemove, setShowRemove] = useState(false) const [removeImage, setRemoveImage] = useState(false) const weightRef = useRef(null) @@ -83,7 +85,7 @@ export default function EditSet() { const saved = await setRepo.save({ id: set.id, name, - created: set.created || now, + created: created?.toISOString() || now, reps: Number(reps), weight: Number(weight), unit, @@ -111,6 +113,22 @@ export default function EditSet() { setShowRemove(false) }, []) + const pickDate = useCallback(() => { + DateTimePickerAndroid.open({ + value: created, + onChange: (_, date) => { + if (date === created) return + setCreated(date) + DateTimePickerAndroid.open({ + value: date, + onChange: (__, time) => setCreated(time), + mode: 'time', + }) + }, + mode: 'date', + }) + }, [created]) + return ( <> @@ -159,8 +177,8 @@ export default function EditSet() { {typeof set.id === 'number' && settings.showDate && ( )} diff --git a/android/app/build.gradle b/android/app/build.gradle index b1c5d88..8bd1351 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -41,8 +41,8 @@ android { missingDimensionStrategy "RNNotifications.reactNativeVersion", "reactNative60" minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 36140 - versionName "1.114" + versionCode 36141 + versionName "1.115" buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled().toString() if (isNewArchitectureEnabled()) { diff --git a/package.json b/package.json index ddaea89..1e3b2af 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "massive", - "version": "1.114", + "version": "1.115", "private": true, "license": "GPL-3.0-only", "scripts": { @@ -13,6 +13,7 @@ "dependencies": { "@babel/plugin-transform-flow-strip-types": "^7.19.0", "@babel/preset-env": "^7.19.1", + "@react-native-community/datetimepicker": "^6.7.1", "@react-native-masked-view/masked-view": "^0.2.7", "@react-navigation/drawer": "^6.5.0", "@react-navigation/native": "^6.0.13", diff --git a/yarn.lock b/yarn.lock index 18534d7..f40c442 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2160,6 +2160,15 @@ __metadata: languageName: node linkType: hard +"@react-native-community/datetimepicker@npm:^6.7.1": + version: 6.7.1 + resolution: "@react-native-community/datetimepicker@npm:6.7.1" + dependencies: + invariant: ^2.2.4 + checksum: b2eadbf7080ce6d131200e0189b260a6991cba7ce2ddc7a1f23bbb2e15a77288b847109bdad43b09eac11d376c8bea3e0934143c661ef350e3fe3f716111ac75 + languageName: node + linkType: hard + "@react-native-community/eslint-config@npm:^2.0.0": version: 2.0.0 resolution: "@react-native-community/eslint-config@npm:2.0.0" @@ -7270,6 +7279,7 @@ __metadata: "@babel/plugin-transform-flow-strip-types": ^7.19.0 "@babel/preset-env": ^7.19.1 "@babel/runtime": ^7.12.5 + "@react-native-community/datetimepicker": ^6.7.1 "@react-native-community/eslint-config": ^2.0.0 "@react-native-masked-view/masked-view": ^0.2.7 "@react-navigation/drawer": ^6.5.0