feat(vocab): add language and course dictionary endpoints and UI components
All checks were successful
Deploy to production / deploy (push) Successful in 2m53s

- Implemented `getLanguageDictionary` and `getCourseDictionary` methods in the VocabService to retrieve vocabulary entries filtered by search terms.
- Updated VocabController and vocabRouter to include new routes for accessing language and course dictionaries.
- Enhanced frontend components to navigate to the new dictionary views, including buttons in VocabCourseView and VocabLanguageView.
- Added localization entries for the dictionary feature in multiple languages, ensuring a consistent user experience across the platform.
This commit is contained in:
Torsten Schulz (local)
2026-04-10 13:08:18 +02:00
parent 9582e7b900
commit d17c8a341d
18 changed files with 443 additions and 16 deletions

View File

@@ -41,8 +41,10 @@ const TITLE_MAP = {
VocabNewLanguage: 'sectionBar.titles.newLanguage',
VocabSubscribe: 'sectionBar.titles.subscribeLanguage',
VocabLanguage: 'sectionBar.titles.language',
VocabLanguageDictionary: 'sectionBar.titles.vocabDictionary',
VocabChapter: 'sectionBar.titles.chapter',
VocabCourses: 'sectionBar.titles.courses',
VocabCourseDictionary: 'sectionBar.titles.vocabDictionary',
VocabCourse: 'sectionBar.titles.course',
VocabLesson: 'sectionBar.titles.lesson',
FalukantCreate: 'sectionBar.titles.createCharacter',
@@ -102,6 +104,14 @@ export default {
backTarget() {
const params = this.$route?.params || {};
if (this.routePath.endsWith('/dictionary') && params.courseId) {
return `/socialnetwork/vocab/courses/${params.courseId}`;
}
if (this.routePath.endsWith('/dictionary') && params.languageId) {
return `/socialnetwork/vocab/${params.languageId}`;
}
if (this.routePath.startsWith('/socialnetwork/vocab/courses/') && params.lessonId && params.courseId) {
return `/socialnetwork/vocab/courses/${params.courseId}`;
}