@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
@@ -14814,8 +14814,9 @@ System.register(["tslib", "../models/Cloner", "../models/IEntityModel", "./HttpS
14814
14814
  return length;
14815
14815
  };
14816
14816
  _export("Model", Model = class Model {
14817
- constructor(name, defaults = null) {
14817
+ constructor(name, keys = [], defaults = null) {
14818
14818
  this.name = name;
14819
+ this.keys = keys;
14819
14820
  if (defaults) {
14820
14821
  this.defaults = [];
14821
14822
  for (const key in defaults) {
@@ -14837,6 +14838,19 @@ System.register(["tslib", "../models/Cloner", "../models/IEntityModel", "./HttpS
14837
14838
  }
14838
14839
  return properties;
14839
14840
  }
14841
+ patch(original, updates) {
14842
+ for (const iterator of this.keys) {
14843
+ const originalKey = original[iterator];
14844
+ const updatedKey = updates[iterator];
14845
+ if (updatedKey && updatedKey !== originalKey) {
14846
+ throw new Error(`Cannot update ${iterator} as it is the primary key`);
14847
+ }
14848
+ updates[iterator] = originalKey;
14849
+ }
14850
+ return Object.assign({
14851
+ $type: this.name
14852
+ }, updates);
14853
+ }
14840
14854
  });
14841
14855
  _export("default", BaseEntityService = class BaseEntityService extends HttpSession {
14842
14856
  constructor() {
@@ -15158,7 +15172,7 @@ System.register(["@web-atoms/date-time/dist/DateTime", "@web-atoms/entity/dist/s
15158
15172
  Model = _webAtomsEntityDistServicesBaseEntityService.Model;
15159
15173
  }],
15160
15174
  execute: function () {
15161
- _export("AppRole", AppRole = new Model("AppRole", {
15175
+ _export("AppRole", AppRole = new Model("AppRole", ["roleName"], {
15162
15176
  roleName: ""
15163
15177
  }));
15164
15178
  _export("AppFileContentDispositionArray", AppFileContentDispositionArray = [{
@@ -15168,36 +15182,36 @@ System.register(["@web-atoms/date-time/dist/DateTime", "@web-atoms/entity/dist/s
15168
15182
  "label": "inline",
15169
15183
  "value": "inline"
15170
15184
  }]);
15171
- _export("AppFile", AppFile = new Model("AppFile", {
15185
+ _export("AppFile", AppFile = new Model("AppFile", ["appFileID"], {
15172
15186
  isFolder: false,
15173
15187
  folder: "",
15174
15188
  name: "",
15175
15189
  fileSize: 0,
15176
15190
  contentType: ""
15177
15191
  }));
15178
- _export("AppFileTag", AppFileTag = new Model("AppFileTag", {
15192
+ _export("AppFileTag", AppFileTag = new Model("AppFileTag", ["appFileID", "tagID"], {
15179
15193
  appFileID: 0,
15180
15194
  tagID: 0
15181
15195
  }));
15182
- _export("FileContent", FileContent = new Model("FileContent", {
15196
+ _export("FileContent", FileContent = new Model("FileContent", ["fileContentID"], {
15183
15197
  contentHash: "",
15184
15198
  contentType: "",
15185
15199
  contentSize: 0
15186
15200
  }));
15187
- _export("Configuration", Configuration = new Model("Configuration", {
15201
+ _export("Configuration", Configuration = new Model("Configuration", ["name"], {
15188
15202
  name: "",
15189
15203
  configValue: ""
15190
15204
  }));
15191
- _export("Domain", Domain = new Model("Domain", {
15205
+ _export("Domain", Domain = new Model("Domain", ["domainID"], {
15192
15206
  name: ""
15193
15207
  }));
15194
- _export("HostedDomain", HostedDomain = new Model("HostedDomain", {
15208
+ _export("HostedDomain", HostedDomain = new Model("HostedDomain", ["domainID"], {
15195
15209
  domainID: 0,
15196
15210
  enableReceive: false,
15197
15211
  enableSend: false,
15198
15212
  useRelay: false
15199
15213
  }));
15200
- _export("DomainUser", DomainUser = new Model("DomainUser", {
15214
+ _export("DomainUser", DomainUser = new Model("DomainUser", ["domainID", "userID"], {
15201
15215
  domainID: 0,
15202
15216
  userID: 0,
15203
15217
  isAdmin: false,
@@ -15213,7 +15227,7 @@ System.register(["@web-atoms/date-time/dist/DateTime", "@web-atoms/entity/dist/s
15213
15227
  "label": "https",
15214
15228
  "value": "https"
15215
15229
  }]);
15216
- _export("DomainRelay", DomainRelay = new Model("DomainRelay", {
15230
+ _export("DomainRelay", DomainRelay = new Model("DomainRelay", ["domainRelayID"], {
15217
15231
  domainID: 0,
15218
15232
  type: "smtp",
15219
15233
  host: "",
@@ -15221,7 +15235,7 @@ System.register(["@web-atoms/date-time/dist/DateTime", "@web-atoms/entity/dist/s
15221
15235
  password: "",
15222
15236
  priority: 0
15223
15237
  }));
15224
- _export("DomainKey", DomainKey = new Model("DomainKey", {
15238
+ _export("DomainKey", DomainKey = new Model("DomainKey", ["domainKeyID"], {
15225
15239
  name: "",
15226
15240
  keyType: "",
15227
15241
  publicKey: "",
@@ -15249,7 +15263,7 @@ System.register(["@web-atoms/date-time/dist/DateTime", "@web-atoms/entity/dist/s
15249
15263
  "label": "sent-failed",
15250
15264
  "value": "sent-failed"
15251
15265
  }]);
15252
- _export("Email", Email = new Model("Email", {
15266
+ _export("Email", Email = new Model("Email", ["emailID"], {
15253
15267
  senderName: "",
15254
15268
  senderID: 0,
15255
15269
  received: false,
@@ -15276,31 +15290,31 @@ System.register(["@web-atoms/date-time/dist/DateTime", "@web-atoms/entity/dist/s
15276
15290
  "label": "editor",
15277
15291
  "value": "editor"
15278
15292
  }]);
15279
- _export("EmailRecipient", EmailRecipient = new Model("EmailRecipient", {
15293
+ _export("EmailRecipient", EmailRecipient = new Model("EmailRecipient", ["emailID", "emailAddressID"], {
15280
15294
  emailID: 0,
15281
15295
  emailAddressID: 0,
15282
15296
  type: "from"
15283
15297
  }));
15284
- _export("EmailTag", EmailTag = new Model("EmailTag", {
15298
+ _export("EmailTag", EmailTag = new Model("EmailTag", ["emailID", "tagID"], {
15285
15299
  emailID: 0,
15286
15300
  tagID: 0
15287
15301
  }));
15288
- _export("EmailAddress", EmailAddress = new Model("EmailAddress", {
15302
+ _export("EmailAddress", EmailAddress = new Model("EmailAddress", ["emailAddressID"], {
15289
15303
  emailAddress: "",
15290
15304
  domainID: 0,
15291
15305
  name: ""
15292
15306
  }));
15293
- _export("Mailbox", Mailbox = new Model("Mailbox", {
15307
+ _export("Mailbox", Mailbox = new Model("Mailbox", ["mailboxID"], {
15294
15308
  mailboxID: 0,
15295
15309
  domainID: 0,
15296
15310
  storage: 0,
15297
15311
  maxStorage: 0
15298
15312
  }));
15299
- _export("MailboxEmail", MailboxEmail = new Model("MailboxEmail", {
15313
+ _export("MailboxEmail", MailboxEmail = new Model("MailboxEmail", ["mailboxID", "emailID"], {
15300
15314
  mailboxID: 0,
15301
15315
  emailID: 0
15302
15316
  }));
15303
- _export("MailboxThread", MailboxThread = new Model("MailboxThread", {
15317
+ _export("MailboxThread", MailboxThread = new Model("MailboxThread", ["mailboxID", "emailAddressID"], {
15304
15318
  mailboxID: 0,
15305
15319
  emailAddressID: 0,
15306
15320
  lastEmailID: 0,
@@ -15308,22 +15322,22 @@ System.register(["@web-atoms/date-time/dist/DateTime", "@web-atoms/entity/dist/s
15308
15322
  unread: 0,
15309
15323
  total: 0
15310
15324
  }));
15311
- _export("MailboxThreadEmail", MailboxThreadEmail = new Model("MailboxThreadEmail", {
15325
+ _export("MailboxThreadEmail", MailboxThreadEmail = new Model("MailboxThreadEmail", ["mailboxID", "emailAddressID", "emailID"], {
15312
15326
  mailboxID: 0,
15313
15327
  emailAddressID: 0,
15314
15328
  emailID: 0
15315
15329
  }));
15316
- _export("User", User = new Model("User", {
15330
+ _export("User", User = new Model("User", ["userID"], {
15317
15331
  userName: "",
15318
15332
  displayName: "",
15319
15333
  multiFactor: false,
15320
15334
  dateUpdated: new DateTime()
15321
15335
  }));
15322
- _export("UserRole", UserRole = new Model("UserRole", {
15336
+ _export("UserRole", UserRole = new Model("UserRole", ["userID", "roleName"], {
15323
15337
  userID: 0,
15324
15338
  roleName: ""
15325
15339
  }));
15326
- _export("UserMailbox", UserMailbox = new Model("UserMailbox", {
15340
+ _export("UserMailbox", UserMailbox = new Model("UserMailbox", ["userID", "mailboxID"], {
15327
15341
  userID: 0,
15328
15342
  mailboxID: 0
15329
15343
  }));
@@ -15340,18 +15354,18 @@ System.register(["@web-atoms/date-time/dist/DateTime", "@web-atoms/entity/dist/s
15340
15354
  "label": "one-time",
15341
15355
  "value": "one-time"
15342
15356
  }]);
15343
- _export("UserAuthFactor", UserAuthFactor = new Model("UserAuthFactor", {
15357
+ _export("UserAuthFactor", UserAuthFactor = new Model("UserAuthFactor", ["authFactorID"], {
15344
15358
  userID: 0,
15345
15359
  method: "totp",
15346
15360
  verified: false,
15347
15361
  dateUpdated: new DateTime()
15348
15362
  }));
15349
- _export("LoginSession", LoginSession = new Model("LoginSession", {
15363
+ _export("LoginSession", LoginSession = new Model("LoginSession", ["sessionID"], {
15350
15364
  userID: 0,
15351
15365
  invalid: false,
15352
15366
  dateUpdated: new DateTime()
15353
15367
  }));
15354
- _export("Tag", Tag = new Model("Tag", {
15368
+ _export("Tag", Tag = new Model("Tag", ["tagID"], {
15355
15369
  name: "",
15356
15370
  isSystemTag: false
15357
15371
  }));
@@ -17367,10 +17381,10 @@ System.register(["@web-atoms/core/dist/core/XNode", "./dom/StyleHelper"], functi
17367
17381
 
17368
17382
  AmdLoader.instance.setup("@web-atoms/email-dom/dist/DomToString");
17369
17383
 
17370
- 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) {
17384
+ 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) {
17371
17385
  "use strict";
17372
17386
 
17373
- var __awaiter, __decorate, __metadata, DISingleton, Inject, EntityService, MailboxThreadEmail, Sql, DomToString, XNode, AtomControl, descendentElementIterator, renderMail, ConversationService;
17387
+ var __awaiter, __decorate, __metadata, DISingleton, Inject, EntityService, Email, MailboxThreadEmail, Sql, DomToString, XNode, AtomControl, descendentElementIterator, DateTime, renderMail, ConversationService;
17374
17388
  return {
17375
17389
  setters: [function (_tslib) {
17376
17390
  __awaiter = _tslib.__awaiter;
@@ -17383,6 +17397,7 @@ System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/cor
17383
17397
  }, function (_servicesEntityService) {
17384
17398
  EntityService = _servicesEntityService.default;
17385
17399
  }, function (_modelModel) {
17400
+ Email = _modelModel.Email;
17386
17401
  MailboxThreadEmail = _modelModel.MailboxThreadEmail;
17387
17402
  }, function (_commonSql) {
17388
17403
  Sql = _commonSql.Sql;
@@ -17394,6 +17409,8 @@ System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/cor
17394
17409
  AtomControl = _webAtomsCoreDistWebControlsAtomControl.AtomControl;
17395
17410
  }, function (_webAtomsCoreDistWebCoreAtomUI) {
17396
17411
  descendentElementIterator = _webAtomsCoreDistWebCoreAtomUI.descendentElementIterator;
17412
+ }, function (_webAtomsDateTimeDistDateTime) {
17413
+ DateTime = _webAtomsDateTimeDistDateTime.default;
17397
17414
  }],
17398
17415
  execute: function () {
17399
17416
  _export("renderMail", renderMail = AtomControl.registerProperty("data-html", "html", (c, e, value) => {
@@ -17431,6 +17448,18 @@ System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/cor
17431
17448
  }
17432
17449
  }
17433
17450
  e.appendChild(msg);
17451
+ if (!mail.timeRead) {
17452
+ const timeRead = DateTime.utcNow;
17453
+ mail.timeRead = timeRead;
17454
+ const control = AtomControl.from(e);
17455
+ const entityService = control.app.resolve(EntityService);
17456
+ const {
17457
+ emailID
17458
+ } = mail;
17459
+ entityService.save(Email.patch(mail, {
17460
+ timeRead
17461
+ })).catch(console.error);
17462
+ }
17434
17463
  return;
17435
17464
  }));
17436
17465
  ConversationService = class ConversationService {
@@ -21967,7 +21996,7 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
21967
21996
  items: this.mails
21968
21997
  }, InfiniteRepeater.pagedItems(start => (c, e, cancelToken) => this.conversationService.list({
21969
21998
  start,
21970
- size: 200,
21999
+ size: 10,
21971
22000
  search: this.search,
21972
22001
  mailboxID: mb.mailboxID,
21973
22002
  emailAddressID: mb.emailAddressID,