fix: unify CSV import/export columns, fix import JS error, fix createThesis VALUES

- Fix createThesis SQL: extra ? placeholder in VALUES (27 values for 26 columns)
- Add createThesis integration tests to catch column/value mismatches
- Add CSV_COLUMNS as single source of truth in ExportController, deriving
  csvHeaders() and positional fallback from it
- Add missing columns to export query + CSV: duration_pages, duration_minutes,
  has_annexes, license_custom, contact_visible, objet
- Add missing columns to import INSERT: license_id, license_custom, cc2r,
  exemplaire_baiu, exemplaire_erg, objet, contact_visible, duration_pages,
  duration_minutes, has_annexes
- Resolve license name → license_id during import
- Fix XamxamInitFilePonds: add file-upload-filepond.js to admin-entry.js
  so FilePond initialization code is available on the admin list page
- Add FilePond vendor CSS to admin.min.css bundle (import dialog styling)
- Generate .admin-file-hint from csvHeaders() instead of hardcoded stale list
- Use positional fallback from CSV_COLUMNS for import cell parsing
This commit is contained in:
Pontoporeia
2026-07-10 11:56:27 +02:00
parent ce936e3b71
commit 22a49f7cb6
11 changed files with 355 additions and 42 deletions
+9 -2
View File
@@ -102,8 +102,15 @@ async function main() {
// 1. Base bundle: resolve style.css @import chain
total += await bundleCss("style.css", "base.min.css");
// 2. Admin bundle: just minify admin.css (standalone)
total += await bundleCss("admin.css", "admin.min.css");
// 2. Admin bundle: admin.css + filepond vendor CSS (for CSV import dialog)
total += await concatBundle(
[
"admin.css",
"filepond.min.css",
"filepond-plugin-image-preview.min.css",
],
"admin.min.css"
);
// 3. Form bundle: concat + minify form-base.css + form-admin.css + filepond vendor CSS
total += await concatBundle(