@nmshd/consumption 2.0.0-alpha.7 → 2.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (159) hide show
  1. package/README.md +2 -2
  2. package/dist/buildInformation.js +5 -5
  3. package/dist/consumption/ConsumptionBaseController.d.ts +1 -1
  4. package/dist/consumption/ConsumptionController.d.ts +9 -10
  5. package/dist/consumption/ConsumptionController.js +23 -14
  6. package/dist/consumption/ConsumptionController.js.map +1 -1
  7. package/dist/consumption/ConsumptionControllerName.d.ts +1 -1
  8. package/dist/consumption/ConsumptionControllerName.js +1 -1
  9. package/dist/consumption/ConsumptionControllerName.js.map +1 -1
  10. package/dist/consumption/ConsumptionErrors.d.ts +5 -2
  11. package/dist/consumption/ConsumptionErrors.js +12 -3
  12. package/dist/consumption/ConsumptionErrors.js.map +1 -1
  13. package/dist/consumption/ConsumptionIds.d.ts +2 -5
  14. package/dist/consumption/ConsumptionIds.js +4 -7
  15. package/dist/consumption/ConsumptionIds.js.map +1 -1
  16. package/dist/index.d.ts +1 -1
  17. package/dist/index.js +1 -1
  18. package/dist/index.js.map +1 -1
  19. package/dist/modules/attributes/LocalAttributesController.d.ts +29 -0
  20. package/dist/modules/attributes/LocalAttributesController.js +174 -0
  21. package/dist/modules/attributes/LocalAttributesController.js.map +1 -0
  22. package/dist/modules/attributes/local/CreateLocalAttributeParams.d.ts +12 -0
  23. package/dist/modules/attributes/local/CreateLocalAttributeParams.js +26 -0
  24. package/dist/modules/attributes/local/CreateLocalAttributeParams.js.map +1 -0
  25. package/dist/modules/attributes/local/CreatePeerLocalAttributeParams.d.ts +22 -0
  26. package/dist/modules/{signatures/SignatureContent.js → attributes/local/CreatePeerLocalAttributeParams.js} +15 -32
  27. package/dist/modules/attributes/local/CreatePeerLocalAttributeParams.js.map +1 -0
  28. package/dist/modules/attributes/local/CreateRelationshipAttributeParams.d.ts +14 -0
  29. package/dist/modules/{relationships/local/RelationshipAttribute.js → attributes/local/CreateRelationshipAttributeParams.js} +15 -15
  30. package/dist/modules/attributes/local/CreateRelationshipAttributeParams.js.map +1 -0
  31. package/dist/modules/attributes/local/CreateSharedLocalAttributeCopyParams.d.ts +21 -0
  32. package/dist/modules/{relationships/local/RelationshipTheme.js → attributes/local/CreateSharedLocalAttributeCopyParams.js} +18 -20
  33. package/dist/modules/attributes/local/CreateSharedLocalAttributeCopyParams.js.map +1 -0
  34. package/dist/modules/attributes/local/LocalAttribute.d.ts +30 -0
  35. package/dist/modules/attributes/local/{ConsumptionAttribute.js → LocalAttribute.js} +36 -24
  36. package/dist/modules/attributes/local/LocalAttribute.js.map +1 -0
  37. package/dist/modules/attributes/local/LocalAttributeShareInfo.d.ts +17 -0
  38. package/dist/modules/attributes/local/LocalAttributeShareInfo.js +36 -0
  39. package/dist/modules/attributes/local/LocalAttributeShareInfo.js.map +1 -0
  40. package/dist/modules/attributes/local/QueryTranslator.d.ts +9 -0
  41. package/dist/modules/attributes/local/QueryTranslator.js +125 -0
  42. package/dist/modules/attributes/local/QueryTranslator.js.map +1 -0
  43. package/dist/modules/attributes/local/SucceedLocalAttributeParams.d.ts +16 -0
  44. package/dist/modules/attributes/local/SucceedLocalAttributeParams.js +32 -0
  45. package/dist/modules/attributes/local/SucceedLocalAttributeParams.js.map +1 -0
  46. package/dist/modules/attributes/local/UpdateLocalAttributeParams.d.ts +16 -0
  47. package/dist/modules/attributes/local/UpdateLocalAttributeParams.js +32 -0
  48. package/dist/modules/attributes/local/UpdateLocalAttributeParams.js.map +1 -0
  49. package/dist/modules/drafts/DraftsController.d.ts +1 -1
  50. package/dist/modules/drafts/DraftsController.js.map +1 -1
  51. package/dist/modules/index.d.ts +23 -14
  52. package/dist/modules/index.js +22 -14
  53. package/dist/modules/index.js.map +1 -1
  54. package/dist/modules/requests/incoming/DecideRequestParametersValidator.d.ts +3 -3
  55. package/dist/modules/requests/incoming/DecideRequestParametersValidator.js +20 -27
  56. package/dist/modules/requests/incoming/DecideRequestParametersValidator.js.map +1 -1
  57. package/dist/modules/requests/incoming/IncomingRequestsController.d.ts +12 -13
  58. package/dist/modules/requests/incoming/IncomingRequestsController.js +55 -58
  59. package/dist/modules/requests/incoming/IncomingRequestsController.js.map +1 -1
  60. package/dist/modules/requests/itemProcessors/AbstractRequestItemProcessor.d.ts +21 -0
  61. package/dist/modules/requests/itemProcessors/AbstractRequestItemProcessor.js +12 -0
  62. package/dist/modules/requests/itemProcessors/AbstractRequestItemProcessor.js.map +1 -0
  63. package/dist/modules/requests/itemProcessors/GenericRequestItemProcessor.d.ts +13 -11
  64. package/dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js +13 -17
  65. package/dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js.map +1 -1
  66. package/dist/modules/requests/itemProcessors/IRequestItemProcessor.d.ts +14 -9
  67. package/dist/modules/requests/itemProcessors/ProcessorConstructor.d.ts +2 -1
  68. package/dist/modules/requests/itemProcessors/RequestItemProcessorRegistry.d.ts +6 -7
  69. package/dist/modules/requests/itemProcessors/RequestItemProcessorRegistry.js +10 -12
  70. package/dist/modules/requests/itemProcessors/RequestItemProcessorRegistry.js.map +1 -1
  71. package/dist/modules/requests/itemProcessors/ValidationResult.d.ts +7 -7
  72. package/dist/modules/requests/itemProcessors/ValidationResult.js +11 -11
  73. package/dist/modules/requests/itemProcessors/ValidationResult.js.map +1 -1
  74. package/dist/modules/requests/itemProcessors/createAttribute/AcceptCreateAttributeRequestItemParameters.d.ts +7 -0
  75. package/dist/modules/requests/itemProcessors/createAttribute/AcceptCreateAttributeRequestItemParameters.js +20 -0
  76. package/dist/modules/requests/itemProcessors/createAttribute/AcceptCreateAttributeRequestItemParameters.js.map +1 -0
  77. package/dist/modules/requests/itemProcessors/createAttribute/CreateAttributeRequestItemProcessor.d.ts +13 -0
  78. package/dist/modules/requests/itemProcessors/createAttribute/CreateAttributeRequestItemProcessor.js +71 -0
  79. package/dist/modules/requests/itemProcessors/createAttribute/CreateAttributeRequestItemProcessor.js.map +1 -0
  80. package/dist/modules/requests/itemProcessors/proposeAttribute/AcceptProposeAttributeRequestItemParameters.d.ts +20 -0
  81. package/dist/modules/requests/itemProcessors/proposeAttribute/AcceptProposeAttributeRequestItemParameters.js +47 -0
  82. package/dist/modules/requests/itemProcessors/proposeAttribute/AcceptProposeAttributeRequestItemParameters.js.map +1 -0
  83. package/dist/modules/requests/itemProcessors/proposeAttribute/ProposeAttributeRequestItemProcessor.d.ts +16 -0
  84. package/dist/modules/requests/itemProcessors/proposeAttribute/ProposeAttributeRequestItemProcessor.js +110 -0
  85. package/dist/modules/requests/itemProcessors/proposeAttribute/ProposeAttributeRequestItemProcessor.js.map +1 -0
  86. package/dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.d.ts +23 -0
  87. package/dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.js +54 -0
  88. package/dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.js.map +1 -0
  89. package/dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.d.ts +14 -0
  90. package/dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js +88 -0
  91. package/dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js.map +1 -0
  92. package/dist/modules/requests/itemProcessors/shareAttribute/AcceptShareAttributeRequestItemParameters.d.ts +7 -0
  93. package/dist/modules/requests/itemProcessors/shareAttribute/AcceptShareAttributeRequestItemParameters.js +20 -0
  94. package/dist/modules/requests/itemProcessors/shareAttribute/AcceptShareAttributeRequestItemParameters.js.map +1 -0
  95. package/dist/modules/requests/itemProcessors/shareAttribute/ShareAttributeRequestItemProcessor.d.ts +15 -0
  96. package/dist/modules/requests/itemProcessors/shareAttribute/ShareAttributeRequestItemProcessor.js +94 -0
  97. package/dist/modules/requests/itemProcessors/shareAttribute/ShareAttributeRequestItemProcessor.js.map +1 -0
  98. package/dist/modules/requests/itemProcessors/utility/validateQuery.d.ts +4 -0
  99. package/dist/modules/requests/itemProcessors/utility/validateQuery.js +21 -0
  100. package/dist/modules/requests/itemProcessors/utility/validateQuery.js.map +1 -0
  101. package/dist/modules/requests/local/LocalRequest.d.ts +37 -0
  102. package/dist/modules/requests/local/{ConsumptionRequest.js → LocalRequest.js} +32 -32
  103. package/dist/modules/requests/local/LocalRequest.js.map +1 -0
  104. package/dist/modules/requests/local/{ConsumptionRequestStatus.d.ts → LocalRequestStatus.d.ts} +1 -1
  105. package/dist/modules/requests/local/LocalRequestStatus.js +13 -0
  106. package/dist/modules/requests/local/LocalRequestStatus.js.map +1 -0
  107. package/dist/modules/requests/local/LocalRequestStatusLogEntry.d.ts +17 -0
  108. package/dist/modules/requests/local/{ConsumptionRequestStatusLogEntry.js → LocalRequestStatusLogEntry.js} +13 -13
  109. package/dist/modules/requests/local/LocalRequestStatusLogEntry.js.map +1 -0
  110. package/dist/modules/requests/local/LocalResponse.d.ts +22 -0
  111. package/dist/modules/requests/local/{ConsumptionResponse.js → LocalResponse.js} +18 -18
  112. package/dist/modules/requests/local/LocalResponse.js.map +1 -0
  113. package/dist/modules/requests/outgoing/OutgoingRequestsController.d.ts +9 -10
  114. package/dist/modules/requests/outgoing/OutgoingRequestsController.js +49 -43
  115. package/dist/modules/requests/outgoing/OutgoingRequestsController.js.map +1 -1
  116. package/dist/modules/settings/SettingsController.d.ts +1 -1
  117. package/dist/modules/settings/SettingsController.js.map +1 -1
  118. package/lib-web/nmshd.consumption.js +12465 -3351
  119. package/lib-web/nmshd.consumption.js.map +1 -1
  120. package/lib-web/nmshd.consumption.min.js +1 -1
  121. package/lib-web/nmshd.consumption.min.js.map +1 -1
  122. package/package.json +29 -25
  123. package/dist/modules/attributes/ConsumptionAttributesController.d.ts +0 -22
  124. package/dist/modules/attributes/ConsumptionAttributesController.js +0 -141
  125. package/dist/modules/attributes/ConsumptionAttributesController.js.map +0 -1
  126. package/dist/modules/attributes/local/ConsumptionAttribute.d.ts +0 -19
  127. package/dist/modules/attributes/local/ConsumptionAttribute.js.map +0 -1
  128. package/dist/modules/relationships/RelationshipInfoController.d.ts +0 -15
  129. package/dist/modules/relationships/RelationshipInfoController.js +0 -61
  130. package/dist/modules/relationships/RelationshipInfoController.js.map +0 -1
  131. package/dist/modules/relationships/RelationshipInfoUtil.d.ts +0 -15
  132. package/dist/modules/relationships/RelationshipInfoUtil.js +0 -219
  133. package/dist/modules/relationships/RelationshipInfoUtil.js.map +0 -1
  134. package/dist/modules/relationships/local/RelationshipAttribute.d.ts +0 -14
  135. package/dist/modules/relationships/local/RelationshipAttribute.js.map +0 -1
  136. package/dist/modules/relationships/local/RelationshipInfo.d.ts +0 -27
  137. package/dist/modules/relationships/local/RelationshipInfo.js +0 -97
  138. package/dist/modules/relationships/local/RelationshipInfo.js.map +0 -1
  139. package/dist/modules/relationships/local/RelationshipTheme.d.ts +0 -14
  140. package/dist/modules/relationships/local/RelationshipTheme.js.map +0 -1
  141. package/dist/modules/requests/local/ConsumptionRequest.d.ts +0 -37
  142. package/dist/modules/requests/local/ConsumptionRequest.js.map +0 -1
  143. package/dist/modules/requests/local/ConsumptionRequestStatus.js +0 -13
  144. package/dist/modules/requests/local/ConsumptionRequestStatus.js.map +0 -1
  145. package/dist/modules/requests/local/ConsumptionRequestStatusLogEntry.d.ts +0 -17
  146. package/dist/modules/requests/local/ConsumptionRequestStatusLogEntry.js.map +0 -1
  147. package/dist/modules/requests/local/ConsumptionResponse.d.ts +0 -22
  148. package/dist/modules/requests/local/ConsumptionResponse.js.map +0 -1
  149. package/dist/modules/sharedItems/SharedItemsController.d.ts +0 -14
  150. package/dist/modules/sharedItems/SharedItemsController.js +0 -40
  151. package/dist/modules/sharedItems/SharedItemsController.js.map +0 -1
  152. package/dist/modules/sharedItems/local/SharedItem.d.ts +0 -31
  153. package/dist/modules/sharedItems/local/SharedItem.js +0 -100
  154. package/dist/modules/sharedItems/local/SharedItem.js.map +0 -1
  155. package/dist/modules/signatures/Signature.d.ts +0 -16
  156. package/dist/modules/signatures/Signature.js +0 -56
  157. package/dist/modules/signatures/Signature.js.map +0 -1
  158. package/dist/modules/signatures/SignatureContent.d.ts +0 -21
  159. package/dist/modules/signatures/SignatureContent.js.map +0 -1
@@ -0,0 +1,20 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.AcceptShareAttributeRequestItemParameters = void 0;
10
+ const ts_serval_1 = require("@js-soft/ts-serval");
11
+ let AcceptShareAttributeRequestItemParameters = class AcceptShareAttributeRequestItemParameters extends ts_serval_1.Serializable {
12
+ static from(value) {
13
+ return this.fromAny(value);
14
+ }
15
+ };
16
+ AcceptShareAttributeRequestItemParameters = __decorate([
17
+ (0, ts_serval_1.type)("AcceptShareAttributeRequestItemParameters")
18
+ ], AcceptShareAttributeRequestItemParameters);
19
+ exports.AcceptShareAttributeRequestItemParameters = AcceptShareAttributeRequestItemParameters;
20
+ //# sourceMappingURL=AcceptShareAttributeRequestItemParameters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcceptShareAttributeRequestItemParameters.js","sourceRoot":"","sources":["../../../../../src/modules/requests/itemProcessors/shareAttribute/AcceptShareAttributeRequestItemParameters.ts"],"names":[],"mappings":";;;;;;;;;AAAA,kDAAuD;AAMvD,IAAa,yCAAyC,GAAtD,MAAa,yCAA0C,SAAQ,wBAAY;IAChE,MAAM,CAAC,IAAI,CACd,KAAoD;QAEpD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;CACJ,CAAA;AANY,yCAAyC;IADrD,IAAA,gBAAI,EAAC,2CAA2C,CAAC;GACrC,yCAAyC,CAMrD;AANY,8FAAyC"}
@@ -0,0 +1,15 @@
1
+ import { AcceptResponseItem, Request, ShareAttributeRequestItem } from "@nmshd/content";
2
+ import { CoreAddress } from "@nmshd/transport";
3
+ import { GenericRequestItemProcessor } from "../GenericRequestItemProcessor";
4
+ import { LocalRequestInfo } from "../IRequestItemProcessor";
5
+ import { ValidationResult } from "../ValidationResult";
6
+ import { AcceptShareAttributeRequestItemParametersJSON } from "./AcceptShareAttributeRequestItemParameters";
7
+ export declare class ShareAttributeRequestItemProcessor extends GenericRequestItemProcessor<ShareAttributeRequestItem, AcceptShareAttributeRequestItemParametersJSON> {
8
+ canCreateOutgoingRequestItem(requestItem: ShareAttributeRequestItem, _request: Request, recipient: CoreAddress): Promise<ValidationResult>;
9
+ checkPrerequisitesOfIncomingRequestItem(requestItem: ShareAttributeRequestItem, requestInfo: LocalRequestInfo): Promise<boolean>;
10
+ private validateAttributeOwner;
11
+ canAccept(_requestItem: ShareAttributeRequestItem, _params: AcceptShareAttributeRequestItemParametersJSON, _requestInfo: LocalRequestInfo): ValidationResult;
12
+ accept(requestItem: ShareAttributeRequestItem, _params: AcceptShareAttributeRequestItemParametersJSON, _requestInfo: LocalRequestInfo): Promise<AcceptResponseItem>;
13
+ private isAttributeAlreadyShared;
14
+ private shareAttribute;
15
+ }
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ShareAttributeRequestItemProcessor = void 0;
4
+ const content_1 = require("@nmshd/content");
5
+ const transport_1 = require("@nmshd/transport");
6
+ const consumption_1 = require("../../../../consumption");
7
+ const GenericRequestItemProcessor_1 = require("../GenericRequestItemProcessor");
8
+ const ValidationResult_1 = require("../ValidationResult");
9
+ class ShareAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.GenericRequestItemProcessor {
10
+ async canCreateOutgoingRequestItem(requestItem, _request, recipient) {
11
+ const attribute = await this.consumptionController.attributes.getLocalAttribute(requestItem.attributeId);
12
+ if (!attribute) {
13
+ return ValidationResult_1.ValidationResult.error(transport_1.TransportErrors.general.recordNotFound(content_1.Attribute, requestItem.attributeId.toString()));
14
+ }
15
+ const attributeOwnerValidationResult = this.validateAttributeOwner(attribute.content, this.currentIdentityAddress, recipient);
16
+ if (attributeOwnerValidationResult.isError()) {
17
+ return attributeOwnerValidationResult;
18
+ }
19
+ return ValidationResult_1.ValidationResult.success();
20
+ }
21
+ async checkPrerequisitesOfIncomingRequestItem(requestItem, requestInfo) {
22
+ const relationshipToShareWith = await this.accountController.relationships.getRelationshipToIdentity(requestItem.shareWith);
23
+ if (!relationshipToShareWith) {
24
+ return false; // Should the containing Request move to Error state?
25
+ }
26
+ const attribute = await this.consumptionController.attributes.getLocalAttribute(requestItem.attributeId);
27
+ if (!attribute) {
28
+ return false; // Should the containing Request move to Error state?
29
+ }
30
+ if (this.validateAttributeOwner(attribute.content, requestInfo.peer, this.currentIdentityAddress).isError()) {
31
+ return false;
32
+ }
33
+ return true;
34
+ }
35
+ validateAttributeOwner(attribute, sender, recipient) {
36
+ const attributeOwner = attribute.owner;
37
+ if (attribute instanceof content_1.IdentityAttribute) {
38
+ if (!attributeOwner.equals(recipient)) {
39
+ return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.invalidRequestItem("Can only request sharing of identity attributes owned by the recipient."));
40
+ }
41
+ }
42
+ if (attribute instanceof content_1.RelationshipAttribute) {
43
+ if (!attributeOwner.equals(recipient) && !attributeOwner.equals(sender)) {
44
+ return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.invalidRequestItem("Cannot request sharing of relationship attributes not owned by recipient or sender."));
45
+ }
46
+ }
47
+ return ValidationResult_1.ValidationResult.success();
48
+ }
49
+ canAccept(_requestItem, _params, _requestInfo) {
50
+ return ValidationResult_1.ValidationResult.success();
51
+ }
52
+ async accept(requestItem, _params, _requestInfo) {
53
+ const attribute = (await this.consumptionController.attributes.getLocalAttribute(requestItem.attributeId));
54
+ if (!(await this.isAttributeAlreadyShared(attribute, requestItem.shareWith))) {
55
+ await this.shareAttribute(attribute, requestItem.shareWith);
56
+ }
57
+ return content_1.AcceptResponseItem.from({ result: content_1.ResponseItemResult.Accepted });
58
+ }
59
+ async isAttributeAlreadyShared(attribute, shareWith) {
60
+ if (attribute.content instanceof content_1.IdentityAttribute) {
61
+ return ((await this.consumptionController.attributes.getLocalAttributes({
62
+ "shareInfo.sourceAttribute": attribute.shareInfo.sourceAttribute.toString(),
63
+ "shareInfo.peer": shareWith.toString()
64
+ })).length > 0);
65
+ }
66
+ return ((await this.consumptionController.attributes.getLocalAttributes({
67
+ "shareInfo.sourceAttribute": attribute.id.toString(),
68
+ "shareInfo.peer": shareWith.toString()
69
+ })).length > 0);
70
+ }
71
+ async shareAttribute(attribute, shareWith) {
72
+ const createAttributeRequestItem = content_1.CreateAttributeRequestItem.from({
73
+ attribute: attribute.content,
74
+ mustBeAccepted: true,
75
+ sourceAttributeId: attribute.id
76
+ });
77
+ const createAttributeRequest = await this.consumptionController.outgoingRequests.create({
78
+ peer: shareWith,
79
+ content: content_1.Request.from({
80
+ items: [createAttributeRequestItem]
81
+ })
82
+ });
83
+ const message = await this.accountController.messages.sendMessage({
84
+ recipients: [shareWith],
85
+ content: createAttributeRequest.content
86
+ });
87
+ await this.consumptionController.outgoingRequests.sent({
88
+ requestId: createAttributeRequest.id,
89
+ requestSourceObject: message
90
+ });
91
+ }
92
+ }
93
+ exports.ShareAttributeRequestItemProcessor = ShareAttributeRequestItemProcessor;
94
+ //# sourceMappingURL=ShareAttributeRequestItemProcessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ShareAttributeRequestItemProcessor.js","sourceRoot":"","sources":["../../../../../src/modules/requests/itemProcessors/shareAttribute/ShareAttributeRequestItemProcessor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { AbstractAttributeQuery } from "@nmshd/content";
2
+ import { CoreAddress } from "@nmshd/transport";
3
+ import { ValidationResult } from "../ValidationResult";
4
+ export default function validateQuery(query: AbstractAttributeQuery, sender: CoreAddress, recipient: CoreAddress): ValidationResult;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const content_1 = require("@nmshd/content");
4
+ const consumption_1 = require("../../../../consumption");
5
+ const ValidationResult_1 = require("../ValidationResult");
6
+ function validateQuery(query, sender, recipient) {
7
+ if (query instanceof content_1.RelationshipAttributeQuery) {
8
+ if (query.thirdParty?.equals(sender)) {
9
+ return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.invalidRequestItem("Cannot query an Attribute with the own address as third party."));
10
+ }
11
+ if (query.thirdParty?.equals(recipient)) {
12
+ return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.invalidRequestItem("Cannot query an Attribute with the recipient's address as third party."));
13
+ }
14
+ if (query.owner.equals(sender) && query.thirdParty !== undefined) {
15
+ return ValidationResult_1.ValidationResult.error(consumption_1.ConsumptionErrors.requests.invalidRequestItem("Cannot query own Attributes from a third party."));
16
+ }
17
+ }
18
+ return ValidationResult_1.ValidationResult.success();
19
+ }
20
+ exports.default = validateQuery;
21
+ //# sourceMappingURL=validateQuery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validateQuery.js","sourceRoot":"","sources":["../../../../../src/modules/requests/itemProcessors/utility/validateQuery.ts"],"names":[],"mappings":";;AAAA,4CAAmF;AAEnF,yDAA2D;AAC3D,0DAAsD;AAEtD,SAAwB,aAAa,CACjC,KAA6B,EAC7B,MAAmB,EACnB,SAAsB;IAEtB,IAAI,KAAK,YAAY,oCAA0B,EAAE;QAC7C,IAAI,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE;YAClC,OAAO,mCAAgB,CAAC,KAAK,CACzB,+BAAiB,CAAC,QAAQ,CAAC,kBAAkB,CACzC,gEAAgE,CACnE,CACJ,CAAA;SACJ;QAED,IAAI,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE;YACrC,OAAO,mCAAgB,CAAC,KAAK,CACzB,+BAAiB,CAAC,QAAQ,CAAC,kBAAkB,CACzC,wEAAwE,CAC3E,CACJ,CAAA;SACJ;QAED,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE;YAC9D,OAAO,mCAAgB,CAAC,KAAK,CACzB,+BAAiB,CAAC,QAAQ,CAAC,kBAAkB,CAAC,iDAAiD,CAAC,CACnG,CAAA;SACJ;KACJ;IAED,OAAO,mCAAgB,CAAC,OAAO,EAAE,CAAA;AACrC,CAAC;AA9BD,gCA8BC"}
@@ -0,0 +1,37 @@
1
+ import { IRequest, Request } from "@nmshd/content";
2
+ import { CoreAddress, CoreDate, CoreId, CoreSerializable, CoreSynchronizable, ICoreAddress, ICoreDate, ICoreId, ICoreSerializable, ICoreSynchronizable } from "@nmshd/transport";
3
+ import { LocalRequestStatus } from "./LocalRequestStatus";
4
+ import { ILocalRequestStatusLogEntry, LocalRequestStatusLogEntry } from "./LocalRequestStatusLogEntry";
5
+ import { ILocalResponse, LocalResponse } from "./LocalResponse";
6
+ export interface ILocalRequestSource extends ICoreSerializable {
7
+ type: "Message" | "RelationshipTemplate";
8
+ reference: ICoreId;
9
+ }
10
+ export declare class LocalRequestSource extends CoreSerializable implements ILocalRequestSource {
11
+ type: "Message" | "RelationshipTemplate";
12
+ reference: CoreId;
13
+ static from(value: ILocalRequestSource): LocalRequestSource;
14
+ }
15
+ export interface ILocalRequest extends ICoreSynchronizable {
16
+ isOwn: boolean;
17
+ peer: ICoreAddress;
18
+ createdAt: ICoreDate;
19
+ content: IRequest;
20
+ source?: ILocalRequestSource;
21
+ response?: ILocalResponse;
22
+ status: LocalRequestStatus;
23
+ statusLog: ILocalRequestStatusLogEntry[];
24
+ }
25
+ export declare class LocalRequest extends CoreSynchronizable implements ILocalRequest {
26
+ isOwn: boolean;
27
+ peer: CoreAddress;
28
+ createdAt: CoreDate;
29
+ content: Request;
30
+ source?: LocalRequestSource;
31
+ response?: LocalResponse;
32
+ status: LocalRequestStatus;
33
+ statusLog: LocalRequestStatusLogEntry[];
34
+ changeStatus(newStatus: LocalRequestStatus): void;
35
+ sent(source: LocalRequestSource): void;
36
+ static from(value: ILocalRequest): LocalRequest;
37
+ }
@@ -9,14 +9,14 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.ConsumptionRequest = exports.ConsumptionRequestSource = void 0;
12
+ exports.LocalRequest = exports.LocalRequestSource = void 0;
13
13
  const ts_serval_1 = require("@js-soft/ts-serval");
14
14
  const content_1 = require("@nmshd/content");
15
15
  const transport_1 = require("@nmshd/transport");
16
- const ConsumptionRequestStatus_1 = require("./ConsumptionRequestStatus");
17
- const ConsumptionRequestStatusLogEntry_1 = require("./ConsumptionRequestStatusLogEntry");
18
- const ConsumptionResponse_1 = require("./ConsumptionResponse");
19
- let ConsumptionRequestSource = class ConsumptionRequestSource extends transport_1.CoreSerializable {
16
+ const LocalRequestStatus_1 = require("./LocalRequestStatus");
17
+ const LocalRequestStatusLogEntry_1 = require("./LocalRequestStatusLogEntry");
18
+ const LocalResponse_1 = require("./LocalResponse");
19
+ let LocalRequestSource = class LocalRequestSource extends transport_1.CoreSerializable {
20
20
  static from(value) {
21
21
  return this.fromAny(value);
22
22
  }
@@ -25,19 +25,19 @@ __decorate([
25
25
  (0, ts_serval_1.serialize)(),
26
26
  (0, ts_serval_1.validate)(),
27
27
  __metadata("design:type", String)
28
- ], ConsumptionRequestSource.prototype, "type", void 0);
28
+ ], LocalRequestSource.prototype, "type", void 0);
29
29
  __decorate([
30
30
  (0, ts_serval_1.serialize)(),
31
31
  (0, ts_serval_1.validate)(),
32
32
  __metadata("design:type", transport_1.CoreId)
33
- ], ConsumptionRequestSource.prototype, "reference", void 0);
34
- ConsumptionRequestSource = __decorate([
35
- (0, ts_serval_1.type)("ConsumptionRequestSource")
36
- ], ConsumptionRequestSource);
37
- exports.ConsumptionRequestSource = ConsumptionRequestSource;
38
- let ConsumptionRequest = class ConsumptionRequest extends transport_1.CoreSynchronizable {
33
+ ], LocalRequestSource.prototype, "reference", void 0);
34
+ LocalRequestSource = __decorate([
35
+ (0, ts_serval_1.type)("LocalRequestSource")
36
+ ], LocalRequestSource);
37
+ exports.LocalRequestSource = LocalRequestSource;
38
+ let LocalRequest = class LocalRequest extends transport_1.CoreSynchronizable {
39
39
  changeStatus(newStatus) {
40
- const logEntry = ConsumptionRequestStatusLogEntry_1.ConsumptionRequestStatusLogEntry.from({
40
+ const logEntry = LocalRequestStatusLogEntry_1.LocalRequestStatusLogEntry.from({
41
41
  createdAt: transport_1.CoreDate.utc(),
42
42
  oldStatus: this.status,
43
43
  newStatus
@@ -46,11 +46,11 @@ let ConsumptionRequest = class ConsumptionRequest extends transport_1.CoreSynchr
46
46
  this.status = newStatus;
47
47
  }
48
48
  sent(source) {
49
- if (this.status !== ConsumptionRequestStatus_1.ConsumptionRequestStatus.Draft) {
50
- throw new Error("Consumption Request has to be in status 'Draft'.");
49
+ if (this.status !== LocalRequestStatus_1.LocalRequestStatus.Draft) {
50
+ throw new Error("Local Request has to be in status 'Draft'.");
51
51
  }
52
52
  this.source = source;
53
- this.changeStatus(ConsumptionRequestStatus_1.ConsumptionRequestStatus.Open);
53
+ this.changeStatus(LocalRequestStatus_1.LocalRequestStatus.Open);
54
54
  }
55
55
  static from(value) {
56
56
  return this.fromAny(value);
@@ -60,44 +60,44 @@ __decorate([
60
60
  (0, ts_serval_1.serialize)(),
61
61
  (0, ts_serval_1.validate)(),
62
62
  __metadata("design:type", Boolean)
63
- ], ConsumptionRequest.prototype, "isOwn", void 0);
63
+ ], LocalRequest.prototype, "isOwn", void 0);
64
64
  __decorate([
65
65
  (0, ts_serval_1.serialize)(),
66
66
  (0, ts_serval_1.validate)(),
67
67
  __metadata("design:type", transport_1.CoreAddress)
68
- ], ConsumptionRequest.prototype, "peer", void 0);
68
+ ], LocalRequest.prototype, "peer", void 0);
69
69
  __decorate([
70
70
  (0, ts_serval_1.serialize)(),
71
71
  (0, ts_serval_1.validate)(),
72
72
  __metadata("design:type", transport_1.CoreDate)
73
- ], ConsumptionRequest.prototype, "createdAt", void 0);
73
+ ], LocalRequest.prototype, "createdAt", void 0);
74
74
  __decorate([
75
75
  (0, ts_serval_1.serialize)(),
76
76
  (0, ts_serval_1.validate)(),
77
77
  __metadata("design:type", content_1.Request)
78
- ], ConsumptionRequest.prototype, "content", void 0);
78
+ ], LocalRequest.prototype, "content", void 0);
79
79
  __decorate([
80
80
  (0, ts_serval_1.serialize)(),
81
81
  (0, ts_serval_1.validate)({ nullable: true }),
82
- __metadata("design:type", ConsumptionRequestSource)
83
- ], ConsumptionRequest.prototype, "source", void 0);
82
+ __metadata("design:type", LocalRequestSource)
83
+ ], LocalRequest.prototype, "source", void 0);
84
84
  __decorate([
85
85
  (0, ts_serval_1.serialize)(),
86
86
  (0, ts_serval_1.validate)({ nullable: true }),
87
- __metadata("design:type", ConsumptionResponse_1.ConsumptionResponse)
88
- ], ConsumptionRequest.prototype, "response", void 0);
87
+ __metadata("design:type", LocalResponse_1.LocalResponse)
88
+ ], LocalRequest.prototype, "response", void 0);
89
89
  __decorate([
90
90
  (0, ts_serval_1.serialize)(),
91
91
  (0, ts_serval_1.validate)(),
92
92
  __metadata("design:type", String)
93
- ], ConsumptionRequest.prototype, "status", void 0);
93
+ ], LocalRequest.prototype, "status", void 0);
94
94
  __decorate([
95
- (0, ts_serval_1.serialize)({ type: ConsumptionRequestStatusLogEntry_1.ConsumptionRequestStatusLogEntry }),
95
+ (0, ts_serval_1.serialize)({ type: LocalRequestStatusLogEntry_1.LocalRequestStatusLogEntry }),
96
96
  (0, ts_serval_1.validate)(),
97
97
  __metadata("design:type", Array)
98
- ], ConsumptionRequest.prototype, "statusLog", void 0);
99
- ConsumptionRequest = __decorate([
100
- (0, ts_serval_1.type)("ConsumptionRequest")
101
- ], ConsumptionRequest);
102
- exports.ConsumptionRequest = ConsumptionRequest;
103
- //# sourceMappingURL=ConsumptionRequest.js.map
98
+ ], LocalRequest.prototype, "statusLog", void 0);
99
+ LocalRequest = __decorate([
100
+ (0, ts_serval_1.type)("LocalRequest")
101
+ ], LocalRequest);
102
+ exports.LocalRequest = LocalRequest;
103
+ //# sourceMappingURL=LocalRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LocalRequest.js","sourceRoot":"","sources":["../../../../src/modules/requests/local/LocalRequest.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA8D;AAC9D,4CAAkD;AAClD,gDAWyB;AACzB,6DAAyD;AACzD,6EAAsG;AACtG,mDAA+D;AAQ/D,IAAa,kBAAkB,GAA/B,MAAa,kBAAmB,SAAQ,4BAAgB;IAS7C,MAAM,CAAC,IAAI,CAAC,KAA0B;QACzC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;CACJ,CAAA;AATG;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;;gDACoC;AAI/C;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACO,kBAAM;qDAAA;AAPf,kBAAkB;IAD9B,IAAA,gBAAI,EAAC,oBAAoB,CAAC;GACd,kBAAkB,CAY9B;AAZY,gDAAkB;AA0B/B,IAAa,YAAY,GAAzB,MAAa,YAAa,SAAQ,8BAAkB;IAiCzC,YAAY,CAAC,SAA6B;QAC7C,MAAM,QAAQ,GAAG,uDAA0B,CAAC,IAAI,CAAC;YAC7C,SAAS,EAAE,oBAAQ,CAAC,GAAG,EAAE;YACzB,SAAS,EAAE,IAAI,CAAC,MAAM;YACtB,SAAS;SACZ,CAAC,CAAA;QAEF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAE7B,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;IAC3B,CAAC;IAEM,IAAI,CAAC,MAA0B;QAClC,IAAI,IAAI,CAAC,MAAM,KAAK,uCAAkB,CAAC,KAAK,EAAE;YAC1C,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;SAChE;QAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,YAAY,CAAC,uCAAkB,CAAC,IAAI,CAAC,CAAA;IAC9C,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,KAAoB;QACnC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;CACJ,CAAA;AAtDG;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;;2CACU;AAIrB;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACE,uBAAW;0CAAA;AAIxB;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACO,oBAAQ;+CAAA;AAI1B;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACK,iBAAO;6CAAA;AAIvB;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACb,kBAAkB;4CAAA;AAIlC;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACX,6BAAa;8CAAA;AAI/B;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;;4CACsB;AAIjC;IAFC,IAAA,qBAAS,EAAC,EAAE,IAAI,EAAE,uDAA0B,EAAE,CAAC;IAC/C,IAAA,oBAAQ,GAAE;;+CACmC;AA/BrC,YAAY;IADxB,IAAA,gBAAI,EAAC,cAAc,CAAC;GACR,YAAY,CAyDxB;AAzDY,oCAAY"}
@@ -1,4 +1,4 @@
1
- export declare enum ConsumptionRequestStatus {
1
+ export declare enum LocalRequestStatus {
2
2
  Draft = "Draft",
3
3
  Open = "Open",
4
4
  DecisionRequired = "DecisionRequired",
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LocalRequestStatus = void 0;
4
+ var LocalRequestStatus;
5
+ (function (LocalRequestStatus) {
6
+ LocalRequestStatus["Draft"] = "Draft";
7
+ LocalRequestStatus["Open"] = "Open";
8
+ LocalRequestStatus["DecisionRequired"] = "DecisionRequired";
9
+ LocalRequestStatus["ManualDecisionRequired"] = "ManualDecisionRequired";
10
+ LocalRequestStatus["Decided"] = "Decided";
11
+ LocalRequestStatus["Completed"] = "Completed";
12
+ })(LocalRequestStatus = exports.LocalRequestStatus || (exports.LocalRequestStatus = {}));
13
+ //# sourceMappingURL=LocalRequestStatus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LocalRequestStatus.js","sourceRoot":"","sources":["../../../../src/modules/requests/local/LocalRequestStatus.ts"],"names":[],"mappings":";;;AAAA,IAAY,kBAOX;AAPD,WAAY,kBAAkB;IAC1B,qCAAe,CAAA;IACf,mCAAa,CAAA;IACb,2DAAqC,CAAA;IACrC,uEAAiD,CAAA;IACjD,yCAAmB,CAAA;IACnB,6CAAuB,CAAA;AAC3B,CAAC,EAPW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAO7B"}
@@ -0,0 +1,17 @@
1
+ import { CoreDate, CoreSerializable, ICoreDate, ICoreSerializable } from "@nmshd/transport";
2
+ import { LocalRequestStatus } from "./LocalRequestStatus";
3
+ export interface ILocalRequestStatusLogEntry extends ICoreSerializable {
4
+ createdAt: ICoreDate;
5
+ oldStatus: LocalRequestStatus;
6
+ newStatus: LocalRequestStatus;
7
+ data?: object;
8
+ code?: string;
9
+ }
10
+ export declare class LocalRequestStatusLogEntry extends CoreSerializable implements ILocalRequestStatusLogEntry {
11
+ createdAt: CoreDate;
12
+ oldStatus: LocalRequestStatus;
13
+ newStatus: LocalRequestStatus;
14
+ data?: object;
15
+ code?: string;
16
+ static from(value: ILocalRequestStatusLogEntry): LocalRequestStatusLogEntry;
17
+ }
@@ -9,11 +9,11 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.ConsumptionRequestStatusLogEntry = void 0;
12
+ exports.LocalRequestStatusLogEntry = void 0;
13
13
  const ts_serval_1 = require("@js-soft/ts-serval");
14
14
  const transport_1 = require("@nmshd/transport");
15
- const ConsumptionRequestStatus_1 = require("./ConsumptionRequestStatus");
16
- let ConsumptionRequestStatusLogEntry = class ConsumptionRequestStatusLogEntry extends transport_1.CoreSerializable {
15
+ const LocalRequestStatus_1 = require("./LocalRequestStatus");
16
+ let LocalRequestStatusLogEntry = class LocalRequestStatusLogEntry extends transport_1.CoreSerializable {
17
17
  static from(value) {
18
18
  return this.fromAny(value);
19
19
  }
@@ -22,29 +22,29 @@ __decorate([
22
22
  (0, ts_serval_1.serialize)(),
23
23
  (0, ts_serval_1.validate)(),
24
24
  __metadata("design:type", transport_1.CoreDate)
25
- ], ConsumptionRequestStatusLogEntry.prototype, "createdAt", void 0);
25
+ ], LocalRequestStatusLogEntry.prototype, "createdAt", void 0);
26
26
  __decorate([
27
27
  (0, ts_serval_1.serialize)(),
28
28
  (0, ts_serval_1.validate)(),
29
29
  __metadata("design:type", String)
30
- ], ConsumptionRequestStatusLogEntry.prototype, "oldStatus", void 0);
30
+ ], LocalRequestStatusLogEntry.prototype, "oldStatus", void 0);
31
31
  __decorate([
32
32
  (0, ts_serval_1.serialize)(),
33
33
  (0, ts_serval_1.validate)(),
34
34
  __metadata("design:type", String)
35
- ], ConsumptionRequestStatusLogEntry.prototype, "newStatus", void 0);
35
+ ], LocalRequestStatusLogEntry.prototype, "newStatus", void 0);
36
36
  __decorate([
37
37
  (0, ts_serval_1.serialize)(),
38
38
  (0, ts_serval_1.validate)({ nullable: true }),
39
39
  __metadata("design:type", Object)
40
- ], ConsumptionRequestStatusLogEntry.prototype, "data", void 0);
40
+ ], LocalRequestStatusLogEntry.prototype, "data", void 0);
41
41
  __decorate([
42
42
  (0, ts_serval_1.serialize)(),
43
43
  (0, ts_serval_1.validate)({ nullable: true }),
44
44
  __metadata("design:type", String)
45
- ], ConsumptionRequestStatusLogEntry.prototype, "code", void 0);
46
- ConsumptionRequestStatusLogEntry = __decorate([
47
- (0, ts_serval_1.type)("ConsumptionRequestStatusLogEntry")
48
- ], ConsumptionRequestStatusLogEntry);
49
- exports.ConsumptionRequestStatusLogEntry = ConsumptionRequestStatusLogEntry;
50
- //# sourceMappingURL=ConsumptionRequestStatusLogEntry.js.map
45
+ ], LocalRequestStatusLogEntry.prototype, "code", void 0);
46
+ LocalRequestStatusLogEntry = __decorate([
47
+ (0, ts_serval_1.type)("LocalRequestStatusLogEntry")
48
+ ], LocalRequestStatusLogEntry);
49
+ exports.LocalRequestStatusLogEntry = LocalRequestStatusLogEntry;
50
+ //# sourceMappingURL=LocalRequestStatusLogEntry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LocalRequestStatusLogEntry.js","sourceRoot":"","sources":["../../../../src/modules/requests/local/LocalRequestStatusLogEntry.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA8D;AAC9D,gDAA2F;AAC3F,6DAAyD;AAWzD,IAAa,0BAA0B,GAAvC,MAAa,0BAA2B,SAAQ,4BAAgB;IAqBrD,MAAM,CAAC,IAAI,CAAC,KAAkC;QACjD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;CACJ,CAAA;AArBG;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACO,oBAAQ;6DAAA;AAI1B;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;;6DACyB;AAIpC;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;;6DACyB;AAIpC;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;wDACT;AAIpB;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;wDACT;AAnBX,0BAA0B;IADtC,IAAA,gBAAI,EAAC,4BAA4B,CAAC;GACtB,0BAA0B,CAwBtC;AAxBY,gEAA0B"}
@@ -0,0 +1,22 @@
1
+ import { IResponse, Response } from "@nmshd/content";
2
+ import { CoreDate, CoreId, CoreSerializable, ICoreDate, ICoreId, ICoreSerializable } from "@nmshd/transport";
3
+ export interface ILocalResponseSource extends ICoreSerializable {
4
+ type: "Message" | "RelationshipChange";
5
+ reference: ICoreId;
6
+ }
7
+ export declare class LocalResponseSource extends CoreSerializable implements ILocalResponseSource {
8
+ type: "Message" | "RelationshipChange";
9
+ reference: CoreId;
10
+ static from(value: ILocalResponseSource): LocalResponseSource;
11
+ }
12
+ export interface ILocalResponse extends ICoreSerializable {
13
+ createdAt: ICoreDate;
14
+ content: IResponse;
15
+ source?: ILocalResponseSource;
16
+ }
17
+ export declare class LocalResponse extends CoreSerializable implements ILocalResponse {
18
+ createdAt: CoreDate;
19
+ content: Response;
20
+ source?: LocalResponseSource;
21
+ static from(value: ILocalResponse): LocalResponse;
22
+ }
@@ -9,11 +9,11 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.ConsumptionResponse = exports.ConsumptionResponseSource = void 0;
12
+ exports.LocalResponse = exports.LocalResponseSource = void 0;
13
13
  const ts_serval_1 = require("@js-soft/ts-serval");
14
14
  const content_1 = require("@nmshd/content");
15
15
  const transport_1 = require("@nmshd/transport");
16
- let ConsumptionResponseSource = class ConsumptionResponseSource extends transport_1.CoreSerializable {
16
+ let LocalResponseSource = class LocalResponseSource extends transport_1.CoreSerializable {
17
17
  static from(value) {
18
18
  return this.fromAny(value);
19
19
  }
@@ -22,17 +22,17 @@ __decorate([
22
22
  (0, ts_serval_1.serialize)(),
23
23
  (0, ts_serval_1.validate)(),
24
24
  __metadata("design:type", String)
25
- ], ConsumptionResponseSource.prototype, "type", void 0);
25
+ ], LocalResponseSource.prototype, "type", void 0);
26
26
  __decorate([
27
27
  (0, ts_serval_1.serialize)(),
28
28
  (0, ts_serval_1.validate)(),
29
29
  __metadata("design:type", transport_1.CoreId)
30
- ], ConsumptionResponseSource.prototype, "reference", void 0);
31
- ConsumptionResponseSource = __decorate([
32
- (0, ts_serval_1.type)("ConsumptionResponseSource")
33
- ], ConsumptionResponseSource);
34
- exports.ConsumptionResponseSource = ConsumptionResponseSource;
35
- let ConsumptionResponse = class ConsumptionResponse extends transport_1.CoreSerializable {
30
+ ], LocalResponseSource.prototype, "reference", void 0);
31
+ LocalResponseSource = __decorate([
32
+ (0, ts_serval_1.type)("LocalResponseSource")
33
+ ], LocalResponseSource);
34
+ exports.LocalResponseSource = LocalResponseSource;
35
+ let LocalResponse = class LocalResponse extends transport_1.CoreSerializable {
36
36
  static from(value) {
37
37
  return this.fromAny(value);
38
38
  }
@@ -41,19 +41,19 @@ __decorate([
41
41
  (0, ts_serval_1.serialize)(),
42
42
  (0, ts_serval_1.validate)(),
43
43
  __metadata("design:type", transport_1.CoreDate)
44
- ], ConsumptionResponse.prototype, "createdAt", void 0);
44
+ ], LocalResponse.prototype, "createdAt", void 0);
45
45
  __decorate([
46
46
  (0, ts_serval_1.serialize)(),
47
47
  (0, ts_serval_1.validate)(),
48
48
  __metadata("design:type", content_1.Response)
49
- ], ConsumptionResponse.prototype, "content", void 0);
49
+ ], LocalResponse.prototype, "content", void 0);
50
50
  __decorate([
51
51
  (0, ts_serval_1.serialize)(),
52
52
  (0, ts_serval_1.validate)({ nullable: true }),
53
- __metadata("design:type", ConsumptionResponseSource)
54
- ], ConsumptionResponse.prototype, "source", void 0);
55
- ConsumptionResponse = __decorate([
56
- (0, ts_serval_1.type)("ConsumptionResponse")
57
- ], ConsumptionResponse);
58
- exports.ConsumptionResponse = ConsumptionResponse;
59
- //# sourceMappingURL=ConsumptionResponse.js.map
53
+ __metadata("design:type", LocalResponseSource)
54
+ ], LocalResponse.prototype, "source", void 0);
55
+ LocalResponse = __decorate([
56
+ (0, ts_serval_1.type)("LocalResponse")
57
+ ], LocalResponse);
58
+ exports.LocalResponse = LocalResponse;
59
+ //# sourceMappingURL=LocalResponse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LocalResponse.js","sourceRoot":"","sources":["../../../../src/modules/requests/local/LocalResponse.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA8D;AAC9D,4CAAoD;AACpD,gDAA4G;AAQ5G,IAAa,mBAAmB,GAAhC,MAAa,mBAAoB,SAAQ,4BAAgB;IAS9C,MAAM,CAAC,IAAI,CAAC,KAA2B;QAC1C,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;CACJ,CAAA;AATG;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;;iDACkC;AAI7C;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACO,kBAAM;sDAAA;AAPf,mBAAmB;IAD/B,IAAA,gBAAI,EAAC,qBAAqB,CAAC;GACf,mBAAmB,CAY/B;AAZY,kDAAmB;AAqBhC,IAAa,aAAa,GAA1B,MAAa,aAAc,SAAQ,4BAAgB;IAaxC,MAAM,CAAC,IAAI,CAAC,KAAqB;QACpC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;CACJ,CAAA;AAbG;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACO,oBAAQ;gDAAA;AAI1B;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;8BACK,kBAAQ;8CAAA;AAIxB;IAFC,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACb,mBAAmB;6CAAA;AAX1B,aAAa;IADzB,IAAA,gBAAI,EAAC,eAAe,CAAC;GACT,aAAa,CAgBzB;AAhBY,sCAAa"}
@@ -3,33 +3,32 @@ import { ConsumptionBaseController } from "../../../consumption";
3
3
  import { ConsumptionController } from "../../../consumption/ConsumptionController";
4
4
  import { RequestItemProcessorRegistry } from "../itemProcessors/RequestItemProcessorRegistry";
5
5
  import { ValidationResult } from "../itemProcessors/ValidationResult";
6
- import { ConsumptionRequest } from "../local/ConsumptionRequest";
6
+ import { LocalRequest } from "../local/LocalRequest";
7
7
  import { ICompleteOugoingRequestParameters } from "./completeOutgoingRequest/CompleteOutgoingRequestParameters";
8
8
  import { ICreateOutgoingRequestFromRelationshipCreationChangeParameters } from "./createFromRelationshipCreationChange/CreateOutgoingRequestFromRelationshipCreationChangeParameters";
9
9
  import { ICreateOutgoingRequestParameters } from "./createOutgoingRequest/CreateOutgoingRequestParameters";
10
10
  import { ISentOutgoingRequestParameters } from "./sentOutgoingRequest/SentOutgoingRequestParameters";
11
11
  export declare class OutgoingRequestsController extends ConsumptionBaseController {
12
- readonly consumptionRequests: SynchronizedCollection;
13
- readonly processorRegistry: RequestItemProcessorRegistry;
12
+ private readonly consumptionRequests;
13
+ private readonly processorRegistry;
14
14
  constructor(consumptionRequests: SynchronizedCollection, processorRegistry: RequestItemProcessorRegistry, parent: ConsumptionController);
15
- init(): Promise<OutgoingRequestsController>;
16
15
  canCreate(params: ICreateOutgoingRequestParameters): Promise<ValidationResult>;
17
16
  private canCreateItems;
18
17
  private canCreateItem;
19
18
  private canCreateItemGroup;
20
- create(params: ICreateOutgoingRequestParameters): Promise<ConsumptionRequest>;
19
+ create(params: ICreateOutgoingRequestParameters): Promise<LocalRequest>;
21
20
  private _create;
22
- createFromRelationshipCreationChange(params: ICreateOutgoingRequestFromRelationshipCreationChangeParameters): Promise<ConsumptionRequest>;
23
- sent(params: ISentOutgoingRequestParameters): Promise<ConsumptionRequest>;
21
+ createFromRelationshipCreationChange(params: ICreateOutgoingRequestFromRelationshipCreationChangeParameters): Promise<LocalRequest>;
22
+ sent(params: ISentOutgoingRequestParameters): Promise<LocalRequest>;
24
23
  private _sent;
25
24
  private getSourceType;
26
- complete(params: ICompleteOugoingRequestParameters): Promise<ConsumptionRequest>;
25
+ complete(params: ICompleteOugoingRequestParameters): Promise<LocalRequest>;
27
26
  private _complete;
28
27
  private canComplete;
29
28
  private applyItems;
30
29
  private applyItem;
31
- getOutgoingRequests(query?: any): Promise<ConsumptionRequest[]>;
32
- getOutgoingRequest(id: ICoreId): Promise<ConsumptionRequest | undefined>;
30
+ getOutgoingRequests(query?: any): Promise<LocalRequest[]>;
31
+ getOutgoingRequest(id: ICoreId): Promise<LocalRequest | undefined>;
33
32
  private getOrThrow;
34
33
  private update;
35
34
  private assertRequestStatus;