mirror of
https://codeberg.org/PostERG/xamxam.git
synced 2026-06-25 16:19:19 +02:00
feat: FilePond production hardening — extension-based validation, server-side size limits (2GB), annexe validation, drop accept attributes, FilePond file styling
This commit is contained in:
@@ -546,24 +546,41 @@
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
/* Drop area panel */
|
||||
.filepond--panel-root {
|
||||
background: var(--bg-secondary);
|
||||
border: 1px dashed var(--border-primary);
|
||||
border: 2px dashed var(--border-primary);
|
||||
border-radius: var(--radius);
|
||||
}
|
||||
|
||||
/* Drop label text */
|
||||
.filepond--drop-label {
|
||||
color: var(--text-secondary);
|
||||
font-size: var(--step--1);
|
||||
}
|
||||
|
||||
/* "Browse" link */
|
||||
.filepond--label-action {
|
||||
color: var(--accent-primary);
|
||||
text-decoration: underline;
|
||||
text-decoration-color: var(--accent-primary);
|
||||
}
|
||||
|
||||
/* File item — keep white for contrast against drop area */
|
||||
.filepond--item-panel {
|
||||
background: var(--bg-secondary);
|
||||
background-color: var(--bg-primary);
|
||||
border: 1px solid var(--border-primary);
|
||||
border-radius: var(--radius);
|
||||
}
|
||||
|
||||
/* File item text — dark on white */
|
||||
.filepond--file {
|
||||
color: var(--text-primary);
|
||||
background-color: var(--bg-tertiary);
|
||||
border: 1px solid var(--accent-primary);
|
||||
}
|
||||
|
||||
.filepond--file .filepond--file-status {
|
||||
color: var(--text-secondary);
|
||||
}
|
||||
|
||||
.filepond--file-info-main {
|
||||
@@ -574,12 +591,41 @@
|
||||
color: var(--text-tertiary);
|
||||
}
|
||||
|
||||
/* Action buttons — dark background, white icons */
|
||||
.filepond--file-action-button {
|
||||
color: var(--text-secondary);
|
||||
cursor: pointer;
|
||||
color: #ffffff;
|
||||
background-color: rgba(0, 0, 0, 0.45);
|
||||
}
|
||||
|
||||
.filepond--file-action-button:hover {
|
||||
color: var(--error);
|
||||
.filepond--file-action-button:hover,
|
||||
.filepond--file-action-button:focus {
|
||||
color: #ffffff;
|
||||
background-color: rgba(0, 0, 0, 0.65);
|
||||
box-shadow: 0 0 0 0.125em rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
|
||||
/* Progress indicator */
|
||||
.filepond--progress-indicator {
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
/* Drag-over highlight */
|
||||
.filepond--hopper[data-hopper-state="drag-over"] .filepond--panel-root {
|
||||
border-color: var(--accent-primary);
|
||||
background: var(--accent-muted);
|
||||
}
|
||||
|
||||
/* Error state */
|
||||
[data-filepond-item-state*="error"] .filepond--item-panel,
|
||||
[data-filepond-item-state*="invalid"] .filepond--item-panel {
|
||||
background-color: var(--error-muted-bg);
|
||||
border-color: var(--error);
|
||||
}
|
||||
|
||||
/* Processing complete */
|
||||
[data-filepond-item-state="processing-complete"] .filepond--item-panel {
|
||||
background-color: var(--bg-primary);
|
||||
}
|
||||
|
||||
/* ── Existing-files list (edit form) ─────────────────────────────────────── */
|
||||
@@ -1075,7 +1121,7 @@ a.recap-file-name:hover {
|
||||
background: var(--bg-primary);
|
||||
border: 1px solid var(--border-primary);
|
||||
border-radius: var(--radius);
|
||||
box-shadow: 0 4px 16px rgba(0,0,0,0.12);
|
||||
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
|
||||
max-height: 220px;
|
||||
overflow-y: auto;
|
||||
display: none;
|
||||
|
||||
Reference in New Issue
Block a user