feat(studio): allow moving imports into an existing page instead of creating ones
CI / check (push) Successful in 2m31s
CI / deploy (push) Successful in 1m19s
CI / publish-container (push) Successful in 45s

Adds a second mode to the organize-imports dialog: instead of creating
one new page per approved group (which could produce dozens of tiny
pages), the user can pick an existing destination page and have every
approved item moved into it.  No catalog page is created in this mode.

- organizeImportFurni: groups accept destinationPageId; when set, the
  existing page is reused, new offers append after its current highest
  order, moved offers keep their original name, and the real page
  caption is used for logging and results
- OrganizeImportsDialog: mode toggle (create pages / move into page),
  searchable destination picker via /api/admin/catalog/tree?search=,
  name/icon/layout editors hidden in move mode, button shows a move
  count, and the success toast reports moved/added instead of pages
- en + nl translations for the new mode, destination, and move keys
This commit is contained in:
openhands committed 2026-09-11 20:44:26 +02:00
1 parent 61c7519bea
commit caeb4eb0b3
4 files changed
+395 -148

No files matched your search

+10
View File
@@ -2209,6 +2209,16 @@
"desc": "Imported furniture is grouped into suggested pages. Review each group, then create the pages you approve.",
"selectAll": "Select all",
"deselectAll": "Deselect all",
"mode": "Mode",
"modeCreate": "Create new pages",
"modeMove": "Move into an existing page",
"destination": "Destination page",
"destinationChosen": "selected",
"destinationSearchPlaceholder": "Search pages by name…",
"noDestResults": "No pages found",
"destinationHint": "All approved groups are moved into this page — no new page is created.",
"chooseDestination": "Pick a destination page first",
"move": "Move {count, plural, one {1 item} other {# items}}",
"name": "Name",
"icon": "Icon",
"layout": "Layout",
+10
View File
@@ -1977,6 +1977,16 @@
"desc": "Geïmporteerde meubels worden gegroepeerd in voorgestelde pagina's. Bekijk elke groep en maak alleen de pagina's aan die je goedkeurt.",
"selectAll": "Alles selecteren",
"deselectAll": "Alles deselecteren",
"mode": "Modus",
"modeCreate": "Nieuwe pagina's aanmaken",
"modeMove": "Verplaatsen naar bestaande pagina",
"destination": "Doelpagina",
"destinationChosen": "geselecteerd",
"destinationSearchPlaceholder": "Zoek pagina's op naam…",
"noDestResults": "Geen pagina's gevonden",
"destinationHint": "Alle goedgekeurde groepen worden naar deze pagina verplaatst — er wordt geen nieuwe pagina aangemaakt.",
"chooseDestination": "Kies eerst een doelpagina",
"move": "{count, plural, one {1 item verplaatsen} other {# items verplaatsen}}",
"name": "Naam",
"icon": "Icoon",
"layout": "Indeling",