@wepublish/api
Version:
API core for we.publish.
108 lines • 4.61 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.UserConsentResolver = void 0;
const tslib_1 = require("tslib");
const graphql_1 = require("@nestjs/graphql");
const user_consent_model_1 = require("./user-consent.model");
const user_consent_service_1 = require("./user-consent.service");
const common_1 = require("@nestjs/common");
const api_1 = require("../../../../authentication-api/src");
let UserConsentResolver = exports.UserConsentResolver = class UserConsentResolver {
constructor(userConsents) {
this.userConsents = userConsents;
}
userConsentList(filter) {
return this.userConsents.userConsentList(filter);
}
userConsent(id) {
return this.userConsents.userConsent(id);
}
createUserConsent(user, userConsent) {
// only allow creating for admin or affected user
if (!user.user.roleIDs.includes('admin') && user.user.id !== userConsent.userId) {
throw new common_1.ForbiddenException(`Unauthorized`);
}
return this.userConsents.createUserConsent(userConsent);
}
updateUserConsent(user, id, value) {
return this.userConsents.updateUserConsent(id, value, user);
}
deleteUserConsent(id, user) {
return this.userConsents.deleteUserConsent(id, user);
}
};
tslib_1.__decorate([
(0, graphql_1.Query)(returns => [user_consent_model_1.UserConsent], {
name: 'userConsents',
description: `
Returns a list of userConsents. Possible to filter.
`
}),
tslib_1.__param(0, (0, graphql_1.Args)({ nullable: true })),
tslib_1.__metadata("design:type", Function),
tslib_1.__metadata("design:paramtypes", [user_consent_model_1.UserConsentFilter]),
tslib_1.__metadata("design:returntype", void 0)
], UserConsentResolver.prototype, "userConsentList", null);
tslib_1.__decorate([
(0, graphql_1.Query)(returns => user_consent_model_1.UserConsent, {
name: 'userConsent',
description: `
Returns a single userConsent by id.
`
}),
tslib_1.__param(0, (0, graphql_1.Args)('id')),
tslib_1.__metadata("design:type", Function),
tslib_1.__metadata("design:paramtypes", [String]),
tslib_1.__metadata("design:returntype", void 0)
], UserConsentResolver.prototype, "userConsent", null);
tslib_1.__decorate([
(0, graphql_1.Mutation)(returns => user_consent_model_1.UserConsent, {
name: 'createUserConsent',
description: `
Creates a new userConsent based on input.
Returns created userConsent.
`
}),
(0, common_1.UseGuards)(api_1.AuthenticationGuard),
tslib_1.__param(0, (0, api_1.CurrentUser)()),
tslib_1.__param(1, (0, graphql_1.Args)()),
tslib_1.__metadata("design:type", Function),
tslib_1.__metadata("design:paramtypes", [Object, user_consent_model_1.UserConsentInput]),
tslib_1.__metadata("design:returntype", void 0)
], UserConsentResolver.prototype, "createUserConsent", null);
tslib_1.__decorate([
(0, graphql_1.Mutation)(returns => user_consent_model_1.UserConsent, {
name: 'updateUserConsent',
description: `
Updates an existing userConsent based on input.
Returns updated userConsent.
`
}),
(0, common_1.UseGuards)(api_1.AuthenticationGuard),
tslib_1.__param(0, (0, api_1.CurrentUser)()),
tslib_1.__param(1, (0, graphql_1.Args)('id')),
tslib_1.__param(2, (0, graphql_1.Args)('value', { type: () => Boolean })),
tslib_1.__metadata("design:type", Function),
tslib_1.__metadata("design:paramtypes", [Object, String, Boolean]),
tslib_1.__metadata("design:returntype", void 0)
], UserConsentResolver.prototype, "updateUserConsent", null);
tslib_1.__decorate([
(0, graphql_1.Mutation)(returns => user_consent_model_1.UserConsent, {
name: 'deleteUserConsent',
description: `
Delete an existing userConsent by id.
Returns deleted userConsent.
`
}),
(0, common_1.UseGuards)(api_1.AuthenticationGuard),
tslib_1.__param(0, (0, graphql_1.Args)('id')),
tslib_1.__param(1, (0, api_1.CurrentUser)()),
tslib_1.__metadata("design:type", Function),
tslib_1.__metadata("design:paramtypes", [String, Object]),
tslib_1.__metadata("design:returntype", void 0)
], UserConsentResolver.prototype, "deleteUserConsent", null);
exports.UserConsentResolver = UserConsentResolver = tslib_1.__decorate([
(0, graphql_1.Resolver)(),
tslib_1.__metadata("design:paramtypes", [user_consent_service_1.UserConsentService])
], UserConsentResolver);
//# sourceMappingURL=user-consent.resolver.js.map