aboutsummaryrefslogtreecommitdiff
path: root/src/lib/server/services/grocery-actions.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/server/services/grocery-actions.ts')
-rw-r--r--src/lib/server/services/grocery-actions.ts16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/lib/server/services/grocery-actions.ts b/src/lib/server/services/grocery-actions.ts
index 2138f2d..1cfb05d 100644
--- a/src/lib/server/services/grocery-actions.ts
+++ b/src/lib/server/services/grocery-actions.ts
@@ -14,18 +14,18 @@ export async function toggleGroceryAction(request: Request) {
return { success: true };
}
-export type DeleteRowResult =
- ActionFailure<{ error: string }> | { success: boolean; type?: 'delete' };
+export type RowActionResult =
+ ActionFailure<{ error: string }> | { success: boolean; type?: string };
-/** Shared 'delete by id form field' action for category and reference lists. */
-export async function deleteByIdAction(
+/** Shared 'run fn with the id form field' action for row-based lists. */
+export async function idAction(
request: Request,
- deleteFn: (id: number) => Promise<unknown>,
- extra?: { type: 'delete' },
-): Promise<DeleteRowResult> {
+ fn: (id: number) => Promise<unknown>,
+ extra?: { type: string },
+): Promise<RowActionResult> {
const data = await request.formData();
try {
- await deleteFn(numericId(data.get('id')));
+ await fn(numericId(data.get('id')));
} catch {
return fail(400, { error: 'ID invalide' });
}