Add delete button to edit set - 1.161 🚀

This commit is contained in:
Brandon Presley 2023-10-19 17:55:44 +13:00
parent 38167a47b9
commit 12dfa923e5
3 changed files with 28 additions and 7 deletions

View File

@ -15,7 +15,11 @@ import AppInput from "./AppInput";
import ConfirmDialog from "./ConfirmDialog";
import { MARGIN, PADDING } from "./constants";
import { getNow, setRepo, settingsRepo } from "./db";
import GymSet, { GYM_SET_CREATED, GYM_SET_UPDATED } from "./gym-set";
import GymSet, {
GYM_SET_CREATED,
GYM_SET_DELETED,
GYM_SET_UPDATED,
} from "./gym-set";
import { HomePageParams } from "./home-page-params";
import Settings from "./settings";
import StackHeader from "./StackHeader";
@ -33,6 +37,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 [showDelete, setShowDelete] = useState(false);
const [created, setCreated] = useState<Date>(
set.created ? new Date(set.created) : new Date()
);
@ -144,11 +149,27 @@ export default function EditSet() {
});
}, [created]);
const remove = async () => {
await setRepo.delete(set.id);
emitter.emit(GYM_SET_DELETED);
navigate("Sets");
};
return (
<>
<StackHeader
title={typeof set.id === "number" ? "Edit set" : "Add set"}
/>
<StackHeader title={typeof set.id === "number" ? "Edit set" : "Add set"}>
{typeof set.id === "number" ? (
<IconButton onPress={() => setShowDelete(true)} icon="delete" />
) : null}
</StackHeader>
<ConfirmDialog
title="Delete set"
show={showDelete}
onOk={remove}
setShow={setShowDelete}
>
<>Are you sure you want to delete {name}</>
</ConfirmDialog>
<View style={{ padding: PADDING, flex: 1 }}>
<AppInput

View File

@ -85,8 +85,8 @@ android {
applicationId "com.massive"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 36186
versionName "1.160"
versionCode 36187
versionName "1.161"
}
signingConfigs {
release {

View File

@ -1,6 +1,6 @@
{
"name": "massive",
"version": "1.160",
"version": "1.161",
"private": true,
"license": "GPL-3.0-only",
"scripts": {