@social-mail/social-mail-client 1.2.262 → 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.
@@ -37886,10 +37886,10 @@ System.register(["@web-atoms/core/dist/core/XNode"], function (_export, _context
37886
37886
 
37887
37887
  AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/Loader");
37888
37888
 
37889
- System.register(["tslib", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/dist/style/styled", "@web-atoms/core/dist/web/controls/AtomControl", "../../../../model/model", "@web-atoms/core/dist/core/Bind", "@web-atoms/core/dist/view-model/Action", "../../../../common/controls/audio/AudioRecorder", "../service/ConversationService", "@web-atoms/web-controls/dist/basic/AtomRepeater", "@web-atoms/core/dist/core/InjectProperty", "../../../../common/events/CommonEvents", "../service/MailService", "@web-atoms/date-time/dist/DateTime", "@web-atoms/core/dist/core/sleep", "../../../../common/controls/html/InlineHtmlEditorWithToolbar", "@web-atoms/web-controls/dist/html-editor/AtomHtmlEditor", "@web-atoms/web-controls/dist/html-editor/commands/Align", "@web-atoms/web-controls/dist/html-editor/commands/Bold", "@web-atoms/web-controls/dist/html-editor/commands/Italic", "@web-atoms/web-controls/dist/html-editor/commands/StrikeThrough", "@web-atoms/web-controls/dist/html-editor/commands/Underline", "@web-atoms/web-controls/dist/html-editor/commands/AddLink", "@web-atoms/web-controls/dist/html-editor/commands/Unlink", "@web-atoms/web-controls/dist/html-editor/commands/Separator", "./Insert", "@web-atoms/date-time/dist/TimeSpan", "./Attach", "@web-atoms/core/dist/core/types", "@web-atoms/email-dom/dist/DomToString", "../../../../common/controls/email-recipients/EmailLabel", "../../../../common/controls/Loader", "@web-atoms/core/dist/web/core/AtomUI"], function (_export, _context) {
37889
+ System.register(["tslib", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/dist/style/styled", "@web-atoms/core/dist/web/controls/AtomControl", "../../../../model/model", "@web-atoms/core/dist/core/Bind", "@web-atoms/core/dist/view-model/Action", "../../../../common/controls/audio/AudioRecorder", "../service/ConversationService", "@web-atoms/web-controls/dist/basic/AtomRepeater", "@web-atoms/core/dist/core/InjectProperty", "../../../../common/events/CommonEvents", "../service/MailService", "@web-atoms/date-time/dist/DateTime", "@web-atoms/core/dist/core/sleep", "../../../../common/controls/html/InlineHtmlEditorWithToolbar", "@web-atoms/web-controls/dist/html-editor/AtomHtmlEditor", "@web-atoms/web-controls/dist/html-editor/commands/Align", "@web-atoms/web-controls/dist/html-editor/commands/Bold", "@web-atoms/web-controls/dist/html-editor/commands/Italic", "@web-atoms/web-controls/dist/html-editor/commands/StrikeThrough", "@web-atoms/web-controls/dist/html-editor/commands/Underline", "@web-atoms/web-controls/dist/html-editor/commands/AddLink", "@web-atoms/web-controls/dist/html-editor/commands/Unlink", "@web-atoms/web-controls/dist/html-editor/commands/Separator", "./Insert", "@web-atoms/date-time/dist/TimeSpan", "./Attach", "@web-atoms/core/dist/core/types", "@web-atoms/email-dom/dist/DomToString", "../../../../common/controls/email-recipients/EmailLabel", "../../../../common/controls/Loader", "@web-atoms/core/dist/web/core/AtomUI", "@web-atoms/web-controls/dist/basic/TitleEditor"], function (_export, _context) {
37890
37890
  "use strict";
37891
37891
 
37892
- var __awaiter, __decorate, __metadata, XNode, styled, AtomControl, AppFile, Email, Bind, Action, AudioRecorder, ConversationService, AtomRepeater, InjectProperty, CommonEvents, MailService, DateTime, sleep, MailHtmlEditor, Toolbar, Align, Bold, Italic, StrikeThrough, Underline, AddLink, Unlink, Separator, Insert, TimeSpan, Attach, CancelToken, DomToString, EmailLabel, Loader, descendentElementIterator, MiniComposeBox, css, defaultEmailBody;
37892
+ var __awaiter, __decorate, __metadata, XNode, styled, AtomControl, AppFile, Email, Bind, Action, AudioRecorder, ConversationService, AtomRepeater, InjectProperty, CommonEvents, MailService, DateTime, sleep, MailHtmlEditor, Toolbar, Align, Bold, Italic, StrikeThrough, Underline, AddLink, Unlink, Separator, Insert, TimeSpan, Attach, CancelToken, DomToString, EmailLabel, Loader, descendentElementIterator, TitleEditor, MiniComposeBox, css, defaultEmailBody;
37893
37893
  _export("default", void 0);
37894
37894
  return {
37895
37895
  setters: [function (_tslib) {
@@ -37961,6 +37961,8 @@ System.register(["tslib", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/di
37961
37961
  Loader = _commonControlsLoader.default;
37962
37962
  }, function (_webAtomsCoreDistWebCoreAtomUI) {
37963
37963
  descendentElementIterator = _webAtomsCoreDistWebCoreAtomUI.descendentElementIterator;
37964
+ }, function (_webAtomsWebControlsDistBasicTitleEditor) {
37965
+ TitleEditor = _webAtomsWebControlsDistBasicTitleEditor.default;
37964
37966
  }],
37965
37967
  execute: function () {
37966
37968
  css = styled.css`
@@ -38005,7 +38007,7 @@ System.register(["tslib", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/di
38005
38007
  border-color: transparent;
38006
38008
  }
38007
38009
 
38008
- & input.subject {
38010
+ & .subject {
38009
38011
  border-bottom: solid 1px lightgray;
38010
38012
  place-self: stretch;
38011
38013
  margin-left: 5px;
@@ -38015,6 +38017,10 @@ System.register(["tslib", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/di
38015
38017
  outline: none;
38016
38018
  border: none;
38017
38019
  border-bottom: solid 1px lightgray;
38020
+ & input {
38021
+ border: none;
38022
+ outline: none;
38023
+ }
38018
38024
  }
38019
38025
  `.installLocal();
38020
38026
  defaultEmailBody = `<section style="background-color: white; color: black;">
@@ -38034,20 +38040,19 @@ System.register(["tslib", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/di
38034
38040
  this.app.runAsync(() => this.init());
38035
38041
  }
38036
38042
  init() {
38037
- var _a, _b, _c, _d, _e;
38038
- var _f;
38043
+ var _a, _b, _c;
38039
38044
  return __awaiter(this, void 0, void 0, function* () {
38040
38045
  this.renderer = XNode.create("div", null, XNode.create(Loader, null));
38041
38046
  yield sleep(100);
38042
- (_a = this.draft) !== null && _a !== void 0 ? _a : this.draft = (_b = yield this.conversationService.getDraft(this.mailboxContact)) === null || _b === void 0 ? void 0 : _b.email;
38043
- if (this.draft) {
38044
- (_c = (_f = this.draft).attachments) !== null && _c !== void 0 ? _c : _f.attachments = [];
38047
+ (_a = this.draft) !== null && _a !== void 0 ? _a : this.draft = null;
38048
+ if (!this.draft) {
38049
+ this.ensureDraft();
38045
38050
  }
38046
- this.typedMessage = ((_d = this.draft) === null || _d === void 0 ? void 0 : _d.htmlBody) ? this.draft.htmlBody : defaultEmailBody;
38051
+ this.typedMessage = ((_b = this.draft) === null || _b === void 0 ? void 0 : _b.htmlBody) ? this.draft.htmlBody : defaultEmailBody;
38047
38052
  this.renderer = XNode.create("div", null, XNode.create(MailHtmlEditor, {
38048
38053
  toolbar: () => XNode.create("div", null, XNode.create(Toolbar, null, XNode.create(Insert, null), XNode.create(Separator, null), XNode.create(Attach, null), XNode.create(Separator, null), XNode.create(Bold, null), XNode.create(Italic, null), XNode.create(Underline, null), XNode.create(StrikeThrough, null), XNode.create(Align, {
38049
38054
  alignment: "above"
38050
- }), XNode.create(Separator, null), XNode.create(AddLink, null), XNode.create(Unlink, null)), XNode.create("input", {
38055
+ }), XNode.create(Separator, null), XNode.create(AddLink, null), XNode.create(Unlink, null)), XNode.create(TitleEditor, {
38051
38056
  class: "subject",
38052
38057
  placeholder: "Subject ... ",
38053
38058
  value: Bind.sourceTwoWays(this, x => x.source.draft.subject)
@@ -38089,7 +38094,7 @@ System.register(["tslib", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/di
38089
38094
  }));
38090
38095
  yield sleep(100);
38091
38096
  if (!this.draft.subject) {
38092
- (_e = this.editor.element.querySelector("input.subject")) === null || _e === void 0 ? void 0 : _e.focus();
38097
+ (_c = this.editor.element.querySelector(".subject > input")) === null || _c === void 0 ? void 0 : _c.focus();
38093
38098
  return;
38094
38099
  }
38095
38100
  const editor = this.editor.element.querySelector(`[data-element="editor"]`);
@@ -38315,12 +38320,17 @@ System.register(["tslib", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/di
38315
38320
  this.draft.dateSent = DateTime.now.add(TimeSpan.fromSeconds(30));
38316
38321
  this.draft.dateUpdated = DateTime.now;
38317
38322
  yield this.mailService.send(this.draft);
38323
+ const saved = this.draft;
38318
38324
  this.draft = Email.create({
38319
38325
  subject: "",
38320
38326
  htmlBody: defaultEmailBody,
38321
38327
  attachments: []
38322
38328
  });
38323
38329
  this.editor.htmlContent = this.draft.htmlBody;
38330
+ this.element.dispatchEvent(new CustomEvent("emailSent", {
38331
+ bubbles: true,
38332
+ detail: saved
38333
+ }));
38324
38334
  });
38325
38335
  }
38326
38336
  sendAudioMessage() {
@@ -41020,18 +41030,24 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
41020
41030
  icon: "fas fa-ban",
41021
41031
  label: "Block Sender"
41022
41032
  })));
41023
- this.footerRenderer = () => XNode.create("div", {
41024
- "data-position": "absolute",
41025
- "style-right": "20px",
41026
- "style-bottom": "5px",
41027
- "data-layout": "row"
41028
- }, XNode.create(AddIconTextButton, {
41029
- "event-click": () => this.startCompose(),
41030
- "data-margin-left": "auto",
41031
- text: "Compose"
41032
- }));
41033
+ this.showComposeButton();
41033
41034
  });
41034
41035
  }
41036
+ showComposeButton(email = null) {
41037
+ if (email) {
41038
+ this.mailsRepeater.items.remove(email);
41039
+ }
41040
+ this.footerRenderer = () => XNode.create("div", {
41041
+ "data-position": "absolute",
41042
+ "style-right": "20px",
41043
+ "style-bottom": "5px",
41044
+ "data-layout": "row"
41045
+ }, XNode.create(AddIconTextButton, {
41046
+ "event-click": () => this.startCompose(),
41047
+ "data-margin-left": "auto",
41048
+ text: "Compose"
41049
+ }));
41050
+ }
41035
41051
  startCompose(thread = null, email = null) {
41036
41052
  this.footerRenderer = () => {
41037
41053
  var _a;
@@ -41099,6 +41115,10 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
41099
41115
  emailAddressID,
41100
41116
  mailboxID
41101
41117
  } = this.parameters;
41118
+ const index = this.mails.findIndex(x => x.emailID === emailID);
41119
+ if (index !== -1) {
41120
+ this.mails.removeAt(index);
41121
+ }
41102
41122
  this.mails.insert(0, MailboxContactEmail.create({
41103
41123
  emailID,
41104
41124
  emailAddressID,
@@ -41219,11 +41239,12 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
41219
41239
  this.mailsRepeater.refreshItem(thread);
41220
41240
  });
41221
41241
  }
41222
- replyEmail({
41223
- email
41224
- }, ce) {
41242
+ replyEmail(mce, ce) {
41225
41243
  var _a, _b;
41226
41244
  return __awaiter(this, void 0, void 0, function* () {
41245
+ const {
41246
+ email
41247
+ } = mce;
41227
41248
  const parse = JSON.parse(email.headers);
41228
41249
  const replyTo = (_a = parse === null || parse === void 0 ? void 0 : parse.replyTo) === null || _a === void 0 ? void 0 : _a[0];
41229
41250
  const emailAddressText = this.parameters.emailAddress.emailAddress.toLocaleLowerCase();
@@ -41232,6 +41253,7 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
41232
41253
  const recipients = [EmailRecipient.create({
41233
41254
  name,
41234
41255
  replyTo,
41256
+ emailAddressID: this.parameters.emailAddressID,
41235
41257
  emailAddressText
41236
41258
  })];
41237
41259
  if (/all/i.test(ce.type)) {
@@ -41250,6 +41272,7 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
41250
41272
  }
41251
41273
  recipients.push(EmailRecipient.create({
41252
41274
  name: rName,
41275
+ emailAddressID,
41253
41276
  emailAddressText: emailAddress
41254
41277
  }));
41255
41278
  }
@@ -41307,6 +41330,9 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
41307
41330
  }
41308
41331
  });
41309
41332
  __decorate([InjectProperty, __metadata("design:type", ConversationService)], ConversationPage.prototype, "conversationService", void 0);
41333
+ __decorate([Action({
41334
+ onEvent: "emailSent"
41335
+ }), __metadata("design:type", Function), __metadata("design:paramtypes", [Object]), __metadata("design:returntype", void 0)], ConversationPage.prototype, "showComposeButton", null);
41310
41336
  __decorate([Action({
41311
41337
  onEvent: "edit-draft"
41312
41338
  }), __metadata("design:type", Function), __metadata("design:paramtypes", [Object, Object]), __metadata("design:returntype", void 0)], ConversationPage.prototype, "startCompose", null);