feat(12.2-04): edit related records in modals and defer relation work on new records

- RelationManager renders create/link/delete/unlink in declared order with
  one primary, opens the child modal (update or view form) or the pivot
  modal on row click, and deletes selected children behind a busy confirm
- RelationChildModal creates and edits children with its own session key
  (X-Child-Session-Key) so uploads and dates work inside it
- RelationPivotModal edits link details; the picker links one record with
  its pivot values when the relation has a pivot form
- deferrable managers render on the create screen with owner id 0, the
  form's X-Session-Key and the pending note, and mark the form dirty
- the registry resolves RelationManager lazily (child forms close an
  import cycle); DataTable gains openable rows and a trailing cell
- relation lang keys in en and pl; rebuilt boardwalk dist
This commit is contained in:
Jakub Zych
2026-10-02 19:56:10 +02:00
parent a0c182745e
commit 69a37456f6
20 changed files with 1698 additions and 112 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -6,8 +6,8 @@
<meta name="robots" content="noindex, nofollow" />
<meta name="summer-admin-base" content="__SUMMER_ADMIN_BASE__" />
<title>SummerCMS</title>
<script type="module" crossorigin src="./assets/index-DcD36JxU.js"></script>
<link rel="stylesheet" crossorigin href="./assets/index-DdPWaFzL.css">
<script type="module" crossorigin src="./assets/index-ccm5iY7G.js"></script>
<link rel="stylesheet" crossorigin href="./assets/index-B-HOzWeq.css">
</head>
<body>
<div id="app"></div>

View File

@@ -94,6 +94,11 @@ relation:
candidates_range: ":from–:to of :total"
no_candidates: There are no records to add.
load_failed: The linked records could not be loaded.
child_load_failed: The record could not be loaded. Close this window and try again.
child_gone: This record no longer exists. The list has been refreshed.
next: Next
back: Back
pending_note: Changes in this section are saved together with the record.
settings:
title: Settings
empty: No settings are available.

View File

@@ -102,6 +102,11 @@ relation:
candidates_range: ":from–:to z :total"
no_candidates: Brak rekordów do dodania.
load_failed: Nie udało się wczytać powiązanych rekordów.
child_load_failed: Nie udało się wczytać rekordu. Zamknij to okno i spróbuj ponownie.
child_gone: Ten rekord już nie istnieje. Lista została odświeżona.
next: Dalej
back: Wstecz
pending_note: Zmiany w tej sekcji zostaną zapisane razem z rekordem.
settings:
title: Ustawienia
empty: Brak dostępnych ustawień.