feat(catalog): undo bulk offer edits with guarded history restoration
CI / check (push) Successful in 2m1s
CI / deploy (push) Successful in 18s
CI / publish-container (push) Successful in 1m28s

This commit is contained in:
Simo committed 2026-09-11 10:47:46 +02:00
1 parent 13bd3695cb
commit c5a2b44807
33 files changed
+1399 -116

No files matched your search

+39 -5
View File
@@ -1982,7 +1982,10 @@
"pageSearch": "Categorieën zoeken…",
"back": "Wijzigingen aanpassen",
"selectionLimit": "Selecteer maximaal 500 aanbiedingen per bewerking.",
"refreshing": "Bijgewerkte aanbiedingen vernieuwen…"
"refreshing": "Bijgewerkte aanbiedingen vernieuwen…",
"undo": "Ongedaan maken",
"undoHint": "Je kunt afzonderlijke aanbiedingen ook herstellen via de auditgeschiedenis.",
"undoSuccess": "{count} aanbiedingen hersteld."
},
"discovery": {
"searchPlaceholder": "Naam, classname, meubel-ID of #aanbiedings-ID…",
@@ -2918,7 +2921,8 @@
"fullStory": "Artikelinhoud",
"status": "Publicatiestatus",
"publishAt": "Geplande publicatie",
"publishedAt": "Publicatiedatum"
"publishedAt": "Publicatiedatum",
"pageId": "Categorie"
}
}
},
@@ -3951,11 +3955,11 @@
},
"performance": {
"title": "Prestaties van verzoeken",
"scope": "Aangemelde HK-API’s: servertijd totdat het antwoord klaarstaat. Dit meet geen browserweergave of openbare pagina’s.",
"scope": "Servermetingen voor geauthenticeerde HK-API’s en geselecteerde openbare paginacomponenten. Kies hieronder een groep.",
"refresh": "Vernieuwen",
"shared": "Gedeelde diagnostiek via Redis.",
"local": "Lokale diagnostiek voor deze instantie; gewist bij herstart.",
"retention": "Maximaal 200 recente verzoeken, één uur bewaard. Niet alle metingen worden gegarandeerd opgeslagen.",
"retention": "Maximaal 200 metingen per groep, één uur bewaard. Niet elk verzoek wordt gegarandeerd vastgelegd.",
"search": "Route of operatie-ID",
"sort": "Volgorde",
"slowest": "Langzaamste eerst",
@@ -3970,7 +3974,18 @@
"calls": "{count} oproepen",
"failures": "{count} fouten",
"streaming": "Streamingantwoord: de meting stopt bij het aanmaken van het antwoord, niet aan het einde van de operatie.",
"operation": "Operatie-ID"
"operation": "Operatie-ID",
"kind": "Meetgroep",
"adminApi": "HK-API’s",
"publicPage": "Openbare pagina’s",
"applyFilters": "Filters toepassen",
"publicBoundary": "Openbare metingen omvatten de hoofdcomponent op de server voor /me, nieuws, profielen, evenementen en zoeken. Metadata, afzonderlijk gerenderde onderliggende componenten, netwerkoverdracht en browserweergave zijn uitgesloten. Componentresultaten zijn geen HTTP-statuscodes. Aanroepen tijdens de statische build zijn uitgesloten.",
"outcomes": {
"completed": "Component voltooid",
"failed": "Component mislukt",
"redirect": "Omleiding",
"not-found": "Pagina niet gevonden"
}
},
"importProgress": {
"validating": "Lokale gegevens controleren",
@@ -4230,6 +4245,25 @@
},
"openAudit": "Open Cataloguscontrole om conflicten op te lossen",
"excludedConflicts": "{count, plural, one {# item moet worden gecontroleerd en is uitgesloten van deze import.} other {# items moeten worden gecontroleerd en zijn uitgesloten van deze import.}}"
},
"preflight": {
"filterLabel": "Importcontroles filteren",
"filters": {
"all": "Alles ({count})",
"complete": "Aan te vullen ({count})",
"conflict": "Conflicten ({count})",
"verify": "Te controleren ({count})"
},
"empty": "Geen meubels in deze groep.",
"actions": {
"complete": "Voorstel: bestaand meubel aanvullen",
"import": "Voorstel: nieuw meubel importeren",
"refresh": "Bestaand meubel is compleet; brongegevens vernieuwen",
"conflict": "Los conflicten in lokale gegevens op voordat je importeert",
"verify": "Controleer de niet-geverifieerde onderdelen voordat je doorgaat"
},
"missing": "Ontbreekt: {parts}",
"unknown": "Niet geverifieerd: {parts}"
}
}
},