@nmshd/runtime 4.0.0 → 4.1.1

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 (53) hide show
  1. package/dist/buildInformation.js +5 -5
  2. package/dist/dataViews/DataViewExpander.d.ts.map +1 -1
  3. package/dist/dataViews/DataViewExpander.js +2 -1
  4. package/dist/dataViews/DataViewExpander.js.map +1 -1
  5. package/dist/dataViews/transport/MessageDVO.d.ts +4 -0
  6. package/dist/dataViews/transport/MessageDVO.d.ts.map +1 -1
  7. package/dist/events/EventProxy.d.ts.map +1 -1
  8. package/dist/events/EventProxy.js +3 -0
  9. package/dist/events/EventProxy.js.map +1 -1
  10. package/dist/events/transport/MessageWasReadAtChangedEvent.d.ts +7 -0
  11. package/dist/events/transport/MessageWasReadAtChangedEvent.d.ts.map +1 -0
  12. package/dist/events/transport/MessageWasReadAtChangedEvent.js +12 -0
  13. package/dist/events/transport/MessageWasReadAtChangedEvent.js.map +1 -0
  14. package/dist/events/transport/index.d.ts +1 -0
  15. package/dist/events/transport/index.d.ts.map +1 -1
  16. package/dist/events/transport/index.js +1 -0
  17. package/dist/events/transport/index.js.map +1 -1
  18. package/dist/extensibility/facades/transport/MessagesFacade.d.ts +9 -5
  19. package/dist/extensibility/facades/transport/MessagesFacade.d.ts.map +1 -1
  20. package/dist/extensibility/facades/transport/MessagesFacade.js +20 -8
  21. package/dist/extensibility/facades/transport/MessagesFacade.js.map +1 -1
  22. package/dist/types/transport/MessageDTO.d.ts +1 -0
  23. package/dist/types/transport/MessageDTO.d.ts.map +1 -1
  24. package/dist/types/transport/MessageWithAttachmentsDTO.d.ts +1 -0
  25. package/dist/types/transport/MessageWithAttachmentsDTO.d.ts.map +1 -1
  26. package/dist/useCases/common/Schemas.d.ts +2 -0
  27. package/dist/useCases/common/Schemas.d.ts.map +1 -1
  28. package/dist/useCases/common/Schemas.js +59 -2
  29. package/dist/useCases/common/Schemas.js.map +1 -1
  30. package/dist/useCases/transport/messages/GetMessages.d.ts +1 -0
  31. package/dist/useCases/transport/messages/GetMessages.d.ts.map +1 -1
  32. package/dist/useCases/transport/messages/GetMessages.js +3 -1
  33. package/dist/useCases/transport/messages/GetMessages.js.map +1 -1
  34. package/dist/useCases/transport/messages/MarkMessageAsRead.d.ts +18 -0
  35. package/dist/useCases/transport/messages/MarkMessageAsRead.d.ts.map +1 -0
  36. package/dist/useCases/transport/messages/MarkMessageAsRead.js +51 -0
  37. package/dist/useCases/transport/messages/MarkMessageAsRead.js.map +1 -0
  38. package/dist/useCases/transport/messages/MarkMessageAsUnread.d.ts +18 -0
  39. package/dist/useCases/transport/messages/MarkMessageAsUnread.d.ts.map +1 -0
  40. package/dist/useCases/transport/messages/MarkMessageAsUnread.js +51 -0
  41. package/dist/useCases/transport/messages/MarkMessageAsUnread.js.map +1 -0
  42. package/dist/useCases/transport/messages/MessageMapper.d.ts.map +1 -1
  43. package/dist/useCases/transport/messages/MessageMapper.js +4 -2
  44. package/dist/useCases/transport/messages/MessageMapper.js.map +1 -1
  45. package/dist/useCases/transport/messages/index.d.ts +2 -0
  46. package/dist/useCases/transport/messages/index.d.ts.map +1 -1
  47. package/dist/useCases/transport/messages/index.js +2 -0
  48. package/dist/useCases/transport/messages/index.js.map +1 -1
  49. package/lib-web/nmshd.runtime.js +243 -19
  50. package/lib-web/nmshd.runtime.js.map +1 -1
  51. package/lib-web/nmshd.runtime.min.js +1 -1
  52. package/lib-web/nmshd.runtime.min.js.map +1 -1
  53. package/package.json +2 -2
@@ -45705,11 +45705,11 @@ const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
45705
45705
  const crypto_1 = __webpack_require__(/*! @nmshd/crypto */ "@nmshd/crypto");
45706
45706
  const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
45707
45707
  exports.buildInformation = {
45708
- version: "4.0.0",
45709
- build: "19",
45710
- date: "2024-02-12T12:42:50+00:00",
45711
- commit: "d1e6aeea6af9c7398bb1e86f795d8257515e1903",
45712
- dependencies: {"@js-soft/docdb-querytranslator":"^1.1.2","@js-soft/logging-abstractions":"^1.0.1","@js-soft/ts-serval":"2.0.10","@js-soft/ts-utils":"^2.3.3","@nmshd/consumption":"3.9.3","@nmshd/content":"2.8.4","@nmshd/crypto":"2.0.6","@nmshd/transport":"2.2.2","ajv":"^8.12.0","ajv-errors":"^3.0.0","ajv-formats":"^2.1.1","json-stringify-safe":"^5.0.1","lodash":"^4.17.21","luxon":"^3.4.4","qrcode":"1.5.3","reflect-metadata":"^0.2.1","ts-simple-nameof":"^1.3.1","typescript-ioc":"3.2.2"},
45708
+ version: "4.1.1",
45709
+ build: "23",
45710
+ date: "2024-02-15T09:24:23+00:00",
45711
+ commit: "e195157925f945216f3f697aa97b35e23977ae5f",
45712
+ dependencies: {"@js-soft/docdb-querytranslator":"^1.1.2","@js-soft/logging-abstractions":"^1.0.1","@js-soft/ts-serval":"2.0.10","@js-soft/ts-utils":"^2.3.3","@nmshd/consumption":"3.9.3","@nmshd/content":"2.8.4","@nmshd/crypto":"2.0.6","@nmshd/transport":"2.3.1","ajv":"^8.12.0","ajv-errors":"^3.0.0","ajv-formats":"^2.1.1","json-stringify-safe":"^5.0.1","lodash":"^4.17.21","luxon":"^3.4.4","qrcode":"1.5.3","reflect-metadata":"^0.2.1","ts-simple-nameof":"^1.3.1","typescript-ioc":"3.2.2"},
45713
45713
  libraries: {
45714
45714
  serval: ts_serval_1.buildInformation,
45715
45715
  consumption: consumption_1.buildInformation,
@@ -45870,7 +45870,8 @@ let DataViewExpander = class DataViewExpander {
45870
45870
  statusText: `i18n://dvo.message.${status}`,
45871
45871
  image: "",
45872
45872
  peer: peer,
45873
- content: message.content
45873
+ content: message.content,
45874
+ wasReadAt: message.wasReadAt
45874
45875
  };
45875
45876
  if (message.content["@type"] === "Mail" || message.content["@type"] === "RequestMail") {
45876
45877
  const mailContent = message.content;
@@ -47794,6 +47795,9 @@ class EventProxy {
47794
47795
  this.subscribeToSourceEvent(transport.MessageSentEvent, (event) => {
47795
47796
  this.targetEventBus.publish(new transport_1.MessageSentEvent(event.eventTargetAddress, useCases_1.MessageMapper.toMessageDTO(event.data)));
47796
47797
  });
47798
+ this.subscribeToSourceEvent(transport.MessageWasReadAtChangedEvent, (event) => {
47799
+ this.targetEventBus.publish(new transport_1.MessageWasReadAtChangedEvent(event.eventTargetAddress, useCases_1.MessageMapper.toMessageDTO(event.data)));
47800
+ });
47797
47801
  this.subscribeToSourceEvent(transport.PeerRelationshipTemplateLoadedEvent, (event) => {
47798
47802
  this.targetEventBus.publish(new transport_1.PeerRelationshipTemplateLoadedEvent(event.eventTargetAddress, useCases_1.RelationshipTemplateMapper.toRelationshipTemplateDTO(event.data)));
47799
47803
  });
@@ -48572,6 +48576,28 @@ exports.MessageSentEvent = MessageSentEvent;
48572
48576
 
48573
48577
  /***/ }),
48574
48578
 
48579
+ /***/ "./dist/events/transport/MessageWasReadAtChangedEvent.js":
48580
+ /*!***************************************************************!*\
48581
+ !*** ./dist/events/transport/MessageWasReadAtChangedEvent.js ***!
48582
+ \***************************************************************/
48583
+ /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
48584
+
48585
+ "use strict";
48586
+
48587
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
48588
+ exports.MessageWasReadAtChangedEvent = void 0;
48589
+ const DataEvent_1 = __webpack_require__(/*! ../DataEvent */ "./dist/events/DataEvent.js");
48590
+ class MessageWasReadAtChangedEvent extends DataEvent_1.DataEvent {
48591
+ static { this.namespace = "transport.messageWasReadAtChanged"; }
48592
+ constructor(eventTargetAddress, data) {
48593
+ super(MessageWasReadAtChangedEvent.namespace, eventTargetAddress, data);
48594
+ }
48595
+ }
48596
+ exports.MessageWasReadAtChangedEvent = MessageWasReadAtChangedEvent;
48597
+ //# sourceMappingURL=MessageWasReadAtChangedEvent.js.map
48598
+
48599
+ /***/ }),
48600
+
48575
48601
  /***/ "./dist/events/transport/PeerRelationshipTemplateLoadedEvent.js":
48576
48602
  /*!**********************************************************************!*\
48577
48603
  !*** ./dist/events/transport/PeerRelationshipTemplateLoadedEvent.js ***!
@@ -48642,6 +48668,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
48642
48668
  __exportStar(__webpack_require__(/*! ./MessageDeliveredEvent */ "./dist/events/transport/MessageDeliveredEvent.js"), exports);
48643
48669
  __exportStar(__webpack_require__(/*! ./MessageReceivedEvent */ "./dist/events/transport/MessageReceivedEvent.js"), exports);
48644
48670
  __exportStar(__webpack_require__(/*! ./MessageSentEvent */ "./dist/events/transport/MessageSentEvent.js"), exports);
48671
+ __exportStar(__webpack_require__(/*! ./MessageWasReadAtChangedEvent */ "./dist/events/transport/MessageWasReadAtChangedEvent.js"), exports);
48645
48672
  __exportStar(__webpack_require__(/*! ./PeerRelationshipTemplateLoadedEvent */ "./dist/events/transport/PeerRelationshipTemplateLoadedEvent.js"), exports);
48646
48673
  __exportStar(__webpack_require__(/*! ./RelationshipChangedEvent */ "./dist/events/transport/RelationshipChangedEvent.js"), exports);
48647
48674
  //# sourceMappingURL=index.js.map
@@ -49847,12 +49874,14 @@ exports.MessagesFacade = void 0;
49847
49874
  const typescript_ioc_1 = __webpack_require__(/*! typescript-ioc */ "../../node_modules/typescript-ioc/dist/typescript-ioc.js");
49848
49875
  const useCases_1 = __webpack_require__(/*! ../../../useCases */ "./dist/useCases/index.js");
49849
49876
  let MessagesFacade = class MessagesFacade {
49850
- constructor(getMessagesUseCase, getMessageUseCase, sendMessageUseCase, downloadAttachmentUseCase, getAttachmentMetadataUseCase) {
49851
- this.getMessagesUseCase = getMessagesUseCase;
49852
- this.getMessageUseCase = getMessageUseCase;
49853
- this.sendMessageUseCase = sendMessageUseCase;
49877
+ constructor(downloadAttachmentUseCase, getAttachmentMetadataUseCase, getMessageUseCase, getMessagesUseCase, markMessageAsReadUseCase, markMessageAsUnreadUseCase, sendMessageUseCase) {
49854
49878
  this.downloadAttachmentUseCase = downloadAttachmentUseCase;
49855
49879
  this.getAttachmentMetadataUseCase = getAttachmentMetadataUseCase;
49880
+ this.getMessageUseCase = getMessageUseCase;
49881
+ this.getMessagesUseCase = getMessagesUseCase;
49882
+ this.markMessageAsReadUseCase = markMessageAsReadUseCase;
49883
+ this.markMessageAsUnreadUseCase = markMessageAsUnreadUseCase;
49884
+ this.sendMessageUseCase = sendMessageUseCase;
49856
49885
  }
49857
49886
  async sendMessage(request) {
49858
49887
  return await this.sendMessageUseCase.execute(request);
@@ -49869,6 +49898,12 @@ let MessagesFacade = class MessagesFacade {
49869
49898
  async getAttachmentMetadata(request) {
49870
49899
  return await this.getAttachmentMetadataUseCase.execute(request);
49871
49900
  }
49901
+ async markMessageAsRead(request) {
49902
+ return await this.markMessageAsReadUseCase.execute(request);
49903
+ }
49904
+ async markMessageAsUnread(request) {
49905
+ return await this.markMessageAsUnreadUseCase.execute(request);
49906
+ }
49872
49907
  };
49873
49908
  exports.MessagesFacade = MessagesFacade;
49874
49909
  exports.MessagesFacade = MessagesFacade = __decorate([
@@ -49877,11 +49912,15 @@ exports.MessagesFacade = MessagesFacade = __decorate([
49877
49912
  __param(2, typescript_ioc_1.Inject),
49878
49913
  __param(3, typescript_ioc_1.Inject),
49879
49914
  __param(4, typescript_ioc_1.Inject),
49880
- __metadata("design:paramtypes", [useCases_1.GetMessagesUseCase,
49915
+ __param(5, typescript_ioc_1.Inject),
49916
+ __param(6, typescript_ioc_1.Inject),
49917
+ __metadata("design:paramtypes", [useCases_1.DownloadAttachmentUseCase,
49918
+ useCases_1.GetAttachmentMetadataUseCase,
49881
49919
  useCases_1.GetMessageUseCase,
49882
- useCases_1.SendMessageUseCase,
49883
- useCases_1.DownloadAttachmentUseCase,
49884
- useCases_1.GetAttachmentMetadataUseCase])
49920
+ useCases_1.GetMessagesUseCase,
49921
+ useCases_1.MarkMessageAsReadUseCase,
49922
+ useCases_1.MarkMessageAsUnreadUseCase,
49923
+ useCases_1.SendMessageUseCase])
49885
49924
  ], MessagesFacade);
49886
49925
  //# sourceMappingURL=MessagesFacade.js.map
49887
49926
 
@@ -51800,8 +51839,8 @@ exports.JsonSchema = JsonSchema;
51800
51839
 
51801
51840
  Object.defineProperty(exports, "__esModule", ({ value: true }));
51802
51841
  exports.GetSettingRequest = exports.DeleteSettingRequest = exports.CreateSettingRequest = exports.SentNotificationRequest = exports.ReceivedNotificationRequest = exports.ProcessNotificationByIdRequest = exports.GetNotificationsRequest = exports.GetNotificationRequest = exports.UpdateDraftRequest = exports.GetDraftsRequest = exports.GetDraftRequest = exports.DeleteDraftRequest = exports.CreateDraftRequest = exports.ValidateIQLQueryRequest = exports.SucceedRepositoryAttributeRequest = exports.SucceedRelationshipAttributeAndNotifyPeerRequest = exports.ShareRepositoryAttributeRequest = exports.NotifyPeerAboutRepositoryAttributeSuccessionRequest = exports.GetVersionsOfAttributeRequest = exports.GetSharedVersionsOfRepositoryAttributeRequest = exports.GetRepositoryAttributesRequest = exports.GetPeerSharedAttributesRequest = exports.GetOwnSharedAttributesRequest = exports.GetAttributesRequest = exports.GetAttributeRequest = exports.ExecuteThirdPartyRelationshipAttributeQueryRequest = exports.ExecuteRelationshipAttributeQueryRequest = exports.ExecuteIQLQueryRequest = exports.ExecuteIdentityAttributeQueryRequest = exports.CreateRepositoryAttributeRequest = exports.CreateAndShareRelationshipAttributeRequest = exports.SentOutgoingRequestRequest = exports.RequireManualDecisionOfIncomingRequestRequest = exports.ReceivedIncomingRequestRequest = exports.GetOutgoingRequestsRequest = exports.GetOutgoingRequestRequest = exports.GetIncomingRequestsRequest = exports.GetIncomingRequestRequest = exports.DiscardOutgoingRequestRequest = exports.CreateOutgoingRequestRequest = exports.CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseRequest = exports.CompleteOutgoingRequestRequest = exports.CompleteIncomingRequestRequest = exports.CheckPrerequisitesOfIncomingRequestRequest = exports.RejectIncomingRequestRequest = exports.CanCreateOutgoingRequestRequest = exports.AcceptIncomingRequestRequest = exports.GetAttributeListenerRequest = exports.LoadPeerTokenAnonymousByTruncatedReferenceRequest = exports.LoadPeerTokenAnonymousByIdAndKeyRequest = void 0;
51803
- exports.LoadPeerRelationshipTemplateViaSecretRequest = exports.GetRelationshipTemplatesRequest = exports.GetRelationshipTemplateRequest = exports.CreateTokenQRCodeForOwnTemplateRequest = exports.CreateTokenForOwnTemplateRequest = exports.CreateQRCodeForOwnTemplateRequest = exports.CreateOwnRelationshipTemplateRequest = exports.RevokeRelationshipChangeRequest = exports.RejectRelationshipChangeRequest = exports.GetRelationshipsRequest = exports.GetRelationshipByAddressRequest = exports.GetRelationshipRequest = exports.GetAttributesForRelationshipRequest = exports.CreateRelationshipRequest = exports.AcceptRelationshipChangeRequest = exports.SendMessageRequest = exports.GetMessagesRequest = exports.GetMessageRequest = exports.GetAttachmentMetadataRequest = exports.CheckIdentityRequest = exports.UploadOwnFileValidatableRequest = exports.UploadOwnFileRequest = exports.GetOrLoadFileRequest = exports.GetOrLoadFileViaReferenceRequest = exports.GetOrLoadFileViaSecretRequest = exports.GetFilesRequest = exports.GetFileRequest = exports.CreateTokenQRCodeForFileRequest = exports.CreateTokenForFileRequest = exports.CreateQRCodeForFileRequest = exports.UpdateDeviceRequest = exports.GetDeviceOnboardingInfoRequest = exports.GetDeviceRequest = exports.DeleteDeviceRequest = exports.CreateDeviceOnboardingTokenRequest = exports.CreateDeviceRequest = exports.ValidateChallengeRequest = exports.CreateChallengeRequest = exports.CreateDeviceChallengeRequest = exports.CreateIdentityChallengeRequest = exports.CreateRelationshipChallengeRequest = exports.SyncEverythingRequest = exports.DownloadAttachmentRequest = exports.SyncDatawalletRequest = exports.RegisterPushNotificationTokenRequest = exports.LoadItemFromTruncatedReferenceRequest = exports.DownloadFileRequest = exports.UpdateSettingRequest = exports.GetSettingsRequest = exports.GetSettingByKeyRequest = void 0;
51804
- exports.LoadPeerTokenRequest = exports.LoadPeerTokenViaSecretRequest = exports.LoadPeerTokenViaReferenceRequest = exports.GetTokensRequest = exports.GetTokenRequest = exports.GetQRCodeForTokenRequest = exports.CreateOwnTokenRequest = exports.LoadPeerRelationshipTemplateRequest = exports.LoadPeerRelationshipTemplateViaReferenceRequest = void 0;
51842
+ exports.GetRelationshipTemplateRequest = exports.CreateTokenQRCodeForOwnTemplateRequest = exports.CreateTokenForOwnTemplateRequest = exports.CreateQRCodeForOwnTemplateRequest = exports.CreateOwnRelationshipTemplateRequest = exports.RevokeRelationshipChangeRequest = exports.RejectRelationshipChangeRequest = exports.GetRelationshipsRequest = exports.GetRelationshipByAddressRequest = exports.GetRelationshipRequest = exports.GetAttributesForRelationshipRequest = exports.CreateRelationshipRequest = exports.AcceptRelationshipChangeRequest = exports.SendMessageRequest = exports.MarkMessageAsUnreadRequest = exports.MarkMessageAsReadRequest = exports.GetMessagesRequest = exports.GetMessageRequest = exports.GetAttachmentMetadataRequest = exports.CheckIdentityRequest = exports.UploadOwnFileValidatableRequest = exports.UploadOwnFileRequest = exports.GetOrLoadFileRequest = exports.GetOrLoadFileViaReferenceRequest = exports.GetOrLoadFileViaSecretRequest = exports.GetFilesRequest = exports.GetFileRequest = exports.CreateTokenQRCodeForFileRequest = exports.CreateTokenForFileRequest = exports.CreateQRCodeForFileRequest = exports.UpdateDeviceRequest = exports.GetDeviceOnboardingInfoRequest = exports.GetDeviceRequest = exports.DeleteDeviceRequest = exports.CreateDeviceOnboardingTokenRequest = exports.CreateDeviceRequest = exports.ValidateChallengeRequest = exports.CreateChallengeRequest = exports.CreateDeviceChallengeRequest = exports.CreateIdentityChallengeRequest = exports.CreateRelationshipChallengeRequest = exports.SyncEverythingRequest = exports.DownloadAttachmentRequest = exports.SyncDatawalletRequest = exports.RegisterPushNotificationTokenRequest = exports.LoadItemFromTruncatedReferenceRequest = exports.DownloadFileRequest = exports.UpdateSettingRequest = exports.GetSettingsRequest = exports.GetSettingByKeyRequest = void 0;
51843
+ exports.LoadPeerTokenRequest = exports.LoadPeerTokenViaSecretRequest = exports.LoadPeerTokenViaReferenceRequest = exports.GetTokensRequest = exports.GetTokenRequest = exports.GetQRCodeForTokenRequest = exports.CreateOwnTokenRequest = exports.LoadPeerRelationshipTemplateRequest = exports.LoadPeerRelationshipTemplateViaReferenceRequest = exports.LoadPeerRelationshipTemplateViaSecretRequest = exports.GetRelationshipTemplatesRequest = void 0;
51805
51844
  exports.LoadPeerTokenAnonymousByIdAndKeyRequest = {
51806
51845
  "$schema": "http://json-schema.org/draft-07/schema#",
51807
51846
  "$ref": "#/definitions/LoadPeerTokenAnonymousByIdAndKeyRequest",
@@ -72587,6 +72626,19 @@ exports.GetMessagesRequest = {
72587
72626
  }
72588
72627
  ]
72589
72628
  },
72629
+ "wasReadAt": {
72630
+ "anyOf": [
72631
+ {
72632
+ "type": "string"
72633
+ },
72634
+ {
72635
+ "type": "array",
72636
+ "items": {
72637
+ "type": "string"
72638
+ }
72639
+ }
72640
+ ]
72641
+ },
72590
72642
  "participant": {
72591
72643
  "anyOf": [
72592
72644
  {
@@ -72605,6 +72657,50 @@ exports.GetMessagesRequest = {
72605
72657
  }
72606
72658
  }
72607
72659
  };
72660
+ exports.MarkMessageAsReadRequest = {
72661
+ "$schema": "http://json-schema.org/draft-07/schema#",
72662
+ "$ref": "#/definitions/MarkMessageAsReadRequest",
72663
+ "definitions": {
72664
+ "MarkMessageAsReadRequest": {
72665
+ "type": "object",
72666
+ "properties": {
72667
+ "id": {
72668
+ "$ref": "#/definitions/MessageIdString"
72669
+ }
72670
+ },
72671
+ "required": [
72672
+ "id"
72673
+ ],
72674
+ "additionalProperties": false
72675
+ },
72676
+ "MessageIdString": {
72677
+ "type": "string",
72678
+ "pattern": "MSG[A-Za-z0-9]{17}"
72679
+ }
72680
+ }
72681
+ };
72682
+ exports.MarkMessageAsUnreadRequest = {
72683
+ "$schema": "http://json-schema.org/draft-07/schema#",
72684
+ "$ref": "#/definitions/MarkMessageAsUnreadRequest",
72685
+ "definitions": {
72686
+ "MarkMessageAsUnreadRequest": {
72687
+ "type": "object",
72688
+ "properties": {
72689
+ "id": {
72690
+ "$ref": "#/definitions/MessageIdString"
72691
+ }
72692
+ },
72693
+ "required": [
72694
+ "id"
72695
+ ],
72696
+ "additionalProperties": false
72697
+ },
72698
+ "MessageIdString": {
72699
+ "type": "string",
72700
+ "pattern": "MSG[A-Za-z0-9]{17}"
72701
+ }
72702
+ }
72703
+ };
72608
72704
  exports.SendMessageRequest = {
72609
72705
  "$schema": "http://json-schema.org/draft-07/schema#",
72610
72706
  "$ref": "#/definitions/SendMessageRequest",
@@ -80603,6 +80699,7 @@ let GetMessagesUseCase = class GetMessagesUseCase extends common_1.UseCase {
80603
80699
  [(0, ts_simple_nameof_1.nameof)((m) => m.attachments)]: true,
80604
80700
  [`${(0, ts_simple_nameof_1.nameof)((m) => m.recipients)}.${(0, ts_simple_nameof_1.nameof)((r) => r.address)}`]: true,
80605
80701
  [`${(0, ts_simple_nameof_1.nameof)((m) => m.recipients)}.${(0, ts_simple_nameof_1.nameof)((r) => r.relationshipId)}`]: true,
80702
+ [(0, ts_simple_nameof_1.nameof)((m) => m.wasReadAt)]: true,
80606
80703
  participant: true
80607
80704
  },
80608
80705
  alias: {
@@ -80612,7 +80709,8 @@ let GetMessagesUseCase = class GetMessagesUseCase extends common_1.UseCase {
80612
80709
  [`${(0, ts_simple_nameof_1.nameof)((m) => m.recipients)}.${(0, ts_simple_nameof_1.nameof)((r) => r.address)}`]: `${(0, ts_simple_nameof_1.nameof)((m) => m.cache)}.${(0, ts_simple_nameof_1.nameof)((m) => m.recipients)}.${(0, ts_simple_nameof_1.nameof)((r) => r.address)}`,
80613
80710
  [`${(0, ts_simple_nameof_1.nameof)((m) => m.content)}.@type`]: `${(0, ts_simple_nameof_1.nameof)((m) => m.cache)}.${(0, ts_simple_nameof_1.nameof)((m) => m.content)}.@type`,
80614
80711
  [`${(0, ts_simple_nameof_1.nameof)((m) => m.content)}.body`]: `${(0, ts_simple_nameof_1.nameof)((m) => m.cache)}.${(0, ts_simple_nameof_1.nameof)((m) => m.content)}.body`,
80615
- [`${(0, ts_simple_nameof_1.nameof)((m) => m.content)}.subject`]: `${(0, ts_simple_nameof_1.nameof)((m) => m.cache)}.${(0, ts_simple_nameof_1.nameof)((m) => m.content)}.subject`
80712
+ [`${(0, ts_simple_nameof_1.nameof)((m) => m.content)}.subject`]: `${(0, ts_simple_nameof_1.nameof)((m) => m.cache)}.${(0, ts_simple_nameof_1.nameof)((m) => m.content)}.subject`,
80713
+ [(0, ts_simple_nameof_1.nameof)((m) => m.wasReadAt)]: [(0, ts_simple_nameof_1.nameof)((m) => m.wasReadAt)]
80616
80714
  },
80617
80715
  custom: {
80618
80716
  [`${(0, ts_simple_nameof_1.nameof)((m) => m.recipients)}.${(0, ts_simple_nameof_1.nameof)((r) => r.relationshipId)}`]: (query, input) => {
@@ -80684,6 +80782,128 @@ exports.GetMessagesUseCase = GetMessagesUseCase = GetMessagesUseCase_1 = __decor
80684
80782
 
80685
80783
  /***/ }),
80686
80784
 
80785
+ /***/ "./dist/useCases/transport/messages/MarkMessageAsRead.js":
80786
+ /*!***************************************************************!*\
80787
+ !*** ./dist/useCases/transport/messages/MarkMessageAsRead.js ***!
80788
+ \***************************************************************/
80789
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
80790
+
80791
+ "use strict";
80792
+
80793
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
80794
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
80795
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
80796
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
80797
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
80798
+ };
80799
+ var __metadata = (this && this.__metadata) || function (k, v) {
80800
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
80801
+ };
80802
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
80803
+ return function (target, key) { decorator(target, key, paramIndex); }
80804
+ };
80805
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
80806
+ exports.MarkMessageAsReadUseCase = void 0;
80807
+ const ts_utils_1 = __webpack_require__(/*! @js-soft/ts-utils */ "../../node_modules/@js-soft/ts-utils/dist/index.js");
80808
+ const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
80809
+ const typescript_ioc_1 = __webpack_require__(/*! typescript-ioc */ "../../node_modules/typescript-ioc/dist/typescript-ioc.js");
80810
+ const common_1 = __webpack_require__(/*! ../../common */ "./dist/useCases/common/index.js");
80811
+ const MessageMapper_1 = __webpack_require__(/*! ./MessageMapper */ "./dist/useCases/transport/messages/MessageMapper.js");
80812
+ let Validator = class Validator extends common_1.SchemaValidator {
80813
+ constructor(schemaRepository) {
80814
+ super(schemaRepository.getSchema("MarkMessageAsReadRequest"));
80815
+ }
80816
+ };
80817
+ Validator = __decorate([
80818
+ __param(0, typescript_ioc_1.Inject),
80819
+ __metadata("design:paramtypes", [common_1.SchemaRepository])
80820
+ ], Validator);
80821
+ let MarkMessageAsReadUseCase = class MarkMessageAsReadUseCase extends common_1.UseCase {
80822
+ constructor(messageController, accountController, validator) {
80823
+ super(validator);
80824
+ this.messageController = messageController;
80825
+ this.accountController = accountController;
80826
+ }
80827
+ async executeInternal(request) {
80828
+ const updatedMessage = await this.messageController.markMessageAsRead(transport_1.CoreId.from(request.id));
80829
+ await this.accountController.syncDatawallet();
80830
+ return ts_utils_1.Result.ok(MessageMapper_1.MessageMapper.toMessageDTO(updatedMessage));
80831
+ }
80832
+ };
80833
+ exports.MarkMessageAsReadUseCase = MarkMessageAsReadUseCase;
80834
+ exports.MarkMessageAsReadUseCase = MarkMessageAsReadUseCase = __decorate([
80835
+ __param(0, typescript_ioc_1.Inject),
80836
+ __param(1, typescript_ioc_1.Inject),
80837
+ __param(2, typescript_ioc_1.Inject),
80838
+ __metadata("design:paramtypes", [transport_1.MessageController,
80839
+ transport_1.AccountController,
80840
+ Validator])
80841
+ ], MarkMessageAsReadUseCase);
80842
+ //# sourceMappingURL=MarkMessageAsRead.js.map
80843
+
80844
+ /***/ }),
80845
+
80846
+ /***/ "./dist/useCases/transport/messages/MarkMessageAsUnread.js":
80847
+ /*!*****************************************************************!*\
80848
+ !*** ./dist/useCases/transport/messages/MarkMessageAsUnread.js ***!
80849
+ \*****************************************************************/
80850
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
80851
+
80852
+ "use strict";
80853
+
80854
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
80855
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
80856
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
80857
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
80858
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
80859
+ };
80860
+ var __metadata = (this && this.__metadata) || function (k, v) {
80861
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
80862
+ };
80863
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
80864
+ return function (target, key) { decorator(target, key, paramIndex); }
80865
+ };
80866
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
80867
+ exports.MarkMessageAsUnreadUseCase = void 0;
80868
+ const ts_utils_1 = __webpack_require__(/*! @js-soft/ts-utils */ "../../node_modules/@js-soft/ts-utils/dist/index.js");
80869
+ const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
80870
+ const typescript_ioc_1 = __webpack_require__(/*! typescript-ioc */ "../../node_modules/typescript-ioc/dist/typescript-ioc.js");
80871
+ const common_1 = __webpack_require__(/*! ../../common */ "./dist/useCases/common/index.js");
80872
+ const MessageMapper_1 = __webpack_require__(/*! ./MessageMapper */ "./dist/useCases/transport/messages/MessageMapper.js");
80873
+ let Validator = class Validator extends common_1.SchemaValidator {
80874
+ constructor(schemaRepository) {
80875
+ super(schemaRepository.getSchema("MarkMessageAsUnreadRequest"));
80876
+ }
80877
+ };
80878
+ Validator = __decorate([
80879
+ __param(0, typescript_ioc_1.Inject),
80880
+ __metadata("design:paramtypes", [common_1.SchemaRepository])
80881
+ ], Validator);
80882
+ let MarkMessageAsUnreadUseCase = class MarkMessageAsUnreadUseCase extends common_1.UseCase {
80883
+ constructor(messageController, accountController, validator) {
80884
+ super(validator);
80885
+ this.messageController = messageController;
80886
+ this.accountController = accountController;
80887
+ }
80888
+ async executeInternal(request) {
80889
+ const updatedMessage = await this.messageController.markMessageAsUnread(transport_1.CoreId.from(request.id));
80890
+ await this.accountController.syncDatawallet();
80891
+ return ts_utils_1.Result.ok(MessageMapper_1.MessageMapper.toMessageDTO(updatedMessage));
80892
+ }
80893
+ };
80894
+ exports.MarkMessageAsUnreadUseCase = MarkMessageAsUnreadUseCase;
80895
+ exports.MarkMessageAsUnreadUseCase = MarkMessageAsUnreadUseCase = __decorate([
80896
+ __param(0, typescript_ioc_1.Inject),
80897
+ __param(1, typescript_ioc_1.Inject),
80898
+ __param(2, typescript_ioc_1.Inject),
80899
+ __metadata("design:paramtypes", [transport_1.MessageController,
80900
+ transport_1.AccountController,
80901
+ Validator])
80902
+ ], MarkMessageAsUnreadUseCase);
80903
+ //# sourceMappingURL=MarkMessageAsUnread.js.map
80904
+
80905
+ /***/ }),
80906
+
80687
80907
  /***/ "./dist/useCases/transport/messages/MessageMapper.js":
80688
80908
  /*!***********************************************************!*\
80689
80909
  !*** ./dist/useCases/transport/messages/MessageMapper.js ***!
@@ -80720,7 +80940,8 @@ class MessageMapper {
80720
80940
  recipients: message.cache.recipients.map((r, i) => this.toRecipient(r, message.relationshipIds[i])),
80721
80941
  createdAt: message.cache.createdAt.toString(),
80722
80942
  attachments: attachments.map((f) => FileMapper_1.FileMapper.toFileDTO(f)),
80723
- isOwn: message.isOwn
80943
+ isOwn: message.isOwn,
80944
+ wasReadAt: message.wasReadAt?.toString()
80724
80945
  };
80725
80946
  }
80726
80947
  static toMessageDTO(message) {
@@ -80735,7 +80956,8 @@ class MessageMapper {
80735
80956
  recipients: message.cache.recipients.map((r, i) => this.toRecipient(r, message.relationshipIds[i])),
80736
80957
  createdAt: message.cache.createdAt.toString(),
80737
80958
  attachments: message.cache.attachments.map((a) => a.toString()),
80738
- isOwn: message.isOwn
80959
+ isOwn: message.isOwn,
80960
+ wasReadAt: message.wasReadAt?.toString()
80739
80961
  };
80740
80962
  }
80741
80963
  static toMessageDTOList(messages) {
@@ -80868,6 +81090,8 @@ __exportStar(__webpack_require__(/*! ./DownloadAttachment */ "./dist/useCases/tr
80868
81090
  __exportStar(__webpack_require__(/*! ./GetAttachmentMetadata */ "./dist/useCases/transport/messages/GetAttachmentMetadata.js"), exports);
80869
81091
  __exportStar(__webpack_require__(/*! ./GetMessage */ "./dist/useCases/transport/messages/GetMessage.js"), exports);
80870
81092
  __exportStar(__webpack_require__(/*! ./GetMessages */ "./dist/useCases/transport/messages/GetMessages.js"), exports);
81093
+ __exportStar(__webpack_require__(/*! ./MarkMessageAsRead */ "./dist/useCases/transport/messages/MarkMessageAsRead.js"), exports);
81094
+ __exportStar(__webpack_require__(/*! ./MarkMessageAsUnread */ "./dist/useCases/transport/messages/MarkMessageAsUnread.js"), exports);
80871
81095
  __exportStar(__webpack_require__(/*! ./MessageMapper */ "./dist/useCases/transport/messages/MessageMapper.js"), exports);
80872
81096
  __exportStar(__webpack_require__(/*! ./SendMessage */ "./dist/useCases/transport/messages/SendMessage.js"), exports);
80873
81097
  //# sourceMappingURL=index.js.map