Release 2.3.0
linter / quality (push) Successful in 1m5s
tests / ci (8.5) (push) Successful in 3m24s
docker / build-and-push (push) Successful in 7m10s
docker / test (8.5) (push) Successful in 3m21s
docker / release (push) Successful in 4s

A share can now hold a private text (a password, a key, a short note)
with its files or on its own. The upload page's new "Private text" card
takes up to 100 KB; the browser encrypts the text and sends it through
the same chunk pipeline as a file, flagged is_text on share_files, so it
gets the share's password, expiry, download limit and cleanup.

The recipient sees the text only after pressing "Show text", which
counts as their download, so a messenger link preview cannot use up a
share limited to one download. The text is left out of the file list,
the ZIP and the file counts; the admin dashboard marks shares that hold
one with "Text".

The website gains a Private text feature card and a fifth phone
screenshot; every screenshot is retaken.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Andreas Reinhold / reini
2026-09-26 07:00:17 +02:00
co-authored by Claude Opus 5.5
parent 202813a1e6
commit f9a7839ad3
73 changed files with 806 additions and 134 deletions
+14 -1
View File
@@ -1195,6 +1195,13 @@ a.skip-link:focus-visible {
margin-inline: auto;
}
/* Five phones in two columns: the last one sits centred on its own row. */
.gallery--phone > li:last-child:nth-child(odd) {
grid-column: 1 / -1;
justify-self: center;
width: calc((100% - var(--md-sys-measurement-space200)) / 2);
}
.gallery[hidden] {
display: none;
}
@@ -1229,9 +1236,15 @@ a.skip-link:focus-visible {
}
.gallery--phone {
grid-template-columns: repeat(4, minmax(0, 1fr));
grid-template-columns: repeat(5, minmax(0, 1fr));
column-gap: var(--md-sys-measurement-space400);
}
.gallery--phone > li:last-child:nth-child(odd) {
grid-column: auto;
justify-self: stretch;
width: auto;
}
}
@media (width >= 1200px) {