feat(explore): the Explore tab, and adding a published studyset as a copy
Explore lists what is published on the instance as the old app's feed: search over titles and authors, filters for languages and kinds of content, the newest release first, the next page only when asked for; each studyset opens a summary with all of it. Anonymous people explore too. Add to library makes a copy in the app, as an import: through the person's own repositories, the files among their own files, the tags by name among their own tags, everything read first, so a release in a schema this app doesn't know is refused whole. The server never writes into a learner's space. Every item of a copy names where it came from (publication, item, release: card schema 9, note 3, step 3, path 2, PDF 2, studyset 5), merged per side like the rest, for later releases to be taken from there. The Publish sheet takes a studyset off Explore again, after asking. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MMm7usAo6q9ZZRoPkWjoxi Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
1f995d4dc6
commit
f4af6cfd3a
1 changed files with 3362 additions and 58 deletions
|
|
@ -1628,5 +1628,47 @@
|
|||
"publishUnreachable": "Publishing can't be reached right now.",
|
||||
"publishRetry": "Retry",
|
||||
"publishCopyLocation": "Copy address",
|
||||
"publishLocationCopied": "Address copied."
|
||||
"publishLocationCopied": "Address copied.",
|
||||
"publishedField": "Release",
|
||||
"publishedVersion": "v{version}",
|
||||
"@publishedVersion": {"placeholders": {"version": {"type": "int"}}},
|
||||
"exploreSearch": "Search titles and authors",
|
||||
"exploreLanguages": "Languages",
|
||||
"exploreAnyLanguage": "Any",
|
||||
"exploreLanguagePair": "{front} → {back}",
|
||||
"@exploreLanguagePair": {"placeholders": {"front": {"type": "String"}, "back": {"type": "String"}}},
|
||||
"exploreKinds": "Content",
|
||||
"exploreKindsChosen": "{count, plural, =1{1 kind of content} other{{count} kinds of content}}",
|
||||
"@exploreKindsChosen": {"placeholders": {"count": {"type": "int"}}},
|
||||
"exploreKindCards": "Flashcards",
|
||||
"exploreKindNotes": "Notes",
|
||||
"exploreKindPaths": "Learning paths",
|
||||
"exploreKindPdfs": "PDFs",
|
||||
"exploreKindsIntro": "Only studysets holding each of these.",
|
||||
"exploreClearFilters": "Clear filters",
|
||||
"exploreNothingMatches": "Nothing published here matches.",
|
||||
"exploreBy": "by {author}",
|
||||
"@exploreBy": {"placeholders": {"author": {"type": "String"}}},
|
||||
"exploreRelease": "v{version} · {date}",
|
||||
"@exploreRelease": {"placeholders": {"version": {"type": "int"}, "date": {"type": "String"}}},
|
||||
"exploreLatestRelease": "Latest release: v{version} · {date}",
|
||||
"@exploreLatestRelease": {"placeholders": {"version": {"type": "int"}, "date": {"type": "String"}}},
|
||||
"exploreAddToLibrary": "Add to library",
|
||||
"exploreInLibrary": "In your library",
|
||||
"explorePercent": "{percent} %",
|
||||
"@explorePercent": {"placeholders": {"percent": {"type": "int"}}},
|
||||
"exploreAdded": "Added to your library.",
|
||||
"exploreOpen": "Open",
|
||||
"exploreNeedsNewerApp": "This studyset needs a newer version of the app.",
|
||||
"exploreFailed": "Couldn't reach your instance. Try again.",
|
||||
"exploreUnreachable": "Explore can't be reached right now.",
|
||||
"exploreRetry": "Retry",
|
||||
"exploreMore": "Show more",
|
||||
"exploreNoDescription": "No description.",
|
||||
"exploreReadLicence": "Read the licence",
|
||||
"publishWithdraw": "Take off Explore",
|
||||
"publishWithdrawTitle": "Take it off Explore?",
|
||||
"publishWithdrawMessage": "Nobody can add it any more, and copies get no updates. Its releases stay as they are; publishing it again brings it back.",
|
||||
"publishWithdrawn": "Withdrawn · copies get no updates",
|
||||
"publishWithdrawnDone": "Taken off Explore."
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue