From 3b68056accbd594c8c2af1f7561eb371c52bc4b5 Mon Sep 17 00:00:00 2001 From: Spythere Date: Fri, 18 Apr 2025 02:32:02 +0200 Subject: [PATCH] chore: added storage switching between local and api modes --- src/components/Timetable/TrainTimetable.vue | 4 +- .../TimetableStorage/ApiStorage.vue | 5 ++ .../LocalStorage.vue} | 22 +++----- .../TimetableStorage/StorageView.vue | 56 +++++++++++++++++++ src/locales/en.json | 6 +- src/locales/pl.json | 6 +- src/types/common.types.ts | 5 ++ 7 files changed, 85 insertions(+), 19 deletions(-) create mode 100644 src/components/TimetableStorage/ApiStorage.vue rename src/components/{Timetable/TimetableStorage.vue => TimetableStorage/LocalStorage.vue} (80%) create mode 100644 src/components/TimetableStorage/StorageView.vue diff --git a/src/components/Timetable/TrainTimetable.vue b/src/components/Timetable/TrainTimetable.vue index 5aaed06..9339ad3 100644 --- a/src/components/Timetable/TrainTimetable.vue +++ b/src/components/Timetable/TrainTimetable.vue @@ -23,7 +23,7 @@
- +
@@ -36,7 +36,7 @@ import { useGlobalStore } from '../../stores/global.store'; import TimetableBody from './TimetableBody.vue'; import TimetableHeader from './TimetableHeader.vue'; import type { SceneryRoute, StopRow, TimetablePathData } from '../../types/common.types'; -import TimetableStorage from './TimetableStorage.vue'; +import StorageView from '../TimetableStorage/StorageView.vue'; const globalStore = useGlobalStore(); const apiStore = useApiStore(); diff --git a/src/components/TimetableStorage/ApiStorage.vue b/src/components/TimetableStorage/ApiStorage.vue new file mode 100644 index 0000000..d390615 --- /dev/null +++ b/src/components/TimetableStorage/ApiStorage.vue @@ -0,0 +1,5 @@ + + + diff --git a/src/components/Timetable/TimetableStorage.vue b/src/components/TimetableStorage/LocalStorage.vue similarity index 80% rename from src/components/Timetable/TimetableStorage.vue rename to src/components/TimetableStorage/LocalStorage.vue index 38780c2..0bbb2d7 100644 --- a/src/components/Timetable/TimetableStorage.vue +++ b/src/components/TimetableStorage/LocalStorage.vue @@ -1,14 +1,8 @@ - - diff --git a/src/components/TimetableStorage/StorageView.vue b/src/components/TimetableStorage/StorageView.vue new file mode 100644 index 0000000..44285ed --- /dev/null +++ b/src/components/TimetableStorage/StorageView.vue @@ -0,0 +1,56 @@ + + + diff --git a/src/locales/en.json b/src/locales/en.json index 5181252..ee24c2d 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -22,5 +22,9 @@ "storage-preview-empty": "No entries found for given parameters", "storage-preview-info": "Archived timetable {id} for user {driverName} from: {date}", "storage-preview-button-text": "Return", - "delete-timetable-confirm": "Are you sure that you want to delete this timetable?" + "delete-timetable-confirm": "Are you sure that you want to delete this timetable?", + "storage-mode": { + "local": "LOCALLY", + "api": "STACJOWNIK" + } } \ No newline at end of file diff --git a/src/locales/pl.json b/src/locales/pl.json index d67abab..2434e29 100644 --- a/src/locales/pl.json +++ b/src/locales/pl.json @@ -22,5 +22,9 @@ "storage-preview-empty": "Nie znaleziono żadnych wpisów dla podanych parametrów", "storage-preview-info": "Rozkład archiwalny {id} maszynisty {driverName} z dnia {date}", "storage-preview-button-text": "Powróć", - "delete-timetable-confirm": "Czy na pewno chcesz usunąć ten rozkład jazdy z archiwum?" + "delete-timetable-confirm": "Czy na pewno chcesz usunąć ten rozkład jazdy z archiwum?", + "storage-mode": { + "local": "LOKALNIE", + "api": "STACJOWNIK" + } } \ No newline at end of file diff --git a/src/types/common.types.ts b/src/types/common.types.ts index bcdc926..3e8652a 100644 --- a/src/types/common.types.ts +++ b/src/types/common.types.ts @@ -1,5 +1,10 @@ export type ViewMode = 'active' | 'storage'; +export enum StorageMode { + LOCAL = 'local', + API = 'api' +} + export interface ActiveData { trains: ActiveTrain[]; activeSceneries: ActiveScenery[];