diff --git a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Airport.kt b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Airport.kt new file mode 100644 index 0000000..f8245a9 --- /dev/null +++ b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Airport.kt @@ -0,0 +1,25 @@ +package dev.adriankuta.flights.domain.types + +sealed interface Airport { + val code: String + val name: String + val macCity: MacCity? + + data class Departure( + override val code: String, + override val name: String, + override val macCity: MacCity? + ) : Airport + + data class Arrival( + override val code: String, + override val name: String, + override val macCity: MacCity? + ) : Airport + + data class Connecting( + override val code: String, + override val name: String, + override val macCity: MacCity? + ) : Airport +} \ No newline at end of file diff --git a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/AirportInfo.kt b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/AirportInfo.kt new file mode 100644 index 0000000..0838e3f --- /dev/null +++ b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/AirportInfo.kt @@ -0,0 +1,14 @@ +package dev.adriankuta.flights.domain.types + +data class AirportInfo( + val code: String, + val name: String, + val seoName: String, + val isBase: Boolean, + val timeZone: String, + val city: City, + val macCity: MacCity, + val region: Region, + val country: Country, + val coordinates: Coordinates +) \ No newline at end of file diff --git a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Character.kt b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Character.kt deleted file mode 100644 index 0b60237..0000000 --- a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Character.kt +++ /dev/null @@ -1,6 +0,0 @@ -package dev.adriankuta.flights.domain.types - -data class Character( - val name: String, - val category: String? = null, -) diff --git a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/City.kt b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/City.kt new file mode 100644 index 0000000..a214595 --- /dev/null +++ b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/City.kt @@ -0,0 +1,6 @@ +package dev.adriankuta.flights.domain.types + +data class City( + val code: String, + val name: String +) \ No newline at end of file diff --git a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Coordinates.kt b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Coordinates.kt new file mode 100644 index 0000000..eacfa6b --- /dev/null +++ b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Coordinates.kt @@ -0,0 +1,6 @@ +package dev.adriankuta.flights.domain.types + +data class Coordinates( + val latitude: Double, + val longitude: Double +) \ No newline at end of file diff --git a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Country.kt b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Country.kt new file mode 100644 index 0000000..ee8c476 --- /dev/null +++ b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Country.kt @@ -0,0 +1,7 @@ +package dev.adriankuta.flights.domain.types + +data class Country( + val code: String, + val name: String, + val currencyCode: String +) \ No newline at end of file diff --git a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Flight.kt b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Flight.kt new file mode 100644 index 0000000..9462f89 --- /dev/null +++ b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Flight.kt @@ -0,0 +1,7 @@ +package dev.adriankuta.flights.domain.types + +data class Flight( + val currency: String, + val currPrecision: Int, + val trips: List +) diff --git a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/MacCity.kt b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/MacCity.kt new file mode 100644 index 0000000..b686b0e --- /dev/null +++ b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/MacCity.kt @@ -0,0 +1,5 @@ +package dev.adriankuta.flights.domain.types + +data class MacCity( + val macCode: String +) \ No newline at end of file diff --git a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Region.kt b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Region.kt new file mode 100644 index 0000000..c5653b7 --- /dev/null +++ b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Region.kt @@ -0,0 +1,6 @@ +package dev.adriankuta.flights.domain.types + +data class Region( + val code: String, + val name: String +) \ No newline at end of file diff --git a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/RegularFare.kt b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/RegularFare.kt new file mode 100644 index 0000000..d7df162 --- /dev/null +++ b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/RegularFare.kt @@ -0,0 +1,5 @@ +package dev.adriankuta.flights.domain.types + +data class RegularFare( + val fares: List +) \ No newline at end of file diff --git a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Route.kt b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Route.kt new file mode 100644 index 0000000..e645ab8 --- /dev/null +++ b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Route.kt @@ -0,0 +1,7 @@ +package dev.adriankuta.flights.domain.types + +data class Route( + val departureAirport: Airport.Departure, + val arrivalAirport: Airport.Arrival, + val connectingAirport: Airport.Connecting? +) \ No newline at end of file diff --git a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Segment.kt b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Segment.kt new file mode 100644 index 0000000..eaef042 --- /dev/null +++ b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Segment.kt @@ -0,0 +1,9 @@ +package dev.adriankuta.flights.domain.types + +data class Segment( + val origin: String, + val destination: String, + val flightNumber: String, + val dateTimes: List, + val duration: String +) \ No newline at end of file diff --git a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Trip.kt b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Trip.kt new file mode 100644 index 0000000..01a76a5 --- /dev/null +++ b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/Trip.kt @@ -0,0 +1,7 @@ +package dev.adriankuta.flights.domain.types + +data class Trip( + val dates: List, + val origin: String, + val destination: String +) \ No newline at end of file diff --git a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/TripDate.kt b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/TripDate.kt new file mode 100644 index 0000000..5f50b74 --- /dev/null +++ b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/TripDate.kt @@ -0,0 +1,6 @@ +package dev.adriankuta.flights.domain.types + +data class TripDate( + val dateOut: String, + val flights: List +) \ No newline at end of file diff --git a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/TripFare.kt b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/TripFare.kt new file mode 100644 index 0000000..d965734 --- /dev/null +++ b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/TripFare.kt @@ -0,0 +1,7 @@ +package dev.adriankuta.flights.domain.types + +data class TripFare( + val type: String, + val amount: Double, + val count: Int +) \ No newline at end of file diff --git a/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/TripFlight.kt b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/TripFlight.kt new file mode 100644 index 0000000..fac4f11 --- /dev/null +++ b/domain/types/src/main/kotlin/dev/adriankuta/flights/domain/types/TripFlight.kt @@ -0,0 +1,11 @@ +package dev.adriankuta.flights.domain.types + +data class TripFlight( + val faresLeft: Int, + val regularFare: RegularFare, + val flightNumber: String, + val dateTimes: List, + val duration: String, + val segments: List, + val operatedBy: String +) \ No newline at end of file