@social-mail/social-mail-client 1.2.261 → 1.2.263
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 +172 -38
- package/dist/admin/AdminAppIndex.pack.js.map +1 -1
- package/dist/admin/AdminAppIndex.pack.min.js +10 -6
- package/dist/admin/AdminAppIndex.pack.min.js.map +1 -1
- package/dist/common/currency.js +1 -1
- package/dist/common/currency.js.map +1 -1
- package/dist/common/pages/stores/products/ProductEditor.d.ts.map +1 -1
- package/dist/common/pages/stores/products/ProductEditor.js +2 -0
- package/dist/common/pages/stores/products/ProductEditor.js.map +1 -1
- package/dist/model/model.d.ts +27 -2
- package/dist/model/model.d.ts.map +1 -1
- package/dist/model/model.js +120 -14
- package/dist/model/model.js.map +1 -1
- package/dist/public/channel/ChannelView.pack.js +120 -14
- package/dist/public/channel/ChannelView.pack.js.map +1 -1
- package/dist/public/channel/ChannelView.pack.min.js +1 -1
- package/dist/public/channel/ChannelView.pack.min.js.map +1 -1
- package/dist/public/store/Store.pack.js +124 -19
- package/dist/public/store/Store.pack.js.map +1 -1
- package/dist/public/store/Store.pack.min.js +3 -3
- package/dist/public/store/Store.pack.min.js.map +1 -1
- package/dist/public/store/StoreItemDetailView.d.ts.map +1 -1
- package/dist/public/store/StoreItemDetailView.js +3 -4
- package/dist/public/store/StoreItemDetailView.js.map +1 -1
- package/dist/public/store/StoreItemListView.d.ts.map +1 -1
- package/dist/public/store/StoreItemListView.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/web/AppIndex.pack.js +172 -38
- package/dist/web/AppIndex.pack.js.map +1 -1
- package/dist/web/AppIndex.pack.min.js +10 -6
- package/dist/web/AppIndex.pack.min.js.map +1 -1
- package/dist/web/page/mails/ConversationPage.d.ts +2 -1
- package/dist/web/page/mails/ConversationPage.d.ts.map +1 -1
- package/dist/web/page/mails/ConversationPage.js +29 -13
- package/dist/web/page/mails/ConversationPage.js.map +1 -1
- package/dist/web/page/mails/mini-compose/MiniComposeBox.d.ts.map +1 -1
- package/dist/web/page/mails/mini-compose/MiniComposeBox.js +21 -11
- package/dist/web/page/mails/mini-compose/MiniComposeBox.js.map +1 -1
- package/package.json +1 -1
- package/src/common/currency.ts +1 -1
- package/src/common/pages/stores/products/ProductEditor.tsx +1 -0
- package/src/model/model.ts +44 -13
- package/src/public/store/StoreItemDetailView.tsx +2 -3
- package/src/public/store/StoreItemListView.tsx +0 -1
- package/src/web/page/mails/ConversationPage.tsx +20 -3
- package/src/web/page/mails/mini-compose/MiniComposeBox.tsx +13 -6
package/src/model/model.ts
CHANGED
|
@@ -52,13 +52,13 @@ export interface IAppFile extends IClrEntity {
|
|
|
52
52
|
mailboxLogos?: ICollection<IMailbox>;
|
|
53
53
|
previewContacts?: ICollection<IContact>;
|
|
54
54
|
templates?: ICollection<IEmailTemplate>;
|
|
55
|
+
websiteFolder?: IWebSiteFolder;
|
|
56
|
+
currentVersionWebSites?: ICollection<IWebSiteFolder>;
|
|
55
57
|
stores?: ICollection<IStore>;
|
|
56
58
|
storeItems?: ICollection<IStoreItem>;
|
|
57
59
|
storeMediaFiles?: ICollection<IStoreMediaFile>;
|
|
58
60
|
storeJournals?: ICollection<IStoreJournal>;
|
|
59
61
|
userPins?: ICollection<IUserPin>;
|
|
60
|
-
websiteFolder?: IWebSiteFolder;
|
|
61
|
-
currentVersionWebSites?: ICollection<IWebSiteFolder>;
|
|
62
62
|
websiteVersions?: ICollection<IWebSiteFolderVersion>;
|
|
63
63
|
}
|
|
64
64
|
|
|
@@ -68,7 +68,7 @@ export const AppFile: IModel<IAppFile> = new Model<IAppFile>(
|
|
|
68
68
|
"AppFile",
|
|
69
69
|
["appFileID"],
|
|
70
70
|
{ isFolder: false,name: "",fileSize: 0,contentType: "",isDeleted: false,isShared: false,dateCreated: new DefaultFactory(() => new DateTime()) },
|
|
71
|
-
{"name":"app_files","keys":[{"name":"appFileID","type":"number","generated":"identity"}],"properties":[{"name":"path","type":"string","default":["path","\"\""]},{"name":"isFolder","type":"boolean","default":["isFolder","false"]},{"name":"name","type":"string","default":["name","\"\""]},{"name":"fileSize","type":"number","default":["fileSize","0"]},{"name":"contentType","type":"string","default":["contentType","\"\""]},{"name":"contentDisposition","type":"string","default":["contentDisposition","\"attachment\""]},{"name":"contentID","type":"string","default":["contentID","\"\""]},{"name":"fileContentID","type":"number"},{"name":"creatorID","type":"number"},{"name":"parentID","type":"number"},{"name":"emailID","type":"number"},{"name":"isDeleted","type":"boolean","default":["isDeleted","false"]},{"name":"isShared","type":"boolean","default":["isShared","false"]},{"name":"dateCreated","type":"DateTime","default":["dateCreated","new DefaultFactory(() => new DateTime())"]},{"name":"dateUpdated","type":"DateTime","default":["dateUpdated","new DefaultFactory(() => new DateTime())"]},{"name":"versions","type":"number","default":["versions","0"]}],"relations":[{"name":"fileContent","fkMap":[{"fk":"fileContentID","relatedKey":"fileContentID"}],"relatedName":"FileContent"},{"name":"creator","fkMap":[{"fk":"creatorID","relatedKey":"userID"}],"relatedName":"User"},{"name":"parent","fkMap":[{"fk":"parentID","relatedKey":"appFileID"}],"relatedName":"AppFile"},{"name":"children","isCollection":true,"isInverse":true,"relatedName":"AppFile"},{"name":"email","fkMap":[{"fk":"emailID","relatedKey":"emailID"}],"relatedName":"Email"},{"name":"fileVersions","isCollection":true,"isInverse":true,"relatedName":"AppFileVersion"},{"name":"folderVersions","isCollection":true,"isInverse":true,"relatedName":"AppFileVersion"},{"name":"accessList","isCollection":true,"isInverse":true,"relatedName":"AppFileAccess"},{"name":"tags","isCollection":true,"isInverse":true,"relatedName":"AppFileTag"},{"name":"mailboxLogos","isCollection":true,"isInverse":true,"relatedName":"Mailbox"},{"name":"previewContacts","isCollection":true,"isInverse":true,"relatedName":"Contact"},{"name":"templates","isCollection":true,"isInverse":true,"relatedName":"EmailTemplate"},{"name":"
|
|
71
|
+
{"name":"app_files","keys":[{"name":"appFileID","type":"number","generated":"identity"}],"properties":[{"name":"path","type":"string","default":["path","\"\""]},{"name":"isFolder","type":"boolean","default":["isFolder","false"]},{"name":"name","type":"string","default":["name","\"\""]},{"name":"fileSize","type":"number","default":["fileSize","0"]},{"name":"contentType","type":"string","default":["contentType","\"\""]},{"name":"contentDisposition","type":"string","default":["contentDisposition","\"attachment\""]},{"name":"contentID","type":"string","default":["contentID","\"\""]},{"name":"fileContentID","type":"number"},{"name":"creatorID","type":"number"},{"name":"parentID","type":"number"},{"name":"emailID","type":"number"},{"name":"isDeleted","type":"boolean","default":["isDeleted","false"]},{"name":"isShared","type":"boolean","default":["isShared","false"]},{"name":"dateCreated","type":"DateTime","default":["dateCreated","new DefaultFactory(() => new DateTime())"]},{"name":"dateUpdated","type":"DateTime","default":["dateUpdated","new DefaultFactory(() => new DateTime())"]},{"name":"versions","type":"number","default":["versions","0"]}],"relations":[{"name":"fileContent","fkMap":[{"fk":"fileContentID","relatedKey":"fileContentID"}],"relatedName":"FileContent"},{"name":"creator","fkMap":[{"fk":"creatorID","relatedKey":"userID"}],"relatedName":"User"},{"name":"parent","fkMap":[{"fk":"parentID","relatedKey":"appFileID"}],"relatedName":"AppFile"},{"name":"children","isCollection":true,"isInverse":true,"relatedName":"AppFile"},{"name":"email","fkMap":[{"fk":"emailID","relatedKey":"emailID"}],"relatedName":"Email"},{"name":"fileVersions","isCollection":true,"isInverse":true,"relatedName":"AppFileVersion"},{"name":"folderVersions","isCollection":true,"isInverse":true,"relatedName":"AppFileVersion"},{"name":"accessList","isCollection":true,"isInverse":true,"relatedName":"AppFileAccess"},{"name":"tags","isCollection":true,"isInverse":true,"relatedName":"AppFileTag"},{"name":"mailboxLogos","isCollection":true,"isInverse":true,"relatedName":"Mailbox"},{"name":"previewContacts","isCollection":true,"isInverse":true,"relatedName":"Contact"},{"name":"templates","isCollection":true,"isInverse":true,"relatedName":"EmailTemplate"},{"name":"websiteFolder","isCollection":false,"isInverse":true,"relatedName":"WebSiteFolder"},{"name":"currentVersionWebSites","isCollection":true,"isInverse":true,"relatedName":"WebSiteFolder"},{"name":"stores","isCollection":true,"isInverse":true,"relatedName":"Store"},{"name":"storeItems","isCollection":true,"isInverse":true,"relatedName":"StoreItem"},{"name":"storeMediaFiles","isCollection":true,"isInverse":true,"relatedName":"StoreMediaFile"},{"name":"storeJournals","isCollection":true,"isInverse":true,"relatedName":"StoreJournal"},{"name":"userPins","isCollection":true,"isInverse":true,"relatedName":"UserPin"},{"name":"websiteVersions","isCollection":true,"isInverse":true,"relatedName":"WebSiteFolderVersion"}]}
|
|
72
72
|
);
|
|
73
73
|
modelEntitySchemas["AppFile"] = AppFile;
|
|
74
74
|
|
|
@@ -351,16 +351,19 @@ modelEntitySchemas["CachedItem"] = CachedItem;
|
|
|
351
351
|
export interface IDomain extends IClrEntity {
|
|
352
352
|
readonly domainID?: number;
|
|
353
353
|
name?: string;
|
|
354
|
+
received?: number;
|
|
355
|
+
failed?: number;
|
|
354
356
|
emailAddresses?: ICollection<IEmailAddress>;
|
|
355
357
|
hostedDomain?: IHostedDomain;
|
|
356
358
|
contactDomains?: ICollection<IContactDomain>;
|
|
359
|
+
activities?: ICollection<IServerActivity>;
|
|
357
360
|
}
|
|
358
361
|
|
|
359
362
|
export const Domain: IModel<IDomain> = new Model<IDomain>(
|
|
360
363
|
"Domain",
|
|
361
364
|
["domainID"],
|
|
362
|
-
{ name: "" },
|
|
363
|
-
{"name":"domains","keys":[{"name":"domainID","type":"number","generated":"identity"}],"properties":[{"name":"name","type":"string","default":["name","\"\""]}],"relations":[{"name":"emailAddresses","isCollection":true,"isInverse":true,"relatedName":"EmailAddress"},{"name":"hostedDomain","isCollection":false,"isInverse":true,"relatedName":"HostedDomain"},{"name":"contactDomains","isCollection":true,"isInverse":true,"relatedName":"ContactDomain"}]}
|
|
365
|
+
{ name: "",received: 0,failed: 0 },
|
|
366
|
+
{"name":"domains","keys":[{"name":"domainID","type":"number","generated":"identity"}],"properties":[{"name":"name","type":"string","default":["name","\"\""]},{"name":"received","type":"number","default":["received","0"]},{"name":"failed","type":"number","default":["failed","0"]}],"relations":[{"name":"emailAddresses","isCollection":true,"isInverse":true,"relatedName":"EmailAddress"},{"name":"hostedDomain","isCollection":false,"isInverse":true,"relatedName":"HostedDomain"},{"name":"contactDomains","isCollection":true,"isInverse":true,"relatedName":"ContactDomain"},{"name":"activities","isCollection":true,"isInverse":true,"relatedName":"ServerActivity"}]}
|
|
364
367
|
);
|
|
365
368
|
modelEntitySchemas["Domain"] = Domain;
|
|
366
369
|
|
|
@@ -631,6 +634,8 @@ export interface IMailbox extends IClrEntity {
|
|
|
631
634
|
maxStorage?: number;
|
|
632
635
|
indexAttachments?: boolean;
|
|
633
636
|
indexImageAttachments?: boolean;
|
|
637
|
+
readonly unreplied?: number;
|
|
638
|
+
readonly unread?: number;
|
|
634
639
|
logoID?: number | null;
|
|
635
640
|
description?: string | null;
|
|
636
641
|
dateCreated?: DateTime;
|
|
@@ -663,8 +668,8 @@ export interface IMailbox extends IClrEntity {
|
|
|
663
668
|
export const Mailbox: IModel<IMailbox> = new Model<IMailbox>(
|
|
664
669
|
"Mailbox",
|
|
665
670
|
["mailboxID"],
|
|
666
|
-
{ storage: 0,maxStorage: 0,indexAttachments: false,indexImageAttachments: false,dateCreated: new DefaultFactory(() => new DateTime()),dateUpdated: new DefaultFactory(() => new DateTime()),isChannel: false,isPrivateChannel: false,requireApproval: false,subscriberCount: 0 },
|
|
667
|
-
{"name":"mailboxes","keys":[{"name":"mailboxID","type":"number"}],"properties":[{"name":"domainID","type":"number"},{"name":"storage","type":"number","default":["storage","0"]},{"name":"maxStorage","type":"number","default":["maxStorage","0"]},{"name":"indexAttachments","type":"boolean","default":["indexAttachments","false"]},{"name":"indexImageAttachments","type":"boolean","default":["indexImageAttachments","false"]},{"name":"firstID","type":"number","default":["firstID","0"]},{"name":"recentID","type":"number","default":["recentID","0"]},{"name":"logoID","type":"number"},{"name":"description","type":"string","default":["description","\"\""]},{"name":"dateCreated","type":"DateTime","default":["dateCreated","new DefaultFactory(() => new DateTime())"]},{"name":"dateUpdated","type":"DateTime","default":["dateUpdated","new DefaultFactory(() => new DateTime())"]},{"name":"isChannel","type":"boolean","default":["isChannel","false"]},{"name":"isPrivateChannel","type":"boolean","default":["isPrivateChannel","false"]},{"name":"requireApproval","type":"boolean","default":["requireApproval","false"]},{"name":"subscriberCount","type":"number","default":["subscriberCount","0"]},{"name":"datePublished","type":"DateTime","default":["datePublished","new DefaultFactory(() => new DateTime())"]},{"name":"dateEngaged","type":"DateTime","default":["dateEngaged","new DefaultFactory(() => new DateTime())"]},{"name":"parentID","type":"number","default":["parentID","0"]}],"relations":[{"name":"emailAddress","fkMap":[{"fk":"mailboxID","relatedKey":"emailAddressID"}],"relatedName":"EmailAddress"},{"name":"domain","fkMap":[{"fk":"domainID","relatedKey":"domainID"}],"relatedName":"HostedDomain"},{"name":"logo","fkMap":[{"fk":"logoID","relatedKey":"appFileID"}],"relatedName":"AppFile"},{"name":"contacts","isCollection":true,"isInverse":true,"relatedName":"Contact"},{"name":"templates","isCollection":true,"isInverse":true,"relatedName":"EmailTemplate"},{"name":"emails","isCollection":true,"isInverse":true,"relatedName":"MailboxEmail"},{"name":"mailboxContacts","isCollection":true,"isInverse":true,"relatedName":"MailboxContact"},{"name":"threadEmails","isCollection":true,"isInverse":true,"relatedName":"MailboxContactEmail"},{"name":"syncTargets","isCollection":true,"isInverse":true,"relatedName":"MailboxSyncTarget"},{"name":"channelConfig","isCollection":false,"isInverse":true,"relatedName":"ChannelConfig"},{"name":"subscriberActivities","isCollection":true,"isInverse":true,"relatedName":"SubscriberActivity"},{"name":"userPins","isCollection":true,"isInverse":true,"relatedName":"UserPin"},{"name":"userMailboxes","isCollection":true,"isInverse":true,"relatedName":"UserMailbox"},{"name":"websiteChannels","isCollection":true,"isInverse":true,"relatedName":"WebSiteChannel"}]}
|
|
671
|
+
{ storage: 0,maxStorage: 0,indexAttachments: false,indexImageAttachments: false,unreplied: 0,unread: 0,dateCreated: new DefaultFactory(() => new DateTime()),dateUpdated: new DefaultFactory(() => new DateTime()),isChannel: false,isPrivateChannel: false,requireApproval: false,subscriberCount: 0 },
|
|
672
|
+
{"name":"mailboxes","keys":[{"name":"mailboxID","type":"number"}],"properties":[{"name":"domainID","type":"number"},{"name":"storage","type":"number","default":["storage","0"]},{"name":"maxStorage","type":"number","default":["maxStorage","0"]},{"name":"indexAttachments","type":"boolean","default":["indexAttachments","false"]},{"name":"indexImageAttachments","type":"boolean","default":["indexImageAttachments","false"]},{"name":"firstID","type":"number","default":["firstID","0"]},{"name":"recentID","type":"number","default":["recentID","0"]},{"name":"unreplied","type":"number","default":["unreplied","0"]},{"name":"unread","type":"number","default":["unread","0"]},{"name":"logoID","type":"number"},{"name":"description","type":"string","default":["description","\"\""]},{"name":"dateCreated","type":"DateTime","default":["dateCreated","new DefaultFactory(() => new DateTime())"]},{"name":"dateUpdated","type":"DateTime","default":["dateUpdated","new DefaultFactory(() => new DateTime())"]},{"name":"isChannel","type":"boolean","default":["isChannel","false"]},{"name":"isPrivateChannel","type":"boolean","default":["isPrivateChannel","false"]},{"name":"requireApproval","type":"boolean","default":["requireApproval","false"]},{"name":"subscriberCount","type":"number","default":["subscriberCount","0"]},{"name":"datePublished","type":"DateTime","default":["datePublished","new DefaultFactory(() => new DateTime())"]},{"name":"dateEngaged","type":"DateTime","default":["dateEngaged","new DefaultFactory(() => new DateTime())"]},{"name":"parentID","type":"number","default":["parentID","0"]}],"relations":[{"name":"emailAddress","fkMap":[{"fk":"mailboxID","relatedKey":"emailAddressID"}],"relatedName":"EmailAddress"},{"name":"domain","fkMap":[{"fk":"domainID","relatedKey":"domainID"}],"relatedName":"HostedDomain"},{"name":"logo","fkMap":[{"fk":"logoID","relatedKey":"appFileID"}],"relatedName":"AppFile"},{"name":"contacts","isCollection":true,"isInverse":true,"relatedName":"Contact"},{"name":"templates","isCollection":true,"isInverse":true,"relatedName":"EmailTemplate"},{"name":"emails","isCollection":true,"isInverse":true,"relatedName":"MailboxEmail"},{"name":"mailboxContacts","isCollection":true,"isInverse":true,"relatedName":"MailboxContact"},{"name":"threadEmails","isCollection":true,"isInverse":true,"relatedName":"MailboxContactEmail"},{"name":"syncTargets","isCollection":true,"isInverse":true,"relatedName":"MailboxSyncTarget"},{"name":"channelConfig","isCollection":false,"isInverse":true,"relatedName":"ChannelConfig"},{"name":"subscriberActivities","isCollection":true,"isInverse":true,"relatedName":"SubscriberActivity"},{"name":"userPins","isCollection":true,"isInverse":true,"relatedName":"UserPin"},{"name":"userMailboxes","isCollection":true,"isInverse":true,"relatedName":"UserMailbox"},{"name":"websiteChannels","isCollection":true,"isInverse":true,"relatedName":"WebSiteChannel"}]}
|
|
668
673
|
);
|
|
669
674
|
modelEntitySchemas["Mailbox"] = Mailbox;
|
|
670
675
|
|
|
@@ -690,6 +695,7 @@ export interface IMailboxContact extends IClrEntity {
|
|
|
690
695
|
dateCreated?: DateTime;
|
|
691
696
|
dateUpdated?: DateTime;
|
|
692
697
|
unread?: number;
|
|
698
|
+
readonly replied?: DateTime | null;
|
|
693
699
|
total?: number;
|
|
694
700
|
doNotIndex?: boolean | null;
|
|
695
701
|
doNotIndexAttachments?: boolean | null;
|
|
@@ -714,7 +720,7 @@ export const MailboxContact: IModel<IMailboxContact> = new Model<IMailboxContact
|
|
|
714
720
|
"MailboxContact",
|
|
715
721
|
["mailboxID","emailAddressID"],
|
|
716
722
|
{ dateCreated: new DefaultFactory(() => new DateTime()),dateUpdated: new DefaultFactory(() => new DateTime()),unread: 0,total: 0,isOwner: false,canContribute: false,priority: 0,blocked: false,mute: false,status: "invited" },
|
|
717
|
-
{"name":"mailbox_contacts","keys":[{"name":"mailboxID","type":"number"},{"name":"emailAddressID","type":"number"}],"properties":[{"name":"lastEmailID","type":"number"},{"name":"dateCreated","type":"DateTime","default":["dateCreated","new DefaultFactory(() => new DateTime())"]},{"name":"dateUpdated","type":"DateTime","default":["dateUpdated","new DefaultFactory(() => new DateTime())"]},{"name":"unread","type":"number","default":["unread","0"]},{"name":"total","type":"number","default":["total","0"]},{"name":"doNotIndex","type":"boolean","default":["doNotIndex","false"]},{"name":"doNotIndexAttachments","type":"boolean","default":["doNotIndexAttachments","false"]},{"name":"isOwner","type":"boolean","default":["isOwner","false"]},{"name":"canContribute","type":"boolean","default":["canContribute","false"]},{"name":"priority","type":"number","default":["priority","0"]},{"name":"blocked","type":"boolean","default":["blocked","false"]},{"name":"mute","type":"boolean","default":["mute","false"]},{"name":"status","type":"string","default":["status","\"invited\""]}],"relations":[{"name":"mailbox","fkMap":[{"fk":"mailboxID","relatedKey":"mailboxID"}],"relatedName":"Mailbox"},{"name":"emailAddress","fkMap":[{"fk":"emailAddressID","relatedKey":"emailAddressID"}],"relatedName":"EmailAddress"},{"name":"lastEmail","fkMap":[{"fk":"lastEmailID","relatedKey":"emailID"}],"relatedName":"Email"},{"name":"tags","isCollection":true,"isInverse":true,"relatedName":"MailboxContactTag"}]}
|
|
723
|
+
{"name":"mailbox_contacts","keys":[{"name":"mailboxID","type":"number"},{"name":"emailAddressID","type":"number"}],"properties":[{"name":"lastEmailID","type":"number"},{"name":"dateCreated","type":"DateTime","default":["dateCreated","new DefaultFactory(() => new DateTime())"]},{"name":"dateUpdated","type":"DateTime","default":["dateUpdated","new DefaultFactory(() => new DateTime())"]},{"name":"unread","type":"number","default":["unread","0"]},{"name":"replied","type":"DateTime","default":["replied","new DefaultFactory(() => new DateTime())"]},{"name":"total","type":"number","default":["total","0"]},{"name":"doNotIndex","type":"boolean","default":["doNotIndex","false"]},{"name":"doNotIndexAttachments","type":"boolean","default":["doNotIndexAttachments","false"]},{"name":"isOwner","type":"boolean","default":["isOwner","false"]},{"name":"canContribute","type":"boolean","default":["canContribute","false"]},{"name":"priority","type":"number","default":["priority","0"]},{"name":"blocked","type":"boolean","default":["blocked","false"]},{"name":"mute","type":"boolean","default":["mute","false"]},{"name":"status","type":"string","default":["status","\"invited\""]}],"relations":[{"name":"mailbox","fkMap":[{"fk":"mailboxID","relatedKey":"mailboxID"}],"relatedName":"Mailbox"},{"name":"emailAddress","fkMap":[{"fk":"emailAddressID","relatedKey":"emailAddressID"}],"relatedName":"EmailAddress"},{"name":"lastEmail","fkMap":[{"fk":"lastEmailID","relatedKey":"emailID"}],"relatedName":"Email"},{"name":"tags","isCollection":true,"isInverse":true,"relatedName":"MailboxContactTag"}]}
|
|
718
724
|
);
|
|
719
725
|
modelEntitySchemas["MailboxContact"] = MailboxContact;
|
|
720
726
|
|
|
@@ -870,6 +876,27 @@ export const SearchWordIndex: IModel<ISearchWordIndex> = new Model<ISearchWordIn
|
|
|
870
876
|
);
|
|
871
877
|
modelEntitySchemas["SearchWordIndex"] = SearchWordIndex;
|
|
872
878
|
|
|
879
|
+
export interface IServerActivity extends IClrEntity {
|
|
880
|
+
readonly activityID?: number;
|
|
881
|
+
domainID?: number | null;
|
|
882
|
+
webSiteFolderID?: number | null;
|
|
883
|
+
dateCreated?: DateTime;
|
|
884
|
+
ipAddress?: string;
|
|
885
|
+
activity?: "visit" | "rcpt-not-found" | "mail-received";
|
|
886
|
+
domain?: IDomain;
|
|
887
|
+
webSite?: IWebSiteFolder;
|
|
888
|
+
}
|
|
889
|
+
|
|
890
|
+
export const ServerActivityActivityArray = [{"label":"visit","value":"visit"},{"label":"rcpt-not-found","value":"rcpt-not-found"},{"label":"mail-received","value":"mail-received"}];
|
|
891
|
+
|
|
892
|
+
export const ServerActivity: IModel<IServerActivity> = new Model<IServerActivity>(
|
|
893
|
+
"ServerActivity",
|
|
894
|
+
["activityID"],
|
|
895
|
+
{ dateCreated: new DefaultFactory(() => new DateTime()),ipAddress: "",activity: "visit" },
|
|
896
|
+
{"name":"server_activities","keys":[{"name":"activityID","type":"number","generated":"identity"}],"properties":[{"name":"domainID","type":"number"},{"name":"webSiteFolderID","type":"number"},{"name":"dateCreated","type":"DateTime","default":["dateCreated","new DefaultFactory(() => new DateTime())"]},{"name":"ipAddress","type":"string","default":["ipAddress","\"\""]},{"name":"activity","type":"string","default":["activity","\"visit\""]}],"relations":[{"name":"domain","fkMap":[{"fk":"domainID","relatedKey":"domainID"}],"relatedName":"Domain"},{"name":"webSite","fkMap":[{"fk":"webSiteFolderID","relatedKey":"folderID"}],"relatedName":"WebSiteFolder"}]}
|
|
897
|
+
);
|
|
898
|
+
modelEntitySchemas["ServerActivity"] = ServerActivity;
|
|
899
|
+
|
|
873
900
|
export interface IStore extends IClrEntity {
|
|
874
901
|
readonly storeID?: number;
|
|
875
902
|
name?: string;
|
|
@@ -942,6 +969,8 @@ export interface IStoreItem extends IClrEntity {
|
|
|
942
969
|
dateCreated?: DateTime;
|
|
943
970
|
dateUpdated?: DateTime;
|
|
944
971
|
vendorID?: number | null;
|
|
972
|
+
readonly price?: number;
|
|
973
|
+
readonly maxPrice?: number;
|
|
945
974
|
signed?: string;
|
|
946
975
|
store?: IStore;
|
|
947
976
|
itemFolder?: IStoreItemFolder;
|
|
@@ -965,8 +994,8 @@ export const StoreItemItemTypeArray = [{"label":"product","value":"product"},{"l
|
|
|
965
994
|
export const StoreItem: IModel<IStoreItem> = new Model<IStoreItem>(
|
|
966
995
|
"StoreItem",
|
|
967
996
|
["storeItemID"],
|
|
968
|
-
{ name: "",active: false,itemType: "product",dateCreated: new DefaultFactory(() => new DateTime()),dateUpdated: new DefaultFactory(() => new DateTime()) },
|
|
969
|
-
{"name":"store_items","keys":[{"name":"storeItemID","type":"number","generated":"identity"}],"properties":[{"name":"storeID","type":"number"},{"name":"itemFolderID","type":"number"},{"name":"name","type":"string","default":["name","\"\""]},{"name":"active","type":"boolean","default":["active","false"]},{"name":"internalNotes","type":"string","default":["internalNotes","\"\""]},{"name":"description","type":"string","default":["description","\"\""]},{"name":"itemType","type":"string","default":["itemType","\"product\""]},{"name":"folderID","type":"number"},{"name":"sizeForID","type":"number"},{"name":"variantForID","type":"number"},{"name":"dateCreated","type":"DateTime","default":["dateCreated","new DefaultFactory(() => new DateTime())"]},{"name":"dateUpdated","type":"DateTime","default":["dateUpdated","new DefaultFactory(() => new DateTime())"]},{"name":"vendorID","type":"number"}],"relations":[{"name":"store","fkMap":[{"fk":"storeID","relatedKey":"storeID"}],"relatedName":"Store"},{"name":"itemFolder","fkMap":[{"fk":"itemFolderID","relatedKey":"itemFolderID"}],"relatedName":"StoreItemFolder"},{"name":"fileFolder","fkMap":[{"fk":"folderID","relatedKey":"appFileID"}],"relatedName":"AppFile"},{"name":"sizeFor","fkMap":[{"fk":"sizeForID","relatedKey":"storeItemID"}],"relatedName":"StoreItem"},{"name":"sizes","isCollection":true,"isInverse":true,"relatedName":"StoreItem"},{"name":"variantFor","fkMap":[{"fk":"variantForID","relatedKey":"storeItemID"}],"relatedName":"StoreItem"},{"name":"variants","isCollection":true,"isInverse":true,"relatedName":"StoreItem"},{"name":"vendor","fkMap":[{"fk":"vendorID","relatedKey":"contactID"}],"relatedName":"Contact"},{"name":"storeItemPrices","isCollection":true,"isInverse":true,"relatedName":"StoreItemPrice"},{"name":"priceAddOns","isCollection":true,"isInverse":true,"relatedName":"StorePriceAddOn"},{"name":"mediaFiles","isCollection":true,"isInverse":true,"relatedName":"StoreMediaFile"},{"name":"insights","isCollection":true,"isInverse":true,"relatedName":"StoreInsight"},{"name":"ledgers","isCollection":true,"isInverse":true,"relatedName":"StoreLedger"},{"name":"lineItems","isCollection":true,"isInverse":true,"relatedName":"StoreJournalLineItem"},{"name":"storeItemTags","isCollection":true,"isInverse":true,"relatedName":"StoreItemTag"}]}
|
|
997
|
+
{ name: "",active: false,itemType: "product",dateCreated: new DefaultFactory(() => new DateTime()),dateUpdated: new DefaultFactory(() => new DateTime()),price: 0,maxPrice: 0 },
|
|
998
|
+
{"name":"store_items","keys":[{"name":"storeItemID","type":"number","generated":"identity"}],"properties":[{"name":"storeID","type":"number"},{"name":"itemFolderID","type":"number"},{"name":"name","type":"string","default":["name","\"\""]},{"name":"active","type":"boolean","default":["active","false"]},{"name":"internalNotes","type":"string","default":["internalNotes","\"\""]},{"name":"description","type":"string","default":["description","\"\""]},{"name":"itemType","type":"string","default":["itemType","\"product\""]},{"name":"folderID","type":"number"},{"name":"sizeForID","type":"number"},{"name":"variantForID","type":"number"},{"name":"dateCreated","type":"DateTime","default":["dateCreated","new DefaultFactory(() => new DateTime())"]},{"name":"dateUpdated","type":"DateTime","default":["dateUpdated","new DefaultFactory(() => new DateTime())"]},{"name":"vendorID","type":"number"},{"name":"price","type":"number","default":["price","0"]},{"name":"maxPrice","type":"number","default":["maxPrice","0"]}],"relations":[{"name":"store","fkMap":[{"fk":"storeID","relatedKey":"storeID"}],"relatedName":"Store"},{"name":"itemFolder","fkMap":[{"fk":"itemFolderID","relatedKey":"itemFolderID"}],"relatedName":"StoreItemFolder"},{"name":"fileFolder","fkMap":[{"fk":"folderID","relatedKey":"appFileID"}],"relatedName":"AppFile"},{"name":"sizeFor","fkMap":[{"fk":"sizeForID","relatedKey":"storeItemID"}],"relatedName":"StoreItem"},{"name":"sizes","isCollection":true,"isInverse":true,"relatedName":"StoreItem"},{"name":"variantFor","fkMap":[{"fk":"variantForID","relatedKey":"storeItemID"}],"relatedName":"StoreItem"},{"name":"variants","isCollection":true,"isInverse":true,"relatedName":"StoreItem"},{"name":"vendor","fkMap":[{"fk":"vendorID","relatedKey":"contactID"}],"relatedName":"Contact"},{"name":"storeItemPrices","isCollection":true,"isInverse":true,"relatedName":"StoreItemPrice"},{"name":"priceAddOns","isCollection":true,"isInverse":true,"relatedName":"StorePriceAddOn"},{"name":"mediaFiles","isCollection":true,"isInverse":true,"relatedName":"StoreMediaFile"},{"name":"insights","isCollection":true,"isInverse":true,"relatedName":"StoreInsight"},{"name":"ledgers","isCollection":true,"isInverse":true,"relatedName":"StoreLedger"},{"name":"lineItems","isCollection":true,"isInverse":true,"relatedName":"StoreJournalLineItem"},{"name":"storeItemTags","isCollection":true,"isInverse":true,"relatedName":"StoreItemTag"}]}
|
|
970
999
|
);
|
|
971
1000
|
modelEntitySchemas["StoreItem"] = StoreItem;
|
|
972
1001
|
|
|
@@ -1000,6 +1029,7 @@ export interface IStoreItemPrice extends IClrEntity {
|
|
|
1000
1029
|
amount?: number;
|
|
1001
1030
|
maxAmount?: number | null;
|
|
1002
1031
|
active?: boolean;
|
|
1032
|
+
addonsAmount?: number;
|
|
1003
1033
|
storeItem?: IStoreItem;
|
|
1004
1034
|
addons?: ICollection<IStorePriceAddOn>;
|
|
1005
1035
|
lineItems?: ICollection<IStoreJournalLineItem>;
|
|
@@ -1008,8 +1038,8 @@ export interface IStoreItemPrice extends IClrEntity {
|
|
|
1008
1038
|
export const StoreItemPrice: IModel<IStoreItemPrice> = new Model<IStoreItemPrice>(
|
|
1009
1039
|
"StoreItemPrice",
|
|
1010
1040
|
["priceID"],
|
|
1011
|
-
{ startDate: new DefaultFactory(() => new DateTime()),currency: "",amount: 0,active: false },
|
|
1012
|
-
{"name":"store_item_prices","keys":[{"name":"priceID","type":"number","generated":"identity"}],"properties":[{"name":"storeItemID","type":"number"},{"name":"startDate","type":"DateTime","default":["startDate","new DefaultFactory(() => new DateTime())"]},{"name":"endDate","type":"DateTime","default":["endDate","new DefaultFactory(() => new DateTime())"]},{"name":"currency","type":"string","default":["currency","\"\""]},{"name":"amount","type":"number","default":["amount","0"]},{"name":"maxAmount","type":"number","default":["maxAmount","0"]},{"name":"active","type":"boolean","default":["active","false"]}],"relations":[{"name":"storeItem","fkMap":[{"fk":"storeItemID","relatedKey":"storeItemID"}],"relatedName":"StoreItem"},{"name":"addons","isCollection":true,"isInverse":true,"relatedName":"StorePriceAddOn"},{"name":"lineItems","isCollection":true,"isInverse":true,"relatedName":"StoreJournalLineItem"}]}
|
|
1041
|
+
{ startDate: new DefaultFactory(() => new DateTime()),currency: "",amount: 0,active: false,addonsAmount: 0 },
|
|
1042
|
+
{"name":"store_item_prices","keys":[{"name":"priceID","type":"number","generated":"identity"}],"properties":[{"name":"storeItemID","type":"number"},{"name":"startDate","type":"DateTime","default":["startDate","new DefaultFactory(() => new DateTime())"]},{"name":"endDate","type":"DateTime","default":["endDate","new DefaultFactory(() => new DateTime())"]},{"name":"currency","type":"string","default":["currency","\"\""]},{"name":"amount","type":"number","default":["amount","0"]},{"name":"maxAmount","type":"number","default":["maxAmount","0"]},{"name":"active","type":"boolean","default":["active","false"]},{"name":"addonsAmount","type":"number","default":["addonsAmount","0"]}],"relations":[{"name":"storeItem","fkMap":[{"fk":"storeItemID","relatedKey":"storeItemID"}],"relatedName":"StoreItem"},{"name":"addons","isCollection":true,"isInverse":true,"relatedName":"StorePriceAddOn"},{"name":"lineItems","isCollection":true,"isInverse":true,"relatedName":"StoreJournalLineItem"}]}
|
|
1013
1043
|
);
|
|
1014
1044
|
modelEntitySchemas["StoreItemPrice"] = StoreItemPrice;
|
|
1015
1045
|
|
|
@@ -1347,6 +1377,7 @@ export interface IWebSiteFolder extends IClrEntity {
|
|
|
1347
1377
|
isModified?: boolean;
|
|
1348
1378
|
folder?: IAppFile;
|
|
1349
1379
|
currentVersion?: IAppFile;
|
|
1380
|
+
activities?: ICollection<IServerActivity>;
|
|
1350
1381
|
hosts?: ICollection<IWebSiteFolderHost>;
|
|
1351
1382
|
versions?: ICollection<IWebSiteFolderVersion>;
|
|
1352
1383
|
channels?: ICollection<IWebSiteChannel>;
|
|
@@ -1357,7 +1388,7 @@ export const WebSiteFolder: IModel<IWebSiteFolder> = new Model<IWebSiteFolder>(
|
|
|
1357
1388
|
"WebSiteFolder",
|
|
1358
1389
|
["folderID"],
|
|
1359
1390
|
{ isStatic: false,isTemplate: false,isModified: false },
|
|
1360
|
-
{"name":"web_site_folders","keys":[{"name":"folderID","type":"number"}],"properties":[{"name":"currentVersionID","type":"number"},{"name":"isStatic","type":"boolean","default":["isStatic","false"]},{"name":"isTemplate","type":"boolean","default":["isTemplate","false"]},{"name":"isModified","type":"boolean","default":["isModified","false"]}],"relations":[{"name":"folder","fkMap":[{"fk":"folderID","relatedKey":"appFileID"}],"relatedName":"AppFile"},{"name":"currentVersion","fkMap":[{"fk":"currentVersionID","relatedKey":"appFileID"}],"relatedName":"AppFile"},{"name":"hosts","isCollection":true,"isInverse":true,"relatedName":"WebSiteFolderHost"},{"name":"versions","isCollection":true,"isInverse":true,"relatedName":"WebSiteFolderVersion"},{"name":"channels","isCollection":true,"isInverse":true,"relatedName":"WebSiteChannel"},{"name":"websiteStores","isCollection":true,"isInverse":true,"relatedName":"WebSiteStore"}]}
|
|
1391
|
+
{"name":"web_site_folders","keys":[{"name":"folderID","type":"number"}],"properties":[{"name":"currentVersionID","type":"number"},{"name":"isStatic","type":"boolean","default":["isStatic","false"]},{"name":"isTemplate","type":"boolean","default":["isTemplate","false"]},{"name":"isModified","type":"boolean","default":["isModified","false"]}],"relations":[{"name":"folder","fkMap":[{"fk":"folderID","relatedKey":"appFileID"}],"relatedName":"AppFile"},{"name":"currentVersion","fkMap":[{"fk":"currentVersionID","relatedKey":"appFileID"}],"relatedName":"AppFile"},{"name":"activities","isCollection":true,"isInverse":true,"relatedName":"ServerActivity"},{"name":"hosts","isCollection":true,"isInverse":true,"relatedName":"WebSiteFolderHost"},{"name":"versions","isCollection":true,"isInverse":true,"relatedName":"WebSiteFolderVersion"},{"name":"channels","isCollection":true,"isInverse":true,"relatedName":"WebSiteChannel"},{"name":"websiteStores","isCollection":true,"isInverse":true,"relatedName":"WebSiteStore"}]}
|
|
1361
1392
|
);
|
|
1362
1393
|
modelEntitySchemas["WebSiteFolder"] = WebSiteFolder;
|
|
1363
1394
|
|
|
@@ -11,7 +11,7 @@ import Bind from "@web-atoms/core/dist/core/Bind";
|
|
|
11
11
|
import Action from "@web-atoms/core/dist/view-model/Action";
|
|
12
12
|
import styled from "@web-atoms/core/dist/style/styled";
|
|
13
13
|
import FetchBuilder from "@web-atoms/core/dist/services/FetchBuilder";
|
|
14
|
-
import { formatCurrency } from "../../common/currency";
|
|
14
|
+
import { formatCurrency, formatPrice } from "../../common/currency";
|
|
15
15
|
|
|
16
16
|
const url = (window as any).pageUrl as URL;
|
|
17
17
|
|
|
@@ -103,7 +103,6 @@ export default class StoreItemDetailView extends AtomControl {
|
|
|
103
103
|
const specifications = this.model.mediaFiles.find((x) => x.title === "specs.html");
|
|
104
104
|
|
|
105
105
|
const price = this.model.storeItemPrices[0];
|
|
106
|
-
const sellPrice = price.amount;
|
|
107
106
|
const maxPrice = price.maxAmount ? price.maxAmount : ( Math.ceil(price.amount * 1.1));
|
|
108
107
|
|
|
109
108
|
const [offerHtml, specHtml] = await Promise.all([
|
|
@@ -141,7 +140,7 @@ export default class StoreItemDetailView extends AtomControl {
|
|
|
141
140
|
{this.model.description}
|
|
142
141
|
</p>
|
|
143
142
|
<p>
|
|
144
|
-
<label text={
|
|
143
|
+
<label text={ formatPrice(price) }/>
|
|
145
144
|
</p>
|
|
146
145
|
<button>Buy</button>
|
|
147
146
|
</section>
|
|
@@ -316,6 +316,14 @@ export default class ConversationPage extends ContentPage {
|
|
|
316
316
|
// mailboxContact={this.parameters}
|
|
317
317
|
// />;
|
|
318
318
|
|
|
319
|
+
this.showComposeButton();
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
@Action({ onEvent: "emailSent"})
|
|
323
|
+
showComposeButton(email = null) {
|
|
324
|
+
if (email) {
|
|
325
|
+
this.mailsRepeater.items.remove(email);
|
|
326
|
+
}
|
|
319
327
|
this.footerRenderer = () => <div
|
|
320
328
|
data-position="absolute"
|
|
321
329
|
style-right="20px"
|
|
@@ -324,8 +332,7 @@ export default class ConversationPage extends ContentPage {
|
|
|
324
332
|
<AddIconTextButton
|
|
325
333
|
event-click={() => this.startCompose()}
|
|
326
334
|
data-margin-left="auto"
|
|
327
|
-
text="Compose"
|
|
328
|
-
/>
|
|
335
|
+
text="Compose" />
|
|
329
336
|
</div>;
|
|
330
337
|
}
|
|
331
338
|
|
|
@@ -386,6 +393,13 @@ export default class ConversationPage extends ContentPage {
|
|
|
386
393
|
}
|
|
387
394
|
const { emailID } = email;
|
|
388
395
|
const { emailAddressID, mailboxID } = this.parameters;
|
|
396
|
+
|
|
397
|
+
// if it is present... remove..
|
|
398
|
+
const index = this.mails.findIndex((x) => x.emailID === emailID);
|
|
399
|
+
if (index !== -1) {
|
|
400
|
+
this.mails.removeAt(index);
|
|
401
|
+
}
|
|
402
|
+
|
|
389
403
|
this.mails.insert(0, MailboxContactEmail.create({
|
|
390
404
|
emailID,
|
|
391
405
|
emailAddressID,
|
|
@@ -507,7 +521,8 @@ export default class ConversationPage extends ContentPage {
|
|
|
507
521
|
}
|
|
508
522
|
|
|
509
523
|
@Action({ onEvent: ["reply-email", "reply-all-email" ]})
|
|
510
|
-
async replyEmail(
|
|
524
|
+
async replyEmail(mce: IMailboxContactEmail, ce: CustomEvent) {
|
|
525
|
+
const { email } = mce;
|
|
511
526
|
const parse = JSON.parse(email.headers);
|
|
512
527
|
const replyTo = parse?.replyTo?.[0];
|
|
513
528
|
const emailAddressText = (this.parameters.emailAddress.emailAddress)
|
|
@@ -518,6 +533,7 @@ export default class ConversationPage extends ContentPage {
|
|
|
518
533
|
EmailRecipient.create({
|
|
519
534
|
name,
|
|
520
535
|
replyTo,
|
|
536
|
+
emailAddressID: this.parameters.emailAddressID,
|
|
521
537
|
emailAddressText
|
|
522
538
|
})
|
|
523
539
|
];
|
|
@@ -531,6 +547,7 @@ export default class ConversationPage extends ContentPage {
|
|
|
531
547
|
}
|
|
532
548
|
recipients.push(EmailRecipient.create({
|
|
533
549
|
name: rName,
|
|
550
|
+
emailAddressID,
|
|
534
551
|
emailAddressText: emailAddress
|
|
535
552
|
}));
|
|
536
553
|
}
|
|
@@ -35,6 +35,7 @@ import DomToString from "@web-atoms/email-dom/dist/DomToString";
|
|
|
35
35
|
import EmailLabel from "../../../../common/controls/email-recipients/EmailLabel";
|
|
36
36
|
import Loader from "../../../../common/controls/Loader";
|
|
37
37
|
import { descendentElementIterator } from "@web-atoms/core/dist/web/core/AtomUI";
|
|
38
|
+
import TitleEditor from "@web-atoms/web-controls/dist/basic/TitleEditor";
|
|
38
39
|
|
|
39
40
|
const css = styled.css `
|
|
40
41
|
display: grid;
|
|
@@ -78,7 +79,7 @@ const css = styled.css `
|
|
|
78
79
|
border-color: transparent;
|
|
79
80
|
}
|
|
80
81
|
|
|
81
|
-
&
|
|
82
|
+
& .subject {
|
|
82
83
|
border-bottom: solid 1px lightgray;
|
|
83
84
|
place-self: stretch;
|
|
84
85
|
margin-left: 5px;
|
|
@@ -88,6 +89,10 @@ const css = styled.css `
|
|
|
88
89
|
outline: none;
|
|
89
90
|
border: none;
|
|
90
91
|
border-bottom: solid 1px lightgray;
|
|
92
|
+
& input {
|
|
93
|
+
border: none;
|
|
94
|
+
outline: none;
|
|
95
|
+
}
|
|
91
96
|
}
|
|
92
97
|
`.installLocal();
|
|
93
98
|
|
|
@@ -135,10 +140,10 @@ export default class MiniComposeBox extends AtomControl {
|
|
|
135
140
|
|
|
136
141
|
await sleep(100);
|
|
137
142
|
|
|
138
|
-
this.draft ??=
|
|
143
|
+
this.draft ??= null;
|
|
139
144
|
|
|
140
|
-
if (this.draft) {
|
|
141
|
-
this.
|
|
145
|
+
if (!this.draft) {
|
|
146
|
+
this.ensureDraft();
|
|
142
147
|
}
|
|
143
148
|
|
|
144
149
|
this.typedMessage = this.draft?.htmlBody
|
|
@@ -162,7 +167,7 @@ export default class MiniComposeBox extends AtomControl {
|
|
|
162
167
|
<AddLink/>
|
|
163
168
|
<Unlink/>
|
|
164
169
|
</Toolbar>
|
|
165
|
-
<
|
|
170
|
+
<TitleEditor
|
|
166
171
|
class="subject"
|
|
167
172
|
placeholder="Subject ... "
|
|
168
173
|
value={Bind.sourceTwoWays(this, (x) => x.source.draft.subject)}/>
|
|
@@ -205,7 +210,7 @@ export default class MiniComposeBox extends AtomControl {
|
|
|
205
210
|
await sleep(100);
|
|
206
211
|
|
|
207
212
|
if (!this.draft.subject) {
|
|
208
|
-
(this.editor.element.querySelector("
|
|
213
|
+
(this.editor.element.querySelector(".subject > input") as HTMLInputElement)?.focus();
|
|
209
214
|
return;
|
|
210
215
|
}
|
|
211
216
|
|
|
@@ -432,12 +437,14 @@ export default class MiniComposeBox extends AtomControl {
|
|
|
432
437
|
this.draft.dateSent = DateTime.now.add(TimeSpan.fromSeconds(30));
|
|
433
438
|
this.draft.dateUpdated = DateTime.now;
|
|
434
439
|
await this.mailService.send(this.draft);
|
|
440
|
+
const saved = this.draft;
|
|
435
441
|
this.draft = Email.create({
|
|
436
442
|
subject: "",
|
|
437
443
|
htmlBody: defaultEmailBody,
|
|
438
444
|
attachments: []
|
|
439
445
|
});
|
|
440
446
|
this.editor.htmlContent = this.draft.htmlBody;
|
|
447
|
+
this.element.dispatchEvent(new CustomEvent("emailSent", { bubbles: true, detail: saved }));
|
|
441
448
|
}
|
|
442
449
|
|
|
443
450
|
@Action({})
|