@social-mail/social-mail-client 1.0.39 → 1.0.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/AdminAppIndex.pack.js +33 -13
- package/dist/admin/AdminAppIndex.pack.js.map +1 -1
- package/dist/admin/AdminAppIndex.pack.min.js +2 -2
- package/dist/admin/AdminAppIndex.pack.min.js.map +1 -1
- package/dist/common/events/CommonEvents.js +16 -0
- package/dist/common/events/CommonEvents.js.map +1 -0
- package/dist/model/model.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/web/AppIndex.pack.js +33 -13
- package/dist/web/AppIndex.pack.js.map +1 -1
- package/dist/web/AppIndex.pack.min.js +2 -2
- package/dist/web/AppIndex.pack.min.js.map +1 -1
- package/dist/web/page/mails/service/ConversationService.js +13 -12
- package/dist/web/page/mails/service/ConversationService.js.map +1 -1
- package/package.json +1 -1
- package/src/common/events/CommonEvents.ts +6 -0
- package/src/model/model.ts +1 -1
- package/src/web/page/mails/service/ConversationService.tsx +11 -8
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/core/dist/di/Inject", "../../../../services/EntityService", "../../../../model/model", "../../../../common/Sql", "@web-atoms/email-dom/dist/DomToString", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/dist/web/controls/AtomControl", "@web-atoms/core/dist/web/core/AtomUI", "@web-atoms/date-time/dist/DateTime"], function (_export, _context) {
|
|
1
|
+
System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/core/dist/di/Inject", "../../../../services/EntityService", "../../../../model/model", "../../../../common/Sql", "@web-atoms/email-dom/dist/DomToString", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/dist/web/controls/AtomControl", "@web-atoms/core/dist/web/core/AtomUI", "@web-atoms/date-time/dist/DateTime", "../../../../common/events/CommonEvents"], function (_export, _context) {
|
|
2
2
|
"use strict";
|
|
3
3
|
|
|
4
|
-
var __awaiter, __decorate, __metadata, DISingleton, Inject, EntityService,
|
|
4
|
+
var __awaiter, __decorate, __metadata, DISingleton, Inject, EntityService, MailboxThreadEmail, Sql, DomToString, XNode, AtomControl, descendentElementIterator, DateTime, CommonEvents, renderMail, ConversationService;
|
|
5
5
|
return {
|
|
6
6
|
setters: [function (_tslib) {
|
|
7
7
|
__awaiter = _tslib.__awaiter;
|
|
@@ -14,7 +14,6 @@ System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/cor
|
|
|
14
14
|
}, function (_servicesEntityService) {
|
|
15
15
|
EntityService = _servicesEntityService.default;
|
|
16
16
|
}, function (_modelModel) {
|
|
17
|
-
Email = _modelModel.Email;
|
|
18
17
|
MailboxThreadEmail = _modelModel.MailboxThreadEmail;
|
|
19
18
|
}, function (_commonSql) {
|
|
20
19
|
Sql = _commonSql.Sql;
|
|
@@ -28,6 +27,8 @@ System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/cor
|
|
|
28
27
|
descendentElementIterator = _webAtomsCoreDistWebCoreAtomUI.descendentElementIterator;
|
|
29
28
|
}, function (_webAtomsDateTimeDistDateTime) {
|
|
30
29
|
DateTime = _webAtomsDateTimeDistDateTime.default;
|
|
30
|
+
}, function (_commonEventsCommonEvents) {
|
|
31
|
+
CommonEvents = _commonEventsCommonEvents.CommonEvents;
|
|
31
32
|
}],
|
|
32
33
|
execute: function () {
|
|
33
34
|
_export("renderMail", renderMail = AtomControl.registerProperty("data-html", "html", (c, e, value) => {
|
|
@@ -35,7 +36,8 @@ System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/cor
|
|
|
35
36
|
e.innerHTML = "";
|
|
36
37
|
return;
|
|
37
38
|
}
|
|
38
|
-
const
|
|
39
|
+
const thread = value;
|
|
40
|
+
const mail = thread.email;
|
|
39
41
|
const html = mail.htmlBody;
|
|
40
42
|
const msg = document.createElement("div");
|
|
41
43
|
if (!html) {
|
|
@@ -65,17 +67,16 @@ System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/cor
|
|
|
65
67
|
}
|
|
66
68
|
}
|
|
67
69
|
e.appendChild(msg);
|
|
68
|
-
if (!
|
|
70
|
+
if (!thread.timeRead) {
|
|
69
71
|
const timeRead = DateTime.utcNow;
|
|
70
|
-
|
|
72
|
+
thread.timeRead = timeRead;
|
|
71
73
|
const control = AtomControl.from(e);
|
|
72
74
|
const entityService = control.app.resolve(EntityService);
|
|
73
|
-
|
|
74
|
-
emailID
|
|
75
|
-
} = mail;
|
|
76
|
-
entityService.save(Email.patch(mail, {
|
|
75
|
+
entityService.save(MailboxThreadEmail.patch(thread, {
|
|
77
76
|
timeRead
|
|
78
|
-
})).
|
|
77
|
+
})).then(() => {
|
|
78
|
+
CommonEvents.onThreadMarkedAsRead.dispatchEvent(thread);
|
|
79
|
+
}, console.error);
|
|
79
80
|
}
|
|
80
81
|
return;
|
|
81
82
|
}));
|
|
@@ -107,7 +108,7 @@ System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/cor
|
|
|
107
108
|
});
|
|
108
109
|
return {
|
|
109
110
|
total: emails.total,
|
|
110
|
-
items: emails
|
|
111
|
+
items: emails
|
|
111
112
|
};
|
|
112
113
|
});
|
|
113
114
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DISingleton","_webAtomsCoreDistDiDISingleton","default","_webAtomsCoreDistDiInject","Inject","_servicesEntityService","EntityService","_modelModel","
|
|
1
|
+
{"version":3,"names":["DISingleton","_webAtomsCoreDistDiDISingleton","default","_webAtomsCoreDistDiInject","Inject","_servicesEntityService","EntityService","_modelModel","MailboxThreadEmail","_commonSql","Sql","_webAtomsEmailDomDistDomToString","DomToString","_webAtomsCoreDistCoreXNode","XNode","_webAtomsCoreDistWebControlsAtomControl","AtomControl","_webAtomsCoreDistWebCoreAtomUI","descendentElementIterator","_webAtomsDateTimeDistDateTime","DateTime","_commonEventsCommonEvents","CommonEvents","execute","_export","renderMail","registerProperty","c","e","value","innerHTML","thread","mail","email","html","htmlBody","msg","document","createElement","iterator","split","p","appendChild","createTextNode","tagName","src","getAttribute","startsWith","cid","substring","a","attachments","find","x","contentID","setAttribute","appFileID","fileContentID","name","target","timeRead","utcNow","control","from","entityService","app","resolve","save","patch","then","onThreadMarkedAsRead","dispatchEvent","console","error","ConversationService","list","search","mailboxID","emailAddressID","start","size","version","cancelToken","q","query","where","text","iLike","subject","textBody","emails","include","recipients","forEach","r","emailAddress","orderByDescending","emailID","toPagedList","total","items","renderText","div","textContent","renderHtml","toHtml","create","map","__decorate"],"sources":["../../../../../src/web/page/mails/service/ConversationService.tsx"],"sourcesContent":[null],"mappings":"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"}
|
package/package.json
CHANGED
package/src/model/model.ts
CHANGED
|
@@ -150,7 +150,6 @@ export interface IEmail extends IClrEntity {
|
|
|
150
150
|
status?: "queued" | "received" | "draft" | "pending-approval" | "scheduled" | "sent" | "sent-failed";
|
|
151
151
|
originalFileID?: number | null;
|
|
152
152
|
workflowID?: string | null;
|
|
153
|
-
timeRead?: DateTime | null;
|
|
154
153
|
parentID?: number | null;
|
|
155
154
|
senderEmail?: IEmailAddress;
|
|
156
155
|
originalFile?: IAppFile;
|
|
@@ -252,6 +251,7 @@ export interface IMailboxThreadEmail extends IClrEntity {
|
|
|
252
251
|
mailboxID?: number;
|
|
253
252
|
emailAddressID?: number;
|
|
254
253
|
emailID?: number;
|
|
254
|
+
timeRead?: DateTime;
|
|
255
255
|
mailbox?: IMailbox;
|
|
256
256
|
email?: IEmail;
|
|
257
257
|
}
|
|
@@ -1,20 +1,22 @@
|
|
|
1
1
|
import DISingleton from "@web-atoms/core/dist/di/DISingleton";
|
|
2
2
|
import { Inject } from "@web-atoms/core/dist/di/Inject";
|
|
3
3
|
import EntityService from "../../../../services/EntityService";
|
|
4
|
-
import { Email, IEmail, MailboxThreadEmail } from "../../../../model/model";
|
|
4
|
+
import { Email, IEmail, IMailboxThreadEmail, MailboxThreadEmail } from "../../../../model/model";
|
|
5
5
|
import { Sql } from "../../../../common/Sql";
|
|
6
6
|
import DomToString from "@web-atoms/email-dom/dist/DomToString";
|
|
7
7
|
import XNode from "@web-atoms/core/dist/core/XNode";
|
|
8
8
|
import { AtomControl } from "@web-atoms/core/dist/web/controls/AtomControl";
|
|
9
9
|
import { descendentElementIterator} from "@web-atoms/core/dist/web/core/AtomUI";
|
|
10
10
|
import DateTime from "@web-atoms/date-time/dist/DateTime";
|
|
11
|
+
import { CommonEvents } from "../../../../common/events/CommonEvents";
|
|
11
12
|
|
|
12
13
|
export const renderMail = AtomControl.registerProperty("data-html", "html", (c, e, value) => {
|
|
13
14
|
if (!value) {
|
|
14
15
|
e.innerHTML = "";
|
|
15
16
|
return;
|
|
16
17
|
}
|
|
17
|
-
const
|
|
18
|
+
const thread = value as IMailboxThreadEmail;
|
|
19
|
+
const mail = thread.email;
|
|
18
20
|
const html = mail.htmlBody;
|
|
19
21
|
const msg = document.createElement("div");
|
|
20
22
|
if(!html) {
|
|
@@ -44,15 +46,16 @@ export const renderMail = AtomControl.registerProperty("data-html", "html", (c,
|
|
|
44
46
|
}
|
|
45
47
|
}
|
|
46
48
|
e.appendChild(msg);
|
|
47
|
-
if (!
|
|
49
|
+
if (!thread.timeRead) {
|
|
48
50
|
const timeRead = DateTime.utcNow;
|
|
49
|
-
|
|
51
|
+
thread.timeRead = timeRead;
|
|
50
52
|
const control = AtomControl.from(e);
|
|
51
53
|
const entityService = control.app.resolve(EntityService);
|
|
52
|
-
|
|
53
|
-
entityService.save(Email.patch(mail, {
|
|
54
|
+
entityService.save(MailboxThreadEmail.patch(thread, {
|
|
54
55
|
timeRead
|
|
55
|
-
})).
|
|
56
|
+
})).then(() => {
|
|
57
|
+
CommonEvents.onThreadMarkedAsRead.dispatchEvent(thread);
|
|
58
|
+
}, console.error);
|
|
56
59
|
}
|
|
57
60
|
return;
|
|
58
61
|
});
|
|
@@ -84,7 +87,7 @@ export default class ConversationService {
|
|
|
84
87
|
.include((x) => [x.email.recipients.forEach((r) => r.emailAddress), x.email.attachments])
|
|
85
88
|
.orderByDescending((x) => x.emailID)
|
|
86
89
|
.toPagedList({ start, size, cancelToken });
|
|
87
|
-
return { total: emails.total, items: emails
|
|
90
|
+
return { total: emails.total, items: emails };
|
|
88
91
|
}
|
|
89
92
|
|
|
90
93
|
public renderText(html: string) {
|