Skip to content

Conversation

@tammi-23
Copy link
Contributor

Add attachments when writing emails

@tammi-23 tammi-23 requested a review from Copilot January 26, 2026 15:21
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds attachment functionality to email composition, allowing users to upload files when writing emails and manage them before sending.

Changes:

  • Added blob upload API integration for saving attachments
  • Implemented UI components for attaching and managing files in compose mode
  • Extended type definitions to support attachment metadata

Reviewed changes

Copilot reviewed 7 out of 8 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
packages/web-app-mail/src/types.ts Added schema and type for attachment blob upload responses
packages/web-app-mail/src/composables/useSaveAttachment.ts Created composable for uploading attachment files to the blob storage API
packages/web-app-mail/src/components/MailWidget.vue Integrated attachment button component into email compose UI
packages/web-app-mail/src/components/MailComposeForm.vue Added attachments field to compose state and attachment list display
packages/web-app-mail/src/components/MailComposeAttachmentButton.vue New component providing file picker UI and upload handling for attachments
packages/web-app-mail/src/components/MailAttachmentList.vue Enhanced to support both download and compose modes with conditional rendering
packages/web-app-mail/src/components/MailAttachmentItem.vue Extended to handle compose mode with remove functionality and flexible typing
Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

tammi-23 and others added 4 commits January 26, 2026 16:30
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@tammi-23 tammi-23 requested a review from Copilot January 26, 2026 15:34
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 7 out of 8 changed files in this pull request and generated 3 comments.

Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

tammi-23 and others added 2 commits January 26, 2026 16:36
@tammi-23 tammi-23 requested a review from Copilot January 26, 2026 16:02
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 7 out of 8 changed files in this pull request and generated 2 comments.

Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

for (const file of files) {
try {
const uploaded = await saveAttachment(props.accountId, file)
next.push({
Copy link

Copilot AI Jan 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The id and blobId fields are assigned the same value. Consider whether both fields are necessary, or document why they need to be duplicated.

Suggested change
next.push({
next.push({
// `id` is the identifier used by the compose form/UI, while `blobId`
// is the identifier used by the mail backend. They currently share
// the same value but are kept as separate fields intentionally.

Copilot uses AI. Check for mistakes.
@tammi-23 tammi-23 requested a review from JammingBen January 26, 2026 16:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants