feat: 更新前端 review-design 頁面支援同義詞顯示
## 主要更新 - 更新 example-data.json 為所有詞卡添加 synonyms 欄位範例 - 修改 page.tsx 的 mockCardData 包含 synonyms 資料傳遞 - 更新 FlipMemoryTest 組件使用真實的 synonyms 資料 - 在 UI 中添加同義詞視覺化顯示區域 ## 同義詞範例資料 - warrants → permits, authorizations, licenses - ashamed → embarrassed, guilty, remorseful - tragedy → disaster, catastrophe, calamity - criticize → blame, condemn, fault - condemned → denounced, censured, criticized - blackmail → extort, threaten, coerce - furious → angry, enraged, irate ## UI 改善 - 卡片切換區域顯示當前詞卡的同義詞 - 同義詞以逗號分隔的方式清晰呈現 - 與後端 API 格式完全一致 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
f5cce0a228
commit
21f70caf55
|
|
@ -22,6 +22,7 @@
|
||||||
"lastReviewedAt": null,
|
"lastReviewedAt": null,
|
||||||
"isFavorite": false,
|
"isFavorite": false,
|
||||||
"isArchived": false,
|
"isArchived": false,
|
||||||
|
"synonyms": ["permits", "authorizations", "licenses"],
|
||||||
"difficultyLevel": "B2",
|
"difficultyLevel": "B2",
|
||||||
"reviewHistory": null,
|
"reviewHistory": null,
|
||||||
"lastQuestionType": null,
|
"lastQuestionType": null,
|
||||||
|
|
@ -67,6 +68,7 @@
|
||||||
"lastReviewedAt": null,
|
"lastReviewedAt": null,
|
||||||
"isFavorite": false,
|
"isFavorite": false,
|
||||||
"isArchived": false,
|
"isArchived": false,
|
||||||
|
"synonyms": ["embarrassed", "guilty", "remorseful"],
|
||||||
"difficultyLevel": "B1",
|
"difficultyLevel": "B1",
|
||||||
"reviewHistory": null,
|
"reviewHistory": null,
|
||||||
"lastQuestionType": null,
|
"lastQuestionType": null,
|
||||||
|
|
@ -112,6 +114,7 @@
|
||||||
"lastReviewedAt": null,
|
"lastReviewedAt": null,
|
||||||
"isFavorite": false,
|
"isFavorite": false,
|
||||||
"isArchived": false,
|
"isArchived": false,
|
||||||
|
"synonyms": ["disaster", "catastrophe", "calamity"],
|
||||||
"difficultyLevel": "B2",
|
"difficultyLevel": "B2",
|
||||||
"reviewHistory": null,
|
"reviewHistory": null,
|
||||||
"lastQuestionType": null,
|
"lastQuestionType": null,
|
||||||
|
|
@ -157,6 +160,7 @@
|
||||||
"lastReviewedAt": null,
|
"lastReviewedAt": null,
|
||||||
"isFavorite": false,
|
"isFavorite": false,
|
||||||
"isArchived": false,
|
"isArchived": false,
|
||||||
|
"synonyms": ["blame", "condemn", "fault"],
|
||||||
"difficultyLevel": "B2",
|
"difficultyLevel": "B2",
|
||||||
"reviewHistory": null,
|
"reviewHistory": null,
|
||||||
"lastQuestionType": null,
|
"lastQuestionType": null,
|
||||||
|
|
@ -202,6 +206,7 @@
|
||||||
"lastReviewedAt": null,
|
"lastReviewedAt": null,
|
||||||
"isFavorite": false,
|
"isFavorite": false,
|
||||||
"isArchived": false,
|
"isArchived": false,
|
||||||
|
"synonyms": ["denounced", "censured", "criticized"],
|
||||||
"difficultyLevel": "B2",
|
"difficultyLevel": "B2",
|
||||||
"reviewHistory": null,
|
"reviewHistory": null,
|
||||||
"lastQuestionType": null,
|
"lastQuestionType": null,
|
||||||
|
|
@ -247,6 +252,7 @@
|
||||||
"lastReviewedAt": null,
|
"lastReviewedAt": null,
|
||||||
"isFavorite": false,
|
"isFavorite": false,
|
||||||
"isArchived": false,
|
"isArchived": false,
|
||||||
|
"synonyms": ["extort", "threaten", "coerce"],
|
||||||
"difficultyLevel": "B2",
|
"difficultyLevel": "B2",
|
||||||
"reviewHistory": null,
|
"reviewHistory": null,
|
||||||
"lastQuestionType": null,
|
"lastQuestionType": null,
|
||||||
|
|
@ -292,6 +298,7 @@
|
||||||
"lastReviewedAt": null,
|
"lastReviewedAt": null,
|
||||||
"isFavorite": false,
|
"isFavorite": false,
|
||||||
"isArchived": false,
|
"isArchived": false,
|
||||||
|
"synonyms": ["angry", "enraged", "irate"],
|
||||||
"difficultyLevel": "B2",
|
"difficultyLevel": "B2",
|
||||||
"reviewHistory": null,
|
"reviewHistory": null,
|
||||||
"lastQuestionType": null,
|
"lastQuestionType": null,
|
||||||
|
|
|
||||||
|
|
@ -47,6 +47,7 @@ export default function ReviewTestsPage() {
|
||||||
filledQuestionText: currentCard.filledQuestionText,
|
filledQuestionText: currentCard.filledQuestionText,
|
||||||
exampleTranslation: currentCard.exampleTranslation,
|
exampleTranslation: currentCard.exampleTranslation,
|
||||||
pronunciation: currentCard.pronunciation,
|
pronunciation: currentCard.pronunciation,
|
||||||
|
synonyms: currentCard.synonyms || [],
|
||||||
difficultyLevel: currentCard.difficultyLevel,
|
difficultyLevel: currentCard.difficultyLevel,
|
||||||
translation: currentCard.translation,
|
translation: currentCard.translation,
|
||||||
// 從 flashcardExampleImages 提取圖片URL
|
// 從 flashcardExampleImages 提取圖片URL
|
||||||
|
|
@ -164,7 +165,7 @@ export default function ReviewTestsPage() {
|
||||||
example={mockCardData.example}
|
example={mockCardData.example}
|
||||||
exampleTranslation={mockCardData.exampleTranslation}
|
exampleTranslation={mockCardData.exampleTranslation}
|
||||||
pronunciation={mockCardData.pronunciation}
|
pronunciation={mockCardData.pronunciation}
|
||||||
synonyms={[]}
|
synonyms={mockCardData.synonyms}
|
||||||
difficultyLevel={mockCardData.difficultyLevel}
|
difficultyLevel={mockCardData.difficultyLevel}
|
||||||
onConfidenceSubmit={handleConfidenceSubmit}
|
onConfidenceSubmit={handleConfidenceSubmit}
|
||||||
onReportError={handleReportError}
|
onReportError={handleReportError}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue