@nmshd/runtime 2.0.0-alpha.1 → 2.0.0-alpha.2

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 (171) hide show
  1. package/dist/DatabaseSchemaUpgrader.d.ts +12 -0
  2. package/dist/DatabaseSchemaUpgrader.js +85 -0
  3. package/dist/DatabaseSchemaUpgrader.js.map +1 -0
  4. package/dist/Runtime.d.ts +1 -1
  5. package/dist/Runtime.js +10 -3
  6. package/dist/Runtime.js.map +1 -1
  7. package/dist/buildInformation.js +5 -5
  8. package/dist/dataViews/DataViewExpander.js +9 -14
  9. package/dist/dataViews/DataViewExpander.js.map +1 -1
  10. package/dist/events/consumption/IncomingRequestReceivedEvent.d.ts +6 -0
  11. package/dist/events/consumption/IncomingRequestReceivedEvent.js +14 -0
  12. package/dist/events/consumption/IncomingRequestReceivedEvent.js.map +1 -0
  13. package/dist/events/consumption/IncomingRequestStatusChangedEvent.d.ts +12 -0
  14. package/dist/events/consumption/IncomingRequestStatusChangedEvent.js +14 -0
  15. package/dist/events/consumption/IncomingRequestStatusChangedEvent.js.map +1 -0
  16. package/dist/events/consumption/OutgoingRequestCreatedEvent.d.ts +6 -0
  17. package/dist/events/consumption/OutgoingRequestCreatedEvent.js +14 -0
  18. package/dist/events/consumption/OutgoingRequestCreatedEvent.js.map +1 -0
  19. package/dist/events/consumption/OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent.d.ts +6 -0
  20. package/dist/events/consumption/OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent.js +14 -0
  21. package/dist/events/consumption/OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent.js.map +1 -0
  22. package/dist/events/consumption/OutgoingRequestStatusChangedEvent.d.ts +12 -0
  23. package/dist/events/consumption/OutgoingRequestStatusChangedEvent.js +14 -0
  24. package/dist/events/consumption/OutgoingRequestStatusChangedEvent.js.map +1 -0
  25. package/dist/events/index.d.ts +5 -0
  26. package/dist/events/index.js +5 -0
  27. package/dist/events/index.js.map +1 -1
  28. package/dist/extensibility/ConsumptionServices.d.ts +4 -2
  29. package/dist/extensibility/ConsumptionServices.js +8 -2
  30. package/dist/extensibility/ConsumptionServices.js.map +1 -1
  31. package/dist/extensibility/facades/consumption/IncomingRequestsFacade.d.ts +26 -0
  32. package/dist/extensibility/facades/consumption/IncomingRequestsFacade.js +85 -0
  33. package/dist/extensibility/facades/consumption/IncomingRequestsFacade.js.map +1 -0
  34. package/dist/extensibility/facades/consumption/OutgoingRequestsFacade.d.ts +20 -0
  35. package/dist/extensibility/facades/consumption/OutgoingRequestsFacade.js +67 -0
  36. package/dist/extensibility/facades/consumption/OutgoingRequestsFacade.js.map +1 -0
  37. package/dist/extensibility/facades/consumption/index.d.ts +2 -0
  38. package/dist/extensibility/facades/consumption/index.js +2 -0
  39. package/dist/extensibility/facades/consumption/index.js.map +1 -1
  40. package/dist/modules/MessageModule.js +0 -7
  41. package/dist/modules/MessageModule.js.map +1 -1
  42. package/dist/types/consumption/ConsumptionRequestDTO.d.ts +25 -0
  43. package/dist/types/consumption/ConsumptionRequestDTO.js +3 -0
  44. package/dist/types/consumption/ConsumptionRequestDTO.js.map +1 -0
  45. package/dist/types/consumption/RequestValidationResultDTO.d.ts +6 -0
  46. package/dist/types/consumption/RequestValidationResultDTO.js +3 -0
  47. package/dist/types/consumption/RequestValidationResultDTO.js.map +1 -0
  48. package/dist/types/consumption/index.d.ts +2 -0
  49. package/dist/types/consumption/index.js +2 -0
  50. package/dist/types/consumption/index.js.map +1 -1
  51. package/dist/useCases/common/RuntimeErrors.js +2 -2
  52. package/dist/useCases/common/RuntimeErrors.js.map +1 -1
  53. package/dist/useCases/common/SchemaRepository.d.ts +0 -1
  54. package/dist/useCases/common/SchemaRepository.js +0 -16
  55. package/dist/useCases/common/SchemaRepository.js.map +1 -1
  56. package/dist/useCases/common/Schemas.d.ts +14 -0
  57. package/dist/useCases/common/Schemas.js +1069 -10
  58. package/dist/useCases/common/Schemas.js.map +1 -1
  59. package/dist/useCases/common/UseCase.js +5 -3
  60. package/dist/useCases/common/UseCase.js.map +1 -1
  61. package/dist/useCases/consumption/index.d.ts +1 -0
  62. package/dist/useCases/consumption/index.js +1 -0
  63. package/dist/useCases/consumption/index.js.map +1 -1
  64. package/dist/useCases/consumption/requests/AcceptIncomingRequest.d.ts +12 -0
  65. package/dist/useCases/consumption/requests/AcceptIncomingRequest.js +51 -0
  66. package/dist/useCases/consumption/requests/AcceptIncomingRequest.js.map +1 -0
  67. package/dist/useCases/consumption/requests/CanAcceptIncomingRequest.d.ts +10 -0
  68. package/dist/useCases/consumption/requests/CanAcceptIncomingRequest.js +37 -0
  69. package/dist/useCases/consumption/requests/CanAcceptIncomingRequest.js.map +1 -0
  70. package/dist/useCases/consumption/requests/CanCreateOutgoingRequest.d.ts +10 -0
  71. package/dist/useCases/consumption/requests/CanCreateOutgoingRequest.js +43 -0
  72. package/dist/useCases/consumption/requests/CanCreateOutgoingRequest.js.map +1 -0
  73. package/dist/useCases/consumption/requests/CanRejectIncomingRequest.d.ts +10 -0
  74. package/dist/useCases/consumption/requests/CanRejectIncomingRequest.js +37 -0
  75. package/dist/useCases/consumption/requests/CanRejectIncomingRequest.js.map +1 -0
  76. package/dist/useCases/consumption/requests/CheckPrerequisitesOfIncomingRequest.d.ts +20 -0
  77. package/dist/useCases/consumption/requests/CheckPrerequisitesOfIncomingRequest.js +60 -0
  78. package/dist/useCases/consumption/requests/CheckPrerequisitesOfIncomingRequest.js.map +1 -0
  79. package/dist/useCases/consumption/requests/CompleteIncomingRequest.d.ts +27 -0
  80. package/dist/useCases/consumption/requests/CompleteIncomingRequest.js +85 -0
  81. package/dist/useCases/consumption/requests/CompleteIncomingRequest.js.map +1 -0
  82. package/dist/useCases/consumption/requests/CompleteOutgoingRequest.d.ts +28 -0
  83. package/dist/useCases/consumption/requests/CompleteOutgoingRequest.js +71 -0
  84. package/dist/useCases/consumption/requests/CompleteOutgoingRequest.js.map +1 -0
  85. package/dist/useCases/consumption/requests/CreateAndCompleteOutgoingRequestFromRelationshipCreationChange.d.ts +23 -0
  86. package/dist/useCases/consumption/requests/CreateAndCompleteOutgoingRequestFromRelationshipCreationChange.js +62 -0
  87. package/dist/useCases/consumption/requests/CreateAndCompleteOutgoingRequestFromRelationshipCreationChange.js.map +1 -0
  88. package/dist/useCases/consumption/requests/CreateOutgoingRequest.d.ts +18 -0
  89. package/dist/useCases/consumption/requests/CreateOutgoingRequest.js +47 -0
  90. package/dist/useCases/consumption/requests/CreateOutgoingRequest.js.map +1 -0
  91. package/dist/useCases/consumption/requests/GetIncomingRequest.d.ts +15 -0
  92. package/dist/useCases/consumption/requests/GetIncomingRequest.js +41 -0
  93. package/dist/useCases/consumption/requests/GetIncomingRequest.js.map +1 -0
  94. package/dist/useCases/consumption/requests/GetIncomingRequests.d.ts +46 -0
  95. package/dist/useCases/consumption/requests/GetIncomingRequests.js +108 -0
  96. package/dist/useCases/consumption/requests/GetIncomingRequests.js.map +1 -0
  97. package/dist/useCases/consumption/requests/GetOutgoingRequest.d.ts +15 -0
  98. package/dist/useCases/consumption/requests/GetOutgoingRequest.js +41 -0
  99. package/dist/useCases/consumption/requests/GetOutgoingRequest.js.map +1 -0
  100. package/dist/useCases/consumption/requests/GetOutgoingRequests.d.ts +46 -0
  101. package/dist/useCases/consumption/requests/GetOutgoingRequests.js +108 -0
  102. package/dist/useCases/consumption/requests/GetOutgoingRequests.js.map +1 -0
  103. package/dist/useCases/consumption/requests/ReceivedIncomingRequest.d.ts +22 -0
  104. package/dist/useCases/consumption/requests/ReceivedIncomingRequest.js +66 -0
  105. package/dist/useCases/consumption/requests/ReceivedIncomingRequest.js.map +1 -0
  106. package/dist/useCases/consumption/requests/RejectIncomingRequest.d.ts +12 -0
  107. package/dist/useCases/consumption/requests/RejectIncomingRequest.js +51 -0
  108. package/dist/useCases/consumption/requests/RejectIncomingRequest.js.map +1 -0
  109. package/dist/useCases/consumption/requests/RequestMapper.d.ts +6 -0
  110. package/dist/useCases/consumption/requests/RequestMapper.js +38 -0
  111. package/dist/useCases/consumption/requests/RequestMapper.js.map +1 -0
  112. package/dist/useCases/consumption/requests/RequestValidationResultMapper.d.ts +5 -0
  113. package/dist/useCases/consumption/requests/RequestValidationResultMapper.js +15 -0
  114. package/dist/useCases/consumption/requests/RequestValidationResultMapper.js.map +1 -0
  115. package/dist/useCases/consumption/requests/RequireManualDecisionOfIncomingRequest.d.ts +16 -0
  116. package/dist/useCases/consumption/requests/RequireManualDecisionOfIncomingRequest.js +48 -0
  117. package/dist/useCases/consumption/requests/RequireManualDecisionOfIncomingRequest.js.map +1 -0
  118. package/dist/useCases/consumption/requests/SentOutgoingRequest.d.ts +22 -0
  119. package/dist/useCases/consumption/requests/SentOutgoingRequest.js +58 -0
  120. package/dist/useCases/consumption/requests/SentOutgoingRequest.js.map +1 -0
  121. package/dist/useCases/consumption/requests/flattenObject.d.ts +1 -0
  122. package/dist/useCases/consumption/requests/flattenObject.js +21 -0
  123. package/dist/useCases/consumption/requests/flattenObject.js.map +1 -0
  124. package/dist/useCases/consumption/requests/index.d.ts +17 -0
  125. package/dist/useCases/consumption/requests/index.js +34 -0
  126. package/dist/useCases/consumption/requests/index.js.map +1 -0
  127. package/dist/useCases/consumption/settings/SettingMapper.js +4 -5
  128. package/dist/useCases/consumption/settings/SettingMapper.js.map +1 -1
  129. package/dist/useCases/consumption/sharedItems/SharedItemsMapper.js +4 -5
  130. package/dist/useCases/consumption/sharedItems/SharedItemsMapper.js.map +1 -1
  131. package/dist/useCases/transport/account/GetDeviceInfo.d.ts +1 -1
  132. package/dist/useCases/transport/account/SyncEverything.d.ts +1 -2
  133. package/dist/useCases/transport/account/SyncEverything.js.map +1 -1
  134. package/dist/useCases/transport/challenges/CreateChallenge.d.ts +1 -1
  135. package/dist/useCases/transport/devices/CreateDevice.d.ts +1 -1
  136. package/dist/useCases/transport/devices/DeviceMapper.d.ts +1 -2
  137. package/dist/useCases/transport/devices/DeviceMapper.js +2 -3
  138. package/dist/useCases/transport/devices/DeviceMapper.js.map +1 -1
  139. package/dist/useCases/transport/devices/GetDevice.d.ts +1 -1
  140. package/dist/useCases/transport/devices/GetDevices.d.ts +1 -1
  141. package/dist/useCases/transport/files/CreateTokenForFile.d.ts +1 -1
  142. package/dist/useCases/transport/files/CreateTokenForFile.js +2 -3
  143. package/dist/useCases/transport/files/CreateTokenForFile.js.map +1 -1
  144. package/dist/useCases/transport/files/CreateTokenQrCodeForFile.d.ts +1 -1
  145. package/dist/useCases/transport/files/CreateTokenQrCodeForFile.js +1 -2
  146. package/dist/useCases/transport/files/CreateTokenQrCodeForFile.js.map +1 -1
  147. package/dist/useCases/transport/files/DownloadFile.d.ts +1 -1
  148. package/dist/useCases/transport/files/FileMapper.js +4 -5
  149. package/dist/useCases/transport/files/FileMapper.js.map +1 -1
  150. package/dist/useCases/transport/files/GetFile.d.ts +1 -1
  151. package/dist/useCases/transport/files/LoadPeerFile.d.ts +1 -1
  152. package/dist/useCases/transport/files/UploadOwnFile.js +1 -2
  153. package/dist/useCases/transport/files/UploadOwnFile.js.map +1 -1
  154. package/dist/useCases/transport/messages/MessageMapper.js +2 -3
  155. package/dist/useCases/transport/messages/MessageMapper.js.map +1 -1
  156. package/dist/useCases/transport/relationshipTemplates/CreateTokenForOwnRelationshipTemplate.js +2 -3
  157. package/dist/useCases/transport/relationshipTemplates/CreateTokenForOwnRelationshipTemplate.js.map +1 -1
  158. package/dist/useCases/transport/relationshipTemplates/CreateTokenQrCodeForOwnRelationshipTemplate.js +1 -2
  159. package/dist/useCases/transport/relationshipTemplates/CreateTokenQrCodeForOwnRelationshipTemplate.js.map +1 -1
  160. package/dist/useCases/transport/relationshipTemplates/RelationshipTemplateMapper.js +1 -2
  161. package/dist/useCases/transport/relationshipTemplates/RelationshipTemplateMapper.js.map +1 -1
  162. package/dist/useCases/transport/relationships/RelationshipMapper.js +4 -7
  163. package/dist/useCases/transport/relationships/RelationshipMapper.js.map +1 -1
  164. package/lib-web/nmshd.runtime.js +4597 -1833
  165. package/lib-web/nmshd.runtime.js.map +1 -1
  166. package/lib-web/nmshd.runtime.min.js +5 -5
  167. package/lib-web/nmshd.runtime.min.js.map +1 -1
  168. package/package.json +12 -6
  169. package/dist/events/consumption/RequestReceivedEvent.d.ts +0 -8
  170. package/dist/events/consumption/RequestReceivedEvent.js +0 -13
  171. package/dist/events/consumption/RequestReceivedEvent.js.map +0 -1
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.CompleteIncomingRequestUseCase = void 0;
16
+ const ts_utils_1 = require("@js-soft/ts-utils");
17
+ const consumption_1 = require("@nmshd/consumption");
18
+ const transport_1 = require("@nmshd/transport");
19
+ const typescript_ioc_1 = require("typescript-ioc");
20
+ const IncomingRequestStatusChangedEvent_1 = require("../../../events/consumption/IncomingRequestStatusChangedEvent");
21
+ const common_1 = require("../../common");
22
+ const RequestMapper_1 = require("./RequestMapper");
23
+ let Validator = class Validator extends common_1.SchemaValidator {
24
+ constructor(schemaRepository) {
25
+ super(schemaRepository.getSchema("CompleteIncomingRequestRequest"));
26
+ }
27
+ };
28
+ Validator = __decorate([
29
+ __param(0, typescript_ioc_1.Inject),
30
+ __metadata("design:paramtypes", [common_1.SchemaRepository])
31
+ ], Validator);
32
+ let CompleteIncomingRequestUseCase = class CompleteIncomingRequestUseCase extends common_1.UseCase {
33
+ constructor(validator, incomingRequestsController, eventBus, messageController, relationshipController) {
34
+ super(validator);
35
+ this.incomingRequestsController = incomingRequestsController;
36
+ this.eventBus = eventBus;
37
+ this.messageController = messageController;
38
+ this.relationshipController = relationshipController;
39
+ }
40
+ async executeInternal(request) {
41
+ let responseSourceObject;
42
+ if (request.responseSourceId.startsWith("MSG")) {
43
+ const message = await this.messageController.getMessage(transport_1.CoreId.from(request.responseSourceId));
44
+ if (!message) {
45
+ return ts_utils_1.Result.fail(common_1.RuntimeErrors.general.recordNotFound(transport_1.Message));
46
+ }
47
+ responseSourceObject = message;
48
+ }
49
+ else if (request.responseSourceId.startsWith("RCH")) {
50
+ const relationships = await this.relationshipController.getRelationships({ "cache.changes.id": request.responseSourceId }); // eslint-disable-line @typescript-eslint/naming-convention
51
+ if (relationships.length === 0) {
52
+ return ts_utils_1.Result.fail(common_1.RuntimeErrors.general.recordNotFound(transport_1.RelationshipChange));
53
+ }
54
+ responseSourceObject = relationships[0].cache.creationChange;
55
+ }
56
+ else {
57
+ throw new Error("Invalid response source id");
58
+ }
59
+ const consumptionRequest = await this.incomingRequestsController.complete({
60
+ requestId: transport_1.CoreId.from(request.requestId),
61
+ responseSourceObject
62
+ });
63
+ const dto = RequestMapper_1.RequestMapper.toConsumptionRequestDTO(consumptionRequest);
64
+ this.eventBus.publish(new IncomingRequestStatusChangedEvent_1.IncomingRequestStatusChangedEvent(this.incomingRequestsController.parent.accountController.identity.address.address, {
65
+ request: dto,
66
+ oldStatus: consumption_1.ConsumptionRequestStatus.Decided,
67
+ newStatus: dto.status
68
+ }));
69
+ return ts_utils_1.Result.ok(dto);
70
+ }
71
+ };
72
+ CompleteIncomingRequestUseCase = __decorate([
73
+ __param(0, typescript_ioc_1.Inject),
74
+ __param(1, typescript_ioc_1.Inject),
75
+ __param(2, typescript_ioc_1.Inject),
76
+ __param(3, typescript_ioc_1.Inject),
77
+ __param(4, typescript_ioc_1.Inject),
78
+ __metadata("design:paramtypes", [Validator,
79
+ consumption_1.IncomingRequestsController,
80
+ ts_utils_1.EventBus,
81
+ transport_1.MessageController,
82
+ transport_1.RelationshipsController])
83
+ ], CompleteIncomingRequestUseCase);
84
+ exports.CompleteIncomingRequestUseCase = CompleteIncomingRequestUseCase;
85
+ //# sourceMappingURL=CompleteIncomingRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompleteIncomingRequest.js","sourceRoot":"","sources":["../../../../src/useCases/consumption/requests/CompleteIncomingRequest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import { ApplicationError, EventBus, Result } from "@js-soft/ts-utils";
2
+ import { OutgoingRequestsController } from "@nmshd/consumption";
3
+ import { ResponseJSON } from "@nmshd/content";
4
+ import { MessageController } from "@nmshd/transport";
5
+ import { ConsumptionRequestDTO } from "../../../types";
6
+ import { SchemaRepository, SchemaValidator, UseCase } from "../../common";
7
+ export interface CompleteOutgoingRequestRequest {
8
+ /**
9
+ * @pattern CNSREQ[A-Za-z0-9]{14}
10
+ */
11
+ requestId: string;
12
+ receivedResponse: ResponseJSON;
13
+ /**
14
+ * @pattern MSG[A-Za-z0-9]{17}
15
+ */
16
+ messageId: string;
17
+ }
18
+ declare class Validator extends SchemaValidator<CompleteOutgoingRequestRequest> {
19
+ constructor(schemaRepository: SchemaRepository);
20
+ }
21
+ export declare class CompleteOutgoingRequestUseCase extends UseCase<CompleteOutgoingRequestRequest, ConsumptionRequestDTO> {
22
+ private readonly outgoingRequestsController;
23
+ private readonly messageController;
24
+ private readonly eventBus;
25
+ constructor(validator: Validator, outgoingRequestsController: OutgoingRequestsController, messageController: MessageController, eventBus: EventBus);
26
+ protected executeInternal(request: CompleteOutgoingRequestRequest): Promise<Result<ConsumptionRequestDTO, ApplicationError>>;
27
+ }
28
+ export {};
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.CompleteOutgoingRequestUseCase = void 0;
16
+ const ts_utils_1 = require("@js-soft/ts-utils");
17
+ const consumption_1 = require("@nmshd/consumption");
18
+ const transport_1 = require("@nmshd/transport");
19
+ const typescript_ioc_1 = require("typescript-ioc");
20
+ const events_1 = require("../../../events");
21
+ const common_1 = require("../../common");
22
+ const RequestMapper_1 = require("./RequestMapper");
23
+ let Validator = class Validator extends common_1.SchemaValidator {
24
+ constructor(schemaRepository) {
25
+ super(schemaRepository.getSchema("CompleteOutgoingRequestRequest"));
26
+ }
27
+ };
28
+ Validator = __decorate([
29
+ __param(0, typescript_ioc_1.Inject),
30
+ __metadata("design:paramtypes", [common_1.SchemaRepository])
31
+ ], Validator);
32
+ let CompleteOutgoingRequestUseCase = class CompleteOutgoingRequestUseCase extends common_1.UseCase {
33
+ constructor(validator, outgoingRequestsController, messageController, eventBus) {
34
+ super(validator);
35
+ this.outgoingRequestsController = outgoingRequestsController;
36
+ this.messageController = messageController;
37
+ this.eventBus = eventBus;
38
+ }
39
+ async executeInternal(request) {
40
+ const message = await this.messageController.getMessage(transport_1.CoreId.from(request.messageId));
41
+ if (!message) {
42
+ return ts_utils_1.Result.fail(common_1.RuntimeErrors.general.recordNotFound(transport_1.Message));
43
+ }
44
+ const params = {
45
+ requestId: transport_1.CoreId.from(request.requestId),
46
+ // @ts-expect-error // TODO: remove this as soon as the Type Definitions are correct
47
+ receivedResponse: request.receivedResponse,
48
+ responseSourceObject: message
49
+ };
50
+ const consumptionRequest = await this.outgoingRequestsController.complete(params);
51
+ const dto = RequestMapper_1.RequestMapper.toConsumptionRequestDTO(consumptionRequest);
52
+ this.eventBus.publish(new events_1.OutgoingRequestStatusChangedEvent(this.outgoingRequestsController.parent.accountController.identity.address.address, {
53
+ oldStatus: consumption_1.ConsumptionRequestStatus.Open,
54
+ newStatus: dto.status,
55
+ request: dto
56
+ }));
57
+ return ts_utils_1.Result.ok(dto);
58
+ }
59
+ };
60
+ CompleteOutgoingRequestUseCase = __decorate([
61
+ __param(0, typescript_ioc_1.Inject),
62
+ __param(1, typescript_ioc_1.Inject),
63
+ __param(2, typescript_ioc_1.Inject),
64
+ __param(3, typescript_ioc_1.Inject),
65
+ __metadata("design:paramtypes", [Validator,
66
+ consumption_1.OutgoingRequestsController,
67
+ transport_1.MessageController,
68
+ ts_utils_1.EventBus])
69
+ ], CompleteOutgoingRequestUseCase);
70
+ exports.CompleteOutgoingRequestUseCase = CompleteOutgoingRequestUseCase;
71
+ //# sourceMappingURL=CompleteOutgoingRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompleteOutgoingRequest.js","sourceRoot":"","sources":["../../../../src/useCases/consumption/requests/CompleteOutgoingRequest.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,gDAAuE;AACvE,oDAA6H;AAE7H,gDAAsE;AACtE,mDAAwC;AACxC,4CAAoE;AAEpE,yCAAyF;AACzF,mDAAgD;AAgBhD,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,wBAA+C;IACnE,YAA2B,gBAAkC;QACzD,KAAK,CAAC,gBAAgB,CAAC,SAAS,CAAC,gCAAgC,CAAC,CAAC,CAAC;IACxE,CAAC;CACJ,CAAA;AAJK,SAAS;IACS,WAAA,uBAAM,CAAA;qCAAmB,yBAAgB;GAD3D,SAAS,CAId;AAED,IAAa,8BAA8B,GAA3C,MAAa,8BAA+B,SAAQ,gBAA8D;IAC9G,YACY,SAAoB,EACH,0BAAsD,EACtD,iBAAoC,EACpC,QAAkB;QAE3C,KAAK,CAAC,SAAS,CAAC,CAAC;QAJQ,+BAA0B,GAA1B,0BAA0B,CAA4B;QACtD,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,aAAQ,GAAR,QAAQ,CAAU;IAG/C,CAAC;IAES,KAAK,CAAC,eAAe,CAAC,OAAuC;QACnE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,kBAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;QAExF,IAAI,CAAC,OAAO,EAAE;YACV,OAAO,iBAAM,CAAC,IAAI,CAAC,sBAAa,CAAC,OAAO,CAAC,cAAc,CAAC,mBAAO,CAAC,CAAC,CAAC;SACrE;QAED,MAAM,MAAM,GAAsC;YAC9C,SAAS,EAAE,kBAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;YACzC,oFAAoF;YACpF,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,oBAAoB,EAAE,OAAO;SAChC,CAAC;QAEF,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAElF,MAAM,GAAG,GAAG,6BAAa,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,CAAC;QAEtE,IAAI,CAAC,QAAQ,CAAC,OAAO,CACjB,IAAI,0CAAiC,CAAC,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE;YACrH,SAAS,EAAE,sCAAwB,CAAC,IAAI;YACxC,SAAS,EAAE,GAAG,CAAC,MAAM;YACrB,OAAO,EAAE,GAAG;SACf,CAAC,CACL,CAAC;QAEF,OAAO,iBAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;CACJ,CAAA;AAtCY,8BAA8B;IAElC,WAAA,uBAAM,CAAA;IACN,WAAA,uBAAM,CAAA;IACN,WAAA,uBAAM,CAAA;IACN,WAAA,uBAAM,CAAA;qCAHY,SAAS;QACyB,wCAA0B;QACnC,6BAAiB;QAC1B,mBAAQ;GALtC,8BAA8B,CAsC1C;AAtCY,wEAA8B"}
@@ -0,0 +1,23 @@
1
+ import { ApplicationError, EventBus, Result } from "@js-soft/ts-utils";
2
+ import { OutgoingRequestsController } from "@nmshd/consumption";
3
+ import { RelationshipsController, RelationshipTemplateController } from "@nmshd/transport";
4
+ import { ConsumptionRequestDTO } from "../../../types";
5
+ import { UseCase } from "../../common";
6
+ export interface CreateAndCompleteOutgoingRequestFromRelationshipCreationChangeRequest {
7
+ /**
8
+ * @pattern RLT[A-Za-z0-9]{17}
9
+ */
10
+ templateId: string;
11
+ /**
12
+ * @pattern RCH[A-Za-z0-9]{17}
13
+ */
14
+ relationshipChangeId: string;
15
+ }
16
+ export declare class CreateAndCompleteOutgoingRequestFromRelationshipCreationChangeUseCase extends UseCase<CreateAndCompleteOutgoingRequestFromRelationshipCreationChangeRequest, ConsumptionRequestDTO> {
17
+ private readonly outgoingRequestsController;
18
+ private readonly relationshipController;
19
+ private readonly relationshipTemplateController;
20
+ private readonly eventBus;
21
+ constructor(outgoingRequestsController: OutgoingRequestsController, relationshipController: RelationshipsController, relationshipTemplateController: RelationshipTemplateController, eventBus: EventBus);
22
+ protected executeInternal(request: CreateAndCompleteOutgoingRequestFromRelationshipCreationChangeRequest): Promise<Result<ConsumptionRequestDTO, ApplicationError>>;
23
+ }
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.CreateAndCompleteOutgoingRequestFromRelationshipCreationChangeUseCase = void 0;
16
+ const ts_utils_1 = require("@js-soft/ts-utils");
17
+ const consumption_1 = require("@nmshd/consumption");
18
+ const transport_1 = require("@nmshd/transport");
19
+ const typescript_ioc_1 = require("typescript-ioc");
20
+ const OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent_1 = require("../../../events/consumption/OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent");
21
+ const common_1 = require("../../common");
22
+ const RequestMapper_1 = require("./RequestMapper");
23
+ let CreateAndCompleteOutgoingRequestFromRelationshipCreationChangeUseCase = class CreateAndCompleteOutgoingRequestFromRelationshipCreationChangeUseCase extends common_1.UseCase {
24
+ constructor(outgoingRequestsController, relationshipController, relationshipTemplateController, eventBus) {
25
+ super();
26
+ this.outgoingRequestsController = outgoingRequestsController;
27
+ this.relationshipController = relationshipController;
28
+ this.relationshipTemplateController = relationshipTemplateController;
29
+ this.eventBus = eventBus;
30
+ }
31
+ async executeInternal(request) {
32
+ const template = await this.relationshipTemplateController.getRelationshipTemplate(transport_1.CoreId.from(request.templateId));
33
+ const relationships = await this.relationshipController.getRelationships({ "cache.changes.id": request.relationshipChangeId }); // eslint-disable-line @typescript-eslint/naming-convention
34
+ if (relationships.length === 0) {
35
+ return ts_utils_1.Result.fail(common_1.RuntimeErrors.general.recordNotFound(transport_1.RelationshipChange));
36
+ }
37
+ const relationship = relationships[0];
38
+ if (!template) {
39
+ return ts_utils_1.Result.fail(common_1.RuntimeErrors.general.recordNotFound(transport_1.RelationshipTemplate));
40
+ }
41
+ const params = {
42
+ template: template,
43
+ creationChange: relationship.cache.creationChange
44
+ };
45
+ const consumptionRequest = await this.outgoingRequestsController.createFromRelationshipCreationChange(params);
46
+ const dto = RequestMapper_1.RequestMapper.toConsumptionRequestDTO(consumptionRequest);
47
+ this.eventBus.publish(new OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent_1.OutgoingRequestFromRelationshipCreationChangeCreatedAndCompletedEvent(this.outgoingRequestsController.parent.accountController.identity.address.address, dto));
48
+ return ts_utils_1.Result.ok(dto);
49
+ }
50
+ };
51
+ CreateAndCompleteOutgoingRequestFromRelationshipCreationChangeUseCase = __decorate([
52
+ __param(0, typescript_ioc_1.Inject),
53
+ __param(1, typescript_ioc_1.Inject),
54
+ __param(2, typescript_ioc_1.Inject),
55
+ __param(3, typescript_ioc_1.Inject),
56
+ __metadata("design:paramtypes", [consumption_1.OutgoingRequestsController,
57
+ transport_1.RelationshipsController,
58
+ transport_1.RelationshipTemplateController,
59
+ ts_utils_1.EventBus])
60
+ ], CreateAndCompleteOutgoingRequestFromRelationshipCreationChangeUseCase);
61
+ exports.CreateAndCompleteOutgoingRequestFromRelationshipCreationChangeUseCase = CreateAndCompleteOutgoingRequestFromRelationshipCreationChangeUseCase;
62
+ //# sourceMappingURL=CreateAndCompleteOutgoingRequestFromRelationshipCreationChange.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CreateAndCompleteOutgoingRequestFromRelationshipCreationChange.js","sourceRoot":"","sources":["../../../../src/useCases/consumption/requests/CreateAndCompleteOutgoingRequestFromRelationshipCreationChange.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,gDAAuE;AACvE,oDAAgI;AAChI,gDAA6I;AAC7I,mDAAwC;AACxC,6LAA0L;AAE1L,yCAAsD;AACtD,mDAAgD;AAahD,IAAa,qEAAqE,GAAlF,MAAa,qEAAsE,SAAQ,gBAG1F;IACG,YAC6B,0BAAsD,EACtD,sBAA+C,EAC/C,8BAA8D,EAC9D,QAAkB;QAE3C,KAAK,EAAE,CAAC;QALiB,+BAA0B,GAA1B,0BAA0B,CAA4B;QACtD,2BAAsB,GAAtB,sBAAsB,CAAyB;QAC/C,mCAA8B,GAA9B,8BAA8B,CAAgC;QAC9D,aAAQ,GAAR,QAAQ,CAAU;IAG/C,CAAC;IAES,KAAK,CAAC,eAAe,CAAC,OAA8E;QAC1G,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,uBAAuB,CAAC,kBAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;QACpH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,EAAE,kBAAkB,EAAE,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,2DAA2D;QAE3L,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;YAC5B,OAAO,iBAAM,CAAC,IAAI,CAAC,sBAAa,CAAC,OAAO,CAAC,cAAc,CAAC,8BAAkB,CAAC,CAAC,CAAC;SAChF;QACD,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QAEtC,IAAI,CAAC,QAAQ,EAAE;YACX,OAAO,iBAAM,CAAC,IAAI,CAAC,sBAAa,CAAC,OAAO,CAAC,cAAc,CAAC,gCAAoB,CAAC,CAAC,CAAC;SAClF;QAED,MAAM,MAAM,GAAmE;YAC3E,QAAQ,EAAE,QAAQ;YAClB,cAAc,EAAE,YAAY,CAAC,KAAM,CAAC,cAAc;SACrD,CAAC;QAEF,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,oCAAoC,CAAC,MAAM,CAAC,CAAC;QAE9G,MAAM,GAAG,GAAG,6BAAa,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,CAAC;QAEtE,IAAI,CAAC,QAAQ,CAAC,OAAO,CACjB,IAAI,6IAAqE,CAAC,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CACpK,CAAC;QAEF,OAAO,iBAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;CACJ,CAAA;AAzCY,qEAAqE;IAKzE,WAAA,uBAAM,CAAA;IACN,WAAA,uBAAM,CAAA;IACN,WAAA,uBAAM,CAAA;IACN,WAAA,uBAAM,CAAA;qCAH8C,wCAA0B;QAC9B,mCAAuB;QACf,0CAA8B;QACpD,mBAAQ;GARtC,qEAAqE,CAyCjF;AAzCY,sJAAqE"}
@@ -0,0 +1,18 @@
1
+ import { ApplicationError, EventBus, Result } from "@js-soft/ts-utils";
2
+ import { OutgoingRequestsController } from "@nmshd/consumption";
3
+ import { IRequest, RequestJSON } from "@nmshd/content";
4
+ import { ConsumptionRequestDTO } from "../../../types";
5
+ import { UseCase } from "../../common";
6
+ export interface CreateOutgoingRequestRequest {
7
+ content: Omit<RequestJSON | IRequest, "id" | "@type" | "@version">;
8
+ /**
9
+ * @pattern id1[A-Za-z0-9]{32,33}
10
+ */
11
+ peer: string;
12
+ }
13
+ export declare class CreateOutgoingRequestUseCase extends UseCase<CreateOutgoingRequestRequest, ConsumptionRequestDTO> {
14
+ private readonly outgoingRequestsController;
15
+ private readonly eventBus;
16
+ constructor(outgoingRequestsController: OutgoingRequestsController, eventBus: EventBus);
17
+ protected executeInternal(request: CreateOutgoingRequestRequest): Promise<Result<ConsumptionRequestDTO, ApplicationError>>;
18
+ }
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.CreateOutgoingRequestUseCase = void 0;
16
+ const ts_utils_1 = require("@js-soft/ts-utils");
17
+ const consumption_1 = require("@nmshd/consumption");
18
+ const transport_1 = require("@nmshd/transport");
19
+ const typescript_ioc_1 = require("typescript-ioc");
20
+ const events_1 = require("../../../events");
21
+ const common_1 = require("../../common");
22
+ const RequestMapper_1 = require("./RequestMapper");
23
+ let CreateOutgoingRequestUseCase = class CreateOutgoingRequestUseCase extends common_1.UseCase {
24
+ constructor(outgoingRequestsController, eventBus) {
25
+ super();
26
+ this.outgoingRequestsController = outgoingRequestsController;
27
+ this.eventBus = eventBus;
28
+ }
29
+ async executeInternal(request) {
30
+ const params = {
31
+ // @ts-expect-error // TODO: remove this as soon as the Type Definitions are correct
32
+ content: request.content,
33
+ peer: transport_1.CoreAddress.from(request.peer)
34
+ };
35
+ const consumptionRequest = await this.outgoingRequestsController.create(params);
36
+ const dto = RequestMapper_1.RequestMapper.toConsumptionRequestDTO(consumptionRequest);
37
+ this.eventBus.publish(new events_1.OutgoingRequestCreatedEvent(this.outgoingRequestsController.parent.accountController.identity.address.address, dto));
38
+ return ts_utils_1.Result.ok(dto);
39
+ }
40
+ };
41
+ CreateOutgoingRequestUseCase = __decorate([
42
+ __param(0, typescript_ioc_1.Inject),
43
+ __param(1, typescript_ioc_1.Inject),
44
+ __metadata("design:paramtypes", [consumption_1.OutgoingRequestsController, ts_utils_1.EventBus])
45
+ ], CreateOutgoingRequestUseCase);
46
+ exports.CreateOutgoingRequestUseCase = CreateOutgoingRequestUseCase;
47
+ //# sourceMappingURL=CreateOutgoingRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CreateOutgoingRequest.js","sourceRoot":"","sources":["../../../../src/useCases/consumption/requests/CreateOutgoingRequest.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,gDAAuE;AACvE,oDAAkG;AAElG,gDAA+C;AAC/C,mDAAwC;AACxC,4CAA8D;AAE9D,yCAAuC;AACvC,mDAAgD;AAUhD,IAAa,4BAA4B,GAAzC,MAAa,4BAA6B,SAAQ,gBAA4D;IAC1G,YAA4C,0BAAsD,EAA2B,QAAkB;QAC3I,KAAK,EAAE,CAAC;QADgC,+BAA0B,GAA1B,0BAA0B,CAA4B;QAA2B,aAAQ,GAAR,QAAQ,CAAU;IAE/I,CAAC;IAES,KAAK,CAAC,eAAe,CAAC,OAAqC;QACjE,MAAM,MAAM,GAAqC;YAC7C,oFAAoF;YACpF,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,uBAAW,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;SACvC,CAAC;QAEF,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEhF,MAAM,GAAG,GAAG,6BAAa,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,CAAC;QAEtE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,oCAA2B,CAAC,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QAE/I,OAAO,iBAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;CACJ,CAAA;AApBY,4BAA4B;IACjB,WAAA,uBAAM,CAAA;IAA2E,WAAA,uBAAM,CAAA;qCAAnC,wCAA0B,EAAqC,mBAAQ;GADtI,4BAA4B,CAoBxC;AApBY,oEAA4B"}
@@ -0,0 +1,15 @@
1
+ import { ApplicationError, Result } from "@js-soft/ts-utils";
2
+ import { IncomingRequestsController } from "@nmshd/consumption";
3
+ import { ConsumptionRequestDTO } from "../../../types";
4
+ import { UseCase } from "../../common";
5
+ export interface GetIncomingRequestRequest {
6
+ /**
7
+ * @pattern CNSREQ[A-Za-z0-9]{14}
8
+ */
9
+ id: string;
10
+ }
11
+ export declare class GetIncomingRequestUseCase extends UseCase<GetIncomingRequestRequest, ConsumptionRequestDTO> {
12
+ private readonly incomingRequestsController;
13
+ constructor(incomingRequestsController: IncomingRequestsController);
14
+ protected executeInternal(request: GetIncomingRequestRequest): Promise<Result<ConsumptionRequestDTO, ApplicationError>>;
15
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.GetIncomingRequestUseCase = void 0;
16
+ const ts_utils_1 = require("@js-soft/ts-utils");
17
+ const consumption_1 = require("@nmshd/consumption");
18
+ const transport_1 = require("@nmshd/transport");
19
+ const typescript_ioc_1 = require("typescript-ioc");
20
+ const common_1 = require("../../common");
21
+ const RequestMapper_1 = require("./RequestMapper");
22
+ let GetIncomingRequestUseCase = class GetIncomingRequestUseCase extends common_1.UseCase {
23
+ constructor(incomingRequestsController) {
24
+ super();
25
+ this.incomingRequestsController = incomingRequestsController;
26
+ }
27
+ async executeInternal(request) {
28
+ const consumptionRequest = await this.incomingRequestsController.getIncomingRequest(transport_1.CoreId.from(request.id));
29
+ if (!consumptionRequest) {
30
+ return ts_utils_1.Result.fail(common_1.RuntimeErrors.general.recordNotFound(consumption_1.ConsumptionRequest));
31
+ }
32
+ const dto = RequestMapper_1.RequestMapper.toConsumptionRequestDTO(consumptionRequest);
33
+ return ts_utils_1.Result.ok(dto);
34
+ }
35
+ };
36
+ GetIncomingRequestUseCase = __decorate([
37
+ __param(0, typescript_ioc_1.Inject),
38
+ __metadata("design:paramtypes", [consumption_1.IncomingRequestsController])
39
+ ], GetIncomingRequestUseCase);
40
+ exports.GetIncomingRequestUseCase = GetIncomingRequestUseCase;
41
+ //# sourceMappingURL=GetIncomingRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetIncomingRequest.js","sourceRoot":"","sources":["../../../../src/useCases/consumption/requests/GetIncomingRequest.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,gDAA6D;AAC7D,oDAAoF;AACpF,gDAA0C;AAC1C,mDAAwC;AAExC,yCAAsD;AACtD,mDAAgD;AAShD,IAAa,yBAAyB,GAAtC,MAAa,yBAA0B,SAAQ,gBAAyD;IACpG,YAA4C,0BAAsD;QAC9F,KAAK,EAAE,CAAC;QADgC,+BAA0B,GAA1B,0BAA0B,CAA4B;IAElG,CAAC;IAES,KAAK,CAAC,eAAe,CAAC,OAAkC;QAC9D,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,kBAAkB,CAAC,kBAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;QAE7G,IAAI,CAAC,kBAAkB,EAAE;YACrB,OAAO,iBAAM,CAAC,IAAI,CAAC,sBAAa,CAAC,OAAO,CAAC,cAAc,CAAC,gCAAkB,CAAC,CAAC,CAAC;SAChF;QAED,MAAM,GAAG,GAAG,6BAAa,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,CAAC;QAEtE,OAAO,iBAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;CACJ,CAAA;AAhBY,yBAAyB;IACd,WAAA,uBAAM,CAAA;qCAA8C,wCAA0B;GADzF,yBAAyB,CAgBrC;AAhBY,8DAAyB"}
@@ -0,0 +1,46 @@
1
+ import { ApplicationError, Result } from "@js-soft/ts-utils";
2
+ import { IncomingRequestsController } from "@nmshd/consumption";
3
+ import { ConsumptionRequestDTO } from "../../../types";
4
+ import { UseCase } from "../../common";
5
+ export interface GetIncomingRequestsRequest {
6
+ query?: GetIncomingRequestsRequestsQuery;
7
+ }
8
+ export interface GetIncomingRequestsRequestsQuery {
9
+ id?: string;
10
+ peer?: string;
11
+ createdAt?: string;
12
+ status?: string;
13
+ content?: {
14
+ expiresAt?: string;
15
+ items?: {
16
+ "@type"?: string;
17
+ };
18
+ };
19
+ source?: {
20
+ type?: string;
21
+ reference?: string;
22
+ };
23
+ response?: {
24
+ createdAt?: string;
25
+ source?: {
26
+ type?: string;
27
+ reference?: string;
28
+ };
29
+ content?: {
30
+ result?: string;
31
+ items?: {
32
+ "@type"?: string;
33
+ items?: {
34
+ "@type"?: string;
35
+ };
36
+ };
37
+ };
38
+ };
39
+ [key: string]: unknown;
40
+ }
41
+ export declare class GetIncomingRequestsUseCase extends UseCase<GetIncomingRequestsRequest, ConsumptionRequestDTO[]> {
42
+ private readonly incomingRequestsController;
43
+ private static readonly queryTranslator;
44
+ constructor(incomingRequestsController: IncomingRequestsController);
45
+ protected executeInternal(request: GetIncomingRequestsRequest): Promise<Result<ConsumptionRequestDTO[], ApplicationError>>;
46
+ }
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.GetIncomingRequestsUseCase = void 0;
16
+ const docdb_querytranslator_1 = require("@js-soft/docdb-querytranslator");
17
+ const ts_utils_1 = require("@js-soft/ts-utils");
18
+ const consumption_1 = require("@nmshd/consumption");
19
+ const ts_simple_nameof_1 = require("ts-simple-nameof");
20
+ const typescript_ioc_1 = require("typescript-ioc");
21
+ const common_1 = require("../../common");
22
+ const flattenObject_1 = require("./flattenObject");
23
+ const RequestMapper_1 = require("./RequestMapper");
24
+ let GetIncomingRequestsUseCase = class GetIncomingRequestsUseCase extends common_1.UseCase {
25
+ constructor(incomingRequestsController) {
26
+ super();
27
+ this.incomingRequestsController = incomingRequestsController;
28
+ }
29
+ async executeInternal(request) {
30
+ const flattenedQuery = (0, flattenObject_1.flattenObject)(request.query);
31
+ const dbQuery = GetIncomingRequestsUseCase.queryTranslator.parse(flattenedQuery);
32
+ const consumptionRequests = await this.incomingRequestsController.getIncomingRequests(dbQuery);
33
+ const dtos = RequestMapper_1.RequestMapper.toConsumptionRequestDTOList(consumptionRequests);
34
+ return ts_utils_1.Result.ok(dtos);
35
+ }
36
+ };
37
+ GetIncomingRequestsUseCase.queryTranslator = new docdb_querytranslator_1.QueryTranslator({
38
+ whitelist: {
39
+ // id
40
+ [(0, ts_simple_nameof_1.nameof)((x) => x.id)]: true,
41
+ // peer
42
+ [(0, ts_simple_nameof_1.nameof)((x) => x.peer)]: true,
43
+ // createdAt
44
+ [(0, ts_simple_nameof_1.nameof)((x) => x.createdAt)]: true,
45
+ // status
46
+ [(0, ts_simple_nameof_1.nameof)((x) => x.status)]: true,
47
+ // content.expiresAt
48
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.expiresAt)}`]: true,
49
+ // content.items.@type
50
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x["@type"])}`]: true,
51
+ // content.items.items.@type
52
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x["@type"])}`]: true,
53
+ // source.type
54
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.source)}.${(0, ts_simple_nameof_1.nameof)((x) => x.type)}`]: true,
55
+ // source.reference
56
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.source)}.${(0, ts_simple_nameof_1.nameof)((x) => x.reference)}`]: true,
57
+ // response.createdAt
58
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.createdAt)}`]: true,
59
+ // response.source.type
60
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.source)}.${(0, ts_simple_nameof_1.nameof)((x) => x.type)}`]: true,
61
+ // response.source.reference
62
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.source)}.${(0, ts_simple_nameof_1.nameof)((x) => x.reference)}`]: true,
63
+ // response.content.result
64
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.result)}`]: true,
65
+ // response.content.items.@type
66
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x["@type"])}`]: true,
67
+ // response.content.items.items.@type
68
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x["@type"])}`]: true
69
+ },
70
+ alias: {
71
+ // id
72
+ [(0, ts_simple_nameof_1.nameof)((x) => x.id)]: (0, ts_simple_nameof_1.nameof)((x) => x.id),
73
+ // peer
74
+ [(0, ts_simple_nameof_1.nameof)((x) => x.peer)]: (0, ts_simple_nameof_1.nameof)((x) => x.peer),
75
+ // createdAt
76
+ [(0, ts_simple_nameof_1.nameof)((x) => x.createdAt)]: (0, ts_simple_nameof_1.nameof)((x) => x.createdAt),
77
+ // status
78
+ [(0, ts_simple_nameof_1.nameof)((x) => x.status)]: (0, ts_simple_nameof_1.nameof)((x) => x.status),
79
+ // content.expiresAt
80
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.expiresAt)}`]: `${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.expiresAt)}`,
81
+ // content.items.@type
82
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x["@type"])}`]: `${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x["@type"])}`,
83
+ // content.items.items.@type
84
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x["@type"])}`]: `${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x["@type"])}`,
85
+ // source.type
86
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.source)}.${(0, ts_simple_nameof_1.nameof)((x) => x.type)}`]: `${(0, ts_simple_nameof_1.nameof)((x) => x.source)}.${(0, ts_simple_nameof_1.nameof)((x) => x.type)}`,
87
+ // source.reference
88
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.source)}.${(0, ts_simple_nameof_1.nameof)((x) => x.reference)}`]: `${(0, ts_simple_nameof_1.nameof)((x) => x.source)}.${(0, ts_simple_nameof_1.nameof)((x) => x.reference)}`,
89
+ // response.createdAt
90
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.createdAt)}`]: `${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.createdAt)}`,
91
+ // response.source.type
92
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.source)}.${(0, ts_simple_nameof_1.nameof)((x) => x.type)}`]: `${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.source)}.${(0, ts_simple_nameof_1.nameof)((x) => x.type)}`,
93
+ // response.source.reference
94
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.source)}.${(0, ts_simple_nameof_1.nameof)((x) => x.reference)}`]: true,
95
+ // response.content.result
96
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.result)}`]: `${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.result)}`,
97
+ // response.content.items.@type
98
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x["@type"])}`]: `${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x["@type"])}`,
99
+ // response.content.items.items.@type
100
+ [`${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x["@type"])}`]: `${(0, ts_simple_nameof_1.nameof)((x) => x.response)}.${(0, ts_simple_nameof_1.nameof)((x) => x.content)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x.items)}.${(0, ts_simple_nameof_1.nameof)((x) => x["@type"])}`
101
+ }
102
+ });
103
+ GetIncomingRequestsUseCase = __decorate([
104
+ __param(0, typescript_ioc_1.Inject),
105
+ __metadata("design:paramtypes", [consumption_1.IncomingRequestsController])
106
+ ], GetIncomingRequestsUseCase);
107
+ exports.GetIncomingRequestsUseCase = GetIncomingRequestsUseCase;
108
+ //# sourceMappingURL=GetIncomingRequests.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetIncomingRequests.js","sourceRoot":"","sources":["../../../../src/useCases/consumption/requests/GetIncomingRequests.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,0EAAiE;AACjE,gDAA6D;AAC7D,oDAA8J;AAE9J,uDAA0C;AAC1C,mDAAwC;AAExC,yCAAuC;AACvC,mDAAgD;AAChD,mDAAgD;AAwChD,IAAa,0BAA0B,GAAvC,MAAa,0BAA2B,SAAQ,gBAA4D;IAoIxG,YAA4C,0BAAsD;QAC9F,KAAK,EAAE,CAAC;QADgC,+BAA0B,GAA1B,0BAA0B,CAA4B;IAElG,CAAC;IAES,KAAK,CAAC,eAAe,CAAC,OAAmC;QAC/D,MAAM,cAAc,GAAG,IAAA,6BAAa,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,0BAA0B,CAAC,eAAe,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACjF,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAE/F,MAAM,IAAI,GAAG,6BAAa,CAAC,2BAA2B,CAAC,mBAAmB,CAAC,CAAC;QAE5E,OAAO,iBAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;CACJ,CAAA;AAhJ2B,0CAAe,GAAG,IAAI,uCAAe,CAAC;IAC1D,SAAS,EAAE;QACP,KAAK;QACL,CAAC,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI;QAElD,OAAO;QACP,CAAC,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI;QAEpD,YAAY;QACZ,CAAC,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI;QAEzD,SAAS;QACT,CAAC,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI;QAEtD,oBAAoB;QACpB,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,IAAI;QAEvG,sBAAsB;QACtB,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,yBAAM,EAAkB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI;QAEjJ,4BAA4B;QAC5B,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,yBAAM,EAAuB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,yBAAM,EAChJ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CACpB,EAAE,CAAC,EAAE,IAAI;QAEV,cAAc;QACd,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAAA,yBAAM,EAA8B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI;QAEjH,mBAAmB;QACnB,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAAA,yBAAM,EAA8B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,IAAI;QAEtH,qBAAqB;QACrB,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAA,yBAAM,EAAyB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,IAAI;QAEnH,uBAAuB;QACvB,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAA,yBAAM,EAAyB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAAA,yBAAM,EAA+B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI;QAEvK,4BAA4B;QAC5B,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAA,yBAAM,EAAyB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAAA,yBAAM,EAA+B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EAClK,IAAI;QAER,0BAA0B;QAC1B,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAA,yBAAM,EAAyB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAAe,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,IAAI;QAE1J,+BAA+B;QAC/B,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAA,yBAAM,EAAyB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAC9G,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CACjB,IAAI,IAAA,yBAAM,EAAmB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI;QAEzD,qCAAqC;QACrC,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAA,yBAAM,EAAyB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAC9G,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CACjB,IAAI,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,yBAAM,EAAmB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI;KAC7G;IACD,KAAK,EAAE;QACH,KAAK;QACL,CAAC,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAA,yBAAM,EAAqB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAErF,OAAO;QACP,CAAC,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,IAAA,yBAAM,EAAqB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAEzF,YAAY;QACZ,CAAC,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,IAAA,yBAAM,EAAqB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAEnG,SAAS;QACT,CAAC,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,IAAA,yBAAM,EAAqB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QAE7F,oBAAoB;QACpB,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,GAAG,IAAA,yBAAM,EACxG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CACnB,IAAI,IAAA,yBAAM,EAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;QAE9C,sBAAsB;QACtB,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,yBAAM,EAChG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CACpB,EAAE,CAAC,EAAE,GAAG,IAAA,yBAAM,EAAqB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,yBAAM,EAAkB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE;QAE5I,4BAA4B;QAC5B,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,yBAAM,EAAuB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,yBAAM,EAChJ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CACpB,EAAE,CAAC,EAAE,GAAG,IAAA,yBAAM,EAAqB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,yBAAM,EAAuB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,yBAAM,EAClJ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CACpB,EAAE;QAEH,cAAc;QACd,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAAA,yBAAM,EAA8B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,GAAG,IAAA,yBAAM,EAClH,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAClB,IAAI,IAAA,yBAAM,EAA2B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;QAEtD,mBAAmB;QACnB,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAAA,yBAAM,EAA8B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,GAAG,IAAA,yBAAM,EACvH,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAClB,IAAI,IAAA,yBAAM,EAA2B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;QAE3D,qBAAqB;QACrB,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAA,yBAAM,EAAyB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,GAAG,IAAA,yBAAM,EACpH,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CACpB,IAAI,IAAA,yBAAM,EAAsB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;QAEtD,uBAAuB;QACvB,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAA,yBAAM,EAAyB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAAA,yBAAM,EAC7G,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAChB,EAAE,CAAC,EAAE,GAAG,IAAA,yBAAM,EAAqB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAA,yBAAM,EAAsB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAAA,yBAAM,EAA4B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;QAE5J,4BAA4B;QAC5B,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAA,yBAAM,EAAyB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAAA,yBAAM,EAA+B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EAClK,IAAI;QAER,0BAA0B;QAC1B,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAA,yBAAM,EAAyB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAC9G,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAClB,EAAE,CAAC,EAAE,GAAG,IAAA,yBAAM,EAAqB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAA,yBAAM,EAAsB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAAe,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;QAElJ,+BAA+B;QAC/B,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAA,yBAAM,EAAyB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAC9G,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CACjB,IAAI,IAAA,yBAAM,EAAmB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,IAAA,yBAAM,EAAqB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAA,yBAAM,EAC3G,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CACnB,IAAI,IAAA,yBAAM,EAAe,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,yBAAM,EAAmB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE;QAE1F,qCAAqC;QACrC,CAAC,GAAG,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAA,yBAAM,EAAyB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAC9G,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CACjB,IAAI,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,yBAAM,EAAmB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,IAAA,yBAAM,EAC3G,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CACpB,IAAI,IAAA,yBAAM,EAAsB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAAe,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,yBAAM,EAAwB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAA,yBAAM,EACjJ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CACpB,EAAE;KACN;CACJ,CAAE,CAAA;AAlIM,0BAA0B;IAoIf,WAAA,uBAAM,CAAA;qCAA8C,wCAA0B;GApIzF,0BAA0B,CAiJtC;AAjJY,gEAA0B"}
@@ -0,0 +1,15 @@
1
+ import { ApplicationError, Result } from "@js-soft/ts-utils";
2
+ import { OutgoingRequestsController } from "@nmshd/consumption";
3
+ import { ConsumptionRequestDTO } from "../../../types";
4
+ import { UseCase } from "../../common";
5
+ export interface GetOutgoingRequestRequest {
6
+ /**
7
+ * @pattern CNSREQ[A-Za-z0-9]{14}
8
+ */
9
+ id: string;
10
+ }
11
+ export declare class GetOutgoingRequestUseCase extends UseCase<GetOutgoingRequestRequest, ConsumptionRequestDTO> {
12
+ private readonly outgoingRequestsController;
13
+ constructor(outgoingRequestsController: OutgoingRequestsController);
14
+ protected executeInternal(request: GetOutgoingRequestRequest): Promise<Result<ConsumptionRequestDTO, ApplicationError>>;
15
+ }