Dodano animację aktywnych RJ; poprawki

This commit is contained in:
2022-10-11 22:16:46 +02:00
parent ceffd8e675
commit fcb8357489
2 changed files with 114 additions and 104 deletions
+22 -12
View File
@@ -29,8 +29,6 @@
</div> </div>
<div class="timetable-list"> <div class="timetable-list">
<!-- <transition name="scenery-timetable-list-anim" mode="out-in"> -->
<!-- <div :key="store.dataStatuses.trains + selectedCheckpoint" class="scenery-timetable-list"> -->
<div style="padding-bottom: 5em" v-if="store.dataStatuses.trains == 0 && computedScheduledTrains.length == 0"> <div style="padding-bottom: 5em" v-if="store.dataStatuses.trains == 0 && computedScheduledTrains.length == 0">
<Loading /> <Loading />
</div> </div>
@@ -43,10 +41,11 @@
{{ $t('scenery.no-timetables') }} {{ $t('scenery.no-timetables') }}
</span> </span>
<transition-group name="timetables-anim">
<div <div
class="timetable-item" class="timetable-item"
v-for="(scheduledTrain, i) in computedScheduledTrains" v-for="(scheduledTrain, i) in computedScheduledTrains"
:key="i + 1" :key="scheduledTrain.trainId"
tabindex="0" tabindex="0"
@click.prevent.stop="selectModalTrain(scheduledTrain.trainId)" @click.prevent.stop="selectModalTrain(scheduledTrain.trainId)"
@keydown.enter.prevent="selectModalTrain(scheduledTrain.trainId)" @keydown.enter.prevent="selectModalTrain(scheduledTrain.trainId)"
@@ -94,7 +93,8 @@
<span> <span>
{{ timestampToString(scheduledTrain.stopInfo.arrivalRealTimestamp) }} {{ timestampToString(scheduledTrain.stopInfo.arrivalRealTimestamp) }}
({{ scheduledTrain.stopInfo.arrivalDelay > 0 ? '+' : '' }}{{ scheduledTrain.stopInfo.arrivalDelay }}) ({{ scheduledTrain.stopInfo.arrivalDelay > 0 ? '+' : ''
}}{{ scheduledTrain.stopInfo.arrivalDelay }})
</span> </span>
</div> </div>
</span> </span>
@@ -116,7 +116,7 @@
<span> <span>
{{ scheduledTrain.arrivingLine }} {{ scheduledTrain.arrivingLine }}
</span> </span>
<span ></span> <span></span>
<span> <span>
{{ scheduledTrain.departureLine }} {{ scheduledTrain.departureLine }}
</span> </span>
@@ -149,9 +149,8 @@
</span> </span>
</span> </span>
</div> </div>
</transition-group>
</div> </div>
<!-- </transition> -->
</section> </section>
</template> </template>
@@ -169,6 +168,7 @@ import { useStore } from '../../store/store';
import imageMixin from '../../mixins/imageMixin'; import imageMixin from '../../mixins/imageMixin';
import modalTrainMixin from '../../mixins/modalTrainMixin'; import modalTrainMixin from '../../mixins/modalTrainMixin';
import ScheduledTrainStatus from './ScheduledTrainStatus.vue'; import ScheduledTrainStatus from './ScheduledTrainStatus.vue';
import ScheduledTrain from '../../scripts/interfaces/ScheduledTrain';
export default defineComponent({ export default defineComponent({
name: 'SceneryTimetable', name: 'SceneryTimetable',
@@ -273,11 +273,21 @@ export default defineComponent({
@import '../../styles/responsive.scss'; @import '../../styles/responsive.scss';
@import '../../styles/variables.scss'; @import '../../styles/variables.scss';
// .scenery-timetable { .timetables-anim-move,
// height: 85vh; .timetables-anim-enter-active,
// max-height: 900px; .timetables-anim-leave-active {
// min-height: 450px; transition: all 250ms ease;
// } }
.timetables-anim-enter-from,
.timetables-anim-leave-to {
opacity: 0;
transform: translateY(30px);
}
.timetables-anim-leave-active {
position: absolute;
}
.scenery-timetable { .scenery-timetable {
height: 100%; height: 100%;
+2 -2
View File
@@ -136,8 +136,8 @@ export function getScheduledTrain(train: Train, trainStopIndex: number, stationN
} }
} }
let departureLine: string | null = trainStop.departureLine; let departureLine: string | null = null;
let arrivingLine: string | null = trainStop.arrivalLine; let arrivingLine: string | null = null;
for (let i = trainStopIndex; i < followingStops.length; i++) { for (let i = trainStopIndex; i < followingStops.length; i++) {
const currentStop = followingStops[i]; const currentStop = followingStops[i];