PDF: separate display name and filename; show filename in picker; fix rename

- Upload dialog now has distinct display name + filename fields, both pre-filled
  from the uploaded file but independently editable
- Rename in file picker shows and edits both display name and filename separately
- Filename conflict checked against both KV store and disk (via rename_no_replace)
- Display name and filename are fully independent — no longer derived from each other
- Add find_pdf_references() helper in storage.mjs for future use
- CSS: fp-name-wrap shows display name + dim monospace filename below it;
  rename mode stacks two inputs; fp-field-label for upload form labels

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-22 11:45:50 +00:00
parent d3df99a8f0
commit 4813a65a53
8 changed files with 116 additions and 42 deletions

View File

@@ -1701,22 +1701,44 @@ nav {
background: var(--surface-raised);
}
.fp-name {
.fp-name-wrap {
flex: 1;
display: flex;
flex-direction: column;
gap: 0.1rem;
overflow: hidden;
min-width: 0;
}
.fp-name {
font-size: 0.9rem;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.fp-filename {
font-size: 0.75rem;
color: var(--text-dim);
font-family: var(--font-mono);
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.fp-rename-input {
flex: 1;
font-size: 0.9rem;
background: var(--bg);
color: var(--text);
border: 1px solid var(--border-focus);
border-radius: 4px;
padding: 0.2rem 0.4rem;
width: 100%;
}
.fp-rename-filename {
font-family: var(--font-mono);
font-size: 0.8rem;
}
.fp-upload-section {
@@ -1729,7 +1751,14 @@ nav {
display: flex;
gap: 0.5rem;
align-items: center;
flex-wrap: wrap;
margin-top: 0.4rem;
}
.fp-field-label {
font-size: 0.85rem;
color: var(--text-dim);
white-space: nowrap;
min-width: 8rem;
}
.fp-upload-row input[type=text] {