feat(VocabService, VocabCourseView): enhance SRS item retrieval and UI integration
All checks were successful
Deploy to production / deploy (push) Successful in 1m52s
All checks were successful
Deploy to production / deploy (push) Successful in 1m52s
- Updated VocabService to calculate total due count for spaced repetition system (SRS) items, improving data handling for user queries. - Modified VocabCourseView to incorporate total due count in the UI, ensuring accurate display of SRS item statistics. - Enhanced error handling and data validation for SRS due items, improving overall reliability and user experience.
This commit is contained in:
@@ -341,6 +341,7 @@ export default {
|
||||
progress: [],
|
||||
chapters: [],
|
||||
srsDueItems: [],
|
||||
srsDueTotal: 0,
|
||||
srsLoading: false,
|
||||
showAddLessonDialog: false,
|
||||
assistantSettings: null,
|
||||
@@ -384,6 +385,9 @@ export default {
|
||||
return this.currentLesson?.pedagogy?.blockNumber || null;
|
||||
},
|
||||
srsDueCount() {
|
||||
if (Number.isFinite(Number(this.srsDueTotal)) && Number(this.srsDueTotal) > 0) {
|
||||
return Number(this.srsDueTotal);
|
||||
}
|
||||
return Array.isArray(this.srsDueItems) ? this.srsDueItems.length : 0;
|
||||
},
|
||||
dueReviewLessons() {
|
||||
@@ -553,9 +557,11 @@ export default {
|
||||
params: { limit: 40 }
|
||||
});
|
||||
this.srsDueItems = Array.isArray(data?.items) ? data.items : [];
|
||||
this.srsDueTotal = Number.isFinite(Number(data?.totalDueCount)) ? Number(data.totalDueCount) : this.srsDueItems.length;
|
||||
} catch (e) {
|
||||
console.warn('Konnte SRS-Fälligkeiten nicht laden:', e);
|
||||
this.srsDueItems = [];
|
||||
this.srsDueTotal = 0;
|
||||
} finally {
|
||||
this.srsLoading = false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user