Ship native iOS app, Wiki/TTS backend, and skeleton loading UX.
Replace the WebView shell with SwiftUI screens, add account-scoped Wiki and TTS APIs with adaptive review and photo scan support, and keep web/iOS pages usable while data loads asynchronously. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -75,6 +75,7 @@ class BookService:
|
||||
"daily_target": row.daily_target,
|
||||
"master_required_count": row.master_required_count,
|
||||
"weak_wrong_threshold": row.weak_wrong_threshold,
|
||||
"error_clear_correct_count": row.error_clear_correct_count,
|
||||
"learn_mode": book.learn_mode,
|
||||
}
|
||||
|
||||
@@ -89,6 +90,8 @@ class BookService:
|
||||
row.master_required_count = data["master_required_count"]
|
||||
if data.get("weak_wrong_threshold") is not None:
|
||||
row.weak_wrong_threshold = data["weak_wrong_threshold"]
|
||||
if data.get("error_clear_correct_count") is not None:
|
||||
row.error_clear_correct_count = data["error_clear_correct_count"]
|
||||
db.commit()
|
||||
db.refresh(row)
|
||||
return self.practice_settings_dict(db, user, book)
|
||||
@@ -163,6 +166,9 @@ class BookService:
|
||||
wrong_count=0,
|
||||
consecutive_correct_count=0,
|
||||
mastery_score=0,
|
||||
difficulty=5.0,
|
||||
stability_hours=24.0,
|
||||
next_review_at=now,
|
||||
review_due_date=datetime.now(timezone.utc).strftime("%Y-%m-%d"),
|
||||
created_at=now,
|
||||
)
|
||||
@@ -226,6 +232,7 @@ class BookService:
|
||||
"daily_target": user_settings.daily_target,
|
||||
"master_required_count": user_settings.master_required_count,
|
||||
"weak_wrong_threshold": user_settings.weak_wrong_threshold,
|
||||
"error_clear_correct_count": user_settings.error_clear_correct_count,
|
||||
"learn_mode": "adaptive",
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user