mirror of
https://github.com/jakejarvis/sofa.git
synced 2026-07-14 18:15:56 -04:00
feat: add "Mark Unwatched" toggle for movies on web and native (#52)
- Replace the static "Mark Watched" button with a toggle that shows "Mark Unwatched" (destructive style) when a movie is already completed - Add `handleUnwatchMovie` to web `useTitleActions` with optimistic update (reverts status to `in_watchlist` on error) - Add `unwatchMovie` mutation to native `useTitleActions` hook and `titleActions` imperative helper - Update poster-card and upcoming-row context menus to show the correct action based on current watch status - Wire the `M` keyboard shortcut on the title detail page to unwatch when the movie is already marked watched - Add i18n strings for "Mark Unwatched", "Marked as unwatched", and "Failed to mark as unwatched"
This commit is contained in:
@@ -346,7 +346,6 @@ msgstr ""
|
||||
msgid "Added \"{titleName}\" to watchlist"
|
||||
msgstr ""
|
||||
|
||||
#: apps/native/src/hooks/use-title-actions.ts
|
||||
#: apps/native/src/hooks/use-title-actions.ts
|
||||
#: apps/native/src/lib/title-actions.ts
|
||||
#: apps/web/src/components/titles/use-title-actions.ts
|
||||
@@ -1236,7 +1235,6 @@ msgstr "Export"
|
||||
msgid "Failed"
|
||||
msgstr ""
|
||||
|
||||
#: apps/native/src/hooks/use-title-actions.ts
|
||||
#: apps/native/src/lib/title-actions.ts
|
||||
msgid "Failed to add to watchlist"
|
||||
msgstr ""
|
||||
@@ -1293,6 +1291,12 @@ msgstr ""
|
||||
msgid "Failed to mark all episodes as watched"
|
||||
msgstr ""
|
||||
|
||||
#: apps/native/src/hooks/use-title-actions.ts
|
||||
#: apps/native/src/lib/title-actions.ts
|
||||
#: apps/web/src/components/titles/use-title-actions.ts
|
||||
msgid "Failed to mark as unwatched"
|
||||
msgstr "Failed to mark as unwatched"
|
||||
|
||||
#: apps/native/src/hooks/use-title-actions.ts
|
||||
#: apps/native/src/lib/title-actions.ts
|
||||
#: apps/web/src/components/titles/use-title-actions.ts
|
||||
@@ -1386,7 +1390,6 @@ msgstr ""
|
||||
msgid "Failed to update rating"
|
||||
msgstr ""
|
||||
|
||||
#: apps/native/src/app/(tabs)/(settings)/index.tsx
|
||||
#: apps/web/src/components/settings/registration-section.tsx
|
||||
msgid "Failed to update registration setting"
|
||||
msgstr ""
|
||||
@@ -1860,6 +1863,13 @@ msgstr "Mark episode {epNum} watched"
|
||||
msgid "Mark Episode Watched"
|
||||
msgstr "Mark Episode Watched"
|
||||
|
||||
#: apps/native/src/app/title/[id].tsx
|
||||
#: apps/native/src/components/dashboard/upcoming-row.tsx
|
||||
#: apps/native/src/components/ui/poster-card.tsx
|
||||
#: apps/web/src/components/titles/title-actions.tsx
|
||||
msgid "Mark Unwatched"
|
||||
msgstr "Mark Unwatched"
|
||||
|
||||
#: apps/web/src/components/command-palette.tsx
|
||||
msgid "Mark watched"
|
||||
msgstr "Mark watched"
|
||||
@@ -1871,6 +1881,10 @@ msgstr "Mark watched"
|
||||
msgid "Mark Watched"
|
||||
msgstr ""
|
||||
|
||||
#: apps/native/src/app/title/[id].tsx
|
||||
msgid "Marked \"{name}\" as unwatched"
|
||||
msgstr "Marked \"{name}\" as unwatched"
|
||||
|
||||
#: apps/native/src/app/title/[id].tsx
|
||||
msgid "Marked \"{name}\" as watched"
|
||||
msgstr "Marked \"{name}\" as watched"
|
||||
@@ -1879,6 +1893,11 @@ msgstr "Marked \"{name}\" as watched"
|
||||
#~ msgid "Marked \"{titleName}\" as completed"
|
||||
#~ msgstr ""
|
||||
|
||||
#: apps/native/src/lib/title-actions.ts
|
||||
#: apps/web/src/components/titles/use-title-actions.ts
|
||||
msgid "Marked \"{titleName}\" as unwatched"
|
||||
msgstr "Marked \"{titleName}\" as unwatched"
|
||||
|
||||
#: apps/native/src/lib/title-actions.ts
|
||||
#: apps/web/src/components/titles/use-title-actions.ts
|
||||
msgid "Marked \"{titleName}\" as watched"
|
||||
@@ -1898,6 +1917,12 @@ msgstr "Marked all episodes of \"{titleName}\" as watched"
|
||||
#~ msgid "Marked as completed"
|
||||
#~ msgstr ""
|
||||
|
||||
#: apps/native/src/app/title/[id].tsx
|
||||
#: apps/native/src/hooks/use-title-actions.ts
|
||||
#: apps/native/src/lib/title-actions.ts
|
||||
msgid "Marked as unwatched"
|
||||
msgstr "Marked as unwatched"
|
||||
|
||||
#: apps/native/src/app/title/[id].tsx
|
||||
#: apps/native/src/hooks/use-title-actions.ts
|
||||
#: apps/native/src/lib/title-actions.ts
|
||||
|
||||
Reference in New Issue
Block a user