Skip to content

Commit 5ddd370

Browse files
committed
await nextCard...
now async after making the hydrationQ more robust against timing issues
1 parent fee748d commit 5ddd370

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

packages/common-ui/src/components/StudySession.vue

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -346,7 +346,7 @@ export default defineComponent({
346346
if (this.sessionController) {
347347
try {
348348
this.$emit('session-started');
349-
this.loadCard(this.sessionController.nextCard());
349+
this.loadCard(await this.sessionController.nextCard());
350350
} catch (error) {
351351
console.error('[StudySession] Error loading next card:', error);
352352
this.$emit('session-error', { message: 'Failed to load study card', error });
@@ -404,7 +404,7 @@ export default defineComponent({
404404
const item: StudySessionItem = {
405405
...this.currentCard.item,
406406
};
407-
this.loadCard(this.sessionController!.nextCard('dismiss-success'));
407+
this.loadCard(await this.sessionController!.nextCard('dismiss-success'));
408408
409409
cardHistory.then((history: CardHistory<CardRecord>) => {
410410
this.scheduleReview(history, item);
@@ -416,7 +416,7 @@ export default defineComponent({
416416
}
417417
});
418418
} else {
419-
this.loadCard(this.sessionController!.nextCard('marked-failed'));
419+
this.loadCard(await this.sessionController!.nextCard('marked-failed'));
420420
}
421421
} else {
422422
/* !r.isCorrect */
@@ -442,16 +442,16 @@ export default defineComponent({
442442
if (this.currentCard.records.length >= view.maxAttemptsPerView) {
443443
const sessionViews: number = this.countCardViews(this.courseID, this.cardID);
444444
if (sessionViews >= view.maxSessionViews) {
445-
this.loadCard(this.sessionController!.nextCard('dismiss-failed'));
445+
this.loadCard(await this.sessionController!.nextCard('dismiss-failed'));
446446
this.updateUserAndCardElo(0, this.courseID, this.cardID);
447447
} else {
448-
this.loadCard(this.sessionController!.nextCard('marked-failed'));
448+
this.loadCard(await this.sessionController!.nextCard('marked-failed'));
449449
}
450450
}
451451
}
452452
}
453453
} else {
454-
this.loadCard(this.sessionController!.nextCard('dismiss-success'));
454+
this.loadCard(await this.sessionController!.nextCard('dismiss-success'));
455455
}
456456
457457
this.clearFeedbackShadow();
@@ -594,7 +594,7 @@ export default defineComponent({
594594
this.user!.removeScheduledCardReview((card.item as any).reviewID);
595595
}
596596
597-
this.loadCard(this.sessionController!.nextCard('dismiss-error'));
597+
this.loadCard(await this.sessionController!.nextCard('dismiss-error'));
598598
} finally {
599599
this.loading = false;
600600
}

0 commit comments

Comments
 (0)