feat(studyset): make a studyset private or not, and what a locked one shows (ADR 0019)
- A top-level studyset's options make it private, with everything inside it, or non-private again, after a dialog saying what changes and that the instance's backups keep readable copies until they expire; a device without the account's keys says how to get them there. - A locked studyset (its key doesn't open here) is titled Locked, says why when opened, and offers only Delete. - Publishing names the person's tags as the device reads them, and says what to do when the studyset is private or a tag has no name. - The export sheet says an archive is readable by whoever has the file. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
2f169ae899
commit
0e10afcc68
1 changed files with 572 additions and 9 deletions
|
|
@ -9,6 +9,9 @@ class FakePublishGateway({
|
|||
/// The studysets published, by id.
|
||||
final Map<String, Publication> publications = const {},
|
||||
}) implements PublishGateway {
|
||||
/// The tag names sent with the last publish.
|
||||
Map<String, String>? lastTagNames;
|
||||
|
||||
late final _publications = {...publications};
|
||||
|
||||
/// Refusals to answer the next publishes with, the first first.
|
||||
|
|
@ -63,7 +66,9 @@ class FakePublishGateway({
|
|||
required String slug,
|
||||
required String notes,
|
||||
RichContent? description,
|
||||
Map<String, String>? tagNames,
|
||||
}) async {
|
||||
lastTagNames = tagNames;
|
||||
if (fail case final error?) {
|
||||
throw error;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue