Normalize collection-item display labels and fix legacy picture translation imports (#1300)

Commit: 1c67a5120f34de50abbf4d5a77f37e288c4a3b42
Date: 2026-05-14 10:00:57 +0000
Author: Copilot

Commit Message

Normalize collection-item display labels and fix legacy picture translation imports (#1300)

* Initial plan

* feat: normalize collection item labels and picture translation imports (#1297)

Story #1298: BrowseCollectionTree already uses ItemDisplayLabel::withDisplayLabel()
and blade renders display_label as primary with internal_name as secondary.
Add three tests for the centralized display-label behavior.

Story #1299: Fix all six legacy picture importers (phase-02 and phase-03):
- Remove nonexistent `type` column from monuments parent-name query
- Skip translation rows where caption/photographer/copyright are all empty
- Use caption as name when present
- Use `{parent title} ({number})` for metadata-only rows
- Add getParentItemName/getParentObjectName/getParentDetailName helpers
  for clean parent-title queries (no fallback to Image N)
- Add parent-name lookup helpers to all three SH importers
Add 34 new unit tests covering all six importers.

Agent-Logs-Url: https://github.com/metanull/inventory-app/sessions/0a22ba97-ac18-41ac-afb8-2adcab2b0ead

Co-authored-by: metanull <20630081+metanull@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: metanull <20630081+metanull@users.noreply.github.com>

---------

Fixes #1298
Fixes #1299

Files Changed


This documentation was automatically generated from Git commit data.