Add guarded task creation directly to completed-task recommendation notices. - Render live recommendation details and task actions in mailbox detail and conversation surfaces. - Prevent duplicate creates, expose existing task links, and support unavailable and retry states. - Cover desktop and mobile surfaces, update notice copy and documentation, and add a release changeset. Files changed: .../fn-9104-mailbox-recommendation-create.md | 7 ++ docs/dashboard-guide.md | 2 +- .../__tests__/task-recommendation-notice.test.ts | 7 ++ packages/core/src/task-recommendation-notice.ts | 9 +- packages/dashboard/app/components/MailboxModal.tsx | 3 + .../app/components/MailboxTaskRecommendations.css | 9 ++ .../app/components/MailboxTaskRecommendations.tsx | 127 +++++++++++++++++++++ packages/dashboard/app/components/MailboxView.tsx | 3 + .../MailboxTaskRecommendations.surfaces.test.tsx | 77 +++++++++++++ .../__tests__/MailboxTaskRecommendations.test.tsx | 72 ++++++++++++ 10 files changed, 311 insertions(+), 5 deletions(-) Fusion-Task-Id: FN-9104 Fusion-Task-Lineage: 94f53bfe-f57f-42ee-970e-56658129c1e0 Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
10 lines
964 B
CSS
10 lines
964 B
CSS
.mailbox-task-recommendations { margin-block: var(--space-2); display: grid; gap: var(--space-2); }
|
|
.mailbox-task-recommendations__item { display: grid; gap: var(--space-3); padding: var(--space-3); }
|
|
.mailbox-task-recommendations__heading { display: flex; align-items: center; gap: var(--space-2); }
|
|
.mailbox-task-recommendations__heading h3, .mailbox-task-recommendations__content p { margin: 0; }
|
|
.mailbox-task-recommendations__heading span { border: var(--border-width) solid var(--color-border); border-radius: var(--radius-md); padding-inline: var(--space-2); background: var(--color-surface); }
|
|
.mailbox-task-recommendations__action { display: grid; gap: var(--space-2); justify-items: start; }
|
|
.mailbox-task-recommendations__error { color: var(--color-error); }
|
|
.mailbox-task-recommendations__unavailable { margin-block: var(--space-2); color: var(--color-warning); }
|
|
@media (max-width: 768px) { .mailbox-task-recommendations .btn { inline-size: 100%; } }
|