@nmshd/consumption 2.0.0-alpha.3 → 2.0.0-alpha.4

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 (43) hide show
  1. package/dist/buildInformation.js +4 -4
  2. package/dist/modules/index.d.ts +1 -2
  3. package/dist/modules/index.js +1 -2
  4. package/dist/modules/index.js.map +1 -1
  5. package/dist/modules/requests/incoming/DecideRequestParametersValidator.d.ts +2 -2
  6. package/dist/modules/requests/incoming/DecideRequestParametersValidator.js.map +1 -1
  7. package/dist/modules/requests/incoming/IncomingRequestsController.d.ts +5 -6
  8. package/dist/modules/requests/incoming/IncomingRequestsController.js +33 -36
  9. package/dist/modules/requests/incoming/IncomingRequestsController.js.map +1 -1
  10. package/dist/modules/requests/incoming/decide/AcceptRequestItemParameters.d.ts +3 -6
  11. package/dist/modules/requests/incoming/decide/AcceptRequestItemParameters.js +0 -18
  12. package/dist/modules/requests/incoming/decide/AcceptRequestItemParameters.js.map +1 -1
  13. package/dist/modules/requests/incoming/decide/DecideRequestItemGroupParameters.d.ts +3 -8
  14. package/dist/modules/requests/incoming/decide/DecideRequestItemGroupParameters.js +0 -25
  15. package/dist/modules/requests/incoming/decide/DecideRequestItemGroupParameters.js.map +1 -1
  16. package/dist/modules/requests/incoming/decide/DecideRequestItemParameters.d.ts +3 -5
  17. package/dist/modules/requests/incoming/decide/DecideRequestItemParameters.js +0 -5
  18. package/dist/modules/requests/incoming/decide/DecideRequestItemParameters.js.map +1 -1
  19. package/dist/modules/requests/incoming/decide/DecideRequestParameters.d.ts +5 -11
  20. package/dist/modules/requests/incoming/decide/DecideRequestParameters.js +0 -27
  21. package/dist/modules/requests/incoming/decide/DecideRequestParameters.js.map +1 -1
  22. package/dist/modules/requests/incoming/decide/InternalDecideRequestParameters.d.ts +19 -0
  23. package/dist/modules/requests/incoming/decide/InternalDecideRequestParameters.js +44 -0
  24. package/dist/modules/requests/incoming/decide/InternalDecideRequestParameters.js.map +1 -0
  25. package/dist/modules/requests/incoming/decide/RejectRequestItemParameters.d.ts +3 -8
  26. package/dist/modules/requests/incoming/decide/RejectRequestItemParameters.js +0 -31
  27. package/dist/modules/requests/incoming/decide/RejectRequestItemParameters.js.map +1 -1
  28. package/dist/modules/requests/incoming/decide/RequestItemDecision.d.ts +4 -0
  29. package/dist/modules/requests/incoming/decide/RequestItemDecision.js +9 -0
  30. package/dist/modules/requests/incoming/decide/RequestItemDecision.js.map +1 -0
  31. package/dist/modules/requests/itemProcessors/GenericRequestItemProcessor.d.ts +3 -3
  32. package/dist/modules/requests/itemProcessors/IRequestItemProcessor.d.ts +3 -3
  33. package/lib-web/nmshd.consumption.js +91 -190
  34. package/lib-web/nmshd.consumption.js.map +1 -1
  35. package/lib-web/nmshd.consumption.min.js +1 -1
  36. package/lib-web/nmshd.consumption.min.js.map +1 -1
  37. package/package.json +3 -3
  38. package/dist/modules/requests/incoming/decide/AcceptRequestParameters.d.ts +0 -6
  39. package/dist/modules/requests/incoming/decide/AcceptRequestParameters.js +0 -21
  40. package/dist/modules/requests/incoming/decide/AcceptRequestParameters.js.map +0 -1
  41. package/dist/modules/requests/incoming/decide/RejectRequestParameters.d.ts +0 -6
  42. package/dist/modules/requests/incoming/decide/RejectRequestParameters.js +0 -21
  43. package/dist/modules/requests/incoming/decide/RejectRequestParameters.js.map +0 -1
@@ -0,0 +1,4 @@
1
+ export declare enum RequestItemDecision {
2
+ Accept = "Accept",
3
+ Reject = "Reject"
4
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RequestItemDecision = void 0;
4
+ var RequestItemDecision;
5
+ (function (RequestItemDecision) {
6
+ RequestItemDecision["Accept"] = "Accept";
7
+ RequestItemDecision["Reject"] = "Reject";
8
+ })(RequestItemDecision = exports.RequestItemDecision || (exports.RequestItemDecision = {}));
9
+ //# sourceMappingURL=RequestItemDecision.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestItemDecision.js","sourceRoot":"","sources":["../../../../../src/modules/requests/incoming/decide/RequestItemDecision.ts"],"names":[],"mappings":";;;AAAA,IAAY,mBAGX;AAHD,WAAY,mBAAmB;IAC3B,wCAAiB,CAAA;IACjB,wCAAiB,CAAA;AACrB,CAAC,EAHW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAG9B"}
@@ -1,9 +1,9 @@
1
1
  import { AcceptResponseItem, RejectResponseItem, RequestItem, ResponseItem } from "@nmshd/content";
2
- import { AcceptRequestItemParameters } from "../incoming/decide/AcceptRequestItemParameters";
3
- import { RejectRequestItemParameters } from "../incoming/decide/RejectRequestItemParameters";
2
+ import { AcceptRequestItemParametersJSON } from "../incoming/decide/AcceptRequestItemParameters";
3
+ import { RejectRequestItemParametersJSON } from "../incoming/decide/RejectRequestItemParameters";
4
4
  import { IRequestItemProcessor } from "./IRequestItemProcessor";
5
5
  import { ValidationResult } from "./ValidationResult";
6
- export declare class GenericRequestItemProcessor<TRequestItem extends RequestItem = RequestItem, TAcceptParams extends AcceptRequestItemParameters = AcceptRequestItemParameters, TRejectParams extends RejectRequestItemParameters = RejectRequestItemParameters> implements IRequestItemProcessor<TRequestItem, TAcceptParams, TRejectParams> {
6
+ export declare class GenericRequestItemProcessor<TRequestItem extends RequestItem = RequestItem, TAcceptParams extends AcceptRequestItemParametersJSON = AcceptRequestItemParametersJSON, TRejectParams extends RejectRequestItemParametersJSON = RejectRequestItemParametersJSON> implements IRequestItemProcessor<TRequestItem, TAcceptParams, TRejectParams> {
7
7
  checkPrerequisitesOfIncomingRequestItem(_requestItem: TRequestItem): Promise<boolean> | boolean;
8
8
  canAccept(_requestItem: TRequestItem, _params: TAcceptParams): Promise<ValidationResult> | ValidationResult;
9
9
  canReject(_requestItem: TRequestItem, _params: TRejectParams): Promise<ValidationResult> | ValidationResult;
@@ -1,8 +1,8 @@
1
1
  import { AcceptResponseItem, RejectResponseItem, RequestItem, ResponseItem } from "@nmshd/content";
2
- import { AcceptRequestItemParameters } from "../incoming/decide/AcceptRequestItemParameters";
3
- import { RejectRequestItemParameters } from "../incoming/decide/RejectRequestItemParameters";
2
+ import { AcceptRequestItemParametersJSON } from "../incoming/decide/AcceptRequestItemParameters";
3
+ import { RejectRequestItemParametersJSON } from "../incoming/decide/RejectRequestItemParameters";
4
4
  import { ValidationResult } from "./ValidationResult";
5
- export interface IRequestItemProcessor<TRequestItem extends RequestItem = RequestItem, TAcceptParams extends AcceptRequestItemParameters = AcceptRequestItemParameters, TRejectParams extends RejectRequestItemParameters = RejectRequestItemParameters> {
5
+ export interface IRequestItemProcessor<TRequestItem extends RequestItem = RequestItem, TAcceptParams extends AcceptRequestItemParametersJSON = AcceptRequestItemParametersJSON, TRejectParams extends RejectRequestItemParametersJSON = RejectRequestItemParametersJSON> {
6
6
  checkPrerequisitesOfIncomingRequestItem(requestItem: TRequestItem): Promise<boolean> | boolean;
7
7
  canAccept(requestItem: TRequestItem, params: TAcceptParams): Promise<ValidationResult> | ValidationResult;
8
8
  canReject(requestItem: TRequestItem, params: TRejectParams): Promise<ValidationResult> | ValidationResult;
@@ -17,10 +17,10 @@ const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
17
17
  const crypto_1 = __webpack_require__(/*! @nmshd/crypto */ "@nmshd/crypto");
18
18
  const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
19
19
  exports.buildInformation = {
20
- version: "2.0.0-alpha.3",
21
- build: "21",
22
- date: "2022-04-25T14:26:26+00:00",
23
- commit: "5d6043fd82305f5550c2c50c7aade06d9bf9b760",
20
+ version: "2.0.0-alpha.4",
21
+ build: "22",
22
+ date: "2022-04-28T10:14:47+00:00",
23
+ commit: "f393644bb4ed077b45543c3a281c5c53052704f2",
24
24
  dependencies: {},
25
25
  libraries: {
26
26
  transport: transport_1.buildInformation,
@@ -680,12 +680,11 @@ __exportStar(__webpack_require__(/*! ./relationships/RelationshipInfoController
680
680
  __exportStar(__webpack_require__(/*! ./requests/incoming/checkPrerequisites/CheckPrerequisitesOfIncomingRequestParameters */ "./dist/modules/requests/incoming/checkPrerequisites/CheckPrerequisitesOfIncomingRequestParameters.js"), exports);
681
681
  __exportStar(__webpack_require__(/*! ./requests/incoming/complete/CompleteIncomingRequestParameters */ "./dist/modules/requests/incoming/complete/CompleteIncomingRequestParameters.js"), exports);
682
682
  __exportStar(__webpack_require__(/*! ./requests/incoming/decide/AcceptRequestItemParameters */ "./dist/modules/requests/incoming/decide/AcceptRequestItemParameters.js"), exports);
683
- __exportStar(__webpack_require__(/*! ./requests/incoming/decide/AcceptRequestParameters */ "./dist/modules/requests/incoming/decide/AcceptRequestParameters.js"), exports);
684
683
  __exportStar(__webpack_require__(/*! ./requests/incoming/decide/DecideRequestItemGroupParameters */ "./dist/modules/requests/incoming/decide/DecideRequestItemGroupParameters.js"), exports);
685
684
  __exportStar(__webpack_require__(/*! ./requests/incoming/decide/DecideRequestItemParameters */ "./dist/modules/requests/incoming/decide/DecideRequestItemParameters.js"), exports);
686
685
  __exportStar(__webpack_require__(/*! ./requests/incoming/decide/DecideRequestParameters */ "./dist/modules/requests/incoming/decide/DecideRequestParameters.js"), exports);
687
686
  __exportStar(__webpack_require__(/*! ./requests/incoming/decide/RejectRequestItemParameters */ "./dist/modules/requests/incoming/decide/RejectRequestItemParameters.js"), exports);
688
- __exportStar(__webpack_require__(/*! ./requests/incoming/decide/RejectRequestParameters */ "./dist/modules/requests/incoming/decide/RejectRequestParameters.js"), exports);
687
+ __exportStar(__webpack_require__(/*! ./requests/incoming/decide/RequestItemDecision */ "./dist/modules/requests/incoming/decide/RequestItemDecision.js"), exports);
689
688
  __exportStar(__webpack_require__(/*! ./requests/incoming/DecideRequestParametersValidator */ "./dist/modules/requests/incoming/DecideRequestParametersValidator.js"), exports);
690
689
  __exportStar(__webpack_require__(/*! ./requests/incoming/IncomingRequestsController */ "./dist/modules/requests/incoming/IncomingRequestsController.js"), exports);
691
690
  __exportStar(__webpack_require__(/*! ./requests/incoming/received/ReceivedIncomingRequestParameters */ "./dist/modules/requests/incoming/received/ReceivedIncomingRequestParameters.js"), exports);
@@ -1265,12 +1264,8 @@ const ConsumptionRequestStatus_1 = __webpack_require__(/*! ../local/ConsumptionR
1265
1264
  const ConsumptionResponse_1 = __webpack_require__(/*! ../local/ConsumptionResponse */ "./dist/modules/requests/local/ConsumptionResponse.js");
1266
1265
  const CheckPrerequisitesOfIncomingRequestParameters_1 = __webpack_require__(/*! ./checkPrerequisites/CheckPrerequisitesOfIncomingRequestParameters */ "./dist/modules/requests/incoming/checkPrerequisites/CheckPrerequisitesOfIncomingRequestParameters.js");
1267
1266
  const CompleteIncomingRequestParameters_1 = __webpack_require__(/*! ./complete/CompleteIncomingRequestParameters */ "./dist/modules/requests/incoming/complete/CompleteIncomingRequestParameters.js");
1268
- const AcceptRequestItemParameters_1 = __webpack_require__(/*! ./decide/AcceptRequestItemParameters */ "./dist/modules/requests/incoming/decide/AcceptRequestItemParameters.js");
1269
- const AcceptRequestParameters_1 = __webpack_require__(/*! ./decide/AcceptRequestParameters */ "./dist/modules/requests/incoming/decide/AcceptRequestParameters.js");
1270
- const DecideRequestItemGroupParameters_1 = __webpack_require__(/*! ./decide/DecideRequestItemGroupParameters */ "./dist/modules/requests/incoming/decide/DecideRequestItemGroupParameters.js");
1271
- const DecideRequestItemParameters_1 = __webpack_require__(/*! ./decide/DecideRequestItemParameters */ "./dist/modules/requests/incoming/decide/DecideRequestItemParameters.js");
1272
- const RejectRequestItemParameters_1 = __webpack_require__(/*! ./decide/RejectRequestItemParameters */ "./dist/modules/requests/incoming/decide/RejectRequestItemParameters.js");
1273
- const RejectRequestParameters_1 = __webpack_require__(/*! ./decide/RejectRequestParameters */ "./dist/modules/requests/incoming/decide/RejectRequestParameters.js");
1267
+ const InternalDecideRequestParameters_1 = __webpack_require__(/*! ./decide/InternalDecideRequestParameters */ "./dist/modules/requests/incoming/decide/InternalDecideRequestParameters.js");
1268
+ const RequestItemDecision_1 = __webpack_require__(/*! ./decide/RequestItemDecision */ "./dist/modules/requests/incoming/decide/RequestItemDecision.js");
1274
1269
  const DecideRequestParametersValidator_1 = __webpack_require__(/*! ./DecideRequestParametersValidator */ "./dist/modules/requests/incoming/DecideRequestParametersValidator.js");
1275
1270
  const ReceivedIncomingRequestParameters_1 = __webpack_require__(/*! ./received/ReceivedIncomingRequestParameters */ "./dist/modules/requests/incoming/received/ReceivedIncomingRequestParameters.js");
1276
1271
  const RequireManualDecisionOfIncomingRequestParameters_1 = __webpack_require__(/*! ./requireManualDecision/RequireManualDecisionOfIncomingRequestParameters */ "./dist/modules/requests/incoming/requireManualDecision/RequireManualDecisionOfIncomingRequestParameters.js");
@@ -1364,64 +1359,67 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
1364
1359
  return request;
1365
1360
  }
1366
1361
  async canAccept(params) {
1367
- const parsedParams = AcceptRequestParameters_1.AcceptRequestParameters.from(params);
1368
- return await this.canDecide(parsedParams, "Accept");
1362
+ return await this.canDecide({ ...params, decision: InternalDecideRequestParameters_1.RequestDecision.Accept });
1369
1363
  }
1370
1364
  async canReject(params) {
1371
- const parsedParams = RejectRequestParameters_1.RejectRequestParameters.from(params);
1372
- return await this.canDecide(parsedParams, "Reject");
1365
+ return await this.canDecide({ ...params, decision: InternalDecideRequestParameters_1.RequestDecision.Reject });
1373
1366
  }
1374
- async canDecide(params, action) {
1367
+ async canDecide(params) {
1368
+ // syntactic validation
1369
+ InternalDecideRequestParameters_1.InternalDecideRequestParameters.from(params);
1375
1370
  const request = await this.getOrThrow(params.requestId);
1371
+ const validationResult = this.decideRequestParamsValidator.validate(params, request);
1372
+ if (!validationResult.isSuccess) {
1373
+ throw new Error(validationResult.error.message);
1374
+ }
1376
1375
  this.assertRequestStatus(request, ConsumptionRequestStatus_1.ConsumptionRequestStatus.DecisionRequired, ConsumptionRequestStatus_1.ConsumptionRequestStatus.ManualDecisionRequired);
1377
- const itemResults = await this.canDecideItems(params.items, request.content.items, action);
1376
+ const itemResults = await this.canDecideItems(params.items, request.content.items);
1378
1377
  return ValidationResult_1.ValidationResult.fromItems(itemResults);
1379
1378
  }
1380
- async canDecideGroup(params, requestItemGroup, action) {
1381
- const itemResults = await this.canDecideItems(params.items, requestItemGroup.items, action);
1379
+ async canDecideGroup(params, requestItemGroup) {
1380
+ const itemResults = await this.canDecideItems(params.items, requestItemGroup.items);
1382
1381
  return ValidationResult_1.ValidationResult.fromItems(itemResults);
1383
1382
  }
1384
- async canDecideItems(params, items, action) {
1383
+ async canDecideItems(params, items) {
1385
1384
  const validationResults = [];
1386
1385
  for (let i = 0; i < params.length; i++) {
1387
1386
  const decideItemParams = params[i];
1388
1387
  const requestItem = items[i];
1389
1388
  if (requestItem instanceof content_1.RequestItemGroup) {
1390
- const groupResult = await this.canDecideGroup(decideItemParams, requestItem, action);
1389
+ const groupResult = await this.canDecideGroup(decideItemParams, requestItem);
1391
1390
  validationResults.push(groupResult);
1392
1391
  }
1393
1392
  else {
1394
- const itemResult = await this.canDecideItem(decideItemParams, requestItem, action);
1393
+ const itemResult = await this.canDecideItem(decideItemParams, requestItem);
1395
1394
  validationResults.push(itemResult);
1396
1395
  }
1397
1396
  }
1398
1397
  return validationResults;
1399
1398
  }
1400
- canDecideItem(params, requestItem, action) {
1399
+ async canDecideItem(params, requestItem) {
1401
1400
  const processor = this.processorRegistry.getProcessorForItem(requestItem);
1402
- return processor[`can${action}`](requestItem, params);
1401
+ if (params.decision === RequestItemDecision_1.RequestItemDecision.Accept) {
1402
+ return await processor.canAccept(requestItem, params);
1403
+ }
1404
+ return await processor.canReject(requestItem, params);
1403
1405
  }
1404
1406
  async accept(params) {
1405
1407
  const canAccept = await this.canAccept(params);
1406
1408
  if (!canAccept.isSuccess()) {
1407
1409
  throw new Error("Cannot accept the Request with the given parameters. Call 'canAccept' to get more information.");
1408
1410
  }
1409
- return await this.decide(AcceptRequestParameters_1.AcceptRequestParameters.from(params));
1411
+ return await this.decide({ ...params, decision: InternalDecideRequestParameters_1.RequestDecision.Accept });
1410
1412
  }
1411
1413
  async reject(params) {
1412
1414
  const canReject = await this.canReject(params);
1413
1415
  if (!canReject.isSuccess()) {
1414
1416
  throw new Error("Cannot reject the Request with the given parameters. Call 'canReject' to get more information.");
1415
1417
  }
1416
- return await this.decide(RejectRequestParameters_1.RejectRequestParameters.from(params));
1418
+ return await this.decide({ ...params, decision: InternalDecideRequestParameters_1.RequestDecision.Reject });
1417
1419
  }
1418
1420
  async decide(params) {
1419
1421
  const consumptionRequest = await this.getOrThrow(params.requestId);
1420
1422
  this.assertRequestStatus(consumptionRequest, ConsumptionRequestStatus_1.ConsumptionRequestStatus.DecisionRequired, ConsumptionRequestStatus_1.ConsumptionRequestStatus.ManualDecisionRequired);
1421
- const validationResult = this.decideRequestParamsValidator.validate(params, consumptionRequest);
1422
- if (!validationResult.isSuccess) {
1423
- throw new Error(validationResult.error.message);
1424
- }
1425
1423
  const consumptionResponse = await this.createConsumptionResponse(params, consumptionRequest);
1426
1424
  consumptionRequest.response = consumptionResponse;
1427
1425
  consumptionRequest.changeStatus(ConsumptionRequestStatus_1.ConsumptionRequestStatus.Decided);
@@ -1432,7 +1430,7 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
1432
1430
  const requestItems = request.content.items;
1433
1431
  const responseItems = await this.decideItems(params.items, requestItems);
1434
1432
  const response = content_1.Response.from({
1435
- result: params instanceof AcceptRequestParameters_1.AcceptRequestParameters ? content_1.ResponseResult.Accepted : content_1.ResponseResult.Rejected,
1433
+ result: params.decision === InternalDecideRequestParameters_1.RequestDecision.Accept ? content_1.ResponseResult.Accepted : content_1.ResponseResult.Rejected,
1436
1434
  requestId: request.id,
1437
1435
  items: responseItems
1438
1436
  });
@@ -1454,11 +1452,12 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
1454
1452
  const responseItems = [];
1455
1453
  for (let i = 0; i < params.length; i++) {
1456
1454
  const itemParam = params[i];
1457
- if (itemParam instanceof DecideRequestItemParameters_1.DecideRequestItemParameters) {
1458
- responseItems.push(await this.decideItem(itemParam, requestItems[i]));
1455
+ const item = requestItems[i];
1456
+ if (item instanceof content_1.RequestItemGroup) {
1457
+ responseItems.push(await this.decideGroup(itemParam, item));
1459
1458
  }
1460
- else if (itemParam instanceof DecideRequestItemGroupParameters_1.DecideRequestItemGroupParameters) {
1461
- responseItems.push(await this.decideGroup(itemParam, requestItems[i]));
1459
+ else {
1460
+ responseItems.push(await this.decideItem(itemParam, requestItems[i]));
1462
1461
  }
1463
1462
  }
1464
1463
  return responseItems;
@@ -1466,12 +1465,10 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
1466
1465
  async decideItem(params, requestItem) {
1467
1466
  const processor = this.processorRegistry.getProcessorForItem(requestItem);
1468
1467
  try {
1469
- if (params instanceof AcceptRequestItemParameters_1.AcceptRequestItemParameters) {
1468
+ if (params.decision === RequestItemDecision_1.RequestItemDecision.Accept) {
1470
1469
  return await processor.accept(requestItem, params);
1471
1470
  }
1472
- else if (params instanceof RejectRequestItemParameters_1.RejectRequestItemParameters) {
1473
- return await processor.reject(requestItem, params);
1474
- }
1471
+ return await processor.reject(requestItem, params);
1475
1472
  }
1476
1473
  catch (e) {
1477
1474
  let details = "";
@@ -1480,7 +1477,6 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
1480
1477
  }
1481
1478
  throw new Error(`An error occurred while processing a '${requestItem.constructor.name}'. You should contact the developer of this RequestItem.${details}}`);
1482
1479
  }
1483
- throw new Error("Unknown params type");
1484
1480
  }
1485
1481
  async complete(params) {
1486
1482
  const parsedParams = CompleteIncomingRequestParameters_1.CompleteIncomingRequestParameters.from(params);
@@ -1513,7 +1509,7 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
1513
1509
  return request;
1514
1510
  }
1515
1511
  async getOrThrow(id) {
1516
- const request = await this.get(id);
1512
+ const request = await this.get(transport_1.CoreId.from(id));
1517
1513
  if (!request) {
1518
1514
  throw transport_1.TransportErrors.general.recordNotFound(ConsumptionRequest_1.ConsumptionRequest, id.toString());
1519
1515
  }
@@ -1621,98 +1617,24 @@ exports.CompleteIncomingRequestParameters = CompleteIncomingRequestParameters;
1621
1617
  /*!******************************************************************************!*\
1622
1618
  !*** ./dist/modules/requests/incoming/decide/AcceptRequestItemParameters.js ***!
1623
1619
  \******************************************************************************/
1624
- /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
1620
+ /***/ ((__unused_webpack_module, exports) => {
1625
1621
 
1626
1622
  "use strict";
1627
1623
 
1628
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
1629
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1630
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1631
- 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;
1632
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1633
- };
1634
1624
  Object.defineProperty(exports, "__esModule", ({ value: true }));
1635
- exports.AcceptRequestItemParameters = void 0;
1636
- const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-serval");
1637
- const DecideRequestItemParameters_1 = __webpack_require__(/*! ./DecideRequestItemParameters */ "./dist/modules/requests/incoming/decide/DecideRequestItemParameters.js");
1638
- let AcceptRequestItemParameters = class AcceptRequestItemParameters extends DecideRequestItemParameters_1.DecideRequestItemParameters {
1639
- static from(value) {
1640
- return this.fromAny(value);
1641
- }
1642
- };
1643
- AcceptRequestItemParameters = __decorate([
1644
- (0, ts_serval_1.type)("AcceptRequestItemParameters")
1645
- ], AcceptRequestItemParameters);
1646
- exports.AcceptRequestItemParameters = AcceptRequestItemParameters;
1647
1625
  //# sourceMappingURL=AcceptRequestItemParameters.js.map
1648
1626
 
1649
1627
  /***/ }),
1650
1628
 
1651
- /***/ "./dist/modules/requests/incoming/decide/AcceptRequestParameters.js":
1652
- /*!**************************************************************************!*\
1653
- !*** ./dist/modules/requests/incoming/decide/AcceptRequestParameters.js ***!
1654
- \**************************************************************************/
1655
- /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
1656
-
1657
- "use strict";
1658
-
1659
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
1660
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1661
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1662
- 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;
1663
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1664
- };
1665
- Object.defineProperty(exports, "__esModule", ({ value: true }));
1666
- exports.AcceptRequestParameters = void 0;
1667
- const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-serval");
1668
- const DecideRequestParameters_1 = __webpack_require__(/*! ./DecideRequestParameters */ "./dist/modules/requests/incoming/decide/DecideRequestParameters.js");
1669
- let AcceptRequestParameters = class AcceptRequestParameters extends DecideRequestParameters_1.DecideRequestParameters {
1670
- static from(value) {
1671
- return this.fromAny(value);
1672
- }
1673
- };
1674
- AcceptRequestParameters = __decorate([
1675
- (0, ts_serval_1.type)("AcceptRequestParameters")
1676
- ], AcceptRequestParameters);
1677
- exports.AcceptRequestParameters = AcceptRequestParameters;
1678
- //# sourceMappingURL=AcceptRequestParameters.js.map
1679
-
1680
- /***/ }),
1681
-
1682
1629
  /***/ "./dist/modules/requests/incoming/decide/DecideRequestItemGroupParameters.js":
1683
1630
  /*!***********************************************************************************!*\
1684
1631
  !*** ./dist/modules/requests/incoming/decide/DecideRequestItemGroupParameters.js ***!
1685
1632
  \***********************************************************************************/
1686
- /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
1633
+ /***/ ((__unused_webpack_module, exports) => {
1687
1634
 
1688
1635
  "use strict";
1689
1636
 
1690
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
1691
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1692
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1693
- 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;
1694
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1695
- };
1696
- var __metadata = (this && this.__metadata) || function (k, v) {
1697
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
1698
- };
1699
1637
  Object.defineProperty(exports, "__esModule", ({ value: true }));
1700
- exports.DecideRequestItemGroupParameters = void 0;
1701
- const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-serval");
1702
- let DecideRequestItemGroupParameters = class DecideRequestItemGroupParameters extends ts_serval_1.Serializable {
1703
- static from(value) {
1704
- return this.fromAny(value);
1705
- }
1706
- };
1707
- __decorate([
1708
- (0, ts_serval_1.serialize)(),
1709
- (0, ts_serval_1.validate)(),
1710
- __metadata("design:type", Array)
1711
- ], DecideRequestItemGroupParameters.prototype, "items", void 0);
1712
- DecideRequestItemGroupParameters = __decorate([
1713
- (0, ts_serval_1.type)("DecideRequestItemGroupParameters")
1714
- ], DecideRequestItemGroupParameters);
1715
- exports.DecideRequestItemGroupParameters = DecideRequestItemGroupParameters;
1716
1638
  //# sourceMappingURL=DecideRequestItemGroupParameters.js.map
1717
1639
 
1718
1640
  /***/ }),
@@ -1721,16 +1643,11 @@ exports.DecideRequestItemGroupParameters = DecideRequestItemGroupParameters;
1721
1643
  /*!******************************************************************************!*\
1722
1644
  !*** ./dist/modules/requests/incoming/decide/DecideRequestItemParameters.js ***!
1723
1645
  \******************************************************************************/
1724
- /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
1646
+ /***/ ((__unused_webpack_module, exports) => {
1725
1647
 
1726
1648
  "use strict";
1727
1649
 
1728
1650
  Object.defineProperty(exports, "__esModule", ({ value: true }));
1729
- exports.DecideRequestItemParameters = void 0;
1730
- const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-serval");
1731
- class DecideRequestItemParameters extends ts_serval_1.Serializable {
1732
- }
1733
- exports.DecideRequestItemParameters = DecideRequestItemParameters;
1734
1651
  //# sourceMappingURL=DecideRequestItemParameters.js.map
1735
1652
 
1736
1653
  /***/ }),
@@ -1739,6 +1656,19 @@ exports.DecideRequestItemParameters = DecideRequestItemParameters;
1739
1656
  /*!**************************************************************************!*\
1740
1657
  !*** ./dist/modules/requests/incoming/decide/DecideRequestParameters.js ***!
1741
1658
  \**************************************************************************/
1659
+ /***/ ((__unused_webpack_module, exports) => {
1660
+
1661
+ "use strict";
1662
+
1663
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
1664
+ //# sourceMappingURL=DecideRequestParameters.js.map
1665
+
1666
+ /***/ }),
1667
+
1668
+ /***/ "./dist/modules/requests/incoming/decide/InternalDecideRequestParameters.js":
1669
+ /*!**********************************************************************************!*\
1670
+ !*** ./dist/modules/requests/incoming/decide/InternalDecideRequestParameters.js ***!
1671
+ \**********************************************************************************/
1742
1672
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
1743
1673
 
1744
1674
  "use strict";
@@ -1753,25 +1683,39 @@ var __metadata = (this && this.__metadata) || function (k, v) {
1753
1683
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
1754
1684
  };
1755
1685
  Object.defineProperty(exports, "__esModule", ({ value: true }));
1756
- exports.DecideRequestParameters = void 0;
1686
+ exports.RequestDecision = exports.InternalDecideRequestParameters = void 0;
1757
1687
  const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-serval");
1758
1688
  const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
1759
- class DecideRequestParameters extends ts_serval_1.Serializable {
1760
- }
1689
+ let InternalDecideRequestParameters = class InternalDecideRequestParameters extends ts_serval_1.Serializable {
1690
+ static from(value) {
1691
+ return this.fromAny(value);
1692
+ }
1693
+ };
1761
1694
  __decorate([
1762
1695
  (0, ts_serval_1.serialize)(),
1763
1696
  (0, ts_serval_1.validate)(),
1764
1697
  __metadata("design:type", transport_1.CoreId)
1765
- ], DecideRequestParameters.prototype, "requestId", void 0);
1698
+ ], InternalDecideRequestParameters.prototype, "requestId", void 0);
1766
1699
  __decorate([
1767
1700
  (0, ts_serval_1.serialize)(),
1768
- (0, ts_serval_1.validate)({
1769
- customValidator: (items) => items.length === 0 ? "may not be empty" : undefined
1770
- }),
1701
+ (0, ts_serval_1.validate)(),
1771
1702
  __metadata("design:type", Array)
1772
- ], DecideRequestParameters.prototype, "items", void 0);
1773
- exports.DecideRequestParameters = DecideRequestParameters;
1774
- //# sourceMappingURL=DecideRequestParameters.js.map
1703
+ ], InternalDecideRequestParameters.prototype, "items", void 0);
1704
+ __decorate([
1705
+ (0, ts_serval_1.serialize)(),
1706
+ (0, ts_serval_1.validate)(),
1707
+ __metadata("design:type", String)
1708
+ ], InternalDecideRequestParameters.prototype, "decision", void 0);
1709
+ InternalDecideRequestParameters = __decorate([
1710
+ (0, ts_serval_1.type)("InternalDecideRequestParameters")
1711
+ ], InternalDecideRequestParameters);
1712
+ exports.InternalDecideRequestParameters = InternalDecideRequestParameters;
1713
+ var RequestDecision;
1714
+ (function (RequestDecision) {
1715
+ RequestDecision["Accept"] = "Accept";
1716
+ RequestDecision["Reject"] = "Reject";
1717
+ })(RequestDecision = exports.RequestDecision || (exports.RequestDecision = {}));
1718
+ //# sourceMappingURL=InternalDecideRequestParameters.js.map
1775
1719
 
1776
1720
  /***/ }),
1777
1721
 
@@ -1779,74 +1723,31 @@ exports.DecideRequestParameters = DecideRequestParameters;
1779
1723
  /*!******************************************************************************!*\
1780
1724
  !*** ./dist/modules/requests/incoming/decide/RejectRequestItemParameters.js ***!
1781
1725
  \******************************************************************************/
1782
- /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
1726
+ /***/ ((__unused_webpack_module, exports) => {
1783
1727
 
1784
1728
  "use strict";
1785
1729
 
1786
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
1787
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1788
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1789
- 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;
1790
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1791
- };
1792
- var __metadata = (this && this.__metadata) || function (k, v) {
1793
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
1794
- };
1795
1730
  Object.defineProperty(exports, "__esModule", ({ value: true }));
1796
- exports.RejectRequestItemParameters = void 0;
1797
- const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-serval");
1798
- const DecideRequestItemParameters_1 = __webpack_require__(/*! ./DecideRequestItemParameters */ "./dist/modules/requests/incoming/decide/DecideRequestItemParameters.js");
1799
- let RejectRequestItemParameters = class RejectRequestItemParameters extends DecideRequestItemParameters_1.DecideRequestItemParameters {
1800
- static from(value) {
1801
- return this.fromAny(value);
1802
- }
1803
- };
1804
- __decorate([
1805
- (0, ts_serval_1.serialize)(),
1806
- (0, ts_serval_1.validate)({ nullable: true }),
1807
- __metadata("design:type", String)
1808
- ], RejectRequestItemParameters.prototype, "code", void 0);
1809
- __decorate([
1810
- (0, ts_serval_1.serialize)(),
1811
- (0, ts_serval_1.validate)({ nullable: true }),
1812
- __metadata("design:type", String)
1813
- ], RejectRequestItemParameters.prototype, "message", void 0);
1814
- RejectRequestItemParameters = __decorate([
1815
- (0, ts_serval_1.type)("RejectRequestItemParameters")
1816
- ], RejectRequestItemParameters);
1817
- exports.RejectRequestItemParameters = RejectRequestItemParameters;
1818
1731
  //# sourceMappingURL=RejectRequestItemParameters.js.map
1819
1732
 
1820
1733
  /***/ }),
1821
1734
 
1822
- /***/ "./dist/modules/requests/incoming/decide/RejectRequestParameters.js":
1823
- /*!**************************************************************************!*\
1824
- !*** ./dist/modules/requests/incoming/decide/RejectRequestParameters.js ***!
1825
- \**************************************************************************/
1826
- /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
1735
+ /***/ "./dist/modules/requests/incoming/decide/RequestItemDecision.js":
1736
+ /*!**********************************************************************!*\
1737
+ !*** ./dist/modules/requests/incoming/decide/RequestItemDecision.js ***!
1738
+ \**********************************************************************/
1739
+ /***/ ((__unused_webpack_module, exports) => {
1827
1740
 
1828
1741
  "use strict";
1829
1742
 
1830
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
1831
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1832
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1833
- 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;
1834
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1835
- };
1836
1743
  Object.defineProperty(exports, "__esModule", ({ value: true }));
1837
- exports.RejectRequestParameters = void 0;
1838
- const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-serval");
1839
- const DecideRequestParameters_1 = __webpack_require__(/*! ./DecideRequestParameters */ "./dist/modules/requests/incoming/decide/DecideRequestParameters.js");
1840
- let RejectRequestParameters = class RejectRequestParameters extends DecideRequestParameters_1.DecideRequestParameters {
1841
- static from(value) {
1842
- return this.fromAny(value);
1843
- }
1844
- };
1845
- RejectRequestParameters = __decorate([
1846
- (0, ts_serval_1.type)("RejectRequestParameters")
1847
- ], RejectRequestParameters);
1848
- exports.RejectRequestParameters = RejectRequestParameters;
1849
- //# sourceMappingURL=RejectRequestParameters.js.map
1744
+ exports.RequestItemDecision = void 0;
1745
+ var RequestItemDecision;
1746
+ (function (RequestItemDecision) {
1747
+ RequestItemDecision["Accept"] = "Accept";
1748
+ RequestItemDecision["Reject"] = "Reject";
1749
+ })(RequestItemDecision = exports.RequestItemDecision || (exports.RequestItemDecision = {}));
1750
+ //# sourceMappingURL=RequestItemDecision.js.map
1850
1751
 
1851
1752
  /***/ }),
1852
1753