From 8ed647f0ff05602f65eeec5c1ec2c94c129289e3 Mon Sep 17 00:00:00 2001 From: Spythere Date: Tue, 25 Nov 2025 02:18:17 +0100 Subject: [PATCH] chore: added removing vehicles --- src/components/VehiclesManager/VehiclesTable.vue | 12 +++++++++++- src/stores/vehicles.store.ts | 12 ++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/src/components/VehiclesManager/VehiclesTable.vue b/src/components/VehiclesManager/VehiclesTable.vue index e81f9d4..383fbe1 100644 --- a/src/components/VehiclesManager/VehiclesTable.vue +++ b/src/components/VehiclesManager/VehiclesTable.vue @@ -16,6 +16,7 @@ Tylko sponsorzy do Tylko zespół Ukryty + Usuń @@ -51,6 +52,7 @@ {{ row.vehicleRef.hidden ? '✅' : '❌' }} + remove @@ -75,7 +77,7 @@ const vehiclesTableComp = computed(() => { async function editRowPrimitive(row: IVehicleTableRow, editKey: VehicleEditRowKey) { if (!(editKey in row.vehicleRef)) return; - + let rowValue = row.vehicleRef[editKey]; if (typeof rowValue === 'string' || typeof rowValue === 'undefined' || rowValue == null) { @@ -154,6 +156,14 @@ async function addVehicleRow() { vehicleSearchInput.value = createdVehicleData.name; } } + +async function removeVehicle(id: number) { + const removedVehicleData = await vehiclesStore.removeVehicle(id); + + if (removedVehicleData) { + vehiclesStore.vehiclesTable = vehiclesStore.vehiclesTable.filter((v) => v.vehicleRef.id != id); + } +} diff --git a/src/stores/vehicles.store.ts b/src/stores/vehicles.store.ts index 4787c19..b3e405f 100644 --- a/src/stores/vehicles.store.ts +++ b/src/stores/vehicles.store.ts @@ -83,5 +83,17 @@ export const useVehiclesStore = defineStore('vehiclesStore', { return null; }, + + async removeVehicle(vehicleId: number) { + try { + const response = await client.delete(`/manager/vehicles/${vehicleId}`); + + return response.data; + } catch (error) { + console.error(error); + } + + return null; + }, }, });