fix(files): an upload is said once in any order, copy buttons speak, a link list that failed says so
- The queue holds an upload it sees land done while this tab's upload still waits for its answer, so the dialog's notice is the only one whichever comes first; another device's upload follows after. - One `useCopyFeedback` for every Copy beside a value (token, share link, set-password link): Copied for a moment, a notice a screen reader hears, a warning when the clipboard refuses; the token dialog's two Copy buttons are named by what they copy. - The share dialog's link list shows loading, and a load error with Retry, never "no links" — and no New link beside a list it has not seen. - The settings texts say that signing out elsewhere or a password change revokes the API tokens. - DESIGN.md logs the folder-link decisions; the design lab keeps only the chosen renderings of the Links, Tokens and Files rounds.
This commit is contained in:
@@ -77,11 +77,14 @@ export default function DesignLab() {
|
||||
/>
|
||||
</label>
|
||||
<nav className="flex flex-wrap gap-1 text-xs">
|
||||
<a href="#open-tokens" className="rounded-md px-1.5 py-0.5 text-accent state-layer">
|
||||
Tokens
|
||||
<a href="#open-links" className="rounded-md px-1.5 py-0.5 text-success state-layer">
|
||||
Links ✓
|
||||
</a>
|
||||
<a href="#open-files" className="rounded-md px-1.5 py-0.5 text-accent state-layer">
|
||||
Files
|
||||
<a href="#open-tokens" className="rounded-md px-1.5 py-0.5 text-success state-layer">
|
||||
Tokens ✓
|
||||
</a>
|
||||
<a href="#open-files" className="rounded-md px-1.5 py-0.5 text-success state-layer">
|
||||
Files ✓
|
||||
</a>
|
||||
<a href="#decided" className="rounded-md px-1.5 py-0.5 text-success state-layer">
|
||||
A ✓
|
||||
@@ -109,23 +112,25 @@ export default function DesignLab() {
|
||||
<header id="open-links" className="mt-6 scroll-mt-20">
|
||||
<h2 className="text-xl font-bold">Decided · Folder links</h2>
|
||||
<p className="text-sm text-muted">
|
||||
A /watch link that opens a whole folder. Picked: A, A, A — the variants with the accent
|
||||
edge (built; on the public list a picture-less row keeps its glyph above the length).
|
||||
A /watch link that opens a whole folder. Picked: Copy link beside Share with link… in
|
||||
the folder menu, a list the link opens with the player above it, a link mark in the
|
||||
rail.
|
||||
</p>
|
||||
</header>
|
||||
<LinksRound />
|
||||
<header id="open-tokens" className="mt-6 scroll-mt-20">
|
||||
<h2 className="text-xl font-bold">Decided · API tokens, a machine's key to Files</h2>
|
||||
<p className="text-sm text-muted">
|
||||
Settings → API tokens. Picked: A, A, A — the variants with the accent edge (built; the
|
||||
expiry is a segmented control, DESIGN.md "A choice between a few values").
|
||||
Settings → API tokens. Picked: a row per token in three lines, the kind asked first (Hub
|
||||
csere or Egyedi, rights as chips per folder), the token shown once in the same dialog.
|
||||
</p>
|
||||
</header>
|
||||
<TokensRound />
|
||||
<header id="open-files" className="mt-6 scroll-mt-20">
|
||||
<h2 className="text-xl font-bold">Open · Files, the one library</h2>
|
||||
<h2 className="text-xl font-bold">Decided · Files, the one library</h2>
|
||||
<p className="text-sm text-muted">
|
||||
The page that replaces Downloads. The recommended variant has the accent edge.
|
||||
The page that replaced Downloads. Picked: list rows (the grid a toggle), an app-wide
|
||||
download tray, a done notification that copies the link.
|
||||
</p>
|
||||
</header>
|
||||
<FilesRound />
|
||||
|
||||
Reference in New Issue
Block a user