v4: the followed feed's two views are pages — "From people" and "From playlists" on a feed's "follow" tab were a state of the page, which a reload, Back or a shared link lost, while a profile's same split is /@name/follow/playlists. They are now /follow and /follow/playlists, and /music/follow/playlists in a category, feedPath taking the view as userPath does (FOLLOW_VIEWS); picking a category keeps it. Their dumps come from GET /api/dumps?follow=users|playlists, signed in, which the feed's word for it names, instead of GET /api/me/feed?from=; an unknown category is a 404 there, as on the rest of the feed, rather than an empty list.
A feed's tab, as a profile's, a search's or the community page's, now takes the place of the current history entry, since it is a view of the same page; picking a category, another page, still adds one. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -24,6 +24,12 @@ Deno.test("builders: one hierarchy, default views bare", () => {
|
||||
assertEquals(feedPath(undefined, "hot"), "/hot");
|
||||
assertEquals(feedPath("music"), "/music");
|
||||
assertEquals(feedPath("music", "follow"), "/music/follow");
|
||||
assertEquals(feedPath("music", "follow", "users"), "/music/follow");
|
||||
assertEquals(
|
||||
feedPath(undefined, "follow", "playlists"),
|
||||
"/follow/playlists",
|
||||
);
|
||||
assertEquals(feedPath(undefined, "new", "playlists"), "/new");
|
||||
assertEquals(searchPath(), "/search");
|
||||
assertEquals(searchPath("users", "a b"), "/search/users?q=a%20b");
|
||||
assertEquals(searchPath("dumps", "x"), "/search?q=x");
|
||||
|
||||
Reference in New Issue
Block a user