@social-mail/social-mail-client 1.0.37 → 1.0.39

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.
Files changed (29) hide show
  1. package/dist/admin/AdminAppIndex.pack.js +57 -28
  2. package/dist/admin/AdminAppIndex.pack.js.map +1 -1
  3. package/dist/admin/AdminAppIndex.pack.min.js +4 -4
  4. package/dist/admin/AdminAppIndex.pack.min.js.map +1 -1
  5. package/dist/model/model.js +24 -24
  6. package/dist/model/model.js.map +1 -1
  7. package/dist/tsconfig.tsbuildinfo +1 -1
  8. package/dist/web/AppIndex.pack.js +57 -28
  9. package/dist/web/AppIndex.pack.js.map +1 -1
  10. package/dist/web/AppIndex.pack.min.js +4 -4
  11. package/dist/web/AppIndex.pack.min.js.map +1 -1
  12. package/dist/web/page/mails/ConversationPage.js +1 -1
  13. package/dist/web/page/mails/ConversationPage.js.map +1 -1
  14. package/dist/web/page/mails/service/ConversationService.js +17 -2
  15. package/dist/web/page/mails/service/ConversationService.js.map +1 -1
  16. package/node_modules/@web-atoms/entity/dist/models/IClrEntity.d.ts +1 -0
  17. package/node_modules/@web-atoms/entity/dist/models/IClrEntity.d.ts.map +1 -1
  18. package/node_modules/@web-atoms/entity/dist/services/BaseEntityService.d.ts +7 -4
  19. package/node_modules/@web-atoms/entity/dist/services/BaseEntityService.d.ts.map +1 -1
  20. package/node_modules/@web-atoms/entity/dist/services/BaseEntityService.js +15 -1
  21. package/node_modules/@web-atoms/entity/dist/services/BaseEntityService.js.map +1 -1
  22. package/node_modules/@web-atoms/entity/dist/tsconfig.tsbuildinfo +1 -1
  23. package/node_modules/@web-atoms/entity/package.json +1 -1
  24. package/node_modules/@web-atoms/entity/src/models/IClrEntity.ts +2 -0
  25. package/node_modules/@web-atoms/entity/src/services/BaseEntityService.ts +25 -4
  26. package/package.json +2 -2
  27. package/src/model/model.ts +24 -24
  28. package/src/web/page/mails/ConversationPage.tsx +1 -1
  29. package/src/web/page/mails/service/ConversationService.tsx +11 -0
@@ -12852,8 +12852,9 @@ System.register(["tslib", "../models/Cloner", "../models/IEntityModel", "./HttpS
12852
12852
  return length;
12853
12853
  };
12854
12854
  _export("Model", Model = class Model {
12855
- constructor(name, defaults = null) {
12855
+ constructor(name, keys = [], defaults = null) {
12856
12856
  this.name = name;
12857
+ this.keys = keys;
12857
12858
  if (defaults) {
12858
12859
  this.defaults = [];
12859
12860
  for (const key in defaults) {
@@ -12875,6 +12876,19 @@ System.register(["tslib", "../models/Cloner", "../models/IEntityModel", "./HttpS
12875
12876
  }
12876
12877
  return properties;
12877
12878
  }
12879
+ patch(original, updates) {
12880
+ for (const iterator of this.keys) {
12881
+ const originalKey = original[iterator];
12882
+ const updatedKey = updates[iterator];
12883
+ if (updatedKey && updatedKey !== originalKey) {
12884
+ throw new Error(`Cannot update ${iterator} as it is the primary key`);
12885
+ }
12886
+ updates[iterator] = originalKey;
12887
+ }
12888
+ return Object.assign({
12889
+ $type: this.name
12890
+ }, updates);
12891
+ }
12878
12892
  });
12879
12893
  _export("default", BaseEntityService = class BaseEntityService extends HttpSession {
12880
12894
  constructor() {
@@ -13196,7 +13210,7 @@ System.register(["@web-atoms/date-time/dist/DateTime", "@web-atoms/entity/dist/s
13196
13210
  Model = _webAtomsEntityDistServicesBaseEntityService.Model;
13197
13211
  }],
13198
13212
  execute: function () {
13199
- _export("AppRole", AppRole = new Model("AppRole", {
13213
+ _export("AppRole", AppRole = new Model("AppRole", ["roleName"], {
13200
13214
  roleName: ""
13201
13215
  }));
13202
13216
  _export("AppFileContentDispositionArray", AppFileContentDispositionArray = [{
@@ -13206,36 +13220,36 @@ System.register(["@web-atoms/date-time/dist/DateTime", "@web-atoms/entity/dist/s
13206
13220
  "label": "inline",
13207
13221
  "value": "inline"
13208
13222
  }]);
13209
- _export("AppFile", AppFile = new Model("AppFile", {
13223
+ _export("AppFile", AppFile = new Model("AppFile", ["appFileID"], {
13210
13224
  isFolder: false,
13211
13225
  folder: "",
13212
13226
  name: "",
13213
13227
  fileSize: 0,
13214
13228
  contentType: ""
13215
13229
  }));
13216
- _export("AppFileTag", AppFileTag = new Model("AppFileTag", {
13230
+ _export("AppFileTag", AppFileTag = new Model("AppFileTag", ["appFileID", "tagID"], {
13217
13231
  appFileID: 0,
13218
13232
  tagID: 0
13219
13233
  }));
13220
- _export("FileContent", FileContent = new Model("FileContent", {
13234
+ _export("FileContent", FileContent = new Model("FileContent", ["fileContentID"], {
13221
13235
  contentHash: "",
13222
13236
  contentType: "",
13223
13237
  contentSize: 0
13224
13238
  }));
13225
- _export("Configuration", Configuration = new Model("Configuration", {
13239
+ _export("Configuration", Configuration = new Model("Configuration", ["name"], {
13226
13240
  name: "",
13227
13241
  configValue: ""
13228
13242
  }));
13229
- _export("Domain", Domain = new Model("Domain", {
13243
+ _export("Domain", Domain = new Model("Domain", ["domainID"], {
13230
13244
  name: ""
13231
13245
  }));
13232
- _export("HostedDomain", HostedDomain = new Model("HostedDomain", {
13246
+ _export("HostedDomain", HostedDomain = new Model("HostedDomain", ["domainID"], {
13233
13247
  domainID: 0,
13234
13248
  enableReceive: false,
13235
13249
  enableSend: false,
13236
13250
  useRelay: false
13237
13251
  }));
13238
- _export("DomainUser", DomainUser = new Model("DomainUser", {
13252
+ _export("DomainUser", DomainUser = new Model("DomainUser", ["domainID", "userID"], {
13239
13253
  domainID: 0,
13240
13254
  userID: 0,
13241
13255
  isAdmin: false,
@@ -13251,7 +13265,7 @@ System.register(["@web-atoms/date-time/dist/DateTime", "@web-atoms/entity/dist/s
13251
13265
  "label": "https",
13252
13266
  "value": "https"
13253
13267
  }]);
13254
- _export("DomainRelay", DomainRelay = new Model("DomainRelay", {
13268
+ _export("DomainRelay", DomainRelay = new Model("DomainRelay", ["domainRelayID"], {
13255
13269
  domainID: 0,
13256
13270
  type: "smtp",
13257
13271
  host: "",
@@ -13259,7 +13273,7 @@ System.register(["@web-atoms/date-time/dist/DateTime", "@web-atoms/entity/dist/s
13259
13273
  password: "",
13260
13274
  priority: 0
13261
13275
  }));
13262
- _export("DomainKey", DomainKey = new Model("DomainKey", {
13276
+ _export("DomainKey", DomainKey = new Model("DomainKey", ["domainKeyID"], {
13263
13277
  name: "",
13264
13278
  keyType: "",
13265
13279
  publicKey: "",
@@ -13287,7 +13301,7 @@ System.register(["@web-atoms/date-time/dist/DateTime", "@web-atoms/entity/dist/s
13287
13301
  "label": "sent-failed",
13288
13302
  "value": "sent-failed"
13289
13303
  }]);
13290
- _export("Email", Email = new Model("Email", {
13304
+ _export("Email", Email = new Model("Email", ["emailID"], {
13291
13305
  senderName: "",
13292
13306
  senderID: 0,
13293
13307
  received: false,
@@ -13314,31 +13328,31 @@ System.register(["@web-atoms/date-time/dist/DateTime", "@web-atoms/entity/dist/s
13314
13328
  "label": "editor",
13315
13329
  "value": "editor"
13316
13330
  }]);
13317
- _export("EmailRecipient", EmailRecipient = new Model("EmailRecipient", {
13331
+ _export("EmailRecipient", EmailRecipient = new Model("EmailRecipient", ["emailID", "emailAddressID"], {
13318
13332
  emailID: 0,
13319
13333
  emailAddressID: 0,
13320
13334
  type: "from"
13321
13335
  }));
13322
- _export("EmailTag", EmailTag = new Model("EmailTag", {
13336
+ _export("EmailTag", EmailTag = new Model("EmailTag", ["emailID", "tagID"], {
13323
13337
  emailID: 0,
13324
13338
  tagID: 0
13325
13339
  }));
13326
- _export("EmailAddress", EmailAddress = new Model("EmailAddress", {
13340
+ _export("EmailAddress", EmailAddress = new Model("EmailAddress", ["emailAddressID"], {
13327
13341
  emailAddress: "",
13328
13342
  domainID: 0,
13329
13343
  name: ""
13330
13344
  }));
13331
- _export("Mailbox", Mailbox = new Model("Mailbox", {
13345
+ _export("Mailbox", Mailbox = new Model("Mailbox", ["mailboxID"], {
13332
13346
  mailboxID: 0,
13333
13347
  domainID: 0,
13334
13348
  storage: 0,
13335
13349
  maxStorage: 0
13336
13350
  }));
13337
- _export("MailboxEmail", MailboxEmail = new Model("MailboxEmail", {
13351
+ _export("MailboxEmail", MailboxEmail = new Model("MailboxEmail", ["mailboxID", "emailID"], {
13338
13352
  mailboxID: 0,
13339
13353
  emailID: 0
13340
13354
  }));
13341
- _export("MailboxThread", MailboxThread = new Model("MailboxThread", {
13355
+ _export("MailboxThread", MailboxThread = new Model("MailboxThread", ["mailboxID", "emailAddressID"], {
13342
13356
  mailboxID: 0,
13343
13357
  emailAddressID: 0,
13344
13358
  lastEmailID: 0,
@@ -13346,22 +13360,22 @@ System.register(["@web-atoms/date-time/dist/DateTime", "@web-atoms/entity/dist/s
13346
13360
  unread: 0,
13347
13361
  total: 0
13348
13362
  }));
13349
- _export("MailboxThreadEmail", MailboxThreadEmail = new Model("MailboxThreadEmail", {
13363
+ _export("MailboxThreadEmail", MailboxThreadEmail = new Model("MailboxThreadEmail", ["mailboxID", "emailAddressID", "emailID"], {
13350
13364
  mailboxID: 0,
13351
13365
  emailAddressID: 0,
13352
13366
  emailID: 0
13353
13367
  }));
13354
- _export("User", User = new Model("User", {
13368
+ _export("User", User = new Model("User", ["userID"], {
13355
13369
  userName: "",
13356
13370
  displayName: "",
13357
13371
  multiFactor: false,
13358
13372
  dateUpdated: new DateTime()
13359
13373
  }));
13360
- _export("UserRole", UserRole = new Model("UserRole", {
13374
+ _export("UserRole", UserRole = new Model("UserRole", ["userID", "roleName"], {
13361
13375
  userID: 0,
13362
13376
  roleName: ""
13363
13377
  }));
13364
- _export("UserMailbox", UserMailbox = new Model("UserMailbox", {
13378
+ _export("UserMailbox", UserMailbox = new Model("UserMailbox", ["userID", "mailboxID"], {
13365
13379
  userID: 0,
13366
13380
  mailboxID: 0
13367
13381
  }));
@@ -13378,18 +13392,18 @@ System.register(["@web-atoms/date-time/dist/DateTime", "@web-atoms/entity/dist/s
13378
13392
  "label": "one-time",
13379
13393
  "value": "one-time"
13380
13394
  }]);
13381
- _export("UserAuthFactor", UserAuthFactor = new Model("UserAuthFactor", {
13395
+ _export("UserAuthFactor", UserAuthFactor = new Model("UserAuthFactor", ["authFactorID"], {
13382
13396
  userID: 0,
13383
13397
  method: "totp",
13384
13398
  verified: false,
13385
13399
  dateUpdated: new DateTime()
13386
13400
  }));
13387
- _export("LoginSession", LoginSession = new Model("LoginSession", {
13401
+ _export("LoginSession", LoginSession = new Model("LoginSession", ["sessionID"], {
13388
13402
  userID: 0,
13389
13403
  invalid: false,
13390
13404
  dateUpdated: new DateTime()
13391
13405
  }));
13392
- _export("Tag", Tag = new Model("Tag", {
13406
+ _export("Tag", Tag = new Model("Tag", ["tagID"], {
13393
13407
  name: "",
13394
13408
  isSystemTag: false
13395
13409
  }));
@@ -19198,10 +19212,10 @@ System.register(["@web-atoms/core/dist/core/XNode", "./dom/StyleHelper"], functi
19198
19212
 
19199
19213
  AmdLoader.instance.setup("@web-atoms/email-dom/dist/DomToString");
19200
19214
 
19201
- 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"], function (_export, _context) {
19215
+ 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) {
19202
19216
  "use strict";
19203
19217
 
19204
- var __awaiter, __decorate, __metadata, DISingleton, Inject, EntityService, MailboxThreadEmail, Sql, DomToString, XNode, AtomControl, descendentElementIterator, renderMail, ConversationService;
19218
+ var __awaiter, __decorate, __metadata, DISingleton, Inject, EntityService, Email, MailboxThreadEmail, Sql, DomToString, XNode, AtomControl, descendentElementIterator, DateTime, renderMail, ConversationService;
19205
19219
  return {
19206
19220
  setters: [function (_tslib) {
19207
19221
  __awaiter = _tslib.__awaiter;
@@ -19214,6 +19228,7 @@ System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/cor
19214
19228
  }, function (_servicesEntityService) {
19215
19229
  EntityService = _servicesEntityService.default;
19216
19230
  }, function (_modelModel) {
19231
+ Email = _modelModel.Email;
19217
19232
  MailboxThreadEmail = _modelModel.MailboxThreadEmail;
19218
19233
  }, function (_commonSql) {
19219
19234
  Sql = _commonSql.Sql;
@@ -19225,6 +19240,8 @@ System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/cor
19225
19240
  AtomControl = _webAtomsCoreDistWebControlsAtomControl.AtomControl;
19226
19241
  }, function (_webAtomsCoreDistWebCoreAtomUI) {
19227
19242
  descendentElementIterator = _webAtomsCoreDistWebCoreAtomUI.descendentElementIterator;
19243
+ }, function (_webAtomsDateTimeDistDateTime) {
19244
+ DateTime = _webAtomsDateTimeDistDateTime.default;
19228
19245
  }],
19229
19246
  execute: function () {
19230
19247
  _export("renderMail", renderMail = AtomControl.registerProperty("data-html", "html", (c, e, value) => {
@@ -19262,6 +19279,18 @@ System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/cor
19262
19279
  }
19263
19280
  }
19264
19281
  e.appendChild(msg);
19282
+ if (!mail.timeRead) {
19283
+ const timeRead = DateTime.utcNow;
19284
+ mail.timeRead = timeRead;
19285
+ const control = AtomControl.from(e);
19286
+ const entityService = control.app.resolve(EntityService);
19287
+ const {
19288
+ emailID
19289
+ } = mail;
19290
+ entityService.save(Email.patch(mail, {
19291
+ timeRead
19292
+ })).catch(console.error);
19293
+ }
19265
19294
  return;
19266
19295
  }));
19267
19296
  ConversationService = class ConversationService {
@@ -23550,7 +23579,7 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
23550
23579
  items: this.mails
23551
23580
  }, InfiniteRepeater.pagedItems(start => (c, e, cancelToken) => this.conversationService.list({
23552
23581
  start,
23553
- size: 200,
23582
+ size: 10,
23554
23583
  search: this.search,
23555
23584
  mailboxID: mb.mailboxID,
23556
23585
  emailAddressID: mb.emailAddressID,