From a2de0e2030c8e76c742f0022873b82bbe8684626 Mon Sep 17 00:00:00 2001 From: Spythere Date: Sat, 4 May 2024 14:43:34 +0200 Subject: [PATCH] refactor: types & performance --- src/components/Global/RegionDropdown.vue | 4 +- .../SceneryView/SceneryDispatchersHistory.vue | 4 +- src/components/SceneryView/SceneryHeader.vue | 3 +- src/components/SceneryView/SceneryInfo.vue | 3 +- .../SceneryInfo/SceneryInfoDispatcher.vue | 2 +- .../SceneryInfo/SceneryInfoIcons.vue | 2 +- .../SceneryInfo/SceneryInfoRoutes.vue | 2 +- .../SceneryInfo/SceneryInfoSpawnList.vue | 2 +- .../SceneryInfo/SceneryInfoStats.vue | 83 ------- .../SceneryInfo/SceneryInfoUserList.vue | 2 +- .../SceneryView/SceneryTimetable.vue | 11 +- .../SceneryView/SceneryTimetablesHistory.vue | 4 +- .../SceneryView/ScheduledTrainStatus.vue | 2 +- src/components/StationsView/StationTable.vue | 44 ++-- src/components/TrainsView/TrainInfo.vue | 2 +- src/components/TrainsView/TrainModal.vue | 2 +- src/components/TrainsView/TrainSchedule.vue | 2 +- src/components/TrainsView/TrainTable.vue | 3 +- src/managers/trainFilterManager.ts | 3 +- src/mixins/trainInfoMixin.ts | 7 +- src/scripts/interfaces/Station.ts | 34 --- src/scripts/interfaces/StationRoutes.ts | 15 -- src/scripts/interfaces/Train.ts | 38 ---- src/scripts/utils/stationFilterUtils.ts | 2 +- src/store/mainStore.ts | 56 ++++- src/store/stationFiltersStore.ts | 20 +- src/store/typings.ts | 133 +---------- src/store/utils.ts | 11 +- src/typings/api.ts | 2 +- src/typings/common.ts | 209 ++++++++++++++++++ src/views/StationsView.vue | 40 +++- src/views/TrainsView.vue | 2 +- 32 files changed, 349 insertions(+), 400 deletions(-) delete mode 100644 src/components/SceneryView/SceneryInfo/SceneryInfoStats.vue delete mode 100644 src/scripts/interfaces/Station.ts delete mode 100644 src/scripts/interfaces/StationRoutes.ts delete mode 100644 src/scripts/interfaces/Train.ts diff --git a/src/components/Global/RegionDropdown.vue b/src/components/Global/RegionDropdown.vue index aa6552a..507907c 100644 --- a/src/components/Global/RegionDropdown.vue +++ b/src/components/Global/RegionDropdown.vue @@ -65,12 +65,12 @@ export default defineComponent({ immediate: true, handler(regionQuery: string) { if (regionQuery) { - this.store.region.id = + this.store.region = regionsJSON.find( (reg) => reg.id == regionQuery.toLocaleLowerCase() || reg.value.toLocaleLowerCase() == regionQuery.toLocaleLowerCase() - )?.id || 'eu'; + ) ?? regionsJSON[0]; } } } diff --git a/src/components/SceneryView/SceneryDispatchersHistory.vue b/src/components/SceneryView/SceneryDispatchersHistory.vue index 34a2ea6..c44b301 100644 --- a/src/components/SceneryView/SceneryDispatchersHistory.vue +++ b/src/components/SceneryView/SceneryDispatchersHistory.vue @@ -72,13 +72,11 @@ - - diff --git a/src/components/SceneryView/SceneryInfo/SceneryInfoUserList.vue b/src/components/SceneryView/SceneryInfo/SceneryInfoUserList.vue index 14930fe..06db7fb 100644 --- a/src/components/SceneryView/SceneryInfo/SceneryInfoUserList.vue +++ b/src/components/SceneryView/SceneryInfo/SceneryInfoUserList.vue @@ -32,7 +32,7 @@ import { PropType, defineComponent } from 'vue'; import modalTrainMixin from '../../../mixins/modalTrainMixin'; import routerMixin from '../../../mixins/routerMixin'; -import { ActiveScenery } from '../../../store/typings'; +import { ActiveScenery } from '../../../typings/common'; export default defineComponent({ mixins: [routerMixin, modalTrainMixin], diff --git a/src/components/SceneryView/SceneryTimetable.vue b/src/components/SceneryView/SceneryTimetable.vue index a0d140d..279775f 100644 --- a/src/components/SceneryView/SceneryTimetable.vue +++ b/src/components/SceneryView/SceneryTimetable.vue @@ -14,14 +14,6 @@ - - icon-tablice @@ -186,12 +178,11 @@ import { useRoute } from 'vue-router'; import Loading from '../Global/Loading.vue'; import dateMixin from '../../mixins/dateMixin'; import routerMixin from '../../mixins/routerMixin'; -import Station from '../../scripts/interfaces/Station'; import { useMainStore } from '../../store/mainStore'; import modalTrainMixin from '../../mixins/modalTrainMixin'; import ScheduledTrainStatus from './ScheduledTrainStatus.vue'; -import { ActiveScenery } from '../../store/typings'; import { useApiStore } from '../../store/apiStore'; +import { ActiveScenery, Station } from '../../typings/common'; export default defineComponent({ name: 'SceneryTimetable', diff --git a/src/components/SceneryView/SceneryTimetablesHistory.vue b/src/components/SceneryView/SceneryTimetablesHistory.vue index 4fefc36..0c35eb6 100644 --- a/src/components/SceneryView/SceneryTimetablesHistory.vue +++ b/src/components/SceneryView/SceneryTimetablesHistory.vue @@ -71,12 +71,10 @@ import { defineComponent, PropType } from 'vue'; import dateMixin from '../../mixins/dateMixin'; -import Station from '../../scripts/interfaces/Station'; import Loading from '../Global/Loading.vue'; import listObserverMixin from '../../mixins/listObserverMixin'; -import { ActiveScenery } from '../../store/typings'; import { API } from '../../typings/api'; -import { Status } from '../../typings/common'; +import { ActiveScenery, Station, Status } from '../../typings/common'; import { useApiStore } from '../../store/apiStore'; export default defineComponent({ diff --git a/src/components/SceneryView/ScheduledTrainStatus.vue b/src/components/SceneryView/ScheduledTrainStatus.vue index 3187b21..6d69c01 100644 --- a/src/components/SceneryView/ScheduledTrainStatus.vue +++ b/src/components/SceneryView/ScheduledTrainStatus.vue @@ -11,7 +11,7 @@