@nmshd/consumption 2.0.0-alpha.2 → 2.0.0-alpha.20

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 (148) hide show
  1. package/dist/buildInformation.js +5 -5
  2. package/dist/consumption/ConsumptionBaseController.d.ts +1 -1
  3. package/dist/consumption/ConsumptionController.d.ts +10 -6
  4. package/dist/consumption/ConsumptionController.js +12 -16
  5. package/dist/consumption/ConsumptionController.js.map +1 -1
  6. package/dist/consumption/ConsumptionErrors.d.ts +6 -2
  7. package/dist/consumption/ConsumptionErrors.js +15 -3
  8. package/dist/consumption/ConsumptionErrors.js.map +1 -1
  9. package/dist/consumption/ConsumptionIds.d.ts +2 -5
  10. package/dist/consumption/ConsumptionIds.js +4 -7
  11. package/dist/consumption/ConsumptionIds.js.map +1 -1
  12. package/dist/index.d.ts +1 -1
  13. package/dist/index.js +1 -1
  14. package/dist/index.js.map +1 -1
  15. package/dist/modules/attributes/ConsumptionAttributesController.d.ts +21 -11
  16. package/dist/modules/attributes/ConsumptionAttributesController.js +103 -58
  17. package/dist/modules/attributes/ConsumptionAttributesController.js.map +1 -1
  18. package/dist/modules/attributes/CreateConsumptionAttributeParams.d.ts +12 -0
  19. package/dist/modules/attributes/CreateConsumptionAttributeParams.js +26 -0
  20. package/dist/modules/attributes/CreateConsumptionAttributeParams.js.map +1 -0
  21. package/dist/modules/attributes/CreatePeerConsumptionAttributeParams.d.ts +22 -0
  22. package/dist/modules/{signatures/SignatureContent.js → attributes/CreatePeerConsumptionAttributeParams.js} +15 -32
  23. package/dist/modules/attributes/CreatePeerConsumptionAttributeParams.js.map +1 -0
  24. package/dist/modules/attributes/CreateRelationshipAttributeParams.d.ts +14 -0
  25. package/dist/modules/attributes/CreateRelationshipAttributeParams.js +40 -0
  26. package/dist/modules/attributes/CreateRelationshipAttributeParams.js.map +1 -0
  27. package/dist/modules/attributes/CreateSharedConsumptionAttributeCopyParams.d.ts +18 -0
  28. package/dist/modules/{relationships/local/RelationshipAttribute.js → attributes/CreateSharedConsumptionAttributeCopyParams.js} +13 -17
  29. package/dist/modules/attributes/CreateSharedConsumptionAttributeCopyParams.js.map +1 -0
  30. package/dist/modules/attributes/GetIdentityAttributesParams.d.ts +12 -0
  31. package/dist/modules/{requests/incoming/decide/RejectRequestParameters.js → attributes/GetIdentityAttributesParams.js} +14 -9
  32. package/dist/modules/attributes/GetIdentityAttributesParams.js.map +1 -0
  33. package/dist/modules/attributes/GetRelationshipAttributesParams.d.ts +12 -0
  34. package/dist/modules/attributes/GetRelationshipAttributesParams.js +26 -0
  35. package/dist/modules/attributes/GetRelationshipAttributesParams.js.map +1 -0
  36. package/dist/modules/attributes/SucceedConsumptionAttributeParams.d.ts +16 -0
  37. package/dist/modules/attributes/SucceedConsumptionAttributeParams.js +32 -0
  38. package/dist/modules/attributes/SucceedConsumptionAttributeParams.js.map +1 -0
  39. package/dist/modules/attributes/UpdateConsumptionAttributeParams.d.ts +16 -0
  40. package/dist/modules/attributes/UpdateConsumptionAttributeParams.js +32 -0
  41. package/dist/modules/attributes/UpdateConsumptionAttributeParams.js.map +1 -0
  42. package/dist/modules/attributes/local/ConsumptionAttribute.d.ts +19 -10
  43. package/dist/modules/attributes/local/ConsumptionAttribute.js +20 -14
  44. package/dist/modules/attributes/local/ConsumptionAttribute.js.map +1 -1
  45. package/dist/modules/attributes/local/ConsumptionAttributeShareInfo.d.ts +17 -0
  46. package/dist/modules/attributes/local/ConsumptionAttributeShareInfo.js +36 -0
  47. package/dist/modules/attributes/local/ConsumptionAttributeShareInfo.js.map +1 -0
  48. package/dist/modules/attributes/local/QueryTranslator.d.ts +3 -0
  49. package/dist/modules/attributes/local/QueryTranslator.js +110 -0
  50. package/dist/modules/attributes/local/QueryTranslator.js.map +1 -0
  51. package/dist/modules/drafts/DraftsController.d.ts +1 -1
  52. package/dist/modules/drafts/DraftsController.js.map +1 -1
  53. package/dist/modules/index.d.ts +17 -10
  54. package/dist/modules/index.js +17 -10
  55. package/dist/modules/index.js.map +1 -1
  56. package/dist/modules/requests/incoming/DecideRequestParametersValidator.d.ts +6 -2
  57. package/dist/modules/requests/incoming/DecideRequestParametersValidator.js +55 -1
  58. package/dist/modules/requests/incoming/DecideRequestParametersValidator.js.map +1 -1
  59. package/dist/modules/requests/incoming/IncomingRequestsController.d.ts +11 -12
  60. package/dist/modules/requests/incoming/IncomingRequestsController.js +55 -51
  61. package/dist/modules/requests/incoming/IncomingRequestsController.js.map +1 -1
  62. package/dist/modules/requests/incoming/decide/AcceptRequestItemParameters.d.ts +2 -6
  63. package/dist/modules/requests/incoming/decide/AcceptRequestItemParameters.js +0 -18
  64. package/dist/modules/requests/incoming/decide/AcceptRequestItemParameters.js.map +1 -1
  65. package/dist/modules/requests/incoming/decide/DecideRequestItemGroupParameters.d.ts +4 -8
  66. package/dist/modules/requests/incoming/decide/DecideRequestItemGroupParameters.js +5 -25
  67. package/dist/modules/requests/incoming/decide/DecideRequestItemGroupParameters.js.map +1 -1
  68. package/dist/modules/requests/incoming/decide/DecideRequestItemParameters.d.ts +4 -5
  69. package/dist/modules/requests/incoming/decide/DecideRequestItemParameters.js +4 -4
  70. package/dist/modules/requests/incoming/decide/DecideRequestItemParameters.js.map +1 -1
  71. package/dist/modules/requests/incoming/decide/DecideRequestParameters.d.ts +5 -11
  72. package/dist/modules/requests/incoming/decide/DecideRequestParameters.js +0 -27
  73. package/dist/modules/requests/incoming/decide/DecideRequestParameters.js.map +1 -1
  74. package/dist/modules/requests/incoming/decide/InternalDecideRequestParameters.d.ts +15 -0
  75. package/dist/modules/{relationships/local/RelationshipTheme.js → requests/incoming/decide/InternalDecideRequestParameters.js} +16 -20
  76. package/dist/modules/requests/incoming/decide/InternalDecideRequestParameters.js.map +1 -0
  77. package/dist/modules/requests/incoming/decide/RejectRequestItemParameters.d.ts +2 -8
  78. package/dist/modules/requests/incoming/decide/RejectRequestItemParameters.js +0 -31
  79. package/dist/modules/requests/incoming/decide/RejectRequestItemParameters.js.map +1 -1
  80. package/dist/modules/requests/itemProcessors/AbstractRequestItemProcessor.d.ts +19 -0
  81. package/dist/modules/requests/itemProcessors/AbstractRequestItemProcessor.js +10 -0
  82. package/dist/modules/requests/itemProcessors/AbstractRequestItemProcessor.js.map +1 -0
  83. package/dist/modules/requests/itemProcessors/GenericRequestItemProcessor.d.ts +12 -11
  84. package/dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js +10 -8
  85. package/dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js.map +1 -1
  86. package/dist/modules/requests/itemProcessors/IRequestItemProcessor.d.ts +10 -9
  87. package/dist/modules/requests/itemProcessors/ProcessorConstructor.d.ts +3 -0
  88. package/dist/modules/requests/itemProcessors/ProcessorConstructor.js +3 -0
  89. package/dist/modules/requests/itemProcessors/ProcessorConstructor.js.map +1 -0
  90. package/dist/modules/requests/itemProcessors/RequestItemConstructor.d.ts +2 -0
  91. package/dist/modules/requests/itemProcessors/RequestItemConstructor.js +3 -0
  92. package/dist/modules/requests/itemProcessors/RequestItemConstructor.js.map +1 -0
  93. package/dist/modules/requests/itemProcessors/RequestItemProcessorRegistry.d.ts +8 -3
  94. package/dist/modules/requests/itemProcessors/RequestItemProcessorRegistry.js +6 -2
  95. package/dist/modules/requests/itemProcessors/RequestItemProcessorRegistry.js.map +1 -1
  96. package/dist/modules/requests/itemProcessors/ValidationResult.d.ts +4 -4
  97. package/dist/modules/requests/itemProcessors/ValidationResult.js +6 -6
  98. package/dist/modules/requests/itemProcessors/ValidationResult.js.map +1 -1
  99. package/dist/modules/requests/itemProcessors/createAttribute/AcceptCreateAttributeRequestItemParameters.d.ts +7 -0
  100. package/dist/modules/requests/{incoming/decide/AcceptRequestParameters.js → itemProcessors/createAttribute/AcceptCreateAttributeRequestItemParameters.js} +7 -8
  101. package/dist/modules/requests/itemProcessors/createAttribute/AcceptCreateAttributeRequestItemParameters.js.map +1 -0
  102. package/dist/modules/requests/itemProcessors/createAttribute/CreateAttributeRequestItemProcessor.d.ts +10 -0
  103. package/dist/modules/requests/itemProcessors/createAttribute/CreateAttributeRequestItemProcessor.js +48 -0
  104. package/dist/modules/requests/itemProcessors/createAttribute/CreateAttributeRequestItemProcessor.js.map +1 -0
  105. package/dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.d.ts +14 -0
  106. package/dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.js +47 -0
  107. package/dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.js.map +1 -0
  108. package/dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.d.ts +12 -0
  109. package/dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js +77 -0
  110. package/dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js.map +1 -0
  111. package/dist/modules/requests/outgoing/OutgoingRequestsController.d.ts +6 -6
  112. package/dist/modules/requests/outgoing/OutgoingRequestsController.js +34 -21
  113. package/dist/modules/requests/outgoing/OutgoingRequestsController.js.map +1 -1
  114. package/dist/modules/settings/SettingsController.d.ts +1 -1
  115. package/dist/modules/settings/SettingsController.js.map +1 -1
  116. package/lib-web/nmshd.consumption.js +10041 -1261
  117. package/lib-web/nmshd.consumption.js.map +1 -1
  118. package/lib-web/nmshd.consumption.min.js +1 -1
  119. package/lib-web/nmshd.consumption.min.js.map +1 -1
  120. package/package.json +23 -19
  121. package/dist/modules/relationships/RelationshipInfoController.d.ts +0 -15
  122. package/dist/modules/relationships/RelationshipInfoController.js +0 -61
  123. package/dist/modules/relationships/RelationshipInfoController.js.map +0 -1
  124. package/dist/modules/relationships/RelationshipInfoUtil.d.ts +0 -15
  125. package/dist/modules/relationships/RelationshipInfoUtil.js +0 -219
  126. package/dist/modules/relationships/RelationshipInfoUtil.js.map +0 -1
  127. package/dist/modules/relationships/local/RelationshipAttribute.d.ts +0 -14
  128. package/dist/modules/relationships/local/RelationshipAttribute.js.map +0 -1
  129. package/dist/modules/relationships/local/RelationshipInfo.d.ts +0 -27
  130. package/dist/modules/relationships/local/RelationshipInfo.js +0 -97
  131. package/dist/modules/relationships/local/RelationshipInfo.js.map +0 -1
  132. package/dist/modules/relationships/local/RelationshipTheme.d.ts +0 -14
  133. package/dist/modules/relationships/local/RelationshipTheme.js.map +0 -1
  134. package/dist/modules/requests/incoming/decide/AcceptRequestParameters.d.ts +0 -6
  135. package/dist/modules/requests/incoming/decide/AcceptRequestParameters.js.map +0 -1
  136. package/dist/modules/requests/incoming/decide/RejectRequestParameters.d.ts +0 -6
  137. package/dist/modules/requests/incoming/decide/RejectRequestParameters.js.map +0 -1
  138. package/dist/modules/sharedItems/SharedItemsController.d.ts +0 -14
  139. package/dist/modules/sharedItems/SharedItemsController.js +0 -40
  140. package/dist/modules/sharedItems/SharedItemsController.js.map +0 -1
  141. package/dist/modules/sharedItems/local/SharedItem.d.ts +0 -31
  142. package/dist/modules/sharedItems/local/SharedItem.js +0 -100
  143. package/dist/modules/sharedItems/local/SharedItem.js.map +0 -1
  144. package/dist/modules/signatures/Signature.d.ts +0 -16
  145. package/dist/modules/signatures/Signature.js +0 -56
  146. package/dist/modules/signatures/Signature.js.map +0 -1
  147. package/dist/modules/signatures/SignatureContent.d.ts +0 -21
  148. package/dist/modules/signatures/SignatureContent.js.map +0 -1
@@ -6,11 +6,11 @@ const content_1 = require("@nmshd/content");
6
6
  const crypto_1 = require("@nmshd/crypto");
7
7
  const transport_1 = require("@nmshd/transport");
8
8
  exports.buildInformation = {
9
- version: "2.0.0-alpha.2",
10
- build: "20",
11
- date: "2022-04-25T06:55:50+00:00",
12
- commit: "c2f7364d4aeeb3e31db27d69c7a1bf942debc6a5",
13
- dependencies: {},
9
+ version: "2.0.0-alpha.20",
10
+ build: "38",
11
+ date: "2022-06-03T14:09:16+00:00",
12
+ commit: "217c674042d281ad67bd13607f6307b9ecebfee9",
13
+ dependencies: {"@js-soft/docdb-querytranslator":"^1.0.1","ts-simple-nameof":"^1.3.1"},
14
14
  libraries: {
15
15
  transport: transport_1.buildInformation,
16
16
  crypto: crypto_1.buildInformation,
@@ -8,6 +8,6 @@ export declare class ConsumptionBaseController {
8
8
  get log(): ILogger;
9
9
  get parent(): ConsumptionController;
10
10
  constructor(controllerName: ConsumptionControllerName, _parent: ConsumptionController);
11
- init(): Promise<ConsumptionBaseController>;
11
+ init(): Promise<this>;
12
12
  protected parseArray<T extends CoreSerializable | CoreSerializable>(values: Object[], type: new () => T): Promise<T[]>;
13
13
  }
@@ -1,6 +1,11 @@
1
1
  import { AccountController, Transport } from "@nmshd/transport";
2
- import { ConsumptionAttributesController, DraftsController, OutgoingRequestsController, RelationshipInfoController, SettingsController, SharedItemsController } from "../modules";
2
+ import { ConsumptionAttributesController } from "../modules/attributes/ConsumptionAttributesController";
3
+ import { DraftsController } from "../modules/drafts/DraftsController";
3
4
  import { IncomingRequestsController } from "../modules/requests/incoming/IncomingRequestsController";
5
+ import { ProcessorConstructor } from "../modules/requests/itemProcessors/ProcessorConstructor";
6
+ import { RequestItemConstructor } from "../modules/requests/itemProcessors/RequestItemConstructor";
7
+ import { OutgoingRequestsController } from "../modules/requests/outgoing/OutgoingRequestsController";
8
+ import { SettingsController } from "../modules/settings/SettingsController";
4
9
  export declare class ConsumptionController {
5
10
  readonly transport: Transport;
6
11
  readonly accountController: AccountController;
@@ -15,9 +20,8 @@ export declare class ConsumptionController {
15
20
  get incomingRequests(): IncomingRequestsController;
16
21
  private _settings;
17
22
  get settings(): SettingsController;
18
- private _sharedItems;
19
- get sharedItems(): SharedItemsController;
20
- private _relationshipInfo;
21
- get relationshipInfo(): RelationshipInfoController;
22
- init(): Promise<ConsumptionController>;
23
+ init(requestItemProcessors?: {
24
+ processorConstructor: ProcessorConstructor;
25
+ itemConstructor: RequestItemConstructor;
26
+ }[]): Promise<ConsumptionController>;
23
27
  }
@@ -1,8 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ConsumptionController = void 0;
4
- const modules_1 = require("../modules");
4
+ const ConsumptionAttributesController_1 = require("../modules/attributes/ConsumptionAttributesController");
5
+ const DraftsController_1 = require("../modules/drafts/DraftsController");
5
6
  const IncomingRequestsController_1 = require("../modules/requests/incoming/IncomingRequestsController");
7
+ const RequestItemProcessorRegistry_1 = require("../modules/requests/itemProcessors/RequestItemProcessorRegistry");
8
+ const OutgoingRequestsController_1 = require("../modules/requests/outgoing/OutgoingRequestsController");
9
+ const SettingsController_1 = require("../modules/settings/SettingsController");
6
10
  class ConsumptionController {
7
11
  constructor(transport, accountController) {
8
12
  this.transport = transport;
@@ -23,21 +27,13 @@ class ConsumptionController {
23
27
  get settings() {
24
28
  return this._settings;
25
29
  }
26
- get sharedItems() {
27
- return this._sharedItems;
28
- }
29
- get relationshipInfo() {
30
- return this._relationshipInfo;
31
- }
32
- async init() {
33
- this._attributes = await new modules_1.ConsumptionAttributesController(this).init();
34
- this._drafts = await new modules_1.DraftsController(this).init();
35
- const processorRegistry = new modules_1.RequestItemProcessorRegistry();
36
- this._outgoingRequests = await new modules_1.OutgoingRequestsController(this, processorRegistry).init();
37
- this._incomingRequests = await new IncomingRequestsController_1.IncomingRequestsController(this, processorRegistry).init();
38
- this._settings = await new modules_1.SettingsController(this).init();
39
- this._sharedItems = await new modules_1.SharedItemsController(this).init();
40
- this._relationshipInfo = await new modules_1.RelationshipInfoController(this).init();
30
+ async init(requestItemProcessors = []) {
31
+ this._attributes = await new ConsumptionAttributesController_1.ConsumptionAttributesController(this).init();
32
+ this._drafts = await new DraftsController_1.DraftsController(this).init();
33
+ const processorRegistry = new RequestItemProcessorRegistry_1.RequestItemProcessorRegistry(this, requestItemProcessors);
34
+ this._outgoingRequests = await new OutgoingRequestsController_1.OutgoingRequestsController(await this.accountController.getSynchronizedCollection("Requests"), processorRegistry, this).init();
35
+ this._incomingRequests = await new IncomingRequestsController_1.IncomingRequestsController(await this.accountController.getSynchronizedCollection("Requests"), processorRegistry, this).init();
36
+ this._settings = await new SettingsController_1.SettingsController(this).init();
41
37
  return this;
42
38
  }
43
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ConsumptionController.js","sourceRoot":"","sources":["../../src/consumption/ConsumptionController.ts"],"names":[],"mappings":";;;AACA,wCAQmB;AACnB,wGAAoG;AAEpG,MAAa,qBAAqB;IAC9B,YAAmC,SAAoB,EAAkB,iBAAoC;QAA1E,cAAS,GAAT,SAAS,CAAW;QAAkB,sBAAiB,GAAjB,iBAAiB,CAAmB;IAAG,CAAC;IAGjH,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,WAAW,CAAA;IAC3B,CAAC;IAGD,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,OAAO,CAAA;IACvB,CAAC;IAGD,IAAW,gBAAgB;QACvB,OAAO,IAAI,CAAC,iBAAiB,CAAA;IACjC,CAAC;IAGD,IAAW,gBAAgB;QACvB,OAAO,IAAI,CAAC,iBAAiB,CAAA;IACjC,CAAC;IAGD,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,SAAS,CAAA;IACzB,CAAC;IAGD,IAAW,WAAW;QAClB,OAAO,IAAI,CAAC,YAAY,CAAA;IAC5B,CAAC;IAGD,IAAW,gBAAgB;QACvB,OAAO,IAAI,CAAC,iBAAiB,CAAA;IACjC,CAAC;IAEM,KAAK,CAAC,IAAI;QACb,IAAI,CAAC,WAAW,GAAG,MAAM,IAAI,yCAA+B,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QACzE,IAAI,CAAC,OAAO,GAAG,MAAM,IAAI,0BAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QACtD,MAAM,iBAAiB,GAAG,IAAI,sCAA4B,EAAE,CAAA;QAC5D,IAAI,CAAC,iBAAiB,GAAG,MAAM,IAAI,oCAA0B,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC,IAAI,EAAE,CAAA;QAC7F,IAAI,CAAC,iBAAiB,GAAG,MAAM,IAAI,uDAA0B,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC,IAAI,EAAE,CAAA;QAC7F,IAAI,CAAC,SAAS,GAAG,MAAM,IAAI,4BAAkB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QAC1D,IAAI,CAAC,YAAY,GAAG,MAAM,IAAI,+BAAqB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QAChE,IAAI,CAAC,iBAAiB,GAAG,MAAM,IAAI,oCAA0B,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QAC1E,OAAO,IAAI,CAAA;IACf,CAAC;CACJ;AAjDD,sDAiDC"}
1
+ {"version":3,"file":"ConsumptionController.js","sourceRoot":"","sources":["../../src/consumption/ConsumptionController.ts"],"names":[],"mappings":";;;AACA,2GAAuG;AACvG,yEAAqE;AACrE,wGAAoG;AAGpG,kHAA8G;AAC9G,wGAAoG;AACpG,+EAA2E;AAE3E,MAAa,qBAAqB;IAC9B,YAAmC,SAAoB,EAAkB,iBAAoC;QAA1E,cAAS,GAAT,SAAS,CAAW;QAAkB,sBAAiB,GAAjB,iBAAiB,CAAmB;IAAG,CAAC;IAGjH,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,WAAW,CAAA;IAC3B,CAAC;IAGD,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,OAAO,CAAA;IACvB,CAAC;IAGD,IAAW,gBAAgB;QACvB,OAAO,IAAI,CAAC,iBAAiB,CAAA;IACjC,CAAC;IAGD,IAAW,gBAAgB;QACvB,OAAO,IAAI,CAAC,iBAAiB,CAAA;IACjC,CAAC;IAGD,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,SAAS,CAAA;IACzB,CAAC;IAEM,KAAK,CAAC,IAAI,CACb,wBAGM,EAAE;QAER,IAAI,CAAC,WAAW,GAAG,MAAM,IAAI,iEAA+B,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QACzE,IAAI,CAAC,OAAO,GAAG,MAAM,IAAI,mCAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QACtD,MAAM,iBAAiB,GAAG,IAAI,2DAA4B,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAA;QACvF,IAAI,CAAC,iBAAiB,GAAG,MAAM,IAAI,uDAA0B,CACzD,MAAM,IAAI,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,UAAU,CAAC,EAClE,iBAAiB,EACjB,IAAI,CACP,CAAC,IAAI,EAAE,CAAA;QACR,IAAI,CAAC,iBAAiB,GAAG,MAAM,IAAI,uDAA0B,CACzD,MAAM,IAAI,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,UAAU,CAAC,EAClE,iBAAiB,EACjB,IAAI,CACP,CAAC,IAAI,EAAE,CAAA;QACR,IAAI,CAAC,SAAS,GAAG,MAAM,IAAI,uCAAkB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QAC1D,OAAO,IAAI,CAAA;IACf,CAAC;CACJ;AAlDD,sDAkDC"}
@@ -1,9 +1,13 @@
1
1
  import { CoreError } from "@nmshd/transport";
2
2
  declare class Attributes {
3
- attributeExists(name: string): CoreError;
3
+ attributeExists(id: string): CoreError;
4
+ predecessorNotFound(id: string): CoreError;
4
5
  }
5
6
  declare class Requests {
6
- requestsExists(id: string): CoreError;
7
+ requestExists(id: string): CoreError;
8
+ unexpectedErrorDuringRequestItemProcessing(error: any): CoreError;
9
+ cannotSendCreateAttributeRequestItemsWithIdentityAttributes(): CoreError;
10
+ canOnlyShareOwnAttributes(): CoreError;
7
11
  }
8
12
  declare class RelationshipInfo {
9
13
  relationshipInfoExists(relationshipId: string): CoreError;
@@ -3,14 +3,26 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ConsumptionErrors = void 0;
4
4
  const transport_1 = require("@nmshd/transport");
5
5
  class Attributes {
6
- attributeExists(name) {
7
- return new transport_1.CoreError("error.consumption.attributes.attributeExists", `Attribute with name ${name} already exists. Please use succeed instead.`);
6
+ attributeExists(id) {
7
+ return new transport_1.CoreError("error.consumption.attributes.attributeExists", `Attribute with id '${id}' already exists. Please use succeed instead.`);
8
+ }
9
+ predecessorNotFound(id) {
10
+ return new transport_1.CoreError("error.consumption.attributes.predecessorNotFound", `Attribute with id '${id}' does not exist. Please use create instead.`);
8
11
  }
9
12
  }
10
13
  class Requests {
11
- requestsExists(id) {
14
+ requestExists(id) {
12
15
  return new transport_1.CoreError("error.consumption.requests.requestExists", `Request with id ${id} already exists and can't be created.`);
13
16
  }
17
+ unexpectedErrorDuringRequestItemProcessing(error) {
18
+ return new transport_1.CoreError("error.consumption.requests.unexpectedErrorDuringRequestItemProcessing", error instanceof Error ? error.message : "Unknown error: '${JSON.stringify(e)'");
19
+ }
20
+ cannotSendCreateAttributeRequestItemsWithIdentityAttributes() {
21
+ return new transport_1.CoreError("error.consumption.requests.cannotSendCreateAttributeRequestItemsWithIdentityAttributes", "You cannot send a CreateAttributeRequestItem with an Identity Attribute. Consider using a ProposeAttributeRequestItem instead.");
22
+ }
23
+ canOnlyShareOwnAttributes() {
24
+ return new transport_1.CoreError("error.consumption.requests.canOnlyShareOwnAttributes", "The given Attribute belongs to someone else. You can only share own Attributes.");
25
+ }
14
26
  }
15
27
  class RelationshipInfo {
16
28
  relationshipInfoExists(relationshipId) {
@@ -1 +1 @@
1
- {"version":3,"file":"ConsumptionErrors.js","sourceRoot":"","sources":["../../src/consumption/ConsumptionErrors.ts"],"names":[],"mappings":";;;AAAA,gDAA4C;AAE5C,MAAM,UAAU;IACL,eAAe,CAAC,IAAY;QAC/B,OAAO,IAAI,qBAAS,CAChB,8CAA8C,EAC9C,uBAAuB,IAAI,8CAA8C,CAC5E,CAAA;IACL,CAAC;CACJ;AAED,MAAM,QAAQ;IACH,cAAc,CAAC,EAAU;QAC5B,OAAO,IAAI,qBAAS,CAChB,0CAA0C,EAC1C,mBAAmB,EAAE,uCAAuC,CAC/D,CAAA;IACL,CAAC;CACJ;AAED,MAAM,gBAAgB;IACX,sBAAsB,CAAC,cAAsB;QAChD,OAAO,IAAI,qBAAS,CAChB,4DAA4D,EAC5D,qCAAqC,cAAc,kBAAkB,CACxE,CAAA;IACL,CAAC;CACJ;AAED,MAAM,UAAU;IACL,eAAe,CAAC,aAAqB;QACxC,OAAO,IAAI,qBAAS,CAChB,8CAA8C,EAC9C,0BAA0B,aAAa,qCAAqC,CAC/E,CAAA;IACL,CAAC;IAEM,aAAa;QAChB,OAAO,IAAI,qBAAS,CAAC,4CAA4C,EAAE,4CAA4C,CAAC,CAAA;IACpH,CAAC;CACJ;AAED,MAAa,iBAAiB;;AAA9B,8CAKC;AAJiB,4BAAU,GAAG,IAAI,UAAU,EAAE,CAAA;AAC7B,0BAAQ,GAAG,IAAI,QAAQ,EAAE,CAAA;AACzB,kCAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAA;AACzC,4BAAU,GAAG,IAAI,UAAU,EAAE,CAAA"}
1
+ {"version":3,"file":"ConsumptionErrors.js","sourceRoot":"","sources":["../../src/consumption/ConsumptionErrors.ts"],"names":[],"mappings":";;;AAAA,gDAA4C;AAE5C,MAAM,UAAU;IACL,eAAe,CAAC,EAAU;QAC7B,OAAO,IAAI,qBAAS,CAChB,8CAA8C,EAC9C,sBAAsB,EAAE,+CAA+C,CAC1E,CAAA;IACL,CAAC;IACM,mBAAmB,CAAC,EAAU;QACjC,OAAO,IAAI,qBAAS,CAChB,kDAAkD,EAClD,sBAAsB,EAAE,8CAA8C,CACzE,CAAA;IACL,CAAC;CACJ;AAED,MAAM,QAAQ;IACH,aAAa,CAAC,EAAU;QAC3B,OAAO,IAAI,qBAAS,CAChB,0CAA0C,EAC1C,mBAAmB,EAAE,uCAAuC,CAC/D,CAAA;IACL,CAAC;IAEM,0CAA0C,CAAC,KAAU;QACxD,OAAO,IAAI,qBAAS,CAChB,uEAAuE,EACvE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,sCAAsC,CAClF,CAAA;IACL,CAAC;IAEM,2DAA2D;QAC9D,OAAO,IAAI,qBAAS,CAChB,wFAAwF,EACxF,gIAAgI,CACnI,CAAA;IACL,CAAC;IAEM,yBAAyB;QAC5B,OAAO,IAAI,qBAAS,CAChB,sDAAsD,EACtD,iFAAiF,CACpF,CAAA;IACL,CAAC;CACJ;AAED,MAAM,gBAAgB;IACX,sBAAsB,CAAC,cAAsB;QAChD,OAAO,IAAI,qBAAS,CAChB,4DAA4D,EAC5D,qCAAqC,cAAc,kBAAkB,CACxE,CAAA;IACL,CAAC;CACJ;AAED,MAAM,UAAU;IACL,eAAe,CAAC,aAAqB;QACxC,OAAO,IAAI,qBAAS,CAChB,8CAA8C,EAC9C,0BAA0B,aAAa,qCAAqC,CAC/E,CAAA;IACL,CAAC;IAEM,aAAa;QAChB,OAAO,IAAI,qBAAS,CAAC,4CAA4C,EAAE,4CAA4C,CAAC,CAAA;IACpH,CAAC;CACJ;AAED,MAAa,iBAAiB;;AAA9B,8CAKC;AAJiB,4BAAU,GAAG,IAAI,UAAU,EAAE,CAAA;AAC7B,0BAAQ,GAAG,IAAI,QAAQ,EAAE,CAAA;AACzB,kCAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAA;AACzC,4BAAU,GAAG,IAAI,UAAU,EAAE,CAAA"}
@@ -1,10 +1,7 @@
1
1
  import { CoreIdHelper } from "@nmshd/transport";
2
2
  export declare class ConsumptionIds {
3
- static readonly attribute: CoreIdHelper;
4
3
  static readonly draft: CoreIdHelper;
5
- static readonly relationshipInfo: CoreIdHelper;
6
- static readonly sharedItem: CoreIdHelper;
7
- static readonly response: CoreIdHelper;
8
- static readonly request: CoreIdHelper;
9
4
  static readonly setting: CoreIdHelper;
5
+ static readonly attribute: CoreIdHelper;
6
+ static readonly request: CoreIdHelper;
10
7
  }
@@ -5,11 +5,8 @@ const transport_1 = require("@nmshd/transport");
5
5
  class ConsumptionIds {
6
6
  }
7
7
  exports.ConsumptionIds = ConsumptionIds;
8
- ConsumptionIds.attribute = new transport_1.CoreIdHelper("CNSATT");
9
- ConsumptionIds.draft = new transport_1.CoreIdHelper("CNSDRF");
10
- ConsumptionIds.relationshipInfo = new transport_1.CoreIdHelper("CNSRIN");
11
- ConsumptionIds.sharedItem = new transport_1.CoreIdHelper("CNSSIT");
12
- ConsumptionIds.response = new transport_1.CoreIdHelper("CNSRES");
13
- ConsumptionIds.request = new transport_1.CoreIdHelper("CNSREQ");
14
- ConsumptionIds.setting = new transport_1.CoreIdHelper("CNSSET");
8
+ ConsumptionIds.draft = new transport_1.CoreIdHelper("LCLDRF");
9
+ ConsumptionIds.setting = new transport_1.CoreIdHelper("LCLSET");
10
+ ConsumptionIds.attribute = new transport_1.CoreIdHelper("ATT");
11
+ ConsumptionIds.request = new transport_1.CoreIdHelper("REQ");
15
12
  //# sourceMappingURL=ConsumptionIds.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConsumptionIds.js","sourceRoot":"","sources":["../../src/consumption/ConsumptionIds.ts"],"names":[],"mappings":";;;AAAA,gDAA+C;AAE/C,MAAa,cAAc;;AAA3B,wCAQC;AAP0B,wBAAS,GAAG,IAAI,wBAAY,CAAC,QAAQ,CAAC,CAAA;AACtC,oBAAK,GAAG,IAAI,wBAAY,CAAC,QAAQ,CAAC,CAAA;AAClC,+BAAgB,GAAG,IAAI,wBAAY,CAAC,QAAQ,CAAC,CAAA;AAC7C,yBAAU,GAAG,IAAI,wBAAY,CAAC,QAAQ,CAAC,CAAA;AACvC,uBAAQ,GAAG,IAAI,wBAAY,CAAC,QAAQ,CAAC,CAAA;AACrC,sBAAO,GAAG,IAAI,wBAAY,CAAC,QAAQ,CAAC,CAAA;AACpC,sBAAO,GAAG,IAAI,wBAAY,CAAC,QAAQ,CAAC,CAAA"}
1
+ {"version":3,"file":"ConsumptionIds.js","sourceRoot":"","sources":["../../src/consumption/ConsumptionIds.ts"],"names":[],"mappings":";;;AAAA,gDAA+C;AAE/C,MAAa,cAAc;;AAA3B,wCAMC;AAL0B,oBAAK,GAAG,IAAI,wBAAY,CAAC,QAAQ,CAAC,CAAA;AAClC,sBAAO,GAAG,IAAI,wBAAY,CAAC,QAAQ,CAAC,CAAA;AAEpC,wBAAS,GAAG,IAAI,wBAAY,CAAC,KAAK,CAAC,CAAA;AACnC,sBAAO,GAAG,IAAI,wBAAY,CAAC,KAAK,CAAC,CAAA"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  export * from "./buildInformation";
2
+ export * from "./consumption";
2
3
  export * from "./consumption/ConsumptionController";
3
- export * from "./consumption/ConsumptionIds";
4
4
  export * from "./modules";
package/dist/index.js CHANGED
@@ -15,7 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./buildInformation"), exports);
18
+ __exportStar(require("./consumption"), exports);
18
19
  __exportStar(require("./consumption/ConsumptionController"), exports);
19
- __exportStar(require("./consumption/ConsumptionIds"), exports);
20
20
  __exportStar(require("./modules"), exports);
21
21
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAkC;AAClC,sEAAmD;AACnD,+DAA4C;AAC5C,4CAAyB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAkC;AAClC,gDAA6B;AAC7B,sEAAmD;AACnD,4CAAyB"}
@@ -1,22 +1,32 @@
1
- import { CoreDate, CoreId } from "@nmshd/transport";
1
+ import { CoreId } from "@nmshd/transport";
2
2
  import { ConsumptionBaseController } from "../../consumption";
3
3
  import { ConsumptionController } from "../../consumption/ConsumptionController";
4
+ import { ICreateConsumptionAttributeParams } from "./CreateConsumptionAttributeParams";
5
+ import { ICreatePeerConsumptionAttributeParams } from "./CreatePeerConsumptionAttributeParams";
6
+ import { ICreateRelationshipAttributeParams } from "./CreateRelationshipAttributeParams";
7
+ import { ICreateSharedConsumptionAttributeCopyParams } from "./CreateSharedConsumptionAttributeCopyParams";
8
+ import { IGetIdentityAttributesParams } from "./GetIdentityAttributesParams";
9
+ import { IGetRelationshipAttributesParams } from "./GetRelationshipAttributesParams";
4
10
  import { ConsumptionAttribute } from "./local/ConsumptionAttribute";
11
+ import { ISucceedConsumptionAttributeParams } from "./SucceedConsumptionAttributeParams";
12
+ import { IUpdateConsumptionAttributeParams } from "./UpdateConsumptionAttributeParams";
5
13
  export declare class ConsumptionAttributesController extends ConsumptionBaseController {
6
14
  private attributes;
7
15
  constructor(parent: ConsumptionController);
8
- init(): Promise<ConsumptionAttributesController>;
16
+ init(): Promise<this>;
9
17
  checkValid(attribute: ConsumptionAttribute): boolean;
10
18
  findCurrent(attributes: ConsumptionAttribute[]): ConsumptionAttribute | undefined;
11
19
  filterCurrent(attributes: ConsumptionAttribute[]): ConsumptionAttribute[];
12
- getAttribute(id: CoreId): Promise<ConsumptionAttribute | undefined>;
13
- getAttributeByName(name: string): Promise<ConsumptionAttribute | undefined>;
14
- getAttributeHistoryByName(name: string): Promise<ConsumptionAttribute[]>;
15
- getAttributes(query?: any): Promise<ConsumptionAttribute[]>;
16
- getValidAttributes(query?: any): Promise<ConsumptionAttribute[]>;
17
- getAttributesByName(query?: any): Promise<Record<string, ConsumptionAttribute>>;
18
- createAttribute(attribute: ConsumptionAttribute): Promise<ConsumptionAttribute>;
19
- succeedAttribute(attribute: ConsumptionAttribute, validFrom?: CoreDate): Promise<ConsumptionAttribute>;
20
- updateAttribute(attribute: ConsumptionAttribute): Promise<ConsumptionAttribute>;
20
+ getConsumptionAttribute(id: CoreId): Promise<ConsumptionAttribute | undefined>;
21
+ getConsumptionAttributes(query?: any): Promise<ConsumptionAttribute[]>;
22
+ getValidConsumptionAttributes(query?: any): Promise<ConsumptionAttribute[]>;
23
+ executeRelationshipAttributeQuery(params: IGetRelationshipAttributesParams): Promise<ConsumptionAttribute[]>;
24
+ executeIdentityAttributeQuery(params: IGetIdentityAttributesParams): Promise<ConsumptionAttribute[]>;
25
+ createConsumptionAttribute(params: ICreateConsumptionAttributeParams): Promise<ConsumptionAttribute>;
26
+ succeedConsumptionAttribute(params: ISucceedConsumptionAttributeParams): Promise<ConsumptionAttribute>;
27
+ createRelationshipAttribute(params: ICreateRelationshipAttributeParams): Promise<ConsumptionAttribute>;
28
+ createSharedConsumptionAttributeCopy(params: ICreateSharedConsumptionAttributeCopyParams): Promise<ConsumptionAttribute>;
29
+ createPeerConsumptionAttribute(params: ICreatePeerConsumptionAttributeParams): Promise<ConsumptionAttribute>;
30
+ updateConsumptionAttribute(params: IUpdateConsumptionAttributeParams): Promise<ConsumptionAttribute>;
21
31
  deleteAttribute(attribute: ConsumptionAttribute): Promise<void>;
22
32
  }
@@ -4,7 +4,12 @@ exports.ConsumptionAttributesController = void 0;
4
4
  const transport_1 = require("@nmshd/transport");
5
5
  const ts_simple_nameof_1 = require("ts-simple-nameof");
6
6
  const consumption_1 = require("../../consumption");
7
+ const CreateRelationshipAttributeParams_1 = require("./CreateRelationshipAttributeParams");
8
+ const CreateSharedConsumptionAttributeCopyParams_1 = require("./CreateSharedConsumptionAttributeCopyParams");
7
9
  const ConsumptionAttribute_1 = require("./local/ConsumptionAttribute");
10
+ const ConsumptionAttributeShareInfo_1 = require("./local/ConsumptionAttributeShareInfo");
11
+ const QueryTranslator_1 = require("./local/QueryTranslator");
12
+ const SucceedConsumptionAttributeParams_1 = require("./SucceedConsumptionAttributeParams");
8
13
  class ConsumptionAttributesController extends consumption_1.ConsumptionBaseController {
9
14
  constructor(parent) {
10
15
  super(consumption_1.ConsumptionControllerName.ConsumptionAttributesController, parent);
@@ -26,13 +31,13 @@ class ConsumptionAttributesController extends consumption_1.ConsumptionBaseContr
26
31
  }
27
32
  else if (!attribute.content.validFrom &&
28
33
  attribute.content.validTo &&
29
- attribute.content.validTo.isAfter(now)) {
34
+ attribute.content.validTo.isSameOrAfter(now)) {
30
35
  return true;
31
36
  }
32
37
  else if (attribute.content.validFrom &&
33
38
  attribute.content.validTo &&
34
39
  attribute.content.validFrom.isSameOrBefore(now) &&
35
- attribute.content.validTo.isAfter(now)) {
40
+ attribute.content.validTo.isSameOrAfter(now)) {
36
41
  return true;
37
42
  }
38
43
  return false;
@@ -61,77 +66,117 @@ class ConsumptionAttributesController extends consumption_1.ConsumptionBaseContr
61
66
  }
62
67
  return items;
63
68
  }
64
- async getAttribute(id) {
65
- const result = await this.attributes.find({
69
+ async getConsumptionAttribute(id) {
70
+ const result = await this.attributes.findOne({
66
71
  [(0, ts_simple_nameof_1.nameof)((c) => c.id)]: id.toString()
67
72
  });
68
- const attributes = await this.parseArray(result, ConsumptionAttribute_1.ConsumptionAttribute);
69
- return this.findCurrent(attributes);
73
+ if (!result)
74
+ return;
75
+ return ConsumptionAttribute_1.ConsumptionAttribute.from(result);
70
76
  }
71
- async getAttributeByName(name) {
72
- const result = await this.attributes.find({
73
- [`${(0, ts_simple_nameof_1.nameof)((c) => c.content)}.${(0, ts_simple_nameof_1.nameof)((a) => a.name)}`]: name
74
- });
75
- const attributes = await this.parseArray(result, ConsumptionAttribute_1.ConsumptionAttribute);
76
- return this.findCurrent(attributes);
77
+ async getConsumptionAttributes(query) {
78
+ const attributes = await this.attributes.find(query);
79
+ return await this.parseArray(attributes, ConsumptionAttribute_1.ConsumptionAttribute);
77
80
  }
78
- async getAttributeHistoryByName(name) {
79
- const result = await this.attributes.find({
80
- [`${(0, ts_simple_nameof_1.nameof)((c) => c.content)}.${(0, ts_simple_nameof_1.nameof)((a) => a.name)}`]: name
81
- });
82
- const attributes = await this.parseArray(result, ConsumptionAttribute_1.ConsumptionAttribute);
83
- const sorted = attributes.sort((a, b) => {
84
- return a.createdAt.compare(b.createdAt);
85
- });
86
- return sorted;
81
+ async getValidConsumptionAttributes(query) {
82
+ const attributes = await this.attributes.find(query);
83
+ const items = await this.parseArray(attributes, ConsumptionAttribute_1.ConsumptionAttribute);
84
+ return this.filterCurrent(items);
87
85
  }
88
- async getAttributes(query) {
89
- const items = await this.attributes.find(query);
90
- return await this.parseArray(items, ConsumptionAttribute_1.ConsumptionAttribute);
86
+ async executeRelationshipAttributeQuery(params) {
87
+ const queryWithType = params.query;
88
+ queryWithType["attributeType"] = "RelationshipAttribute";
89
+ const dbQuery = QueryTranslator_1.relationshipQueryTranslator.parse(queryWithType);
90
+ const attributes = await this.attributes.find(dbQuery);
91
+ return await this.parseArray(attributes, ConsumptionAttribute_1.ConsumptionAttribute);
91
92
  }
92
- async getValidAttributes(query) {
93
- const docs = await this.attributes.find(query);
94
- const items = await this.parseArray(docs, ConsumptionAttribute_1.ConsumptionAttribute);
95
- return this.filterCurrent(items);
93
+ async executeIdentityAttributeQuery(params) {
94
+ const queryWithType = params.query;
95
+ queryWithType["attributeType"] = "IdentityAttribute";
96
+ const dbQuery = QueryTranslator_1.identityQueryTranslator.parse(queryWithType);
97
+ const attributes = await this.attributes.find(dbQuery);
98
+ return await this.parseArray(attributes, ConsumptionAttribute_1.ConsumptionAttribute);
96
99
  }
97
- async getAttributesByName(query) {
98
- const attributes = await this.getValidAttributes(query);
99
- const mapper = (result, attribute) => {
100
- result[attribute.content.name] = attribute;
101
- return result;
102
- };
103
- return attributes.reduce(mapper, {});
104
- }
105
- async createAttribute(attribute) {
106
- const current = await this.getAttributeByName(attribute.content.name);
107
- if (current) {
108
- throw consumption_1.ConsumptionErrors.attributes.attributeExists(attribute.content.name);
109
- }
110
- await this.attributes.create(attribute);
111
- return attribute;
100
+ async createConsumptionAttribute(params) {
101
+ const consumptionAttribute = await ConsumptionAttribute_1.ConsumptionAttribute.fromAttribute(params.content);
102
+ await this.attributes.create(consumptionAttribute);
103
+ return consumptionAttribute;
112
104
  }
113
- async succeedAttribute(attribute, validFrom) {
114
- const current = await this.getAttributeByName(attribute.content.name);
115
- if (current && !validFrom) {
116
- validFrom = transport_1.CoreDate.utc();
105
+ async succeedConsumptionAttribute(params) {
106
+ const parsedParams = SucceedConsumptionAttributeParams_1.SucceedConsumptionAttributeParams.from(params);
107
+ const current = await this.attributes.findOne({
108
+ [(0, ts_simple_nameof_1.nameof)((c) => c.id)]: params.succeeds.toString()
109
+ });
110
+ if (!current) {
111
+ throw consumption_1.ConsumptionErrors.attributes.predecessorNotFound(parsedParams.succeeds.toString());
112
+ }
113
+ if (!parsedParams.successorContent.validFrom) {
114
+ parsedParams.successorContent.validFrom = transport_1.CoreDate.utc();
117
115
  }
118
- if (current) {
119
- attribute.content.validFrom = validFrom;
120
- current.content.validTo = validFrom;
121
- await this.updateAttribute(current);
116
+ const validFrom = parsedParams.successorContent.validFrom;
117
+ const currentUpdated = ConsumptionAttribute_1.ConsumptionAttribute.from(current);
118
+ currentUpdated.content.validTo = validFrom.subtract(1);
119
+ await this.attributes.update(current, currentUpdated);
120
+ const successor = await ConsumptionAttribute_1.ConsumptionAttribute.fromAttribute(parsedParams.successorContent, parsedParams.succeeds);
121
+ await this.attributes.create(successor);
122
+ return successor;
123
+ }
124
+ async createRelationshipAttribute(params) {
125
+ const parsedParams = CreateRelationshipAttributeParams_1.CreateRelationshipAttributeParams.from(params);
126
+ const shareInfo = ConsumptionAttributeShareInfo_1.ConsumptionAttributeShareInfo.from({
127
+ peer: parsedParams.peer,
128
+ requestReference: parsedParams.requestReference
129
+ });
130
+ const sharedConsumptionAttribute = await ConsumptionAttribute_1.ConsumptionAttribute.fromAttribute(params.content, undefined, shareInfo);
131
+ await this.attributes.create(sharedConsumptionAttribute);
132
+ return sharedConsumptionAttribute;
133
+ }
134
+ async createSharedConsumptionAttributeCopy(params) {
135
+ const parsedParams = CreateSharedConsumptionAttributeCopyParams_1.CreateSharedConsumptionAttributeCopyParams.from(params);
136
+ const sourceAttribute = await this.getConsumptionAttribute(parsedParams.attributeId);
137
+ if (!sourceAttribute) {
138
+ throw consumption_1.ConsumptionErrors.attributes.predecessorNotFound(parsedParams.attributeId.toString());
122
139
  }
123
- await this.attributes.create(attribute);
124
- return attribute;
140
+ const shareInfo = ConsumptionAttributeShareInfo_1.ConsumptionAttributeShareInfo.from({
141
+ peer: parsedParams.peer,
142
+ requestReference: parsedParams.requestReference,
143
+ sourceAttribute: parsedParams.attributeId
144
+ });
145
+ const sharedConsumptionAttributeCopy = await ConsumptionAttribute_1.ConsumptionAttribute.fromAttribute(sourceAttribute.content, undefined, shareInfo);
146
+ await this.attributes.create(sharedConsumptionAttributeCopy);
147
+ return sharedConsumptionAttributeCopy;
125
148
  }
126
- async updateAttribute(attribute) {
149
+ async createPeerConsumptionAttribute(params) {
150
+ const shareInfo = ConsumptionAttributeShareInfo_1.ConsumptionAttributeShareInfo.from({
151
+ peer: params.peer,
152
+ requestReference: params.requestReference
153
+ });
154
+ const peerConsumptionAttribute = ConsumptionAttribute_1.ConsumptionAttribute.from({
155
+ id: params.id,
156
+ content: params.content,
157
+ shareInfo: shareInfo,
158
+ createdAt: transport_1.CoreDate.utc()
159
+ });
160
+ await this.attributes.create(peerConsumptionAttribute);
161
+ return peerConsumptionAttribute;
162
+ }
163
+ async updateConsumptionAttribute(params) {
127
164
  const current = await this.attributes.findOne({
128
- [(0, ts_simple_nameof_1.nameof)((c) => c.id)]: attribute.id.toString()
165
+ [(0, ts_simple_nameof_1.nameof)((c) => c.id)]: params.id.toString()
129
166
  });
130
167
  if (!current) {
131
- throw transport_1.TransportErrors.general.recordNotFound(ConsumptionAttribute_1.ConsumptionAttribute, attribute.id.toString());
168
+ throw transport_1.TransportErrors.general.recordNotFound(ConsumptionAttribute_1.ConsumptionAttribute, params.id.toString());
132
169
  }
133
- await this.attributes.update(current, attribute);
134
- return attribute;
170
+ const updatedConsumptionAttribute = ConsumptionAttribute_1.ConsumptionAttribute.from({
171
+ id: current.id,
172
+ content: params.content,
173
+ createdAt: current.createdAt,
174
+ shareInfo: current.shareInfo,
175
+ succeededBy: current.succeededBy,
176
+ succeeds: current.succeeds
177
+ });
178
+ await this.attributes.update(current, updatedConsumptionAttribute);
179
+ return updatedConsumptionAttribute;
135
180
  }
136
181
  async deleteAttribute(attribute) {
137
182
  await this.attributes.delete(attribute);
@@ -1 +1 @@
1
- {"version":3,"file":"ConsumptionAttributesController.js","sourceRoot":"","sources":["../../../src/modules/attributes/ConsumptionAttributesController.ts"],"names":[],"mappings":";;;AACA,gDAA4F;AAC5F,uDAAyC;AACzC,mDAA2G;AAE3G,uEAAmE;AAEnE,MAAa,+BAAgC,SAAQ,uCAAyB;IAG1E,YAAmB,MAA6B;QAC5C,KAAK,CAAC,uCAAyB,CAAC,+BAA+B,EAAE,MAAM,CAAC,CAAA;IAC5E,CAAC;IAEe,KAAK,CAAC,IAAI;QACtB,MAAM,KAAK,CAAC,IAAI,EAAE,CAAA;QAElB,IAAI,CAAC,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAA;QAE7F,OAAO,IAAI,CAAA;IACf,CAAC;IAEM,UAAU,CAAC,SAA+B;QAC7C,MAAM,GAAG,GAAG,oBAAQ,CAAC,GAAG,EAAE,CAAA;QAC1B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE;YAC5D,OAAO,IAAI,CAAA;SACd;aAAM,IACH,SAAS,CAAC,OAAO,CAAC,SAAS;YAC3B,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO;YAC1B,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,EACjD;YACE,OAAO,IAAI,CAAA;SACd;aAAM,IACH,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS;YAC5B,SAAS,CAAC,OAAO,CAAC,OAAO;YACzB,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EACxC;YACE,OAAO,IAAI,CAAA;SACd;aAAM,IACH,SAAS,CAAC,OAAO,CAAC,SAAS;YAC3B,SAAS,CAAC,OAAO,CAAC,OAAO;YACzB,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC;YAC/C,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EACxC;YACE,OAAO,IAAI,CAAA;SACd;QACD,OAAO,KAAK,CAAA;IAChB,CAAC;IAEM,WAAW,CAAC,UAAkC;QACjD,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACpC,OAAO,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;QAC3C,CAAC,CAAC,CAAA;QACF,IAAI,OAAyC,CAAA;QAC7C,KAAK,MAAM,SAAS,IAAI,MAAM,EAAE;YAC5B,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;gBAC5B,OAAO,GAAG,SAAS,CAAA;aACtB;SACJ;QACD,OAAO,OAAO,CAAA;IAClB,CAAC;IAEM,aAAa,CAAC,UAAkC;QACnD,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACpC,OAAO,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;QAC3C,CAAC,CAAC,CAAA;QAEF,MAAM,KAAK,GAAG,EAAE,CAAA;QAChB,KAAK,MAAM,SAAS,IAAI,MAAM,EAAE;YAC5B,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;gBAC5B,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;aACxB;SACJ;QACD,OAAO,KAAK,CAAA;IAChB,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,EAAU;QAChC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACtC,CAAC,IAAA,yBAAM,EAAuB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE;SAC7D,CAAC,CAAA;QAEF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAuB,MAAM,EAAE,2CAAoB,CAAC,CAAA;QAC5F,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;IACvC,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,IAAY;QACxC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACtC,CAAC,GAAG,IAAA,yBAAM,EAAuB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAAY,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI;SAClG,CAAC,CAAA;QAEF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAuB,MAAM,EAAE,2CAAoB,CAAC,CAAA;QAC5F,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;IACvC,CAAC;IAEM,KAAK,CAAC,yBAAyB,CAAC,IAAY;QAC/C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACtC,CAAC,GAAG,IAAA,yBAAM,EAAuB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAA,yBAAM,EAAY,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI;SAClG,CAAC,CAAA;QAEF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAuB,MAAM,EAAE,2CAAoB,CAAC,CAAA;QAC5F,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACpC,OAAO,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;QAC3C,CAAC,CAAC,CAAA;QACF,OAAO,MAAM,CAAA;IACjB,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,KAAW;QAClC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC/C,OAAO,MAAM,IAAI,CAAC,UAAU,CAAuB,KAAK,EAAE,2CAAoB,CAAC,CAAA;IACnF,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,KAAW;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC9C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAuB,IAAI,EAAE,2CAAoB,CAAC,CAAA;QACrF,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;IACpC,CAAC;IAEM,KAAK,CAAC,mBAAmB,CAAC,KAAW;QACxC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAA;QAEvD,MAAM,MAAM,GAAG,CAAC,MAAW,EAAE,SAA+B,EAAE,EAAE;YAC5D,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS,CAAA;YAC1C,OAAO,MAAM,CAAA;QACjB,CAAC,CAAA;QAED,OAAO,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,EAAS,CAAC,CAAA;IAC/C,CAAC;IAEM,KAAK,CAAC,eAAe,CAAC,SAA+B;QACxD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACrE,IAAI,OAAO,EAAE;YACT,MAAM,+BAAiB,CAAC,UAAU,CAAC,eAAe,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;SAC7E;QACD,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACvC,OAAO,SAAS,CAAA;IACpB,CAAC;IAEM,KAAK,CAAC,gBAAgB,CACzB,SAA+B,EAC/B,SAAoB;QAEpB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACrE,IAAI,OAAO,IAAI,CAAC,SAAS,EAAE;YACvB,SAAS,GAAG,oBAAQ,CAAC,GAAG,EAAE,CAAA;SAC7B;QACD,IAAI,OAAO,EAAE;YACT,SAAS,CAAC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAA;YACvC,OAAO,CAAC,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;YACnC,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;SACtC;QACD,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACvC,OAAO,SAAS,CAAA;IACpB,CAAC;IAEM,KAAK,CAAC,eAAe,CAAC,SAA+B;QACxD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YAC1C,CAAC,IAAA,yBAAM,EAAuB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE;SACvE,CAAC,CAAA;QACF,IAAI,CAAC,OAAO,EAAE;YACV,MAAM,2BAAe,CAAC,OAAO,CAAC,cAAc,CAAC,2CAAoB,EAAE,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAA;SAC9F;QACD,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QAChD,OAAO,SAAS,CAAA;IACpB,CAAC;IAEM,KAAK,CAAC,eAAe,CAAC,SAA+B;QACxD,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IAC3C,CAAC;CACJ;AAjKD,0EAiKC"}
1
+ {"version":3,"file":"ConsumptionAttributesController.js","sourceRoot":"","sources":["../../../src/modules/attributes/ConsumptionAttributesController.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { ISerializable, Serializable } from "@js-soft/ts-serval";
2
+ import { IdentityAttribute, IdentityAttributeJSON, IIdentityAttribute, IRelationshipAttribute, RelationshipAttribute, RelationshipAttributeJSON } from "@nmshd/content";
3
+ export interface CreateConsumptionAttributeParamsJSON {
4
+ content: IdentityAttributeJSON | RelationshipAttributeJSON;
5
+ }
6
+ export interface ICreateConsumptionAttributeParams extends ISerializable {
7
+ content: IIdentityAttribute | IRelationshipAttribute;
8
+ }
9
+ export declare class CreateConsumptionAttributeParams extends Serializable implements ICreateConsumptionAttributeParams {
10
+ content: IdentityAttribute | RelationshipAttribute;
11
+ static from(value: ICreateConsumptionAttributeParams | CreateConsumptionAttributeParamsJSON): CreateConsumptionAttributeParams;
12
+ }
@@ -0,0 +1,26 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CreateConsumptionAttributeParams = void 0;
13
+ const ts_serval_1 = require("@js-soft/ts-serval");
14
+ const content_1 = require("@nmshd/content");
15
+ class CreateConsumptionAttributeParams extends ts_serval_1.Serializable {
16
+ static from(value) {
17
+ return this.fromAny(value);
18
+ }
19
+ }
20
+ __decorate([
21
+ (0, ts_serval_1.serialize)({ unionTypes: [content_1.IdentityAttribute, content_1.RelationshipAttribute] }),
22
+ (0, ts_serval_1.validate)(),
23
+ __metadata("design:type", Object)
24
+ ], CreateConsumptionAttributeParams.prototype, "content", void 0);
25
+ exports.CreateConsumptionAttributeParams = CreateConsumptionAttributeParams;
26
+ //# sourceMappingURL=CreateConsumptionAttributeParams.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CreateConsumptionAttributeParams.js","sourceRoot":"","sources":["../../../src/modules/attributes/CreateConsumptionAttributeParams.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAAqF;AACrF,4CAOuB;AAUvB,MAAa,gCAAiC,SAAQ,wBAAY;IAKvD,MAAM,CAAC,IAAI,CACd,KAA+E;QAE/E,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;CACJ;AAPG;IAFC,IAAA,qBAAS,EAAC,EAAE,UAAU,EAAE,CAAC,2BAAiB,EAAE,+BAAqB,CAAC,EAAE,CAAC;IACrE,IAAA,oBAAQ,GAAE;;iEAC8C;AAH7D,4EAUC"}
@@ -0,0 +1,22 @@
1
+ import { ISerializable, Serializable } from "@js-soft/ts-serval";
2
+ import { IdentityAttribute, IdentityAttributeJSON, IIdentityAttribute, IRelationshipAttribute, RelationshipAttribute, RelationshipAttributeJSON } from "@nmshd/content";
3
+ import { CoreAddress, CoreId, ICoreAddress, ICoreId } from "@nmshd/transport";
4
+ export interface CreatePeerConsumptionAttributeParamsJSON {
5
+ id: string;
6
+ content: IdentityAttributeJSON | RelationshipAttributeJSON;
7
+ requestReferece: string;
8
+ peer: string;
9
+ }
10
+ export interface ICreatePeerConsumptionAttributeParams extends ISerializable {
11
+ id: ICoreId;
12
+ content: IIdentityAttribute | IRelationshipAttribute;
13
+ requestReference: ICoreId;
14
+ peer: ICoreAddress;
15
+ }
16
+ export declare class CreatePeerConsumptionAttributeParams extends Serializable implements ICreatePeerConsumptionAttributeParams {
17
+ id: CoreId;
18
+ content: IdentityAttribute | RelationshipAttribute;
19
+ requestReference: CoreId;
20
+ peer: CoreAddress;
21
+ static from(value: ICreatePeerConsumptionAttributeParams | CreatePeerConsumptionAttributeParamsJSON): CreatePeerConsumptionAttributeParams;
22
+ }