Dashboard
-
Welcome back! Here's what's happening today.
+
Hello, welcome back! Here's what's happening today.
diff --git a/apps/edr-passenger-web/backoffice/src/types/edr.ts b/apps/edr-passenger-web/backoffice/src/types/edr.ts
index e126090c2..cc8f8639b 100644
--- a/apps/edr-passenger-web/backoffice/src/types/edr.ts
+++ b/apps/edr-passenger-web/backoffice/src/types/edr.ts
@@ -1,6 +1,6 @@
import { Passenger } from '@edr/types';
-// Enhanced Booking Types
+// Enhanced Booking Types
export interface Booking {
id: string;
bookingRef: string;
diff --git a/apps/edr-passenger-web/portal/src/components/schedules/ScheduleForm.tsx b/apps/edr-passenger-web/portal/src/components/schedules/ScheduleForm.tsx
deleted file mode 100644
index 7174c3197..000000000
--- a/apps/edr-passenger-web/portal/src/components/schedules/ScheduleForm.tsx
+++ /dev/null
@@ -1,86 +0,0 @@
-import { FormEvent, useState } from "react";
-import { Button, FormField } from "@edr/ui-common";
-
-export interface ScheduleFormPayload {
- trainCode: string;
- originStationId: string;
- destinationStationId: string;
- departureTime: string;
- arrivalTime: string;
- basePrice: number;
-}
-
-export interface ScheduleFormProps {
- onSubmit: (payload: ScheduleFormPayload) => void;
- isSubmitting?: boolean;
-}
-
-const ScheduleForm = ({ onSubmit, isSubmitting }: ScheduleFormProps) => {
- const [trainCode, setTrainCode] = useState("");
- const [originStationId, setOriginStationId] = useState("");
- const [destinationStationId, setDestinationStationId] = useState("");
- const [departureTime, setDepartureTime] = useState("");
- const [arrivalTime, setArrivalTime] = useState("");
- const [basePrice, setBasePrice] = useState("0");
-
- const handleSubmit = (event: FormEvent
) => {
- event.preventDefault();
- onSubmit({
- trainCode,
- originStationId,
- destinationStationId,
- departureTime,
- arrivalTime,
- basePrice: Number(basePrice),
- });
- };
-
- return (
-
- );
-};
-
-export default ScheduleForm;
diff --git a/apps/edr-passenger-web/portal/src/components/schedules/ScheduleTable.tsx b/apps/edr-passenger-web/portal/src/components/schedules/ScheduleTable.tsx
deleted file mode 100644
index 3d8b49242..000000000
--- a/apps/edr-passenger-web/portal/src/components/schedules/ScheduleTable.tsx
+++ /dev/null
@@ -1,45 +0,0 @@
-import { Table, type TableColumn } from "@edr/ui-common";
-
-interface ISchedule {
- id: string;
- trainCode: string;
- status: string;
- departureTime: string;
- arrivalTime: string;
- basePrice: number;
-}
-
-export interface ScheduleTableProps {
- schedules: ISchedule[];
-}
-
-const columns: TableColumn[] = [
- { key: "trainCode", header: "Train" },
- { key: "status", header: "Status" },
- {
- key: "departureTime",
- header: "Departure",
- render: (row) => new Date(row.departureTime).toLocaleString(),
- },
- {
- key: "arrivalTime",
- header: "Arrival",
- render: (row) => new Date(row.arrivalTime).toLocaleString(),
- },
- {
- key: "basePrice",
- header: "Base price",
- render: (row) => row.basePrice.toFixed(2),
- },
-];
-
-const ScheduleTable = ({ schedules }: ScheduleTableProps) => (
- row.id}
- emptyMessage="No schedules yet"
- />
-);
-
-export default ScheduleTable;
diff --git a/apps/edr-passenger-web/portal/src/components/seats/SeatSelector.tsx b/apps/edr-passenger-web/portal/src/components/seats/SeatSelector.tsx
deleted file mode 100644
index 38af99fcd..000000000
--- a/apps/edr-passenger-web/portal/src/components/seats/SeatSelector.tsx
+++ /dev/null
@@ -1,42 +0,0 @@
-import clsx from "clsx";
-import type { Passenger } from "@edr/types";
-
-export interface SeatSelectorProps {
- seats: Passenger.ISeat[];
- selectedSeatId?: string;
- onSelect: (seatId: string) => void;
-}
-
-const SeatSelector = ({
- seats,
- selectedSeatId,
- onSelect,
-}: SeatSelectorProps) => (
-
- {seats.map((seat) => {
- const isAvailable = seat.status === "AVAILABLE";
- const isSelected = seat.id === selectedSeatId;
- return (
-
- );
- })}
-
-);
-
-export default SeatSelector;
diff --git a/apps/edr-passenger-web/portal/src/components/tickets/TicketForm.tsx b/apps/edr-passenger-web/portal/src/components/tickets/TicketForm.tsx
deleted file mode 100644
index c717030bb..000000000
--- a/apps/edr-passenger-web/portal/src/components/tickets/TicketForm.tsx
+++ /dev/null
@@ -1,70 +0,0 @@
-import { FormEvent, useState } from "react";
-import { Button, FormField } from "@edr/ui-common";
-
-import type { CreateTicketPayload } from "../../services/tickets.service";
-
-export interface TicketFormProps {
- onSubmit: (payload: CreateTicketPayload) => void;
- isSubmitting?: boolean;
-}
-
-const TicketForm = ({ onSubmit, isSubmitting }: TicketFormProps) => {
- const [reference, setReference] = useState("");
- const [passengerId, setPassengerId] = useState("");
- const [scheduleId, setScheduleId] = useState("");
- const [seatId, setSeatId] = useState("");
- const [pricePaid, setPricePaid] = useState("0");
-
- const handleSubmit = (event: FormEvent) => {
- event.preventDefault();
- onSubmit({
- reference,
- passengerId,
- scheduleId,
- seatId,
- pricePaid: Number(pricePaid),
- issuedAt: new Date().toISOString(),
- });
- };
-
- return (
-
- );
-};
-
-export default TicketForm;
diff --git a/apps/edr-passenger-web/portal/src/components/tickets/TicketTable.tsx b/apps/edr-passenger-web/portal/src/components/tickets/TicketTable.tsx
deleted file mode 100644
index eddc72a8d..000000000
--- a/apps/edr-passenger-web/portal/src/components/tickets/TicketTable.tsx
+++ /dev/null
@@ -1,33 +0,0 @@
-import type { Passenger } from "@edr/types";
-import { Table, type TableColumn } from "@edr/ui-common";
-
-export interface TicketTableProps {
- tickets: Passenger.ITicket[];
-}
-
-const columns: TableColumn[] = [
- { key: "reference", header: "Reference" },
- { key: "passengerId", header: "Passenger" },
- { key: "status", header: "Status" },
- {
- key: "issuedAt",
- header: "Issued",
- render: (row) => new Date(row.issuedAt).toLocaleString(),
- },
- {
- key: "pricePaid",
- header: "Price",
- render: (row) => row.pricePaid.toFixed(2),
- },
-];
-
-const TicketTable = ({ tickets }: TicketTableProps) => (
- row.id}
- emptyMessage="No tickets yet"
- />
-);
-
-export default TicketTable;
diff --git a/apps/edr-passenger-web/portal/src/hooks/useSchedules.ts b/apps/edr-passenger-web/portal/src/hooks/useSchedules.ts
deleted file mode 100644
index e4fc7c2f7..000000000
--- a/apps/edr-passenger-web/portal/src/hooks/useSchedules.ts
+++ /dev/null
@@ -1,16 +0,0 @@
-import { useQuery } from "@tanstack/react-query";
-
-import { schedulesService } from "../services/schedules.service";
-
-export const useSchedules = () =>
- useQuery({
- queryKey: ["schedules"],
- queryFn: schedulesService.list,
- });
-
-export const useSchedule = (id: string) =>
- useQuery({
- queryKey: ["schedules", id],
- queryFn: () => schedulesService.get(id),
- enabled: Boolean(id),
- });
diff --git a/apps/edr-passenger-web/portal/src/hooks/useStations.ts b/apps/edr-passenger-web/portal/src/hooks/useStations.ts
deleted file mode 100644
index 23b4040a0..000000000
--- a/apps/edr-passenger-web/portal/src/hooks/useStations.ts
+++ /dev/null
@@ -1,9 +0,0 @@
-import { useQuery } from "@tanstack/react-query";
-
-import { stationsService } from "../services/stations.service";
-
-export const useStations = () =>
- useQuery({
- queryKey: ["stations"],
- queryFn: stationsService.list,
- });
diff --git a/apps/edr-passenger-web/portal/src/hooks/useTickets.ts b/apps/edr-passenger-web/portal/src/hooks/useTickets.ts
deleted file mode 100644
index f5fc84884..000000000
--- a/apps/edr-passenger-web/portal/src/hooks/useTickets.ts
+++ /dev/null
@@ -1,16 +0,0 @@
-import { useQuery } from "@tanstack/react-query";
-
-import { ticketsService } from "../services/tickets.service";
-
-export const useTickets = () =>
- useQuery({
- queryKey: ["tickets"],
- queryFn: ticketsService.list,
- });
-
-export const useTicket = (id: string) =>
- useQuery({
- queryKey: ["tickets", id],
- queryFn: () => ticketsService.get(id),
- enabled: Boolean(id),
- });
diff --git a/apps/edr-passenger-web/portal/src/services/schedules.service.ts b/apps/edr-passenger-web/portal/src/services/schedules.service.ts
deleted file mode 100644
index 1b65bdc4b..000000000
--- a/apps/edr-passenger-web/portal/src/services/schedules.service.ts
+++ /dev/null
@@ -1,14 +0,0 @@
-import type { Passenger } from "@edr/types";
-
-import { api } from "../utils/api";
-
-export const schedulesService = {
- list: async (): Promise => {
- const { data } = await api.get("/schedules");
- return data.data;
- },
- get: async (id: string): Promise => {
- const { data } = await api.get(`/schedules/${id}`);
- return data.data;
- },
-};
diff --git a/apps/edr-passenger-web/portal/src/services/stations.service.ts b/apps/edr-passenger-web/portal/src/services/stations.service.ts
deleted file mode 100644
index 20010954a..000000000
--- a/apps/edr-passenger-web/portal/src/services/stations.service.ts
+++ /dev/null
@@ -1,14 +0,0 @@
-// import type { IStation } from "../types";
-import { api } from "../utils/api";
-import type { Passenger } from "@edr/types";
-
-export const stationsService = {
- list: async (): Promise => {
- const { data } = await api.get("/stations");
- return data.data;
- },
- get: async (id: string): Promise => {
- const { data } = await api.get(`/stations/${id}`);
- return data.data;
- },
-};
diff --git a/apps/edr-passenger-web/portal/src/services/tickets.service.ts b/apps/edr-passenger-web/portal/src/services/tickets.service.ts
deleted file mode 100644
index 4a6c7ac85..000000000
--- a/apps/edr-passenger-web/portal/src/services/tickets.service.ts
+++ /dev/null
@@ -1,30 +0,0 @@
-import type { Passenger, PaginatedResponse } from "@edr/types";
-
-import { api } from "../utils/api";
-
-export interface CreateTicketPayload {
- reference: string;
- passengerId: string;
- scheduleId: string;
- seatId: string;
- pricePaid: number;
- issuedAt: string;
-}
-
-export const ticketsService = {
- list: async (): Promise> => {
- const { data } = await api.get("/tickets");
- return data.data;
- },
- get: async (id: string): Promise => {
- const { data } = await api.get(`/tickets/${id}`);
- return data.data;
- },
- create: async (payload: CreateTicketPayload): Promise => {
- const { data } = await api.post("/tickets", payload);
- return data.data;
- },
- cancel: async (id: string): Promise => {
- await api.delete(`/tickets/${id}`);
- },
-};