fix(player): related marks survive, Restart restarts, and refused pages offer nothing to click
- Every state and Watch-later write goes through features/video/videoWrites, which marks the never-refetched lists (related lists, live searches) once the server has it; a contract test holds it. The Notification Center's undo, the feed's reset and the Watch-later toggles skipped it before. - Confirmed marks are also kept apart (qk.videoMarks) and laid over the related rows: a Show more page landing later rebuilt them from the pages it read when it started, and dropped a mark made meanwhile. - Restart on a related video starts at 0 (the session's stored position won before), and on the one already playing it seeks. - The watched toggle remembers each video's mark: Back showed the opened video's launch-time state after a related one was marked. - The help sheet leaves out the player's keys while a layer above it has them waiting. - After a refusal a retry cannot answer, neither Show more (related) nor Load more (live search) is offered; a failed live-search page keeps the results already read and says why under them. - The related cap message counts requests, as the cap does.
This commit is contained in:
@@ -6,10 +6,10 @@
|
||||
// 3. spreads each domain's method slice into the single `api` object consumers call.
|
||||
// A new endpoint therefore has nowhere to land except a domain module — the interleave that
|
||||
// motivated the split cannot re-grow here. (lib/api/facade.test.ts guards that invariant.)
|
||||
import { HttpError, setUnauthorizedHandler } from "./api/core";
|
||||
import { HttpError, refusalReason, setUnauthorizedHandler } from "./api/core";
|
||||
|
||||
// Re-export the shared HTTP machinery so consumers keep importing these from "./api" unchanged.
|
||||
export { HttpError, setUnauthorizedHandler };
|
||||
export { HttpError, refusalReason, setUnauthorizedHandler };
|
||||
|
||||
import { accountApi } from "./api/account";
|
||||
export type * from "./api/account";
|
||||
|
||||
Reference in New Issue
Block a user