gsxdsm
5ff7a20738
FN-7976: fix mailbox artifact open and view-task popups
Fix Mailbox/Artifacts media auth and ensure View task always opens a usable popup.
- Add artifactMediaUrlWithToken for authenticated img/video/audio/link loads while keeping artifactMediaUrl token-free for fetch and HTML previews
- Load script-capable HTML artifact previews via Authorization + revocable blob URL so tokens never reach allow-scripts iframes
- Keep non-board/list task popups (Mailbox, Documents) visible even when board/list-only popup gating is enabled
- Upgrade duplicate popOut entries so reopening a task refreshes snapshot and origin
- Document the behavior and add a patch changeset
Files changed:
.changeset/fn-7976-mailbox-artifact-fixes.md | 7 +++
docs/dashboard-guide.md | 2 +-
packages/dashboard/app/App.tsx | 15 +++--
.../app/__tests__/App.taskPopupViewGating.test.tsx | 10 ++-
.../dashboard/app/__tests__/api-artifacts.test.ts | 12 +++-
.../api/__tests__/legacy-artifact-media.test.ts | 27 ++++++++
packages/dashboard/app/api/legacy.ts | 21 +++++--
.../dashboard/app/components/ArtifactsGallery.tsx | 72 ++++++++++++++++++----
.../dashboard/app/components/DocumentsView.tsx | 4 +-
.../app/components/MailboxArtifactAttachment.tsx | 6 +-
.../dashboard/app/components/TaskDocumentsTab.tsx | 6 +-
.../components/__tests__/DocumentsView.test.tsx | 31 ++++++----
.../__tests__/MailboxArtifactAttachment.test.tsx | 24 ++++----
.../app/components/__tests__/MailboxView.test.tsx | 8 +--
.../components/__tests__/TaskDocumentsTab.test.tsx | 16 ++---
.../app/hooks/__tests__/usePoppedOutTasks.test.ts | 9 ++-
packages/dashboard/app/hooks/usePoppedOutTasks.ts | 17 +++--
17 files changed, 206 insertions(+), 81 deletions(-)
Fusion-Task-Id: FN-7976
Fusion-Task-Lineage: 4c25b3a6-5836-4629-b33e-647f213e3261
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
2026-07-15 15:30:55 -07:00
..
2026-04-24 19:39:20 -07:00
2026-06-11 08:01:51 -07:00
2026-06-13 11:03:30 -07:00
2026-06-22 23:58:38 -07:00
2026-06-03 20:52:44 -07:00
2026-05-30 14:20:12 -07:00
2026-06-22 15:23:43 -07:00
2026-06-03 19:48:40 -07:00
2026-07-15 15:30:55 -07:00
2026-05-08 17:17:59 -07:00
2026-06-30 01:23:09 -07:00
2026-07-05 11:31:47 -07:00
2026-05-31 08:32:01 -07:00
2026-06-11 09:21:23 -07:00
2026-06-23 00:45:00 -07:00
2026-05-09 10:31:04 -07:00
2026-06-02 18:29:53 -07:00
2026-06-28 02:04:31 -07:00
2026-07-14 18:47:53 -07:00
2026-05-16 12:49:57 -07:00
2026-07-04 21:28:19 -07:00
2026-07-01 08:32:29 -07:00
2026-05-07 18:35:45 -07:00
2026-07-04 10:42:19 -07:00
2026-07-15 15:30:55 -07:00
2026-06-29 15:34:06 -07:00
2026-06-13 16:30:28 -07:00
2026-05-22 20:20:42 -07:00
2026-06-13 11:53:44 -07:00
2026-05-23 20:24:18 -07:00
2026-05-18 05:35:14 -07:00
2026-04-23 13:29:23 -07:00
2026-05-17 10:37:54 -07:00
2026-05-23 20:24:18 -07:00
2026-07-11 18:06:22 -07:00
2026-06-18 21:38:24 -07:00
2026-05-22 20:20:42 -07:00
2026-06-29 14:50:02 -07:00
2026-05-22 20:20:42 -07:00
2026-05-22 20:20:42 -07:00
2026-05-22 20:20:42 -07:00
2026-04-24 19:39:20 -07:00
2026-07-01 18:01:17 -07:00
2026-06-03 22:31:23 -07:00
2026-06-03 15:32:29 -07:00
2026-07-07 08:27:26 -07:00
2026-07-01 16:43:08 -07:00
2026-07-03 07:47:03 -07:00
2026-07-12 19:39:42 -07:00
2026-07-11 00:01:10 -07:00
2026-06-22 23:58:38 -07:00
2026-05-10 23:36:10 -07:00
2026-05-29 20:05:14 -07:00
2026-06-08 14:22:03 -07:00
2026-06-22 18:21:06 -07:00
2026-05-22 20:20:42 -07:00
2026-06-13 11:22:07 -07:00
2026-05-23 20:24:18 -07:00
2026-06-24 23:32:52 -07:00
2026-05-23 20:24:18 -07:00
2026-07-05 12:24:12 -07:00
2026-05-23 20:24:18 -07:00
2026-03-28 16:30:23 -04:00
2026-04-24 22:25:57 -07:00
2026-06-27 23:08:10 -07:00
2026-06-21 00:15:00 -07:00
2026-07-10 22:25:21 -07:00
2026-06-30 23:45:00 -07:00
2026-07-10 22:25:21 -07:00
2026-05-29 08:20:28 -07:00
2026-06-05 01:53:42 -07:00
2026-06-04 22:00:04 -07:00
2026-07-14 22:58:59 -07:00
2026-07-15 15:21:16 -07:00
2026-04-24 19:39:20 -07:00
2026-06-30 23:45:02 -07:00
2026-06-30 13:43:28 -07:00
2026-05-07 23:21:05 -07:00
2026-05-08 01:57:55 -07:00
2026-05-06 05:29:56 -07:00
2026-07-08 09:19:42 -07:00
2026-06-23 10:43:14 -07:00
2026-07-13 07:10:14 -07:00
2026-05-08 07:38:50 -07:00
2026-06-22 03:34:15 -07:00
2026-06-16 19:49:45 -07:00
2026-06-14 13:50:17 -07:00
2026-07-03 07:47:03 -07:00
2026-07-05 11:31:44 -07:00
2026-05-23 20:24:18 -07:00
2026-07-11 22:16:48 -07:00
2026-06-10 00:20:35 -07:00
2026-05-29 20:05:14 -07:00
2026-07-01 11:12:59 -07:00