@nmshd/runtime 1.2.4 → 1.2.8

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 (86) hide show
  1. package/dist/Runtime.js +0 -3
  2. package/dist/Runtime.js.map +1 -1
  3. package/dist/buildInformation.js +5 -5
  4. package/dist/dataViews/DataViewExpander.d.ts +26 -20
  5. package/dist/dataViews/DataViewExpander.js +259 -147
  6. package/dist/dataViews/DataViewExpander.js.map +1 -1
  7. package/dist/dataViews/DataViewTranslateable.d.ts +4 -0
  8. package/dist/dataViews/DataViewTranslateable.js +7 -3
  9. package/dist/dataViews/DataViewTranslateable.js.map +1 -1
  10. package/dist/dataViews/consumption/MatchedAttributesDVO.d.ts +7 -0
  11. package/dist/dataViews/consumption/MatchedAttributesDVO.js +3 -0
  12. package/dist/dataViews/consumption/MatchedAttributesDVO.js.map +1 -0
  13. package/dist/dataViews/consumption/StoredAttributeDVO.d.ts +5 -0
  14. package/dist/dataViews/consumption/{RequestMailDVO.js → StoredAttributeDVO.js} +1 -1
  15. package/dist/dataViews/consumption/StoredAttributeDVO.js.map +1 -0
  16. package/dist/dataViews/consumption/index.d.ts +1 -5
  17. package/dist/dataViews/consumption/index.js +1 -5
  18. package/dist/dataViews/consumption/index.js.map +1 -1
  19. package/dist/dataViews/content/AttributeDVO.d.ts +16 -0
  20. package/dist/dataViews/{consumption → content}/AttributeDVO.js +0 -0
  21. package/dist/dataViews/content/AttributeDVO.js.map +1 -0
  22. package/dist/dataViews/content/MailDVOs.d.ts +22 -0
  23. package/dist/dataViews/{consumption/MailDVO.js → content/MailDVOs.js} +1 -1
  24. package/dist/dataViews/content/MailDVOs.js.map +1 -0
  25. package/dist/dataViews/content/RequestDVOs.d.ts +44 -0
  26. package/dist/dataViews/{consumption/RequestDVO.js → content/RequestDVOs.js} +1 -1
  27. package/dist/dataViews/content/RequestDVOs.js.map +1 -0
  28. package/dist/dataViews/content/index.d.ts +3 -0
  29. package/dist/dataViews/content/index.js +16 -0
  30. package/dist/dataViews/content/index.js.map +1 -0
  31. package/dist/dataViews/index.d.ts +1 -0
  32. package/dist/dataViews/index.js +1 -0
  33. package/dist/dataViews/index.js.map +1 -1
  34. package/dist/dataViews/transport/FileDVO.d.ts +15 -5
  35. package/dist/dataViews/transport/IdentityDVO.d.ts +8 -20
  36. package/dist/dataViews/transport/MessageDVO.d.ts +13 -9
  37. package/dist/dataViews/transport/MessageDVO.js +1 -1
  38. package/dist/dataViews/transport/MessageDVO.js.map +1 -1
  39. package/dist/dataViews/transport/RelationshipDVO.d.ts +12 -2
  40. package/dist/dataViews/transport/RelationshipTemplateDVO.d.ts +7 -5
  41. package/dist/extensibility/facades/consumption/AttributesFacade.d.ts +4 -4
  42. package/dist/extensibility/facades/consumption/AttributesFacade.js +5 -5
  43. package/dist/extensibility/facades/consumption/AttributesFacade.js.map +1 -1
  44. package/dist/types/transport/IdentityDTO.d.ts +0 -4
  45. package/dist/types/transport/RecipientDTO.d.ts +2 -0
  46. package/dist/types/transport/RelationshipDTO.d.ts +2 -0
  47. package/dist/types/transport/RelationshipDTO.js.map +1 -1
  48. package/dist/useCases/common/Schemas.d.ts +1 -1
  49. package/dist/useCases/common/Schemas.js +4 -4
  50. package/dist/useCases/common/Schemas.js.map +1 -1
  51. package/dist/useCases/consumption/attributes/AttributeMapper.d.ts +2 -2
  52. package/dist/useCases/consumption/attributes/AttributeMapper.js +3 -3
  53. package/dist/useCases/consumption/attributes/AttributeMapper.js.map +1 -1
  54. package/dist/useCases/consumption/attributes/GetAttributesByNames.d.ts +16 -0
  55. package/dist/useCases/consumption/attributes/{GetAttributesByName.js → GetAttributesByNames.js} +9 -9
  56. package/dist/useCases/consumption/attributes/GetAttributesByNames.js.map +1 -0
  57. package/dist/useCases/consumption/attributes/index.d.ts +1 -1
  58. package/dist/useCases/consumption/attributes/index.js +1 -1
  59. package/dist/useCases/consumption/attributes/index.js.map +1 -1
  60. package/dist/useCases/transport/devices/DeviceMapper.js +2 -10
  61. package/dist/useCases/transport/devices/DeviceMapper.js.map +1 -1
  62. package/dist/useCases/transport/messages/MessageMapper.js +5 -2
  63. package/dist/useCases/transport/messages/MessageMapper.js.map +1 -1
  64. package/dist/useCases/transport/relationships/RelationshipMapper.js +5 -0
  65. package/dist/useCases/transport/relationships/RelationshipMapper.js.map +1 -1
  66. package/lib-web/nmshd.runtime.js +355 -232
  67. package/lib-web/nmshd.runtime.js.map +1 -1
  68. package/lib-web/nmshd.runtime.min.js +1 -1
  69. package/lib-web/nmshd.runtime.min.js.map +1 -1
  70. package/package.json +7 -7
  71. package/dist/dataViews/consumption/AttributeDVO.d.ts +0 -18
  72. package/dist/dataViews/consumption/AttributeDVO.js.map +0 -1
  73. package/dist/dataViews/consumption/AttributesChangeRequestDVO.d.ts +0 -11
  74. package/dist/dataViews/consumption/AttributesChangeRequestDVO.js +0 -3
  75. package/dist/dataViews/consumption/AttributesChangeRequestDVO.js.map +0 -1
  76. package/dist/dataViews/consumption/AttributesShareRequestDVO.d.ts +0 -12
  77. package/dist/dataViews/consumption/AttributesShareRequestDVO.js +0 -3
  78. package/dist/dataViews/consumption/AttributesShareRequestDVO.js.map +0 -1
  79. package/dist/dataViews/consumption/MailDVO.d.ts +0 -7
  80. package/dist/dataViews/consumption/MailDVO.js.map +0 -1
  81. package/dist/dataViews/consumption/RequestDVO.d.ts +0 -7
  82. package/dist/dataViews/consumption/RequestDVO.js.map +0 -1
  83. package/dist/dataViews/consumption/RequestMailDVO.d.ts +0 -10
  84. package/dist/dataViews/consumption/RequestMailDVO.js.map +0 -1
  85. package/dist/useCases/consumption/attributes/GetAttributesByName.d.ts +0 -16
  86. package/dist/useCases/consumption/attributes/GetAttributesByName.js.map +0 -1
@@ -158,9 +158,6 @@ class Runtime {
158
158
  typescript_ioc_1.Container.bind(consumption_1.RelationshipInfoController)
159
159
  .factory(() => this.getConsumptionController().relationshipInfo)
160
160
  .scope(typescript_ioc_1.Scope.Request);
161
- typescript_ioc_1.Container.bind(consumption_1.SingleRelationshipController)
162
- .factory(() => new consumption_1.SingleRelationshipController(this.getConsumptionController()))
163
- .scope(typescript_ioc_1.Scope.Request);
164
161
  typescript_ioc_1.Container.bind(consumption_1.RequestsController)
165
162
  .factory(() => this.getConsumptionController().requests)
166
163
  .scope(typescript_ioc_1.Scope.Request);
@@ -330,11 +327,11 @@ const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
330
327
  const crypto_1 = __webpack_require__(/*! @nmshd/crypto */ "@nmshd/crypto");
331
328
  const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
332
329
  exports.buildInformation = {
333
- version: "1.2.4",
334
- build: "19",
335
- date: "2021-12-16T12:18:55+00:00",
336
- commit: "13b03dd2843fc516dec483615cd1a10ca41d5417",
337
- dependencies: {"@js-soft/docdb-querytranslator":"1.0.1","@js-soft/logging-abstractions":"1.0.0","@js-soft/ts-serval":"1.0.2","@js-soft/ts-utils":"^1.1.1","@nmshd/consumption":"1.0.6","@nmshd/content":"1.1.2","@nmshd/crypto":"1.0.6","@nmshd/transport":"1.1.1","ajv":"^8.8.2","ajv-errors":"^3.0.0","ajv-formats":"^2.1.1","fluent-ts-validator":"3.0.2","luxon":"^2.2.0","qrcode":"1.5.0","reflect-metadata":"0.1.13","ts-simple-nameof":"1.3.1","typescript-ioc":"3.2.2"},
330
+ version: "1.2.8",
331
+ build: "23",
332
+ date: "2021-12-29T14:42:22+00:00",
333
+ commit: "6d24f2c871967626b8b84d122d3a1e5294ee4a0c",
334
+ dependencies: {"@js-soft/docdb-querytranslator":"1.0.1","@js-soft/logging-abstractions":"1.0.0","@js-soft/ts-serval":"1.0.2","@js-soft/ts-utils":"^1.1.1","@nmshd/consumption":"1.0.11","@nmshd/content":"1.1.2","@nmshd/crypto":"1.0.6","@nmshd/transport":"1.1.3","ajv":"^8.8.2","ajv-errors":"^3.0.0","ajv-formats":"^2.1.1","fluent-ts-validator":"3.0.2","luxon":"^2.2.0","qrcode":"1.5.0","reflect-metadata":"0.1.13","ts-simple-nameof":"1.3.1","typescript-ioc":"3.2.2"},
338
335
  libraries: {
339
336
  serval: ts_serval_1.buildInformation,
340
337
  consumption: consumption_1.buildInformation,
@@ -377,8 +374,8 @@ const useCases_1 = __webpack_require__(/*! ../useCases */ "./dist/useCases/index
377
374
  const DataViewTranslateable_1 = __webpack_require__(/*! ./DataViewTranslateable */ "./dist/dataViews/DataViewTranslateable.js");
378
375
  const MessageDVO_1 = __webpack_require__(/*! ./transport/MessageDVO */ "./dist/dataViews/transport/MessageDVO.js");
379
376
  let DataViewExpander = class DataViewExpander {
380
- constructor(tranport, consumption, identityController) {
381
- this.tranport = tranport;
377
+ constructor(transport, consumption, identityController) {
378
+ this.transport = transport;
382
379
  this.consumption = consumption;
383
380
  this.identityController = identityController;
384
381
  }
@@ -405,9 +402,9 @@ let DataViewExpander = class DataViewExpander {
405
402
  return await this.expandMessageDTO(content);
406
403
  case "Request":
407
404
  if (content instanceof Array) {
408
- return await this.expandRequests(content);
405
+ return await this.expandUnknownRequests(content);
409
406
  }
410
- return this.expandRequest(content);
407
+ return await this.expandUnknownRequest(content);
411
408
  case "AttributesShareRequest":
412
409
  if (content instanceof Array) {
413
410
  return await this.expandAttributesShareRequests(content);
@@ -452,7 +449,7 @@ let DataViewExpander = class DataViewExpander {
452
449
  if (content instanceof Array) {
453
450
  return await this.expandRelationshipDTOs(content);
454
451
  }
455
- return this.expandRelationshipDTO(content);
452
+ return await this.expandRelationshipDTO(content);
456
453
  case "ConsumptionAttribute":
457
454
  if (content instanceof Array) {
458
455
  return await this.expandConsumptionAttributes(content);
@@ -465,71 +462,127 @@ let DataViewExpander = class DataViewExpander {
465
462
  async expandMessageDTO(message) {
466
463
  const recipientRelationships = await this.expandRecipients(message.recipients);
467
464
  const createdByRelationship = await this.expandAddress(message.createdBy);
468
- const files = await this.expandFileIds(message.attachments);
465
+ const fileIds = [];
466
+ const filePromises = [];
467
+ for (const attachment of message.attachments) {
468
+ if (typeof attachment === "string") {
469
+ filePromises.push(this.expandFileId(attachment));
470
+ fileIds.push(attachment);
471
+ }
472
+ else {
473
+ filePromises.push(this.expandFileDTO(attachment));
474
+ fileIds.push(attachment.id);
475
+ }
476
+ }
477
+ const files = await Promise.all(filePromises);
469
478
  const isOwn = this.identityController.isMe(transport_1.CoreAddress.from(message.createdBy));
470
- let peerRelationships = [createdByRelationship];
479
+ let status = MessageDVO_1.MessageStatus.Received;
471
480
  if (isOwn) {
472
- peerRelationships = recipientRelationships;
481
+ const receivedByEveryone = message.recipients.every((r) => !!r.receivedAt);
482
+ status = receivedByEveryone ? MessageDVO_1.MessageStatus.Delivered : MessageDVO_1.MessageStatus.Delivering;
473
483
  }
474
- const status = MessageDVO_1.MessageStatus.Delivering; // TODO: JSSNMSHDD-2462 (Map message status once receivedAt is updated)
475
- return {
484
+ const name = DataViewTranslateable_1.DataViewTranslateable.transport.messageName;
485
+ const value = {
476
486
  id: message.id,
477
- name: DataViewTranslateable_1.DataViewTranslateable.transport.messageName,
487
+ name: name,
478
488
  date: message.createdAt,
479
489
  type: "MessageDVO",
480
- message: {
481
- ...message,
482
- isOwn: isOwn,
483
- attachmentCount: message.attachments.length,
484
- attachmentObjects: files,
485
- createdByObject: createdByRelationship,
486
- peerObjects: peerRelationships,
487
- recipientCount: message.recipients.length,
488
- recipientObjects: recipientRelationships,
489
- status: status
490
- },
490
+ createdByDevice: message.createdByDevice,
491
+ createdAt: message.createdAt,
492
+ createdBy: createdByRelationship,
493
+ recipients: recipientRelationships,
494
+ attachments: files,
495
+ isOwn,
496
+ recipientCount: message.recipients.length,
497
+ attachmentCount: message.attachments.length,
498
+ status,
491
499
  image: ""
492
500
  };
501
+ if (message.content["@type"] === "Mail" || message.content["@type"] === "RequestMail") {
502
+ value.name = DataViewTranslateable_1.DataViewTranslateable.consumption.mails.mailSubjectFallback;
503
+ value.type = "MailDVO";
504
+ const mailContent = message.content;
505
+ if (mailContent.subject) {
506
+ value.name = mailContent.subject;
507
+ }
508
+ value.to = await this.expandAddresses(mailContent.to);
509
+ value.toCount = mailContent.to.length;
510
+ value.ccCount = 0;
511
+ if (mailContent.cc) {
512
+ value.cc = await this.expandAddresses(mailContent.cc);
513
+ value.ccCount = mailContent.cc.length;
514
+ }
515
+ value.subject = mailContent.subject;
516
+ value.body = mailContent.body;
517
+ if (mailContent["@type"] === "RequestMail") {
518
+ const requestMailContent = message.content;
519
+ value.name = DataViewTranslateable_1.DataViewTranslateable.consumption.mails.requestMailSubjectFallback;
520
+ if (requestMailContent.subject) {
521
+ value.name = requestMailContent.subject;
522
+ }
523
+ value.type = "RequestMailDVO";
524
+ value.requests = await this.expandUnknownRequests(requestMailContent.requests);
525
+ value.requestCount = requestMailContent.requests.length;
526
+ return value;
527
+ }
528
+ return value;
529
+ }
530
+ return value;
493
531
  }
494
532
  async expandMessageDTOs(messages) {
495
533
  const messagePromises = messages.map((message) => this.expandMessageDTO(message));
496
534
  return await Promise.all(messagePromises);
497
535
  }
536
+ async expandUnknownRequest(request) {
537
+ switch (request["@type"]) {
538
+ case "AttributesRequest":
539
+ return await this.expandAttributesRequest(request);
540
+ case "AttributesShareRequest":
541
+ return await this.expandAttributesShareRequest(request);
542
+ case "AttributesChangeRequest":
543
+ return await this.expandAttributesChangeRequest(request);
544
+ }
545
+ return {
546
+ id: request.id ? request.id : "",
547
+ name: `${request["@type"]} ${request.key}`,
548
+ description: "i18n://dvo.request.unknownType",
549
+ type: "RequestDVO",
550
+ date: request.expiresAt,
551
+ ...request
552
+ };
553
+ }
498
554
  expandRequest(request) {
499
555
  return {
500
- id: "requestid",
501
- name: "Request",
502
- type: request["@type"],
503
- request: {
504
- ...request
505
- }
556
+ id: request.id ? request.id : "",
557
+ name: `${request["@type"]} ${request.key}`,
558
+ type: "RequestDVO",
559
+ date: request.expiresAt,
560
+ ...request
506
561
  };
507
562
  }
508
- async expandRequests(requests) {
509
- const requestsPromise = requests.map((request) => this.expandRequest(request));
563
+ async expandUnknownRequests(requests) {
564
+ const requestsPromise = requests.map((request) => this.expandUnknownRequest(request));
510
565
  return await Promise.all(requestsPromise);
511
566
  }
512
567
  async expandAttributesShareRequest(attributesShareRequest) {
513
568
  var _a, _b;
514
569
  const request = this.expandRequest(attributesShareRequest);
515
570
  const recipientObjects = [];
516
- let relationshipCount = 0;
571
+ let possibleRecipientCount = 0;
517
572
  for (const recipient of attributesShareRequest.recipients) {
518
573
  if (this.identityController.isMe(transport_1.CoreAddress.from(recipient))) {
519
574
  continue;
520
575
  }
521
- const result = await this.tranport.relationships.getRelationshipByAddress({
522
- address: recipient.toString()
523
- });
524
- if (result.isSuccess) {
525
- recipientObjects.push(this.expandRelationshipDTO(result.value));
526
- relationshipCount++;
576
+ const identity = await this.expandIdentityForAddress(recipient);
577
+ if (identity.hasRelationship) {
578
+ recipientObjects.push(identity);
579
+ possibleRecipientCount++;
527
580
  }
528
581
  }
529
582
  if (recipientObjects.length === 0) {
530
583
  request.errorCount = ((_a = request.errorCount) !== null && _a !== void 0 ? _a : 0) + 1;
531
584
  const error = {
532
- code: "error.consumption.request.AttributeShareRequest.noRelationship",
585
+ code: "error.dvo.request.AttributeShareRequest.noRelationship",
533
586
  message: "There are no relationships to any of the recipients of this request."
534
587
  };
535
588
  if (!request.errors) {
@@ -537,11 +590,11 @@ let DataViewExpander = class DataViewExpander {
537
590
  }
538
591
  request.errors.push(error);
539
592
  }
540
- else if (recipientObjects.length !== relationshipCount) {
593
+ else if (recipientObjects.length !== possibleRecipientCount) {
541
594
  request.warningCount = ((_b = request.warningCount) !== null && _b !== void 0 ? _b : 0) + 1;
542
595
  const warning = {
543
- code: "warning.consumption.request.AttributeShareRequest.onlyRelationships",
544
- message: "Not to every recipients of this request exist a relationship."
596
+ code: "warning.dvo.request.AttributeShareRequest.onlyRelationships",
597
+ message: "Not to every recipient of this request exist a relationship."
545
598
  };
546
599
  if (!request.warnings) {
547
600
  request.warnings = [];
@@ -562,27 +615,24 @@ let DataViewExpander = class DataViewExpander {
562
615
  }
563
616
  return {
564
617
  ...request,
565
- name: name,
566
- request: {
567
- ...request.request,
568
- attributeObjects: attributesObjects,
569
- attributes: attributesShareRequest.attributes,
570
- recipientObjects: recipientObjects,
571
- recipients: attributesShareRequest.recipients,
572
- relationshipCount: relationshipCount
573
- }
618
+ name,
619
+ type: "AttributesShareRequestDVO",
620
+ attributes: attributesObjects,
621
+ attributeCount: attributesObjects.length,
622
+ recipients: recipientObjects,
623
+ recipientCount: recipientObjects.length,
624
+ possibleRecipientCount
574
625
  };
575
626
  }
576
627
  expandConsumptionAttribute(attribute) {
577
628
  return {
629
+ type: "StoredAttributeDVO",
578
630
  id: attribute.id,
579
- name: `${attribute.content.name}: ${attribute.content.value}`,
580
- type: "Attribute",
581
- attribute: {
582
- ...attribute,
583
- isAvailable: true
584
- },
585
- date: attribute.createdAt
631
+ name: attribute.content.name,
632
+ value: attribute.content.value,
633
+ date: attribute.createdAt,
634
+ isOwn: true,
635
+ sharedItems: []
586
636
  };
587
637
  }
588
638
  async expandConsumptionAttributes(attributes) {
@@ -591,38 +641,33 @@ let DataViewExpander = class DataViewExpander {
591
641
  }
592
642
  async expandAttributeName(name) {
593
643
  const consumptionAttribute = await this.consumption.attributes.getAttributeByName({ name: name });
644
+ let matchedAttributes = [];
594
645
  if (consumptionAttribute.isSuccess) {
595
- return this.expandConsumptionAttribute(consumptionAttribute.value);
646
+ matchedAttributes = [this.expandConsumptionAttribute(consumptionAttribute.value)];
647
+ }
648
+ let bestMatch;
649
+ if (matchedAttributes.length > 0) {
650
+ bestMatch = matchedAttributes[0];
596
651
  }
597
- return this.getUnknownAttribute(name);
652
+ return {
653
+ type: "MatchedAttributesDVO",
654
+ id: name,
655
+ name: name,
656
+ matches: matchedAttributes,
657
+ bestMatch: bestMatch
658
+ };
598
659
  }
599
660
  async expandAttributeNames(names) {
600
661
  const namesPromise = names.map((name) => this.expandAttributeName(name));
601
662
  return await Promise.all(namesPromise);
602
663
  }
603
- getUnknownAttribute(name) {
604
- return {
605
- id: name,
606
- type: "Attribute",
607
- name: DataViewTranslateable_1.DataViewTranslateable.consumption.attributes.unknownAttributeName,
608
- attribute: {
609
- content: {
610
- "@type": "Attribute",
611
- name: name
612
- },
613
- isAvailable: false
614
- }
615
- };
616
- }
617
664
  expandAttribute(attribute) {
618
665
  return {
666
+ type: "AttributeDVO",
619
667
  id: attribute.name,
620
- type: "Attribute",
621
- name: attribute.value,
622
- attribute: {
623
- ...attribute,
624
- isAvailable: false
625
- }
668
+ name: attribute.name,
669
+ value: attribute.value,
670
+ isOwn: false
626
671
  };
627
672
  }
628
673
  async expandAttributes(attributes) {
@@ -633,14 +678,10 @@ let DataViewExpander = class DataViewExpander {
633
678
  const request = this.expandRequest(attributesChangeRequest);
634
679
  let applyToObject;
635
680
  if (attributesChangeRequest.applyTo) {
636
- if (!this.identityController.isMe(transport_1.CoreAddress.from(attributesChangeRequest.applyTo))) {
637
- const result = await this.tranport.relationships.getRelationshipByAddress({
638
- address: attributesChangeRequest.applyTo
639
- });
640
- if (result.isSuccess) {
641
- applyToObject = this.expandRelationshipDTO(result.value);
642
- }
643
- }
681
+ applyToObject = await this.expandIdentityForAddress(attributesChangeRequest.applyTo);
682
+ }
683
+ else {
684
+ applyToObject = this.expandSelf();
644
685
  }
645
686
  let name;
646
687
  const attributesObjects = [];
@@ -648,6 +689,7 @@ let DataViewExpander = class DataViewExpander {
648
689
  const attributeDVO = this.expandAttribute(attribute);
649
690
  attributesObjects.push(attributeDVO);
650
691
  }
692
+ const oldAttributesObjects = await this.expandAttributeNames(attributesObjects.map((item) => item.id));
651
693
  if (attributesObjects.length > 1) {
652
694
  name = DataViewTranslateable_1.DataViewTranslateable.consumption.requests.attributesChangeRequestNamePlural;
653
695
  }
@@ -656,47 +698,59 @@ let DataViewExpander = class DataViewExpander {
656
698
  }
657
699
  return {
658
700
  ...request,
701
+ type: "AttributesChangeRequestDVO",
659
702
  name: name,
660
- request: {
661
- ...request.request,
662
- attributes: attributesChangeRequest.attributes,
663
- applyTo: attributesChangeRequest.applyTo,
664
- attributeObjects: attributesObjects,
665
- applyToObject: applyToObject
666
- }
703
+ newAttributes: attributesObjects,
704
+ oldAttributes: oldAttributesObjects,
705
+ applyTo: applyToObject
667
706
  };
668
707
  }
669
- expandSelf() {
670
- var _a;
671
- let identityProperties;
672
- const name = "";
673
- const initials = ((_a = name.match(/\b\w/g)) !== null && _a !== void 0 ? _a : []).join("");
674
- const isPerson = true;
675
- // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
676
- if (isPerson) {
677
- identityProperties = {
678
- initials: initials,
679
- statusText: "",
680
- isPerson: true,
681
- familyName: "",
682
- givenName: "",
683
- salutation: ""
684
- };
708
+ async expandAttributesRequest(attributesRequest) {
709
+ const request = this.expandRequest(attributesRequest);
710
+ let name;
711
+ const attributesObjects = await this.expandAttributeNames(attributesRequest.names);
712
+ if (attributesObjects.length > 1) {
713
+ name = DataViewTranslateable_1.DataViewTranslateable.consumption.requests.attributesChangeRequestNamePlural;
685
714
  }
686
715
  else {
687
- identityProperties = {
688
- initials: initials,
689
- statusText: "",
690
- isOrganization: true,
691
- legalName: ""
692
- };
716
+ name = DataViewTranslateable_1.DataViewTranslateable.consumption.requests.attributesChangeRequestName;
693
717
  }
718
+ return {
719
+ ...request,
720
+ type: "AttributesRequestDVO",
721
+ names: attributesRequest.names,
722
+ name: name,
723
+ attributes: attributesObjects,
724
+ required: attributesRequest.required
725
+ };
726
+ }
727
+ expandSelf() {
728
+ const name = "i18n://dvo.identity.self.name";
729
+ const initials = "i18n://dvo.identity.self.initials";
694
730
  return {
695
731
  id: this.identityController.address.toString(),
696
- name: DataViewTranslateable_1.DataViewTranslateable.consumption.identities.self,
697
- type: "SelfDVO",
698
- identity: identityProperties,
699
- isSelf: true
732
+ type: "IdentityDVO",
733
+ name: name,
734
+ initials: initials,
735
+ realm: transport_1.Realm.Prod,
736
+ description: "i18n://dvo.identity.self.description",
737
+ isSelf: true,
738
+ hasRelationship: false
739
+ };
740
+ }
741
+ expandUnknown(address) {
742
+ var _a;
743
+ const name = address.substring(3, 9);
744
+ const initials = ((_a = name.match(/\b\w/g)) !== null && _a !== void 0 ? _a : []).join("");
745
+ return {
746
+ id: this.identityController.address.toString(),
747
+ type: "IdentityDVO",
748
+ name: name,
749
+ initials: initials,
750
+ realm: transport_1.Realm.Prod,
751
+ description: "i18n://dvo.identity.unknown.description",
752
+ isSelf: false,
753
+ hasRelationship: false
700
754
  };
701
755
  }
702
756
  async expandAttributesShareRequests(requests) {
@@ -711,11 +765,11 @@ let DataViewExpander = class DataViewExpander {
711
765
  if (this.identityController.isMe(transport_1.CoreAddress.from(address))) {
712
766
  return this.expandSelf();
713
767
  }
714
- const result = await this.tranport.relationships.getRelationshipByAddress({ address: address });
768
+ const result = await this.transport.relationships.getRelationshipByAddress({ address: address });
715
769
  if (result.isError) {
716
- throw result.error;
770
+ return this.expandUnknown(address);
717
771
  }
718
- return this.expandRelationshipDTO(result.value);
772
+ return await this.expandRelationshipDTO(result.value);
719
773
  }
720
774
  async expandAddresses(addresses) {
721
775
  const relationshipPromises = addresses.map((address) => this.expandAddress(address));
@@ -725,9 +779,12 @@ let DataViewExpander = class DataViewExpander {
725
779
  const relationshipPromises = recipients.map((recipient) => this.expandAddress(recipient.address));
726
780
  return await Promise.all(relationshipPromises);
727
781
  }
728
- expandRelationshipDTO(relationship) {
729
- var _a;
730
- const name = "";
782
+ async createRelationshipDVO(relationship, relationshipInfo) {
783
+ var _a, _b, _c, _d;
784
+ if (!relationshipInfo) {
785
+ const relationshipInfoResult = await this.consumption.relationshipInfo.getRelationshipInfoByRelationship({ relationshipId: relationship.id });
786
+ relationshipInfo = relationshipInfoResult.value;
787
+ }
731
788
  let statusText = "";
732
789
  if (relationship.status === transport_1.RelationshipStatus.Pending && this.identityController.isMe(transport_1.CoreAddress.from(relationship.changes[0].request.createdBy))) {
733
790
  statusText = DataViewTranslateable_1.DataViewTranslateable.transport.relationshipOutgoing;
@@ -744,34 +801,85 @@ let DataViewExpander = class DataViewExpander {
744
801
  else if (relationship.status === transport_1.RelationshipStatus.Active) {
745
802
  statusText = DataViewTranslateable_1.DataViewTranslateable.transport.relationshipActive;
746
803
  }
747
- const initials = ((_a = name.match(/\b\w/g)) !== null && _a !== void 0 ? _a : []).join("");
748
- const identityProperties = {
749
- initials: initials,
750
- statusText: statusText,
751
- isPerson: true,
752
- familyName: "",
753
- givenName: "",
754
- salutation: ""
755
- };
756
804
  return {
757
805
  id: relationship.id,
758
- name: name,
759
- description: statusText,
806
+ name: relationshipInfo.userTitle ? relationshipInfo.userTitle : relationshipInfo.title,
807
+ description: relationshipInfo.userDescription ? relationshipInfo.userDescription : relationshipInfo.description,
760
808
  date: relationship.changes[0].request.createdAt,
761
809
  image: "",
762
- type: "IdentityDVO",
763
- identity: identityProperties,
764
- relationship: {
765
- ...relationship
810
+ type: "RelationshipDVO",
811
+ status: statusText,
812
+ isPinned: relationshipInfo.isPinned,
813
+ theme: {
814
+ image: (_a = relationshipInfo.theme) === null || _a === void 0 ? void 0 : _a.image,
815
+ headerImage: (_b = relationshipInfo.theme) === null || _b === void 0 ? void 0 : _b.imageBar,
816
+ backgroundColor: (_c = relationshipInfo.theme) === null || _c === void 0 ? void 0 : _c.backgroundColor,
817
+ foregroundColor: (_d = relationshipInfo.theme) === null || _d === void 0 ? void 0 : _d.foregroundColor
766
818
  }
767
819
  };
768
820
  }
821
+ async expandRelationshipDTO(relationship) {
822
+ var _a;
823
+ const relationshipInfoResult = await this.consumption.relationshipInfo.getRelationshipInfoByRelationship({ relationshipId: relationship.id });
824
+ const relationshipInfo = relationshipInfoResult.value;
825
+ const name = relationshipInfo.userTitle ? relationshipInfo.userTitle : relationshipInfo.title;
826
+ let description = relationshipInfo.userDescription ? relationshipInfo.userDescription : relationshipInfo.description;
827
+ const initials = ((_a = name.match(/\b\w/g)) !== null && _a !== void 0 ? _a : []).join("");
828
+ const relationshipDVO = await this.createRelationshipDVO(relationship, relationshipInfo);
829
+ if (!description) {
830
+ description = relationshipDVO.status;
831
+ }
832
+ return {
833
+ type: "IdentityDVO",
834
+ id: relationship.peer,
835
+ name: name,
836
+ date: relationshipDVO.date,
837
+ description: description,
838
+ publicKey: relationship.peerIdentity.publicKey,
839
+ realm: relationship.peerIdentity.realm,
840
+ initials,
841
+ isSelf: false,
842
+ hasRelationship: true,
843
+ relationship: relationshipDVO
844
+ };
845
+ }
846
+ async expandIdentityForAddress(address) {
847
+ var _a;
848
+ if (address === this.identityController.address.toString()) {
849
+ return this.expandSelf();
850
+ }
851
+ const relationshipResult = await this.transport.relationships.getRelationshipByAddress({
852
+ address: address
853
+ });
854
+ if (relationshipResult.isSuccess) {
855
+ return await this.expandRelationshipDTO(relationshipResult.value);
856
+ }
857
+ if (relationshipResult.error.code !== useCases_1.RuntimeErrors.general.recordNotFound(transport_1.Relationship).code) {
858
+ throw relationshipResult.error;
859
+ }
860
+ const name = address.substring(3, 9);
861
+ const initials = ((_a = name.match(/\b\w/g)) !== null && _a !== void 0 ? _a : []).join("");
862
+ return {
863
+ id: address,
864
+ type: "IdentityDVO",
865
+ name: name,
866
+ initials: initials,
867
+ publicKey: "i18n://dvo.identity.publicKey.unknown",
868
+ realm: this.identityController.realm.toString(),
869
+ description: "i18n://dvo.identity.unknown",
870
+ isSelf: false,
871
+ hasRelationship: false
872
+ };
873
+ }
874
+ async expandIdentity(identity) {
875
+ return await this.expandIdentityForAddress(identity.address);
876
+ }
769
877
  async expandRelationshipDTOs(relationships) {
770
878
  const relationshipPromises = relationships.map((relationship) => this.expandRelationshipDTO(relationship));
771
879
  return await Promise.all(relationshipPromises);
772
880
  }
773
881
  async expandFileId(id) {
774
- const result = await this.tranport.files.getFile({ id: id });
882
+ const result = await this.transport.files.getFile({ id: id });
775
883
  if (result.isError) {
776
884
  throw result.error;
777
885
  }
@@ -783,15 +891,16 @@ let DataViewExpander = class DataViewExpander {
783
891
  }
784
892
  async expandFileDTO(file) {
785
893
  return {
894
+ ...file,
895
+ type: "FileDVO",
786
896
  id: file.id,
787
897
  name: file.title ? file.title : file.filename,
788
- type: "FileDVO",
789
898
  date: file.createdAt,
790
899
  image: "",
791
- file: {
792
- ...file,
793
- createdByObject: await this.expandAddress(file.createdBy)
794
- }
900
+ filename: file.filename,
901
+ filesize: file.filesize,
902
+ createdBy: await this.expandAddress(file.createdBy),
903
+ deletedBy: file.deletedBy ? await this.expandAddress(file.deletedBy) : undefined
795
904
  };
796
905
  }
797
906
  async expandFileDTOs(files) {
@@ -838,17 +947,21 @@ exports.DataViewTranslateable = void 0;
838
947
  class DataViewTranslateable {
839
948
  }
840
949
  exports.DataViewTranslateable = DataViewTranslateable;
841
- DataViewTranslateable.prefix = "i18n://";
950
+ DataViewTranslateable.prefix = "i18n://dvo.";
842
951
  DataViewTranslateable.transport = {
843
952
  messageName: `${DataViewTranslateable.prefix}message.name`,
844
- relationshipOutgoing: `${DataViewTranslateable.prefix}relationship.name`,
953
+ relationshipOutgoing: `${DataViewTranslateable.prefix}relationship.outgoing`,
845
954
  relationshipIncoming: `${DataViewTranslateable.prefix}relationship.incoming`,
846
- relationshipRejected: `${DataViewTranslateable.prefix}relationship.outgoing`,
955
+ relationshipRejected: `${DataViewTranslateable.prefix}relationship.rejected`,
847
956
  relationshipRevoked: `${DataViewTranslateable.prefix}relationship.revoked`,
848
957
  relationshipActive: `${DataViewTranslateable.prefix}relationship.active`,
849
958
  fileName: `${DataViewTranslateable.prefix}file.name`
850
959
  };
851
960
  DataViewTranslateable.consumption = {
961
+ mails: {
962
+ mailSubjectFallback: `${DataViewTranslateable.prefix}mails.mailSubjectFallback`,
963
+ requestMailSubjectFallback: `${DataViewTranslateable.prefix}mails.requestMailSubjectFallback`
964
+ },
852
965
  attributes: {
853
966
  unknownAttributeName: `${DataViewTranslateable.prefix}attributes.UnknownAttributeName`
854
967
  },
@@ -925,75 +1038,86 @@ __exportStar(__webpack_require__(/*! ./Warning */ "./dist/dataViews/common/Warni
925
1038
 
926
1039
  /***/ }),
927
1040
 
928
- /***/ "./dist/dataViews/consumption/AttributeDVO.js":
929
- /*!****************************************************!*\
930
- !*** ./dist/dataViews/consumption/AttributeDVO.js ***!
931
- \****************************************************/
1041
+ /***/ "./dist/dataViews/consumption/MatchedAttributesDVO.js":
1042
+ /*!************************************************************!*\
1043
+ !*** ./dist/dataViews/consumption/MatchedAttributesDVO.js ***!
1044
+ \************************************************************/
932
1045
  /***/ ((__unused_webpack_module, exports) => {
933
1046
 
934
1047
  "use strict";
935
1048
 
936
1049
  Object.defineProperty(exports, "__esModule", ({ value: true }));
937
- //# sourceMappingURL=AttributeDVO.js.map
1050
+ //# sourceMappingURL=MatchedAttributesDVO.js.map
938
1051
 
939
1052
  /***/ }),
940
1053
 
941
- /***/ "./dist/dataViews/consumption/AttributesChangeRequestDVO.js":
942
- /*!******************************************************************!*\
943
- !*** ./dist/dataViews/consumption/AttributesChangeRequestDVO.js ***!
944
- \******************************************************************/
945
- /***/ ((__unused_webpack_module, exports) => {
1054
+ /***/ "./dist/dataViews/consumption/index.js":
1055
+ /*!*********************************************!*\
1056
+ !*** ./dist/dataViews/consumption/index.js ***!
1057
+ \*********************************************/
1058
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
946
1059
 
947
1060
  "use strict";
948
1061
 
1062
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
1063
+ if (k2 === undefined) k2 = k;
1064
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
1065
+ }) : (function(o, m, k, k2) {
1066
+ if (k2 === undefined) k2 = k;
1067
+ o[k2] = m[k];
1068
+ }));
1069
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
1070
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
1071
+ };
949
1072
  Object.defineProperty(exports, "__esModule", ({ value: true }));
950
- //# sourceMappingURL=AttributesChangeRequestDVO.js.map
1073
+ __exportStar(__webpack_require__(/*! ./MatchedAttributesDVO */ "./dist/dataViews/consumption/MatchedAttributesDVO.js"), exports);
1074
+ //# sourceMappingURL=index.js.map
951
1075
 
952
1076
  /***/ }),
953
1077
 
954
- /***/ "./dist/dataViews/consumption/AttributesShareRequestDVO.js":
955
- /*!*****************************************************************!*\
956
- !*** ./dist/dataViews/consumption/AttributesShareRequestDVO.js ***!
957
- \*****************************************************************/
1078
+ /***/ "./dist/dataViews/content/AttributeDVO.js":
1079
+ /*!************************************************!*\
1080
+ !*** ./dist/dataViews/content/AttributeDVO.js ***!
1081
+ \************************************************/
958
1082
  /***/ ((__unused_webpack_module, exports) => {
959
1083
 
960
1084
  "use strict";
961
1085
 
962
1086
  Object.defineProperty(exports, "__esModule", ({ value: true }));
963
- //# sourceMappingURL=AttributesShareRequestDVO.js.map
1087
+ //# sourceMappingURL=AttributeDVO.js.map
964
1088
 
965
1089
  /***/ }),
966
1090
 
967
- /***/ "./dist/dataViews/consumption/MailDVO.js":
968
- /*!***********************************************!*\
969
- !*** ./dist/dataViews/consumption/MailDVO.js ***!
970
- \***********************************************/
1091
+ /***/ "./dist/dataViews/content/MailDVOs.js":
1092
+ /*!********************************************!*\
1093
+ !*** ./dist/dataViews/content/MailDVOs.js ***!
1094
+ \********************************************/
971
1095
  /***/ ((__unused_webpack_module, exports) => {
972
1096
 
973
1097
  "use strict";
974
1098
 
975
1099
  Object.defineProperty(exports, "__esModule", ({ value: true }));
976
- //# sourceMappingURL=MailDVO.js.map
1100
+ //# sourceMappingURL=MailDVOs.js.map
977
1101
 
978
1102
  /***/ }),
979
1103
 
980
- /***/ "./dist/dataViews/consumption/RequestDVO.js":
981
- /*!**************************************************!*\
982
- !*** ./dist/dataViews/consumption/RequestDVO.js ***!
983
- \**************************************************/
1104
+ /***/ "./dist/dataViews/content/RequestDVOs.js":
1105
+ /*!***********************************************!*\
1106
+ !*** ./dist/dataViews/content/RequestDVOs.js ***!
1107
+ \***********************************************/
984
1108
  /***/ ((__unused_webpack_module, exports) => {
985
1109
 
986
1110
  "use strict";
987
1111
 
988
1112
  Object.defineProperty(exports, "__esModule", ({ value: true }));
989
- //# sourceMappingURL=RequestDVO.js.map
1113
+ //# sourceMappingURL=RequestDVOs.js.map
990
1114
 
991
1115
  /***/ }),
992
1116
 
993
- /***/ "./dist/dataViews/consumption/index.js":
994
- /*!*********************************************!*\
995
- !*** ./dist/dataViews/consumption/index.js ***!
996
- \*********************************************/
1117
+ /***/ "./dist/dataViews/content/index.js":
1118
+ /*!*****************************************!*\
1119
+ !*** ./dist/dataViews/content/index.js ***!
1120
+ \*****************************************/
997
1121
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
998
1122
 
999
1123
  "use strict";
@@ -1009,11 +1133,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
1009
1133
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
1010
1134
  };
1011
1135
  Object.defineProperty(exports, "__esModule", ({ value: true }));
1012
- __exportStar(__webpack_require__(/*! ./AttributeDVO */ "./dist/dataViews/consumption/AttributeDVO.js"), exports);
1013
- __exportStar(__webpack_require__(/*! ./AttributesChangeRequestDVO */ "./dist/dataViews/consumption/AttributesChangeRequestDVO.js"), exports);
1014
- __exportStar(__webpack_require__(/*! ./AttributesShareRequestDVO */ "./dist/dataViews/consumption/AttributesShareRequestDVO.js"), exports);
1015
- __exportStar(__webpack_require__(/*! ./MailDVO */ "./dist/dataViews/consumption/MailDVO.js"), exports);
1016
- __exportStar(__webpack_require__(/*! ./RequestDVO */ "./dist/dataViews/consumption/RequestDVO.js"), exports);
1136
+ __exportStar(__webpack_require__(/*! ./AttributeDVO */ "./dist/dataViews/content/AttributeDVO.js"), exports);
1137
+ __exportStar(__webpack_require__(/*! ./MailDVOs */ "./dist/dataViews/content/MailDVOs.js"), exports);
1138
+ __exportStar(__webpack_require__(/*! ./RequestDVOs */ "./dist/dataViews/content/RequestDVOs.js"), exports);
1017
1139
  //# sourceMappingURL=index.js.map
1018
1140
 
1019
1141
  /***/ }),
@@ -1039,6 +1161,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
1039
1161
  Object.defineProperty(exports, "__esModule", ({ value: true }));
1040
1162
  __exportStar(__webpack_require__(/*! ./common */ "./dist/dataViews/common/index.js"), exports);
1041
1163
  __exportStar(__webpack_require__(/*! ./consumption */ "./dist/dataViews/consumption/index.js"), exports);
1164
+ __exportStar(__webpack_require__(/*! ./content */ "./dist/dataViews/content/index.js"), exports);
1042
1165
  __exportStar(__webpack_require__(/*! ./DataViewExpander */ "./dist/dataViews/DataViewExpander.js"), exports);
1043
1166
  __exportStar(__webpack_require__(/*! ./DataViewObject */ "./dist/dataViews/DataViewObject.js"), exports);
1044
1167
  __exportStar(__webpack_require__(/*! ./DataViewTranslateable */ "./dist/dataViews/DataViewTranslateable.js"), exports);
@@ -1085,7 +1208,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
1085
1208
  exports.MessageStatus = void 0;
1086
1209
  var MessageStatus;
1087
1210
  (function (MessageStatus) {
1088
- MessageStatus["Sent"] = "sent";
1211
+ MessageStatus["Received"] = "received";
1089
1212
  MessageStatus["Delivering"] = "delivering";
1090
1213
  MessageStatus["Delivered"] = "delivered";
1091
1214
  MessageStatus["Errorneous"] = "errorneous";
@@ -1778,7 +1901,7 @@ exports.AttributesFacade = void 0;
1778
1901
  const typescript_ioc_1 = __webpack_require__(/*! typescript-ioc */ "./node_modules/typescript-ioc/dist/typescript-ioc.js");
1779
1902
  const useCases_1 = __webpack_require__(/*! ../../../useCases */ "./dist/useCases/index.js");
1780
1903
  let AttributesFacade = class AttributesFacade {
1781
- constructor(createAttributeUseCase, deleteAttributeUseCase, deleteAttributeByNameUseCase, getAllValidUseCase, getAttributeUseCase, getAttributeByNameUseCase, getAttributesUseCase, getAttributesByNameUseCase, getHistoryByNameUseCase, succeedAttributeUseCase, updateAttributeUseCase) {
1904
+ constructor(createAttributeUseCase, deleteAttributeUseCase, deleteAttributeByNameUseCase, getAllValidUseCase, getAttributeUseCase, getAttributeByNameUseCase, getAttributesUseCase, getAttributesByNamesUseCase, getHistoryByNameUseCase, succeedAttributeUseCase, updateAttributeUseCase) {
1782
1905
  this.createAttributeUseCase = createAttributeUseCase;
1783
1906
  this.deleteAttributeUseCase = deleteAttributeUseCase;
1784
1907
  this.deleteAttributeByNameUseCase = deleteAttributeByNameUseCase;
@@ -1786,7 +1909,7 @@ let AttributesFacade = class AttributesFacade {
1786
1909
  this.getAttributeUseCase = getAttributeUseCase;
1787
1910
  this.getAttributeByNameUseCase = getAttributeByNameUseCase;
1788
1911
  this.getAttributesUseCase = getAttributesUseCase;
1789
- this.getAttributesByNameUseCase = getAttributesByNameUseCase;
1912
+ this.getAttributesByNamesUseCase = getAttributesByNamesUseCase;
1790
1913
  this.getHistoryByNameUseCase = getHistoryByNameUseCase;
1791
1914
  this.succeedAttributeUseCase = succeedAttributeUseCase;
1792
1915
  this.updateAttributeUseCase = updateAttributeUseCase;
@@ -1812,8 +1935,8 @@ let AttributesFacade = class AttributesFacade {
1812
1935
  async getAttributes(request) {
1813
1936
  return await this.getAttributesUseCase.execute(request);
1814
1937
  }
1815
- async getAttributesByName(request) {
1816
- return await this.getAttributesByNameUseCase.execute(request);
1938
+ async getAttributesByNames(request) {
1939
+ return await this.getAttributesByNamesUseCase.execute(request);
1817
1940
  }
1818
1941
  async getHistoryByName(request) {
1819
1942
  return await this.getHistoryByNameUseCase.execute(request);
@@ -1844,7 +1967,7 @@ AttributesFacade = __decorate([
1844
1967
  useCases_1.GetAttributeUseCase,
1845
1968
  useCases_1.GetAttributeByNameUseCase,
1846
1969
  useCases_1.GetAttributesUseCase,
1847
- useCases_1.GetAttributesByNameUseCase,
1970
+ useCases_1.GetAttributesByNamesUseCase,
1848
1971
  useCases_1.GetHistoryByNameUseCase,
1849
1972
  useCases_1.SucceedAttributeUseCase,
1850
1973
  useCases_1.UpdateAttributeUseCase])
@@ -3860,7 +3983,7 @@ exports.JsonSchema = JsonSchema;
3860
3983
  "use strict";
3861
3984
 
3862
3985
  Object.defineProperty(exports, "__esModule", ({ value: true }));
3863
- exports.GetFilesRequest = exports.GetFileRequest = exports.CreateTokenQrCodeForFileRequest = exports.CreateTokenForFileRequest = exports.UpdateDeviceRequest = exports.GetDeviceOnboardingInfoRequest = exports.GetDeviceRequest = exports.DeleteDeviceRequest = exports.CreateDeviceOnboardingTokenRequest = exports.CreateDeviceRequest = exports.DownloadAttachmentRequest = exports.DownloadFileRequest = exports.RegisterPushNotificationTokenRequest = exports.UpdateSharedItemRequest = exports.GetSharedItemsSharedWithAddressRequest = exports.GetSharedItemsSharedByAddressRequest = exports.GetSharedItemsByReferenceRequest = exports.GetSharedItemsByAddressRequest = exports.GetSharedItemsRequest = exports.GetSharedItemRequest = exports.DeleteSharedItemRequest = exports.CreateSharedItemRequest = exports.UpdateSettingRequest = exports.GetSettingsRequest = exports.GetSettingRequest = exports.DeleteSettingRequest = exports.CreateSettingRequest = exports.UpdateRelationshipInfoRequest = exports.GetRelationshipInfoByRelationshipRequest = exports.GetRelationshipInfoRequest = exports.DeleteRelationshipInfoByRelationshipRequest = exports.DeleteRelationshipInfoRequest = exports.CreateRelationshipInfoRequest = exports.UpdateDraftRequest = exports.GetDraftsRequest = exports.GetDraftRequest = exports.DeleteDraftRequest = exports.CreateDraftRequest = exports.UpdateAttributeRequest = exports.SucceedAttributeRequest = exports.GetHistoryByNameRequest = exports.GetAttributesRequest = exports.GetAttributeByNameRequest = exports.GetAttributeRequest = exports.DeleteAttributeByNameRequest = exports.DeleteAttributeRequest = exports.CreateAttributeRequest = exports.GetAttributesByNameRequest = exports.LoadPeerTokenAnonymousByTruncatedReferenceRequest = exports.LoadPeerTokenAnonymousByIdAndKeyRequest = void 0;
3986
+ exports.GetFilesRequest = exports.GetFileRequest = exports.CreateTokenQrCodeForFileRequest = exports.CreateTokenForFileRequest = exports.UpdateDeviceRequest = exports.GetDeviceOnboardingInfoRequest = exports.GetDeviceRequest = exports.DeleteDeviceRequest = exports.CreateDeviceOnboardingTokenRequest = exports.CreateDeviceRequest = exports.DownloadAttachmentRequest = exports.DownloadFileRequest = exports.RegisterPushNotificationTokenRequest = exports.UpdateSharedItemRequest = exports.GetSharedItemsSharedWithAddressRequest = exports.GetSharedItemsSharedByAddressRequest = exports.GetSharedItemsByReferenceRequest = exports.GetSharedItemsByAddressRequest = exports.GetSharedItemsRequest = exports.GetSharedItemRequest = exports.DeleteSharedItemRequest = exports.CreateSharedItemRequest = exports.UpdateSettingRequest = exports.GetSettingsRequest = exports.GetSettingRequest = exports.DeleteSettingRequest = exports.CreateSettingRequest = exports.UpdateRelationshipInfoRequest = exports.GetRelationshipInfoByRelationshipRequest = exports.GetRelationshipInfoRequest = exports.DeleteRelationshipInfoByRelationshipRequest = exports.DeleteRelationshipInfoRequest = exports.CreateRelationshipInfoRequest = exports.UpdateDraftRequest = exports.GetDraftsRequest = exports.GetDraftRequest = exports.DeleteDraftRequest = exports.CreateDraftRequest = exports.UpdateAttributeRequest = exports.SucceedAttributeRequest = exports.GetHistoryByNameRequest = exports.GetAttributesRequest = exports.GetAttributeByNameRequest = exports.GetAttributeRequest = exports.DeleteAttributeByNameRequest = exports.DeleteAttributeRequest = exports.CreateAttributeRequest = exports.GetAttributesByNamesRequest = exports.LoadPeerTokenAnonymousByTruncatedReferenceRequest = exports.LoadPeerTokenAnonymousByIdAndKeyRequest = void 0;
3864
3987
  exports.LoadPeerTokenRequest = exports.GetTokensRequest = exports.GetTokenRequest = exports.GetQRCodeForTokenRequest = exports.CreateOwnTokenRequest = exports.LoadPeerRelationshipTemplateRequest = exports.GetRelationshipTemplatesRequest = exports.GetRelationshipTemplateRequest = exports.CreateTokenQrCodeForOwnTemplateRequest = exports.CreateTokenForOwnTemplateRequest = exports.CreateOwnRelationshipTemplateRequest = exports.RevokeRelationshipChangeRequest = exports.RejectRelationshipChangeRequest = exports.GetRelationshipsRequest = exports.GetRelationshipByAddressRequest = exports.GetRelationshipRequest = exports.CreateRelationshipChangeRequest = exports.CreateRelationshipRequest = exports.AcceptRelationshipChangeRequest = exports.SendMessageRequest = exports.GetMessagesRequest = exports.GetMessageRequest = exports.GetAttachmentMetadataRequest = exports.CheckIdentityRequest = exports.UploadOwnFileRequest = exports.LoadPeerFileRequest = exports.LoadPeerFileViaReferenceRequest = exports.LoadPeerFileViaSecretRequest = void 0;
3865
3988
  exports.LoadPeerTokenAnonymousByIdAndKeyRequest = {
3866
3989
  "$schema": "http://json-schema.org/draft-07/schema#",
@@ -3902,11 +4025,11 @@ exports.LoadPeerTokenAnonymousByTruncatedReferenceRequest = {
3902
4025
  }
3903
4026
  }
3904
4027
  };
3905
- exports.GetAttributesByNameRequest = {
4028
+ exports.GetAttributesByNamesRequest = {
3906
4029
  "$schema": "http://json-schema.org/draft-07/schema#",
3907
- "$ref": "#/definitions/GetAttributesByNameRequest",
4030
+ "$ref": "#/definitions/GetAttributesByNamesRequest",
3908
4031
  "definitions": {
3909
- "GetAttributesByNameRequest": {
4032
+ "GetAttributesByNamesRequest": {
3910
4033
  "type": "object",
3911
4034
  "additionalProperties": false
3912
4035
  }
@@ -6103,10 +6226,10 @@ class AttributeMapper {
6103
6226
  static toAttributeDTOList(attributes) {
6104
6227
  return attributes.map((attribute) => this.toAttributeDTO(attribute));
6105
6228
  }
6106
- static toGetAttributesByNameResponse(attributesByName) {
6229
+ static toGetAttributesByNamesResponse(attributesByNames) {
6107
6230
  const response = {};
6108
- for (const name in attributesByName) {
6109
- response[name] = AttributeMapper.toAttributeDTO(attributesByName[name]);
6231
+ for (const name in attributesByNames) {
6232
+ response[name] = AttributeMapper.toAttributeDTO(attributesByNames[name]);
6110
6233
  }
6111
6234
  return response;
6112
6235
  }
@@ -6515,10 +6638,10 @@ exports.GetAttributesUseCase = GetAttributesUseCase;
6515
6638
 
6516
6639
  /***/ }),
6517
6640
 
6518
- /***/ "./dist/useCases/consumption/attributes/GetAttributesByName.js":
6519
- /*!*********************************************************************!*\
6520
- !*** ./dist/useCases/consumption/attributes/GetAttributesByName.js ***!
6521
- \*********************************************************************/
6641
+ /***/ "./dist/useCases/consumption/attributes/GetAttributesByNames.js":
6642
+ /*!**********************************************************************!*\
6643
+ !*** ./dist/useCases/consumption/attributes/GetAttributesByNames.js ***!
6644
+ \**********************************************************************/
6522
6645
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
6523
6646
 
6524
6647
  "use strict";
@@ -6536,34 +6659,34 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
6536
6659
  return function (target, key) { decorator(target, key, paramIndex); }
6537
6660
  };
6538
6661
  Object.defineProperty(exports, "__esModule", ({ value: true }));
6539
- exports.GetAttributesByNameUseCase = void 0;
6662
+ exports.GetAttributesByNamesUseCase = void 0;
6540
6663
  const ts_utils_1 = __webpack_require__(/*! @js-soft/ts-utils */ "./node_modules/@js-soft/ts-utils/dist/index.js");
6541
6664
  const consumption_1 = __webpack_require__(/*! @nmshd/consumption */ "@nmshd/consumption");
6542
6665
  const typescript_ioc_1 = __webpack_require__(/*! typescript-ioc */ "./node_modules/typescript-ioc/dist/typescript-ioc.js");
6543
6666
  const common_1 = __webpack_require__(/*! ../../common */ "./dist/useCases/common/index.js");
6544
6667
  const AttributeMapper_1 = __webpack_require__(/*! ./AttributeMapper */ "./dist/useCases/consumption/attributes/AttributeMapper.js");
6545
- class GetAttributesByNameRequestValidator extends common_1.RuntimeValidator {
6668
+ class GetAttributesByNamesRequestValidator extends common_1.RuntimeValidator {
6546
6669
  constructor() {
6547
6670
  super();
6548
6671
  }
6549
6672
  }
6550
- let GetAttributesByNameUseCase = class GetAttributesByNameUseCase extends common_1.UseCase {
6673
+ let GetAttributesByNamesUseCase = class GetAttributesByNamesUseCase extends common_1.UseCase {
6551
6674
  constructor(attributeController, validator) {
6552
6675
  super(validator);
6553
6676
  this.attributeController = attributeController;
6554
6677
  }
6555
6678
  async executeInternal(_request) {
6556
6679
  const attributes = await this.attributeController.getAttributesByName();
6557
- return ts_utils_1.Result.ok(AttributeMapper_1.AttributeMapper.toGetAttributesByNameResponse(attributes));
6680
+ return ts_utils_1.Result.ok(AttributeMapper_1.AttributeMapper.toGetAttributesByNamesResponse(attributes));
6558
6681
  }
6559
6682
  };
6560
- GetAttributesByNameUseCase = __decorate([
6683
+ GetAttributesByNamesUseCase = __decorate([
6561
6684
  __param(0, typescript_ioc_1.Inject),
6562
6685
  __param(1, typescript_ioc_1.Inject),
6563
- __metadata("design:paramtypes", [consumption_1.ConsumptionAttributesController, GetAttributesByNameRequestValidator])
6564
- ], GetAttributesByNameUseCase);
6565
- exports.GetAttributesByNameUseCase = GetAttributesByNameUseCase;
6566
- //# sourceMappingURL=GetAttributesByName.js.map
6686
+ __metadata("design:paramtypes", [consumption_1.ConsumptionAttributesController, GetAttributesByNamesRequestValidator])
6687
+ ], GetAttributesByNamesUseCase);
6688
+ exports.GetAttributesByNamesUseCase = GetAttributesByNamesUseCase;
6689
+ //# sourceMappingURL=GetAttributesByNames.js.map
6567
6690
 
6568
6691
  /***/ }),
6569
6692
 
@@ -6780,7 +6903,7 @@ __exportStar(__webpack_require__(/*! ./GetAllValid */ "./dist/useCases/consumpti
6780
6903
  __exportStar(__webpack_require__(/*! ./GetAttribute */ "./dist/useCases/consumption/attributes/GetAttribute.js"), exports);
6781
6904
  __exportStar(__webpack_require__(/*! ./GetAttributeByName */ "./dist/useCases/consumption/attributes/GetAttributeByName.js"), exports);
6782
6905
  __exportStar(__webpack_require__(/*! ./GetAttributes */ "./dist/useCases/consumption/attributes/GetAttributes.js"), exports);
6783
- __exportStar(__webpack_require__(/*! ./GetAttributesByName */ "./dist/useCases/consumption/attributes/GetAttributesByName.js"), exports);
6906
+ __exportStar(__webpack_require__(/*! ./GetAttributesByNames */ "./dist/useCases/consumption/attributes/GetAttributesByNames.js"), exports);
6784
6907
  __exportStar(__webpack_require__(/*! ./GetHistoryByName */ "./dist/useCases/consumption/attributes/GetHistoryByName.js"), exports);
6785
6908
  __exportStar(__webpack_require__(/*! ./SucceedAttribute */ "./dist/useCases/consumption/attributes/SucceedAttribute.js"), exports);
6786
6909
  __exportStar(__webpack_require__(/*! ./UpdateAttribute */ "./dist/useCases/consumption/attributes/UpdateAttribute.js"), exports);
@@ -9446,12 +9569,8 @@ class DeviceMapper {
9446
9569
  identityPrivateKey: deviceSharedSecret.identityPrivateKey ? deviceSharedSecret.identityPrivateKey.toString() : undefined,
9447
9570
  identity: {
9448
9571
  address: deviceSharedSecret.identity.address.toString(),
9449
- createdAt: deviceSharedSecret.identity.createdAt.toString(),
9450
- description: deviceSharedSecret.identity.description,
9451
- name: deviceSharedSecret.identity.name,
9452
9572
  publicKey: deviceSharedSecret.identity.publicKey.toString(),
9453
- realm: deviceSharedSecret.identity.realm.toString(),
9454
- type: deviceSharedSecret.identity.type.toString()
9573
+ realm: deviceSharedSecret.identity.realm.toString()
9455
9574
  },
9456
9575
  password: deviceSharedSecret.password,
9457
9576
  username: deviceSharedSecret.username
@@ -9470,12 +9589,8 @@ class DeviceMapper {
9470
9589
  identityPrivateKey: deviceOnboardingDTO.identityPrivateKey ? await crypto_1.CryptoSignaturePrivateKey.deserialize(deviceOnboardingDTO.identityPrivateKey) : undefined,
9471
9590
  identity: {
9472
9591
  address: transport_1.CoreAddress.from(deviceOnboardingDTO.identity.address),
9473
- createdAt: transport_1.CoreDate.from(deviceOnboardingDTO.identity.createdAt),
9474
- name: deviceOnboardingDTO.identity.name,
9475
- description: deviceOnboardingDTO.identity.description,
9476
9592
  publicKey: await crypto_1.CryptoSignaturePublicKey.deserialize(deviceOnboardingDTO.identity.publicKey),
9477
- realm: deviceOnboardingDTO.identity.realm,
9478
- type: deviceOnboardingDTO.identity.type
9593
+ realm: deviceOnboardingDTO.identity.realm
9479
9594
  },
9480
9595
  password: deviceOnboardingDTO.password,
9481
9596
  username: deviceOnboardingDTO.username
@@ -10888,7 +11003,7 @@ class MessageMapper {
10888
11003
  }
10889
11004
  return {
10890
11005
  id: message.id.toString(),
10891
- content: message.cache.content,
11006
+ content: message.cache.content.toJSON(),
10892
11007
  createdBy: message.cache.createdBy.toString(),
10893
11008
  createdByDevice: message.cache.createdByDevice.toString(),
10894
11009
  recipients: message.cache.recipients.map((r) => this.toRecipient(r)),
@@ -10916,8 +11031,11 @@ class MessageMapper {
10916
11031
  return messages.map((message) => this.toMessageDTO(message));
10917
11032
  }
10918
11033
  static toRecipient(recipient) {
11034
+ var _a, _b;
10919
11035
  return {
10920
- address: recipient.address.toString()
11036
+ address: recipient.address.toString(),
11037
+ receivedAt: (_a = recipient.receivedAt) === null || _a === void 0 ? void 0 : _a.toString(),
11038
+ receivedByDevice: (_b = recipient.receivedByDevice) === null || _b === void 0 ? void 0 : _b.toString()
10921
11039
  };
10922
11040
  }
10923
11041
  }
@@ -12080,6 +12198,11 @@ class RelationshipMapper {
12080
12198
  template: RelationshipTemplateMapper_1.RelationshipTemplateMapper.toRelationshipTemplateDTO(relationship.cache.template),
12081
12199
  status: relationship.status,
12082
12200
  peer: relationship.peer.address.toString(),
12201
+ peerIdentity: {
12202
+ address: relationship.peer.address.toString(),
12203
+ publicKey: relationship.peer.publicKey.toString(),
12204
+ realm: relationship.peer.realm
12205
+ },
12083
12206
  changes: relationship.cache.changes.map((c) => this.toRelationshipChangeDTO(c)),
12084
12207
  lastMessageSentAt: (_a = relationship.cache.lastMessageSentAt) === null || _a === void 0 ? void 0 : _a.toString(),
12085
12208
  lastMessageReceivedAt: (_b = relationship.cache.lastMessageReceivedAt) === null || _b === void 0 ? void 0 : _b.toString()