@nmshd/runtime 2.0.0-beta.14 → 2.0.0-beta.15

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.
@@ -5,5 +5,5 @@ export * from "./DownloadFile";
5
5
  export * from "./FileMapper";
6
6
  export * from "./GetFile";
7
7
  export * from "./GetFiles";
8
- export * from "./LoadPeerFile";
8
+ export * from "./GetOrLoadFile";
9
9
  export * from "./UploadOwnFile";
@@ -21,6 +21,6 @@ __exportStar(require("./DownloadFile"), exports);
21
21
  __exportStar(require("./FileMapper"), exports);
22
22
  __exportStar(require("./GetFile"), exports);
23
23
  __exportStar(require("./GetFiles"), exports);
24
- __exportStar(require("./LoadPeerFile"), exports);
24
+ __exportStar(require("./GetOrLoadFile"), exports);
25
25
  __exportStar(require("./UploadOwnFile"), exports);
26
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/useCases/transport/files/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,uDAAqC;AACrC,6DAA2C;AAC3C,iDAA+B;AAC/B,+CAA6B;AAC7B,4CAA0B;AAC1B,6CAA2B;AAC3B,iDAA+B;AAC/B,kDAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/useCases/transport/files/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC;AACtC,uDAAqC;AACrC,6DAA2C;AAC3C,iDAA+B;AAC/B,+CAA6B;AAC7B,4CAA0B;AAC1B,6CAA2B;AAC3B,kDAAgC;AAChC,kDAAgC"}
@@ -446,11 +446,11 @@ const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
446
446
  const crypto_1 = __webpack_require__(/*! @nmshd/crypto */ "@nmshd/crypto");
447
447
  const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
448
448
  exports.buildInformation = {
449
- version: "2.0.0-beta.14",
450
- build: "100",
451
- date: "2022-08-02T11:37:46+00:00",
452
- commit: "39b536983ccf00409c90ece69069568f05d51019",
453
- dependencies: {"@js-soft/docdb-querytranslator":"1.1.0","@js-soft/logging-abstractions":"1.0.0","@js-soft/ts-serval":"2.0.4","@js-soft/ts-utils":"^2.2.1","@nmshd/consumption":"2.0.0-beta.4","@nmshd/content":"2.0.0-alpha.45","@nmshd/crypto":"2.0.1","@nmshd/transport":"2.0.0-beta.3","ajv":"^8.11.0","ajv-errors":"^3.0.0","ajv-formats":"^2.1.1","json-stringify-safe":"^5.0.1","luxon":"^3.0.1","qrcode":"1.5.1","reflect-metadata":"0.1.13","ts-simple-nameof":"1.3.1","typescript-ioc":"3.2.2"},
449
+ version: "2.0.0-beta.15",
450
+ build: "101",
451
+ date: "2022-08-03T10:47:00+00:00",
452
+ commit: "33cc1cdc029fe692db43197f346a29fd6557a8d2",
453
+ dependencies: {"@js-soft/docdb-querytranslator":"1.1.0","@js-soft/logging-abstractions":"1.0.0","@js-soft/ts-serval":"2.0.4","@js-soft/ts-utils":"^2.2.2","@nmshd/consumption":"2.0.0-beta.6","@nmshd/content":"2.0.0-beta.3","@nmshd/crypto":"2.0.1","@nmshd/transport":"2.0.0-beta.4","ajv":"^8.11.0","ajv-errors":"^3.0.0","ajv-formats":"^2.1.1","json-stringify-safe":"^5.0.1","luxon":"^3.0.1","qrcode":"1.5.1","reflect-metadata":"0.1.13","ts-simple-nameof":"1.3.1","typescript-ioc":"3.2.2"},
454
454
  libraries: {
455
455
  serval: ts_serval_1.buildInformation,
456
456
  consumption: consumption_1.buildInformation,
@@ -3657,9 +3657,9 @@ exports.FilesFacade = void 0;
3657
3657
  const typescript_ioc_1 = __webpack_require__(/*! typescript-ioc */ "./node_modules/typescript-ioc/dist/typescript-ioc.js");
3658
3658
  const useCases_1 = __webpack_require__(/*! ../../../useCases */ "./dist/useCases/index.js");
3659
3659
  let FilesFacade = class FilesFacade {
3660
- constructor(uploadOwnFileUseCase, loadPeerFileUseCase, getFilesUseCase, downloadFileUseCase, getFileUseCase, createQrCodeForFileUseCase, createTokenForFileUseCase, createTokenQrCodeForFileUseCase) {
3660
+ constructor(uploadOwnFileUseCase, getOrLoadFileUseCase, getFilesUseCase, downloadFileUseCase, getFileUseCase, createQrCodeForFileUseCase, createTokenForFileUseCase, createTokenQrCodeForFileUseCase) {
3661
3661
  this.uploadOwnFileUseCase = uploadOwnFileUseCase;
3662
- this.loadPeerFileUseCase = loadPeerFileUseCase;
3662
+ this.getOrLoadFileUseCase = getOrLoadFileUseCase;
3663
3663
  this.getFilesUseCase = getFilesUseCase;
3664
3664
  this.downloadFileUseCase = downloadFileUseCase;
3665
3665
  this.getFileUseCase = getFileUseCase;
@@ -3670,8 +3670,8 @@ let FilesFacade = class FilesFacade {
3670
3670
  async getFiles(request) {
3671
3671
  return await this.getFilesUseCase.execute(request);
3672
3672
  }
3673
- async loadPeerFile(request) {
3674
- return await this.loadPeerFileUseCase.execute(request);
3673
+ async getOrLoadFile(request) {
3674
+ return await this.getOrLoadFileUseCase.execute(request);
3675
3675
  }
3676
3676
  async downloadFile(request) {
3677
3677
  return await this.downloadFileUseCase.execute(request);
@@ -3702,7 +3702,7 @@ FilesFacade = __decorate([
3702
3702
  __param(6, typescript_ioc_1.Inject),
3703
3703
  __param(7, typescript_ioc_1.Inject),
3704
3704
  __metadata("design:paramtypes", [useCases_1.UploadOwnFileUseCase,
3705
- useCases_1.LoadPeerFileUseCase,
3705
+ useCases_1.GetOrLoadFileUseCase,
3706
3706
  useCases_1.GetFilesUseCase,
3707
3707
  useCases_1.DownloadFileUseCase,
3708
3708
  useCases_1.GetFileUseCase,
@@ -5473,7 +5473,7 @@ exports.JsonSchema = JsonSchema;
5473
5473
 
5474
5474
  Object.defineProperty(exports, "__esModule", ({ value: true }));
5475
5475
  exports.DeleteDeviceRequest = exports.CreateDeviceOnboardingTokenRequest = exports.CreateDeviceRequest = exports.ValidateChallengeRequest = exports.CreateChallengeRequest = exports.CreateDeviceChallengeRequest = exports.CreateIdentityChallengeRequest = exports.CreateRelationshipChallengeRequest = exports.SyncEverythingRequest = exports.DownloadAttachmentRequest = exports.DownloadFileRequest = exports.SyncDatawalletRequest = exports.RegisterPushNotificationTokenRequest = exports.UpdateSettingRequest = exports.GetSettingsRequest = exports.GetSettingRequest = exports.DeleteSettingRequest = exports.CreateSettingRequest = exports.SentOutgoingRequestRequest = exports.RequireManualDecisionOfIncomingRequestRequest = exports.ReceivedIncomingRequestRequest = exports.GetOutgoingRequestsRequest = exports.GetOutgoingRequestRequest = exports.GetIncomingRequestsRequest = exports.GetIncomingRequestRequest = exports.CreateAndCompleteOutgoingRequestFromRelationshipCreationChangeRequest = exports.CompleteOutgoingRequestRequest = exports.CompleteIncomingRequestRequest = exports.CheckPrerequisitesOfIncomingRequestRequest = exports.RejectIncomingRequestRequest = exports.CreateOutgoingRequestRequest = exports.AcceptIncomingRequestRequest = exports.UpdateDraftRequest = exports.GetDraftsRequest = exports.GetDraftRequest = exports.DeleteDraftRequest = exports.CreateDraftRequest = exports.UpdateAttributeRequest = exports.SucceedAttributeRequest = exports.GetSharedToPeerAttributesRequest = exports.GetPeerAttributesRequest = exports.GetAttributesRequest = exports.GetAttributeRequest = exports.ExecuteRelationshipAttributeQueryRequest = exports.ExecuteIdentityAttributeQueryRequest = exports.DeleteAttributeRequest = exports.CreateSharedAttributeCopyRequest = exports.CreateAttributeRequest = exports.LoadPeerTokenAnonymousByTruncatedReferenceRequest = exports.LoadPeerTokenAnonymousByIdAndKeyRequest = void 0;
5476
- exports.LoadPeerTokenRequest = exports.LoadPeerTokenViaSecretRequest = exports.LoadPeerTokenViaReferenceRequest = exports.GetTokensRequest = exports.GetTokenRequest = exports.GetQRCodeForTokenRequest = exports.CreateOwnTokenRequest = exports.LoadPeerRelationshipTemplateRequest = exports.LoadPeerRelationshipTemplateViaReferenceRequest = exports.LoadPeerRelationshipTemplateViaSecretRequest = exports.GetRelationshipTemplatesRequest = exports.GetRelationshipTemplateRequest = exports.CreateTokenQrCodeForOwnTemplateRequest = exports.CreateTokenForOwnTemplateRequest = exports.CreateQrCodeForOwnTemplateRequest = exports.CreateOwnRelationshipTemplateRequest = exports.RevokeRelationshipChangeRequest = exports.RejectRelationshipChangeRequest = exports.GetRelationshipsRequest = exports.GetRelationshipByAddressRequest = exports.GetRelationshipRequest = exports.GetAttributesForRelationshipRequest = exports.CreateRelationshipChangeRequest = exports.CreateRelationshipRequest = exports.AcceptRelationshipChangeRequest = exports.SendMessageRequest = exports.GetMessagesRequest = exports.GetMessageRequest = exports.GetAttachmentMetadataRequest = exports.CheckIdentityRequest = exports.UploadOwnFileValidatableRequest = exports.UploadOwnFileRequest = exports.LoadPeerFileRequest = exports.LoadPeerFileViaReferenceRequest = exports.LoadPeerFileViaSecretRequest = exports.GetFilesRequest = exports.GetFileRequest = exports.CreateTokenQrCodeForFileRequest = exports.CreateTokenForFileRequest = exports.CreateQrCodeForFileRequest = exports.UpdateDeviceRequest = exports.GetDeviceOnboardingInfoRequest = exports.GetDeviceRequest = void 0;
5476
+ exports.LoadPeerTokenRequest = exports.LoadPeerTokenViaSecretRequest = exports.LoadPeerTokenViaReferenceRequest = exports.GetTokensRequest = exports.GetTokenRequest = exports.GetQRCodeForTokenRequest = exports.CreateOwnTokenRequest = exports.LoadPeerRelationshipTemplateRequest = exports.LoadPeerRelationshipTemplateViaReferenceRequest = exports.LoadPeerRelationshipTemplateViaSecretRequest = exports.GetRelationshipTemplatesRequest = exports.GetRelationshipTemplateRequest = exports.CreateTokenQrCodeForOwnTemplateRequest = exports.CreateTokenForOwnTemplateRequest = exports.CreateQrCodeForOwnTemplateRequest = exports.CreateOwnRelationshipTemplateRequest = exports.RevokeRelationshipChangeRequest = exports.RejectRelationshipChangeRequest = exports.GetRelationshipsRequest = exports.GetRelationshipByAddressRequest = exports.GetRelationshipRequest = exports.GetAttributesForRelationshipRequest = exports.CreateRelationshipChangeRequest = exports.CreateRelationshipRequest = exports.AcceptRelationshipChangeRequest = exports.SendMessageRequest = exports.GetMessagesRequest = exports.GetMessageRequest = exports.GetAttachmentMetadataRequest = exports.CheckIdentityRequest = exports.UploadOwnFileValidatableRequest = exports.UploadOwnFileRequest = exports.GetOrLoadFileRequest = exports.GetOrLoadFileViaReferenceRequest = exports.GetOrLoadFileViaSecretRequest = exports.GetFilesRequest = exports.GetFileRequest = exports.CreateTokenQrCodeForFileRequest = exports.CreateTokenForFileRequest = exports.CreateQrCodeForFileRequest = exports.UpdateDeviceRequest = exports.GetDeviceOnboardingInfoRequest = exports.GetDeviceRequest = void 0;
5477
5477
  exports.LoadPeerTokenAnonymousByIdAndKeyRequest = {
5478
5478
  "$schema": "http://json-schema.org/draft-07/schema#",
5479
5479
  "$ref": "#/definitions/LoadPeerTokenAnonymousByIdAndKeyRequest",
@@ -7306,6 +7306,14 @@ exports.CreateOutgoingRequestRequest = {
7306
7306
  ],
7307
7307
  "description": "The items of the Request. Can be either a single {@link RequestItemJSONDerivations RequestItem } or a {@link RequestItemGroupJSON RequestItemGroup } , which itself can contain further {@link RequestItemJSONDerivations RequestItems } ."
7308
7308
  },
7309
+ "title": {
7310
+ "type": "string",
7311
+ "description": "The human-readable title of this Request."
7312
+ },
7313
+ "description": {
7314
+ "type": "string",
7315
+ "description": "The human-readable description of this Request."
7316
+ },
7309
7317
  "metadata": {
7310
7318
  "anyOf": [
7311
7319
  {
@@ -7410,6 +7418,9 @@ exports.CreateOutgoingRequestRequest = {
7410
7418
  },
7411
7419
  {
7412
7420
  "$ref": "#/definitions/ShareAttributeRequestItemJSON"
7421
+ },
7422
+ {
7423
+ "$ref": "#/definitions/ConsentRequestItemJSON"
7413
7424
  }
7414
7425
  ]
7415
7426
  },
@@ -7941,6 +7952,51 @@ exports.CreateOutgoingRequestRequest = {
7941
7952
  ],
7942
7953
  "additionalProperties": false
7943
7954
  },
7955
+ "ConsentRequestItemJSON": {
7956
+ "type": "object",
7957
+ "properties": {
7958
+ "@type": {
7959
+ "type": "string"
7960
+ },
7961
+ "@context": {
7962
+ "type": "string"
7963
+ },
7964
+ "@version": {
7965
+ "type": "string"
7966
+ },
7967
+ "title": {
7968
+ "type": "string",
7969
+ "description": "The human-readable title of this item."
7970
+ },
7971
+ "description": {
7972
+ "type": "string",
7973
+ "description": "The human-readable description of this item."
7974
+ },
7975
+ "metadata": {
7976
+ "type": "object",
7977
+ "description": "This property can be used to add some arbitrary metadata to this item. The content of this property will be copied into the response on the side of the recipient, so the sender can use it to identify the group content as they receive the response."
7978
+ },
7979
+ "mustBeAccepted": {
7980
+ "type": "boolean",
7981
+ "description": "If set to `true`, the recipient has to accept this group if he wants to accept the Request. If set to `false`, the recipient can decide whether he wants to accept it or not.\n\nCaution: this setting does not take effect in case it is inside of a\n {@link RequestItemGroupJSON RequestItemGroup } , which is not accepted by the recipient, since a {@link RequestItemJSON RequestItem } can only be accepted if the parent group is accepted as well."
7982
+ },
7983
+ "consent": {
7984
+ "type": "string"
7985
+ },
7986
+ "link": {
7987
+ "type": "string"
7988
+ },
7989
+ "requireActiveConsent": {
7990
+ "type": "boolean"
7991
+ }
7992
+ },
7993
+ "required": [
7994
+ "@type",
7995
+ "consent",
7996
+ "mustBeAccepted"
7997
+ ],
7998
+ "additionalProperties": false
7999
+ },
7944
8000
  "IRequestItemGroup": {
7945
8001
  "type": "object",
7946
8002
  "properties": {
@@ -7991,6 +8047,9 @@ exports.CreateOutgoingRequestRequest = {
7991
8047
  },
7992
8048
  {
7993
8049
  "$ref": "#/definitions/IShareAttributeRequestItem"
8050
+ },
8051
+ {
8052
+ "$ref": "#/definitions/IConsentRequestItem"
7994
8053
  }
7995
8054
  ]
7996
8055
  },
@@ -8414,6 +8473,41 @@ exports.CreateOutgoingRequestRequest = {
8414
8473
  ],
8415
8474
  "additionalProperties": false
8416
8475
  },
8476
+ "IConsentRequestItem": {
8477
+ "type": "object",
8478
+ "properties": {
8479
+ "title": {
8480
+ "type": "string",
8481
+ "description": "The human-readable title of this item."
8482
+ },
8483
+ "description": {
8484
+ "type": "string",
8485
+ "description": "The human-readable description of this item."
8486
+ },
8487
+ "metadata": {
8488
+ "type": "object",
8489
+ "description": "This property can be used to add some arbitrary metadata to this item. The content of this property will be copied into the response on the side of the recipient, so the sender can use it to identify the group content as they receive the response."
8490
+ },
8491
+ "mustBeAccepted": {
8492
+ "type": "boolean",
8493
+ "description": "If set to `true`, the recipient has to accept this group if he wants to accept the Request. If set to `false`, the recipient can decide whether he wants to accept it or not.\n\nCaution: this setting does not take effect in case it is inside of a\n {@link RequestItemGroup RequestItemGroup } , which is not accepted by the recipient, since a {@link RequestItem RequestItem } can only be accepted if the parent group is accepted as well."
8494
+ },
8495
+ "consent": {
8496
+ "type": "string"
8497
+ },
8498
+ "link": {
8499
+ "type": "string"
8500
+ },
8501
+ "requireActiveConsent": {
8502
+ "type": "boolean"
8503
+ }
8504
+ },
8505
+ "required": [
8506
+ "consent",
8507
+ "mustBeAccepted"
8508
+ ],
8509
+ "additionalProperties": false
8510
+ },
8417
8511
  "AddressString": {
8418
8512
  "type": "string",
8419
8513
  "pattern": "id1[A-Za-z0-9]{32,33}"
@@ -9537,6 +9631,14 @@ exports.ReceivedIncomingRequestRequest = {
9537
9631
  },
9538
9632
  "description": "The items of the Request. Can be either a single {@link RequestItemJSONDerivations RequestItem } or a {@link RequestItemGroupJSON RequestItemGroup } , which itself can contain further {@link RequestItemJSONDerivations RequestItems } ."
9539
9633
  },
9634
+ "title": {
9635
+ "type": "string",
9636
+ "description": "The human-readable title of this Request."
9637
+ },
9638
+ "description": {
9639
+ "type": "string",
9640
+ "description": "The human-readable description of this Request."
9641
+ },
9540
9642
  "metadata": {
9541
9643
  "type": "object",
9542
9644
  "description": "This property can be used to add some arbitrary metadata to this request. The content of this property will be copied into the response on the side of the recipient."
@@ -9608,6 +9710,9 @@ exports.ReceivedIncomingRequestRequest = {
9608
9710
  },
9609
9711
  {
9610
9712
  "$ref": "#/definitions/ShareAttributeRequestItemJSON"
9713
+ },
9714
+ {
9715
+ "$ref": "#/definitions/ConsentRequestItemJSON"
9611
9716
  }
9612
9717
  ]
9613
9718
  },
@@ -10139,6 +10244,51 @@ exports.ReceivedIncomingRequestRequest = {
10139
10244
  ],
10140
10245
  "additionalProperties": false
10141
10246
  },
10247
+ "ConsentRequestItemJSON": {
10248
+ "type": "object",
10249
+ "properties": {
10250
+ "@type": {
10251
+ "type": "string"
10252
+ },
10253
+ "@context": {
10254
+ "type": "string"
10255
+ },
10256
+ "@version": {
10257
+ "type": "string"
10258
+ },
10259
+ "title": {
10260
+ "type": "string",
10261
+ "description": "The human-readable title of this item."
10262
+ },
10263
+ "description": {
10264
+ "type": "string",
10265
+ "description": "The human-readable description of this item."
10266
+ },
10267
+ "metadata": {
10268
+ "type": "object",
10269
+ "description": "This property can be used to add some arbitrary metadata to this item. The content of this property will be copied into the response on the side of the recipient, so the sender can use it to identify the group content as they receive the response."
10270
+ },
10271
+ "mustBeAccepted": {
10272
+ "type": "boolean",
10273
+ "description": "If set to `true`, the recipient has to accept this group if he wants to accept the Request. If set to `false`, the recipient can decide whether he wants to accept it or not.\n\nCaution: this setting does not take effect in case it is inside of a\n {@link RequestItemGroupJSON RequestItemGroup } , which is not accepted by the recipient, since a {@link RequestItemJSON RequestItem } can only be accepted if the parent group is accepted as well."
10274
+ },
10275
+ "consent": {
10276
+ "type": "string"
10277
+ },
10278
+ "link": {
10279
+ "type": "string"
10280
+ },
10281
+ "requireActiveConsent": {
10282
+ "type": "boolean"
10283
+ }
10284
+ },
10285
+ "required": [
10286
+ "@type",
10287
+ "consent",
10288
+ "mustBeAccepted"
10289
+ ],
10290
+ "additionalProperties": false
10291
+ },
10142
10292
  "MessageIdString": {
10143
10293
  "type": "string",
10144
10294
  "pattern": "MSG[A-Za-z0-9]{17}"
@@ -11078,11 +11228,11 @@ exports.GetFilesRequest = {
11078
11228
  }
11079
11229
  }
11080
11230
  };
11081
- exports.LoadPeerFileViaSecretRequest = {
11231
+ exports.GetOrLoadFileViaSecretRequest = {
11082
11232
  "$schema": "http://json-schema.org/draft-07/schema#",
11083
- "$ref": "#/definitions/LoadPeerFileViaSecretRequest",
11233
+ "$ref": "#/definitions/GetOrLoadFileViaSecretRequest",
11084
11234
  "definitions": {
11085
- "LoadPeerFileViaSecretRequest": {
11235
+ "GetOrLoadFileViaSecretRequest": {
11086
11236
  "type": "object",
11087
11237
  "properties": {
11088
11238
  "id": {
@@ -11105,11 +11255,11 @@ exports.LoadPeerFileViaSecretRequest = {
11105
11255
  }
11106
11256
  }
11107
11257
  };
11108
- exports.LoadPeerFileViaReferenceRequest = {
11258
+ exports.GetOrLoadFileViaReferenceRequest = {
11109
11259
  "$schema": "http://json-schema.org/draft-07/schema#",
11110
- "$ref": "#/definitions/LoadPeerFileViaReferenceRequest",
11260
+ "$ref": "#/definitions/GetOrLoadFileViaReferenceRequest",
11111
11261
  "definitions": {
11112
- "LoadPeerFileViaReferenceRequest": {
11262
+ "GetOrLoadFileViaReferenceRequest": {
11113
11263
  "type": "object",
11114
11264
  "properties": {
11115
11265
  "reference": {
@@ -11139,21 +11289,21 @@ exports.LoadPeerFileViaReferenceRequest = {
11139
11289
  }
11140
11290
  }
11141
11291
  };
11142
- exports.LoadPeerFileRequest = {
11292
+ exports.GetOrLoadFileRequest = {
11143
11293
  "$schema": "http://json-schema.org/draft-07/schema#",
11144
- "$ref": "#/definitions/LoadPeerFileRequest",
11294
+ "$ref": "#/definitions/GetOrLoadFileRequest",
11145
11295
  "definitions": {
11146
- "LoadPeerFileRequest": {
11296
+ "GetOrLoadFileRequest": {
11147
11297
  "anyOf": [
11148
11298
  {
11149
- "$ref": "#/definitions/LoadPeerFileViaSecretRequest"
11299
+ "$ref": "#/definitions/GetOrLoadFileViaSecretRequest"
11150
11300
  },
11151
11301
  {
11152
- "$ref": "#/definitions/LoadPeerFileViaReferenceRequest"
11302
+ "$ref": "#/definitions/GetOrLoadFileViaReferenceRequest"
11153
11303
  }
11154
11304
  ]
11155
11305
  },
11156
- "LoadPeerFileViaSecretRequest": {
11306
+ "GetOrLoadFileViaSecretRequest": {
11157
11307
  "type": "object",
11158
11308
  "properties": {
11159
11309
  "id": {
@@ -11174,7 +11324,7 @@ exports.LoadPeerFileRequest = {
11174
11324
  "type": "string",
11175
11325
  "pattern": "FIL[A-Za-z0-9]{17}"
11176
11326
  },
11177
- "LoadPeerFileViaReferenceRequest": {
11327
+ "GetOrLoadFileViaReferenceRequest": {
11178
11328
  "type": "object",
11179
11329
  "properties": {
11180
11330
  "reference": {
@@ -17147,10 +17297,10 @@ exports.GetFilesUseCase = GetFilesUseCase;
17147
17297
 
17148
17298
  /***/ }),
17149
17299
 
17150
- /***/ "./dist/useCases/transport/files/LoadPeerFile.js":
17151
- /*!*******************************************************!*\
17152
- !*** ./dist/useCases/transport/files/LoadPeerFile.js ***!
17153
- \*******************************************************/
17300
+ /***/ "./dist/useCases/transport/files/GetOrLoadFile.js":
17301
+ /*!********************************************************!*\
17302
+ !*** ./dist/useCases/transport/files/GetOrLoadFile.js ***!
17303
+ \********************************************************/
17154
17304
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
17155
17305
 
17156
17306
  "use strict";
@@ -17168,36 +17318,36 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
17168
17318
  return function (target, key) { decorator(target, key, paramIndex); }
17169
17319
  };
17170
17320
  Object.defineProperty(exports, "__esModule", ({ value: true }));
17171
- exports.LoadPeerFileUseCase = void 0;
17321
+ exports.GetOrLoadFileUseCase = void 0;
17172
17322
  const ts_utils_1 = __webpack_require__(/*! @js-soft/ts-utils */ "./node_modules/@js-soft/ts-utils/dist/index.js");
17173
17323
  const crypto_1 = __webpack_require__(/*! @nmshd/crypto */ "@nmshd/crypto");
17174
17324
  const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
17175
17325
  const typescript_ioc_1 = __webpack_require__(/*! typescript-ioc */ "./node_modules/typescript-ioc/dist/typescript-ioc.js");
17176
17326
  const common_1 = __webpack_require__(/*! ../../common */ "./dist/useCases/common/index.js");
17177
17327
  const FileMapper_1 = __webpack_require__(/*! ./FileMapper */ "./dist/useCases/transport/files/FileMapper.js");
17178
- function isLoadPeerFileViaSecret(request) {
17328
+ function isViaSecret(request) {
17179
17329
  return "id" in request && "secretKey" in request;
17180
17330
  }
17181
- function isLoadPeerFileViaReference(request) {
17331
+ function isViaReference(request) {
17182
17332
  return "reference" in request;
17183
17333
  }
17184
17334
  let Validator = class Validator extends common_1.SchemaValidator {
17185
17335
  constructor(schemaRepository) {
17186
- super(schemaRepository.getSchema("LoadPeerFileRequest"));
17187
- this.loadViaSecretSchema = schemaRepository.getSchema("LoadPeerFileViaSecretRequest");
17188
- this.loadViaReferenceSchema = schemaRepository.getSchema("LoadPeerFileViaReferenceRequest");
17336
+ super(schemaRepository.getSchema("GetOrLoadFileRequest"));
17337
+ this.loadViaSecretSchema = schemaRepository.getSchema("GetOrLoadFileViaSecretRequest");
17338
+ this.loadViaReferenceSchema = schemaRepository.getSchema("GetOrLoadFileViaReferenceRequest");
17189
17339
  }
17190
17340
  validate(input) {
17191
17341
  if (this.schema.validate(input).isValid)
17192
17342
  return new common_1.ValidationResult();
17193
17343
  // any-of in combination with missing properties is a bit weird
17194
17344
  // when { reference: null | undefined } is passed, it ignores reference
17195
- // and treats it like a LoadPeerFileViaSecret.
17345
+ // and treats it like a GetOrLoadFileViaSecret.
17196
17346
  // That's why we validate with the specific schema afterwards
17197
- if (isLoadPeerFileViaReference(input)) {
17347
+ if (isViaReference(input)) {
17198
17348
  return this.convertValidationResult(this.loadViaReferenceSchema.validate(input));
17199
17349
  }
17200
- else if (isLoadPeerFileViaSecret(input)) {
17350
+ else if (isViaSecret(input)) {
17201
17351
  return this.convertValidationResult(this.loadViaSecretSchema.validate(input));
17202
17352
  }
17203
17353
  const result = new common_1.ValidationResult();
@@ -17209,7 +17359,7 @@ Validator = __decorate([
17209
17359
  __param(0, typescript_ioc_1.Inject),
17210
17360
  __metadata("design:paramtypes", [common_1.SchemaRepository])
17211
17361
  ], Validator);
17212
- let LoadPeerFileUseCase = class LoadPeerFileUseCase extends common_1.UseCase {
17362
+ let GetOrLoadFileUseCase = class GetOrLoadFileUseCase extends common_1.UseCase {
17213
17363
  constructor(fileController, tokenController, accountController, validator) {
17214
17364
  super(validator);
17215
17365
  this.fileController = fileController;
@@ -17218,11 +17368,11 @@ let LoadPeerFileUseCase = class LoadPeerFileUseCase extends common_1.UseCase {
17218
17368
  }
17219
17369
  async executeInternal(request) {
17220
17370
  let createdFileResult;
17221
- if (isLoadPeerFileViaSecret(request)) {
17371
+ if (isViaSecret(request)) {
17222
17372
  const key = crypto_1.CryptoSecretKey.fromBase64(request.secretKey);
17223
17373
  createdFileResult = await this.loadFile(transport_1.CoreId.from(request.id), key);
17224
17374
  }
17225
- else if (isLoadPeerFileViaReference(request)) {
17375
+ else if (isViaReference(request)) {
17226
17376
  createdFileResult = await this.loadFileFromReference(request.reference);
17227
17377
  }
17228
17378
  else {
@@ -17241,7 +17391,7 @@ let LoadPeerFileUseCase = class LoadPeerFileUseCase extends common_1.UseCase {
17241
17391
  throw common_1.RuntimeErrors.files.invalidReference(reference);
17242
17392
  }
17243
17393
  async loadFileFromFileReference(truncatedReference) {
17244
- const file = await this.fileController.loadPeerFileByTruncated(truncatedReference);
17394
+ const file = await this.fileController.getOrLoadFileByTruncated(truncatedReference);
17245
17395
  return ts_utils_1.Result.ok(FileMapper_1.FileMapper.toFileDTO(file));
17246
17396
  }
17247
17397
  async loadFileFromTokenReference(truncatedReference) {
@@ -17256,11 +17406,11 @@ let LoadPeerFileUseCase = class LoadPeerFileUseCase extends common_1.UseCase {
17256
17406
  return await this.loadFile(content.fileId, content.secretKey);
17257
17407
  }
17258
17408
  async loadFile(id, key) {
17259
- const file = await this.fileController.loadPeerFile(id, key);
17409
+ const file = await this.fileController.getOrLoadFile(id, key);
17260
17410
  return ts_utils_1.Result.ok(FileMapper_1.FileMapper.toFileDTO(file));
17261
17411
  }
17262
17412
  };
17263
- LoadPeerFileUseCase = __decorate([
17413
+ GetOrLoadFileUseCase = __decorate([
17264
17414
  __param(0, typescript_ioc_1.Inject),
17265
17415
  __param(1, typescript_ioc_1.Inject),
17266
17416
  __param(2, typescript_ioc_1.Inject),
@@ -17269,9 +17419,9 @@ LoadPeerFileUseCase = __decorate([
17269
17419
  transport_1.TokenController,
17270
17420
  transport_1.AccountController,
17271
17421
  Validator])
17272
- ], LoadPeerFileUseCase);
17273
- exports.LoadPeerFileUseCase = LoadPeerFileUseCase;
17274
- //# sourceMappingURL=LoadPeerFile.js.map
17422
+ ], GetOrLoadFileUseCase);
17423
+ exports.GetOrLoadFileUseCase = GetOrLoadFileUseCase;
17424
+ //# sourceMappingURL=GetOrLoadFile.js.map
17275
17425
 
17276
17426
  /***/ }),
17277
17427
 
@@ -17393,7 +17543,7 @@ __exportStar(__webpack_require__(/*! ./DownloadFile */ "./dist/useCases/transpor
17393
17543
  __exportStar(__webpack_require__(/*! ./FileMapper */ "./dist/useCases/transport/files/FileMapper.js"), exports);
17394
17544
  __exportStar(__webpack_require__(/*! ./GetFile */ "./dist/useCases/transport/files/GetFile.js"), exports);
17395
17545
  __exportStar(__webpack_require__(/*! ./GetFiles */ "./dist/useCases/transport/files/GetFiles.js"), exports);
17396
- __exportStar(__webpack_require__(/*! ./LoadPeerFile */ "./dist/useCases/transport/files/LoadPeerFile.js"), exports);
17546
+ __exportStar(__webpack_require__(/*! ./GetOrLoadFile */ "./dist/useCases/transport/files/GetOrLoadFile.js"), exports);
17397
17547
  __exportStar(__webpack_require__(/*! ./UploadOwnFile */ "./dist/useCases/transport/files/UploadOwnFile.js"), exports);
17398
17548
  //# sourceMappingURL=index.js.map
17399
17549
 
@@ -20536,7 +20686,7 @@ class ApplicationError extends Error {
20536
20686
  return this.code === error.code;
20537
20687
  }
20538
20688
  toString() {
20539
- return JSON.stringify(this, undefined, 2);
20689
+ return JSON.stringify({ code: this.code, message: this.message, data: this.data }, undefined, 2);
20540
20690
  }
20541
20691
  }
20542
20692
  exports.ApplicationError = ApplicationError;