botserver/web/desktop/mail/mail.js
Rodrigo Rodriguez (Pragmatismo) 01e89c9358 feat: add actix-files dependency for file serving support
Added actix-files and its dependencies (http-range, mime_guess, unicase, v_htmlescape) to enable static file functionality in the botserver. This will allow serving static assets and files through the web server. The change includes all required transitive dependencies for proper file handling and MIME type detection.
2025-11-15 19:08:26 -03:00

78 lines
2.7 KiB
JavaScript

function mailApp() {
return {
currentFolder: 'Inbox',
selectedMail: null,
folders: [
{ name: 'Inbox', icon: '📥', count: 4 },
{ name: 'Sent', icon: '📤', count: 0 },
{ name: 'Drafts', icon: '📝', count: 2 },
{ name: 'Starred', icon: '⭐', count: 0 },
{ name: 'Trash', icon: '🗑', count: 0 }
],
mails: [
{
id: 1,
from: 'Sarah Johnson',
to: 'me@example.com',
subject: 'Q4 Project Update',
preview: 'Hi team, I wanted to share the latest updates on our Q4 projects...',
body: '<p>Hi team,</p><p>I wanted to share the latest updates on our Q4 projects. We\'ve made significant progress on the main deliverables and are on track to meet our goals.</p><p>Please review the attached documents and let me know if you have any questions.</p><p>Best regards,<br>Sarah</p>',
time: '10:30 AM',
date: 'Nov 15, 2025',
read: false
},
{
id: 2,
from: 'Mike Chen',
to: 'me@example.com',
subject: 'Meeting Tomorrow',
preview: 'Don\'t forget about our meeting tomorrow at 2 PM...',
body: '<p>Hi,</p><p>Don\'t forget about our meeting tomorrow at 2 PM to discuss the new features.</p><p>See you then!<br>Mike</p>',
time: '9:15 AM',
date: 'Nov 15, 2025',
read: false
},
{
id: 3,
from: 'Emma Wilson',
to: 'me@example.com',
subject: 'Design Review Complete',
preview: 'The design review for the new dashboard is complete...',
body: '<p>Hi,</p><p>The design review for the new dashboard is complete. Overall, the team is happy with the direction.</p><p>I\'ve made the requested changes and updated the Figma file.</p><p>Thanks,<br>Emma</p>',
time: 'Yesterday',
date: 'Nov 14, 2025',
read: true
},
{
id: 4,
from: 'David Lee',
to: 'me@example.com',
subject: 'Budget Approval Needed',
preview: 'Could you please review and approve the Q1 budget?',
body: '<p>Hi,</p><p>Could you please review and approve the Q1 budget when you get a chance?</p><p>It\'s attached to this email.</p><p>Thanks,<br>David</p>',
time: 'Yesterday',
date: 'Nov 14, 2025',
read: false
}
],
get filteredMails() {
return this.mails;
},
selectMail(mail) {
this.selectedMail = mail;
mail.read = true;
this.updateFolderCounts();
},
updateFolderCounts() {
const inbox = this.folders.find(f => f.name === 'Inbox');
if (inbox) {
inbox.count = this.mails.filter(m => !m.read).length;
}
}
};
}