Patrik
7e81d30808
fix(ui): ensure document unlocks when logging out from edit view of a locked document ( #13142 )
...
### What?
Refactors the `LeaveWithoutSaving` modal to be generic and delegates
document unlock logic back to the `DefaultEditView` component via a
callback.
### Why?
Previously, `unlockDocument` was triggered in a cleanup `useEffect` in
the edit view. When logging out from the edit view, the unlock request
would often fail due to the session ending — leaving the document in a
locked state.
### How?
- Introduced `onConfirm` and `onPrevent` props for `LeaveWithoutSaving`.
- Moved all document lock/unlock logic into `DefaultEditView`’s
`handleLeaveConfirm`.
- Captures the next navigation target via `onPrevent` and evaluates
whether to unlock based on:
- Locking being enabled.
- Current user owning the lock.
- Navigation not targeting internal admin views (`/preview`, `/api`,
`/versions`).
---------
Co-authored-by: Jarrod Flesch <jarrodmflesch@gmail.com >
2025-07-24 09:18:49 -07:00
..
2025-07-03 21:47:16 +00:00
2025-07-09 13:59:22 +00:00
2025-07-24 10:12:45 -04:00
2025-05-19 12:36:40 -03:00
2025-07-09 10:39:02 -04:00
2024-11-16 15:30:05 -05:00
2025-06-05 09:19:19 -07:00
2025-07-24 09:18:49 -07:00
2025-04-08 17:25:29 -03:00
2025-05-19 12:36:40 -03:00
2025-06-30 21:12:26 -04:00
2025-06-05 09:19:19 -07:00
2025-06-19 09:18:29 +00:00
2025-06-05 09:19:19 -07:00
2025-05-19 12:36:40 -03:00
2025-06-05 09:19:19 -07:00
2025-07-24 18:42:17 +03:00
2025-06-05 09:19:19 -07:00
2025-05-19 12:36:40 -03:00
2025-05-19 12:36:40 -03:00
2025-05-19 12:36:40 -03:00
2025-06-05 09:19:19 -07:00
2025-05-19 12:36:40 -03:00
2025-05-19 12:36:40 -03:00
2025-07-18 09:29:26 -04:00
2025-06-05 09:19:19 -07:00
2025-07-17 13:24:22 -04:00
2025-06-05 09:19:19 -07:00
2025-06-30 21:12:26 -04:00
2025-06-05 09:19:19 -07:00
2025-06-05 09:19:19 -07:00
2025-05-19 12:36:40 -03:00
2025-07-24 09:18:49 -07:00
2025-06-11 06:23:22 -07:00
2025-07-12 07:03:26 -04:00
2024-10-30 17:56:50 +00:00
2025-07-11 14:26:48 +00:00
2025-07-23 16:31:05 -04:00
2025-05-19 12:36:40 -03:00
2025-07-03 21:47:16 +00:00
2024-08-13 12:54:33 -04:00
2025-07-21 09:19:51 -04:00
2025-05-19 12:36:40 -03:00
2025-07-24 09:18:49 -07:00
2025-06-05 09:19:19 -07:00
2025-05-19 12:36:40 -03:00
2025-05-19 12:36:40 -03:00
2025-06-05 09:19:19 -07:00
2025-06-05 09:19:19 -07:00
2025-06-05 09:19:19 -07:00
2025-07-24 11:36:46 -04:00
2025-07-11 16:34:55 -04:00
2025-06-05 09:19:19 -07:00
2025-06-05 09:19:19 -07:00
2025-06-05 09:19:19 -07:00
2025-06-05 09:19:19 -07:00
2025-06-05 09:19:19 -07:00
2025-06-05 09:19:19 -07:00
2025-06-05 09:19:19 -07:00
2025-07-18 09:29:26 -04:00
2025-07-18 06:48:27 -04:00
2025-07-16 15:17:43 -04:00
2024-07-23 13:44:44 -04:00
2025-07-23 16:48:25 -07:00
2025-06-27 09:13:52 -04:00
2025-06-26 06:40:18 -04:00
2025-07-10 08:00:26 -07:00
2025-07-10 08:00:26 -07:00
2025-07-10 08:00:26 -07:00
2025-07-10 08:00:26 -07:00
2025-07-10 08:00:26 -07:00
2025-06-29 14:20:54 -04:00
2025-07-12 07:03:12 -04:00
2025-07-02 15:11:38 -04:00
2024-07-11 15:59:38 -04:00
2024-05-25 15:45:05 +00:00
2025-06-04 17:34:37 -03:00
2023-09-01 14:45:41 -04:00
2024-03-07 11:33:46 -05:00
2025-06-05 22:01:55 -03:00
2024-12-31 09:14:56 -05:00
2025-07-18 09:29:26 -04:00
2025-07-16 15:17:43 -04:00
2025-07-16 15:17:43 -04:00
2024-08-13 12:54:33 -04:00
2025-03-05 19:14:35 +00:00
2024-09-16 17:02:08 +00:00
2025-07-24 09:18:49 -07:00
2025-07-18 06:48:27 -04:00
2024-11-11 13:59:05 -05:00
2024-10-11 18:54:39 +00:00
2025-02-17 19:50:32 +00:00
2024-10-11 18:54:39 +00:00
2024-12-17 14:49:29 -05:00
2025-07-11 16:34:55 -04:00
2025-07-02 19:24:53 +03:00
2024-05-01 17:35:41 -04:00
2025-02-07 03:24:49 +00:00
2025-06-05 22:01:55 -03:00
2025-07-18 06:48:27 -04:00
2024-08-14 08:57:04 -04:00
2024-10-14 20:02:26 +00:00
2025-03-05 19:14:35 +00:00
2025-05-12 09:41:18 -04:00
2024-06-17 14:25:36 -04:00
2025-02-14 00:08:20 +00:00
2024-03-14 23:53:47 -04:00
2025-01-14 20:00:00 -03:00
2025-03-05 19:14:35 +00:00