composables, mazani letu, skeletony

This commit is contained in:
Michal Kváček
2023-07-24 17:31:54 +02:00
parent 4648c30f90
commit 864db6c6a2
53 changed files with 732 additions and 273 deletions
-10
View File
@@ -1,10 +0,0 @@
import {FORMAT_DATE, formatDatetime} from "src/composables/datetimeUtils";
export const flightName = (flight) => {
const date = formatDatetime(flight.takeoffDatetime, FORMAT_DATE);
if (flight.name !== '') {
return `${flight.name} (${date})`
} else {
return `${flight.takeoffAirport.icaoCode} - ${flight.takeoffAirport.icaoCode} (${date})`;
}
}
+23
View File
@@ -0,0 +1,23 @@
import {useAircraftsStore} from "stores/Aircrafts";
import {ref} from "vue";
import {storeToRefs} from "pinia";
export const loading = ref(true);
export const aircraft = ref(null);
export const fetchAircraft = (aircraftId) => {
loading.value = true;
useAircraftsStore().fetchDetail(aircraftId).then((data) => {
aircraft.value = data;
}).catch(err => {
console.error(err);
}).finally(() => loading.value = false);
}
export const aircrafts = storeToRefs(useAircraftsStore()).items;
export const fetchAircrafts = () => {
loading.value = true;
useAircraftsStore().fetch().finally(() => loading.value = false);
}
+18
View File
@@ -0,0 +1,18 @@
import {ref} from "vue";
import {useCopilotsStore} from "stores/Copilots";
import {storeToRefs} from "pinia";
export const loading = ref(true);
export const copilot = ref(null);
export const fetchCopilot = (copilotId) => {
loading.value = true;
useCopilotsStore().fetchDetail(parseInt(copilotId))
.then(resp => copilot.value = resp)
.finally(() => loading.value = false);
}
export const copilots = storeToRefs(useCopilotsStore()).items;
export const fetchCopilots = () => {
loading.value = true;
useCopilotsStore().fetch().finally(() => loading.value = false);
}
+41
View File
@@ -0,0 +1,41 @@
import {FORMAT_DATE, formatDatetime} from "src/composables/datetimeUtils";
import {useFlightsStore} from "stores/Flights";
import {ref} from "vue";
import {storeToRefs} from "pinia";
import {confirmObject} from "src/composables/dialog";
export const flightName = (flight) => {
const date = formatDatetime(flight.takeoffDatetime, FORMAT_DATE);
if (flight.name !== '') {
return `${flight.name} (${date})`
} else {
return `${flight.takeoffAirport.icaoCode} - ${flight.takeoffAirport.icaoCode} (${date})`;
}
}
export const loading = ref(true);
export const flight = ref(null);
export const fetchFlight = (flightId) => {
loading.value = true;
useFlightsStore().fetchDetail(parseInt(flightId))
.then(respFlight => flight.value = respFlight)
.finally(() => loading.value = false);
};
export const flights = storeToRefs(useFlightsStore()).items;
export const fetchFlights = () => {
loading.value = true;
useFlightsStore().fetch().finally(() => {
loading.value = false;
});
};
export const handleDeleteFlight = ($q, flightId, onOkCallback = () => {}) => {
$q.dialog(confirmObject(`Opravdu chceš smazat tento let?`))
.onOk(() => {
useFlightsStore().delete(flightId).then(onOkCallback);
});
};
+19
View File
@@ -0,0 +1,19 @@
import {ref} from "vue";
import {usePointsOfInterestStore} from "stores/PointsOfInterest";
import {storeToRefs} from "pinia";
export const loading = ref(true);
export const poi = ref(null);
export const fetchPoi = (poiId) => {
loading.value = true;
usePointsOfInterestStore().fetchDetail(poiId)
.then(data => poi.value = data)
.finally(() => loading.value = false);
};
export const pointsOfInterest = storeToRefs(usePointsOfInterestStore()).items;
export const fetchPOIList = () => {
loading.value = true;
usePointsOfInterestStore().fetch().finally(() => loading.value = false);
}