@nmshd/runtime 5.0.0-alpha.2 → 5.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.
- package/dist/buildInformation.js +5 -5
- package/dist/extensibility/facades/consumption/AttributesFacade.d.ts +4 -2
- package/dist/extensibility/facades/consumption/AttributesFacade.d.ts.map +1 -1
- package/dist/extensibility/facades/consumption/AttributesFacade.js +8 -2
- package/dist/extensibility/facades/consumption/AttributesFacade.js.map +1 -1
- package/dist/modules/RequestModule.d.ts.map +1 -1
- package/dist/modules/RequestModule.js +6 -2
- package/dist/modules/RequestModule.js.map +1 -1
- package/dist/useCases/common/RuntimeErrors.d.ts +1 -1
- package/dist/useCases/common/RuntimeErrors.d.ts.map +1 -1
- package/dist/useCases/common/RuntimeErrors.js +3 -3
- package/dist/useCases/common/RuntimeErrors.js.map +1 -1
- package/dist/useCases/common/Schemas.d.ts +1 -0
- package/dist/useCases/common/Schemas.d.ts.map +1 -1
- package/dist/useCases/common/Schemas.js +25 -5
- package/dist/useCases/common/Schemas.js.map +1 -1
- package/dist/useCases/consumption/attributes/DeleteSharedAttributesForRejectedOrRevokedRelationship.d.ts +19 -0
- package/dist/useCases/consumption/attributes/DeleteSharedAttributesForRejectedOrRevokedRelationship.d.ts.map +1 -0
- package/dist/useCases/consumption/attributes/DeleteSharedAttributesForRejectedOrRevokedRelationship.js +68 -0
- package/dist/useCases/consumption/attributes/DeleteSharedAttributesForRejectedOrRevokedRelationship.js.map +1 -0
- package/dist/useCases/consumption/attributes/ShareRepositoryAttribute.d.ts.map +1 -1
- package/dist/useCases/consumption/attributes/ShareRepositoryAttribute.js +1 -15
- package/dist/useCases/consumption/attributes/ShareRepositoryAttribute.js.map +1 -1
- package/dist/useCases/consumption/attributes/index.d.ts +1 -0
- package/dist/useCases/consumption/attributes/index.d.ts.map +1 -1
- package/dist/useCases/consumption/attributes/index.js +1 -0
- package/dist/useCases/consumption/attributes/index.js.map +1 -1
- package/dist/useCases/transport/files/UploadOwnFile.d.ts +1 -1
- package/dist/useCases/transport/files/UploadOwnFile.d.ts.map +1 -1
- package/dist/useCases/transport/files/UploadOwnFile.js +4 -3
- package/dist/useCases/transport/files/UploadOwnFile.js.map +1 -1
- package/package.json +4 -4
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Result } from "@js-soft/ts-utils";
|
|
2
|
+
import { AttributesController } from "@nmshd/consumption";
|
|
3
|
+
import { AccountController, RelationshipsController } from "@nmshd/transport";
|
|
4
|
+
import { RelationshipIdString, SchemaRepository, SchemaValidator, UseCase } from "../../common";
|
|
5
|
+
export interface DeleteSharedAttributesForRejectedOrRevokedRelationshipRequest {
|
|
6
|
+
relationshipId: RelationshipIdString;
|
|
7
|
+
}
|
|
8
|
+
declare class Validator extends SchemaValidator<DeleteSharedAttributesForRejectedOrRevokedRelationshipRequest> {
|
|
9
|
+
constructor(schemaRepository: SchemaRepository);
|
|
10
|
+
}
|
|
11
|
+
export declare class DeleteSharedAttributesForRejectedOrRevokedRelationshipUseCase extends UseCase<DeleteSharedAttributesForRejectedOrRevokedRelationshipRequest, void> {
|
|
12
|
+
private readonly attributesController;
|
|
13
|
+
private readonly relationshipsController;
|
|
14
|
+
private readonly accountController;
|
|
15
|
+
constructor(attributesController: AttributesController, relationshipsController: RelationshipsController, accountController: AccountController, validator: Validator);
|
|
16
|
+
protected executeInternal(request: DeleteSharedAttributesForRejectedOrRevokedRelationshipRequest): Promise<Result<void>>;
|
|
17
|
+
}
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=DeleteSharedAttributesForRejectedOrRevokedRelationship.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DeleteSharedAttributesForRejectedOrRevokedRelationship.d.ts","sourceRoot":"","sources":["../../../../src/useCases/consumption/attributes/DeleteSharedAttributesForRejectedOrRevokedRelationship.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAwB,uBAAuB,EAAsB,MAAM,kBAAkB,CAAC;AAExH,OAAO,EAAE,oBAAoB,EAAiB,gBAAgB,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE/G,MAAM,WAAW,6DAA6D;IAC1E,cAAc,EAAE,oBAAoB,CAAC;CACxC;AAED,cAAM,SAAU,SAAQ,eAAe,CAAC,6DAA6D,CAAC;gBACvE,gBAAgB,EAAE,gBAAgB;CAGhE;AAED,qBAAa,6DAA8D,SAAQ,OAAO,CAAC,6DAA6D,EAAE,IAAI,CAAC;IAE/I,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IACxC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;gBAFjB,oBAAoB,EAAE,oBAAoB,EAC1C,uBAAuB,EAAE,uBAAuB,EAChD,iBAAiB,EAAE,iBAAiB,EACrD,SAAS,EAAE,SAAS;cAKhB,eAAe,CAAC,OAAO,EAAE,6DAA6D,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;CAyBjI"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.DeleteSharedAttributesForRejectedOrRevokedRelationshipUseCase = void 0;
|
|
16
|
+
const ts_utils_1 = require("@js-soft/ts-utils");
|
|
17
|
+
const consumption_1 = require("@nmshd/consumption");
|
|
18
|
+
const transport_1 = require("@nmshd/transport");
|
|
19
|
+
const typescript_ioc_1 = require("typescript-ioc");
|
|
20
|
+
const common_1 = require("../../common");
|
|
21
|
+
let Validator = class Validator extends common_1.SchemaValidator {
|
|
22
|
+
constructor(schemaRepository) {
|
|
23
|
+
super(schemaRepository.getSchema("DeleteSharedAttributesForRejectedOrRevokedRelationshipRequest"));
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
Validator = __decorate([
|
|
27
|
+
__param(0, typescript_ioc_1.Inject),
|
|
28
|
+
__metadata("design:paramtypes", [common_1.SchemaRepository])
|
|
29
|
+
], Validator);
|
|
30
|
+
let DeleteSharedAttributesForRejectedOrRevokedRelationshipUseCase = class DeleteSharedAttributesForRejectedOrRevokedRelationshipUseCase extends common_1.UseCase {
|
|
31
|
+
constructor(attributesController, relationshipsController, accountController, validator) {
|
|
32
|
+
super(validator);
|
|
33
|
+
this.attributesController = attributesController;
|
|
34
|
+
this.relationshipsController = relationshipsController;
|
|
35
|
+
this.accountController = accountController;
|
|
36
|
+
}
|
|
37
|
+
async executeInternal(request) {
|
|
38
|
+
const relationship = await this.relationshipsController.getRelationship(transport_1.CoreId.from(request.relationshipId));
|
|
39
|
+
if (!relationship) {
|
|
40
|
+
return ts_utils_1.Result.fail(common_1.RuntimeErrors.general.recordNotFound(transport_1.Relationship));
|
|
41
|
+
}
|
|
42
|
+
if (!(relationship.status === transport_1.RelationshipStatus.Rejected || relationship.status === transport_1.RelationshipStatus.Revoked)) {
|
|
43
|
+
return ts_utils_1.Result.fail(common_1.RuntimeErrors.relationships.isNeitherRejectedNorRevoked());
|
|
44
|
+
}
|
|
45
|
+
const sharedAttributes = await this.attributesController.getLocalAttributes({ "shareInfo.peer": relationship.peer.address.toString() });
|
|
46
|
+
for (const sharedAttribute of sharedAttributes) {
|
|
47
|
+
const validationResult = await this.attributesController.validateFullAttributeDeletionProcess(sharedAttribute);
|
|
48
|
+
if (validationResult.isError()) {
|
|
49
|
+
return ts_utils_1.Result.fail(validationResult.error);
|
|
50
|
+
}
|
|
51
|
+
await this.attributesController.executeFullAttributeDeletionProcess(sharedAttribute);
|
|
52
|
+
}
|
|
53
|
+
await this.accountController.syncDatawallet();
|
|
54
|
+
return ts_utils_1.Result.ok(undefined);
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
exports.DeleteSharedAttributesForRejectedOrRevokedRelationshipUseCase = DeleteSharedAttributesForRejectedOrRevokedRelationshipUseCase;
|
|
58
|
+
exports.DeleteSharedAttributesForRejectedOrRevokedRelationshipUseCase = DeleteSharedAttributesForRejectedOrRevokedRelationshipUseCase = __decorate([
|
|
59
|
+
__param(0, typescript_ioc_1.Inject),
|
|
60
|
+
__param(1, typescript_ioc_1.Inject),
|
|
61
|
+
__param(2, typescript_ioc_1.Inject),
|
|
62
|
+
__param(3, typescript_ioc_1.Inject),
|
|
63
|
+
__metadata("design:paramtypes", [consumption_1.AttributesController,
|
|
64
|
+
transport_1.RelationshipsController,
|
|
65
|
+
transport_1.AccountController,
|
|
66
|
+
Validator])
|
|
67
|
+
], DeleteSharedAttributesForRejectedOrRevokedRelationshipUseCase);
|
|
68
|
+
//# sourceMappingURL=DeleteSharedAttributesForRejectedOrRevokedRelationship.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DeleteSharedAttributesForRejectedOrRevokedRelationship.js","sourceRoot":"","sources":["../../../../src/useCases/consumption/attributes/DeleteSharedAttributesForRejectedOrRevokedRelationship.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,gDAA2C;AAC3C,oDAA0D;AAC1D,gDAAwH;AACxH,mDAAwC;AACxC,yCAA+G;AAM/G,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,wBAA8E;IAClG,YAA2B,gBAAkC;QACzD,KAAK,CAAC,gBAAgB,CAAC,SAAS,CAAC,+DAA+D,CAAC,CAAC,CAAC;IACvG,CAAC;CACJ,CAAA;AAJK,SAAS;IACS,WAAA,uBAAM,CAAA;qCAAmB,yBAAgB;GAD3D,SAAS,CAId;AAED,IAAa,6DAA6D,GAA1E,MAAa,6DAA8D,SAAQ,gBAA4E;IAC3J,YAC6B,oBAA0C,EAC1C,uBAAgD,EAChD,iBAAoC,EACrD,SAAoB;QAE5B,KAAK,CAAC,SAAS,CAAC,CAAC;QALQ,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,4BAAuB,GAAvB,uBAAuB,CAAyB;QAChD,sBAAiB,GAAjB,iBAAiB,CAAmB;IAIjE,CAAC;IAES,KAAK,CAAC,eAAe,CAAC,OAAsE;QAClG,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,eAAe,CAAC,kBAAM,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;QAC7G,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,OAAO,iBAAM,CAAC,IAAI,CAAC,sBAAa,CAAC,OAAO,CAAC,cAAc,CAAC,wBAAY,CAAC,CAAC,CAAC;QAC3E,CAAC;QAED,IAAI,CAAC,CAAC,YAAY,CAAC,MAAM,KAAK,8BAAkB,CAAC,QAAQ,IAAI,YAAY,CAAC,MAAM,KAAK,8BAAkB,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/G,OAAO,iBAAM,CAAC,IAAI,CAAC,sBAAa,CAAC,aAAa,CAAC,2BAA2B,EAAE,CAAC,CAAC;QAClF,CAAC;QAED,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,EAAE,gBAAgB,EAAE,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAExI,KAAK,MAAM,eAAe,IAAI,gBAAgB,EAAE,CAAC;YAC7C,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,oCAAoC,CAAC,eAAe,CAAC,CAAC;YAC/G,IAAI,gBAAgB,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC7B,OAAO,iBAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC/C,CAAC;YAED,MAAM,IAAI,CAAC,oBAAoB,CAAC,mCAAmC,CAAC,eAAe,CAAC,CAAC;QACzF,CAAC;QAED,MAAM,IAAI,CAAC,iBAAiB,CAAC,cAAc,EAAE,CAAC;QAE9C,OAAO,iBAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IAChC,CAAC;CACJ,CAAA;AAnCY,sIAA6D;wEAA7D,6DAA6D;IAEjE,WAAA,uBAAM,CAAA;IACN,WAAA,uBAAM,CAAA;IACN,WAAA,uBAAM,CAAA;IACN,WAAA,uBAAM,CAAA;qCAHwC,kCAAoB;QACjB,mCAAuB;QAC7B,6BAAiB;QAC1C,SAAS;GALvB,6DAA6D,CAmCzE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShareRepositoryAttribute.d.ts","sourceRoot":"","sources":["../../../../src/useCases/consumption/attributes/ShareRepositoryAttribute.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"ShareRepositoryAttribute.d.ts","sourceRoot":"","sources":["../../../../src/useCases/consumption/attributes/ShareRepositoryAttribute.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAA0E,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAE9J,OAAO,EAAE,iBAAiB,EAAuB,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE7F,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,qBAAqB,EAAiB,gBAAgB,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGlJ,MAAM,WAAW,+BAA+B;IAC5C,WAAW,EAAE,iBAAiB,CAAC;IAC/B,IAAI,EAAE,aAAa,CAAC;IACpB,eAAe,CAAC,EAAE;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC/B,SAAS,CAAC,EAAE,qBAAqB,CAAC;KACrC,CAAC;IACF,mBAAmB,CAAC,EAAE;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC/B,qBAAqB,CAAC,EAAE,OAAO,CAAC;KACnC,CAAC;CACL;AAED,cAAM,SAAU,SAAQ,eAAe,CAAC,+BAA+B,CAAC;gBACzC,gBAAgB,EAAE,gBAAgB;CAGhE;AAED,qBAAa,+BAAgC,SAAQ,OAAO,CAAC,+BAA+B,EAAE,eAAe,CAAC;IAE9F,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;gBAHjB,mBAAmB,EAAE,oBAAoB,EACzC,iBAAiB,EAAE,iBAAiB,EACpC,kBAAkB,EAAE,0BAA0B,EAC9C,iBAAiB,EAAE,iBAAiB,EACrD,SAAS,EAAE,SAAS;cAKhB,eAAe,CAAC,OAAO,EAAE,+BAA+B,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;CAiC9G"}
|
|
@@ -45,20 +45,6 @@ let ShareRepositoryAttributeUseCase = class ShareRepositoryAttributeUseCase exte
|
|
|
45
45
|
if (!repositoryAttribute.isRepositoryAttribute(this.accountController.identity.address)) {
|
|
46
46
|
return ts_utils_1.Result.fail(common_1.RuntimeErrors.attributes.isNotRepositoryAttribute(repositoryAttributeId));
|
|
47
47
|
}
|
|
48
|
-
const query = {
|
|
49
|
-
"content.owner": this.accountController.identity.address.toString(),
|
|
50
|
-
"content.@type": "IdentityAttribute",
|
|
51
|
-
"shareInfo.sourceAttribute": request.attributeId,
|
|
52
|
-
"shareInfo.peer": request.peer
|
|
53
|
-
};
|
|
54
|
-
const ownSharedIdentityAttributesOfRepositoryAttribute = await this.attributeController.getLocalAttributes(query);
|
|
55
|
-
if (ownSharedIdentityAttributesOfRepositoryAttribute.length > 0) {
|
|
56
|
-
return ts_utils_1.Result.fail(common_1.RuntimeErrors.attributes.repositoryAttributeHasAlreadyBeenSharedWithPeer(request.attributeId, request.peer, ownSharedIdentityAttributesOfRepositoryAttribute[0].id));
|
|
57
|
-
}
|
|
58
|
-
const sharedVersionsOfRepositoryAttribute = await this.attributeController.getSharedVersionsOfAttribute(repositoryAttributeId, [transport_1.CoreAddress.from(request.peer)], false);
|
|
59
|
-
if (sharedVersionsOfRepositoryAttribute.length > 0) {
|
|
60
|
-
return ts_utils_1.Result.fail(common_1.RuntimeErrors.attributes.anotherVersionOfRepositoryAttributeHasAlreadyBeenSharedWithPeer(request.attributeId, request.peer, sharedVersionsOfRepositoryAttribute[0].id));
|
|
61
|
-
}
|
|
62
48
|
const requestParams = consumption_1.CreateOutgoingRequestParameters.from({
|
|
63
49
|
peer: request.peer,
|
|
64
50
|
content: content_1.Request.from({
|
|
@@ -75,7 +61,7 @@ let ShareRepositoryAttributeUseCase = class ShareRepositoryAttributeUseCase exte
|
|
|
75
61
|
});
|
|
76
62
|
const canCreateRequestResult = await this.requestsController.canCreate(requestParams);
|
|
77
63
|
if (canCreateRequestResult.isError())
|
|
78
|
-
return ts_utils_1.Result.fail(canCreateRequestResult.error);
|
|
64
|
+
return ts_utils_1.Result.fail(canCreateRequestResult.items[0].error);
|
|
79
65
|
const localRequest = await this.requestsController.create(requestParams);
|
|
80
66
|
await this.messageController.sendMessage({ recipients: [transport_1.CoreAddress.from(request.peer)], content: localRequest.content });
|
|
81
67
|
await this.accountController.syncDatawallet();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShareRepositoryAttribute.js","sourceRoot":"","sources":["../../../../src/useCases/consumption/attributes/ShareRepositoryAttribute.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,gDAA2C;AAC3C,
|
|
1
|
+
{"version":3,"file":"ShareRepositoryAttribute.js","sourceRoot":"","sources":["../../../../src/useCases/consumption/attributes/ShareRepositoryAttribute.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ export * from "./CreateRepositoryAttribute";
|
|
|
4
4
|
export * from "./DeleteOwnSharedAttributeAndNotifyPeer";
|
|
5
5
|
export * from "./DeletePeerSharedAttributeAndNotifyOwner";
|
|
6
6
|
export * from "./DeleteRepositoryAttribute";
|
|
7
|
+
export * from "./DeleteSharedAttributesForRejectedOrRevokedRelationship";
|
|
7
8
|
export * from "./DeleteThirdPartyOwnedRelationshipAttributeAndNotifyPeer";
|
|
8
9
|
export * from "./ExecuteIQLQuery";
|
|
9
10
|
export * from "./ExecuteIdentityAttributeQuery";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/useCases/consumption/attributes/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,uCAAuC,CAAC;AACtD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yCAAyC,CAAC;AACxD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2DAA2D,CAAC;AAC1E,cAAc,mBAAmB,CAAC;AAClC,cAAc,iCAAiC,CAAC;AAChD,cAAc,qCAAqC,CAAC;AACpD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,gDAAgD,CAAC;AAC/D,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/useCases/consumption/attributes/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,uCAAuC,CAAC;AACtD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yCAAyC,CAAC;AACxD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0DAA0D,CAAC;AACzE,cAAc,2DAA2D,CAAC;AAC1E,cAAc,mBAAmB,CAAC;AAClC,cAAc,iCAAiC,CAAC;AAChD,cAAc,qCAAqC,CAAC;AACpD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,gDAAgD,CAAC;AAC/D,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC"}
|
|
@@ -20,6 +20,7 @@ __exportStar(require("./CreateRepositoryAttribute"), exports);
|
|
|
20
20
|
__exportStar(require("./DeleteOwnSharedAttributeAndNotifyPeer"), exports);
|
|
21
21
|
__exportStar(require("./DeletePeerSharedAttributeAndNotifyOwner"), exports);
|
|
22
22
|
__exportStar(require("./DeleteRepositoryAttribute"), exports);
|
|
23
|
+
__exportStar(require("./DeleteSharedAttributesForRejectedOrRevokedRelationship"), exports);
|
|
23
24
|
__exportStar(require("./DeleteThirdPartyOwnedRelationshipAttributeAndNotifyPeer"), exports);
|
|
24
25
|
__exportStar(require("./ExecuteIQLQuery"), exports);
|
|
25
26
|
__exportStar(require("./ExecuteIdentityAttributeQuery"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/useCases/consumption/attributes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,wEAAsD;AACtD,8DAA4C;AAC5C,0EAAwD;AACxD,4EAA0D;AAC1D,8DAA4C;AAC5C,4FAA0E;AAC1E,oDAAkC;AAClC,kEAAgD;AAChD,sEAAoD;AACpD,gFAA8D;AAC9D,iDAA+B;AAC/B,kDAAgC;AAChC,2DAAyC;AACzC,4DAA0C;AAC1C,4DAA0C;AAC1C,iEAA+C;AAC/C,2DAAyC;AACzC,iFAA+D;AAC/D,6DAA2C;AAC3C,8EAA4D;AAC5D,+DAA6C;AAC7C,qDAAmC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/useCases/consumption/attributes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,wEAAsD;AACtD,8DAA4C;AAC5C,0EAAwD;AACxD,4EAA0D;AAC1D,8DAA4C;AAC5C,2FAAyE;AACzE,4FAA0E;AAC1E,oDAAkC;AAClC,kEAAgD;AAChD,sEAAoD;AACpD,gFAA8D;AAC9D,iDAA+B;AAC/B,kDAAgC;AAChC,2DAAyC;AACzC,4DAA0C;AAC1C,4DAA0C;AAC1C,iEAA+C;AAC/C,2DAAyC;AACzC,iFAA+D;AAC/D,6DAA2C;AAC3C,8EAA4D;AAC5D,+DAA6C;AAC7C,qDAAmC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UploadOwnFile.d.ts","sourceRoot":"","sources":["../../../../src/useCases/transport/files/UploadOwnFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,OAAO,EAAE,iBAAiB,EAAY,cAAc,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"UploadOwnFile.d.ts","sourceRoot":"","sources":["../../../../src/useCases/transport/files/UploadOwnFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,OAAO,EAAE,iBAAiB,EAAY,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAG/E,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAiB,gBAAgB,EAAE,eAAe,EAAE,OAAO,EAAqB,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGrJ,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,UAAU,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,+BAAgC,SAAQ,IAAI,CAAC,oBAAoB,EAAE,SAAS,CAAC;IAC1F,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,cAAM,SAAU,SAAQ,eAAe,CAAC,+BAA+B,CAAC;IACpE,OAAO,CAAC,YAAY,CAAS;IAC7B,IAAW,WAAW,CAAC,QAAQ,EAAE,MAAM,EAEtC;gBAE0B,gBAAgB,EAAE,gBAAgB;IAI7C,QAAQ,CAAC,KAAK,EAAE,oBAAoB,GAAG,gBAAgB;CAiC1E;AAED,qBAAa,oBAAqB,SAAQ,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC;IAEhE,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;gBADjB,cAAc,EAAE,cAAc,EAC9B,iBAAiB,EAAE,iBAAiB,EACrD,SAAS,EAAE,SAAS;cAMhB,eAAe,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;CAiB3F"}
|
|
@@ -16,7 +16,6 @@ exports.UploadOwnFileUseCase = void 0;
|
|
|
16
16
|
const ts_utils_1 = require("@js-soft/ts-utils");
|
|
17
17
|
const crypto_1 = require("@nmshd/crypto");
|
|
18
18
|
const transport_1 = require("@nmshd/transport");
|
|
19
|
-
const luxon_1 = require("luxon");
|
|
20
19
|
const ts_simple_nameof_1 = require("ts-simple-nameof");
|
|
21
20
|
const typescript_ioc_1 = require("typescript-ioc");
|
|
22
21
|
const common_1 = require("../../common");
|
|
@@ -38,7 +37,7 @@ let Validator = class Validator extends common_1.SchemaValidator {
|
|
|
38
37
|
if (input.content.length === 0) {
|
|
39
38
|
validationResult.addFailure(new common_1.ValidationFailure(common_1.RuntimeErrors.general.invalidPropertyValue(`'${(0, ts_simple_nameof_1.nameof)((r) => r.content)}' is empty`), (0, ts_simple_nameof_1.nameof)((r) => r.content)));
|
|
40
39
|
}
|
|
41
|
-
if (
|
|
40
|
+
if (input.expiresAt && transport_1.CoreDate.from(input.expiresAt).isSameOrBefore(transport_1.CoreDate.utc())) {
|
|
42
41
|
validationResult.addFailure(new common_1.ValidationFailure(common_1.RuntimeErrors.general.invalidPropertyValue(`'${(0, ts_simple_nameof_1.nameof)((r) => r.expiresAt)}' must be in the future`), (0, ts_simple_nameof_1.nameof)((r) => r.expiresAt)));
|
|
43
42
|
}
|
|
44
43
|
return validationResult;
|
|
@@ -56,13 +55,15 @@ let UploadOwnFileUseCase = class UploadOwnFileUseCase extends common_1.UseCase {
|
|
|
56
55
|
validator.maxFileSize = fileController.config.platformMaxUnencryptedFileSize;
|
|
57
56
|
}
|
|
58
57
|
async executeInternal(request) {
|
|
58
|
+
const maxDate = "9999-12-31T00:00:00.000Z";
|
|
59
|
+
const expiresAt = request.expiresAt ?? maxDate;
|
|
59
60
|
const file = await this.fileController.sendFile({
|
|
60
61
|
buffer: crypto_1.CoreBuffer.from(request.content),
|
|
61
62
|
title: request.title,
|
|
62
63
|
description: request.description ?? "",
|
|
63
64
|
filename: request.filename,
|
|
64
65
|
mimetype: request.mimetype,
|
|
65
|
-
expiresAt: transport_1.CoreDate.from(
|
|
66
|
+
expiresAt: transport_1.CoreDate.from(expiresAt)
|
|
66
67
|
});
|
|
67
68
|
await this.accountController.syncDatawallet();
|
|
68
69
|
return ts_utils_1.Result.ok(FileMapper_1.FileMapper.toFileDTO(file));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UploadOwnFile.js","sourceRoot":"","sources":["../../../../src/useCases/transport/files/UploadOwnFile.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,gDAA2C;AAC3C,0CAA2C;AAC3C,gDAA+E;AAC/E,
|
|
1
|
+
{"version":3,"file":"UploadOwnFile.js","sourceRoot":"","sources":["../../../../src/useCases/transport/files/UploadOwnFile.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nmshd/runtime",
|
|
3
|
-
"version": "5.0.0-alpha.
|
|
3
|
+
"version": "5.0.0-alpha.4",
|
|
4
4
|
"description": "The enmeshed client runtime.",
|
|
5
5
|
"homepage": "https://enmeshed.eu",
|
|
6
6
|
"repository": {
|
|
@@ -56,10 +56,10 @@
|
|
|
56
56
|
"@js-soft/logging-abstractions": "^1.0.1",
|
|
57
57
|
"@js-soft/ts-serval": "2.0.10",
|
|
58
58
|
"@js-soft/ts-utils": "^2.3.3",
|
|
59
|
-
"@nmshd/consumption": "5.0.0-alpha.
|
|
60
|
-
"@nmshd/content": "5.0.0-alpha.
|
|
59
|
+
"@nmshd/consumption": "5.0.0-alpha.4",
|
|
60
|
+
"@nmshd/content": "5.0.0-alpha.4",
|
|
61
61
|
"@nmshd/crypto": "2.0.6",
|
|
62
|
-
"@nmshd/transport": "5.0.0-alpha.
|
|
62
|
+
"@nmshd/transport": "5.0.0-alpha.4",
|
|
63
63
|
"ajv": "^8.16.0",
|
|
64
64
|
"ajv-errors": "^3.0.0",
|
|
65
65
|
"ajv-formats": "^3.0.1",
|