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 ? '✅' : '❌' }}
|
+  |
@@ -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;
+ },
},
});