| 123456789101112131415161718192021222324252627282930 |
- 'use strict';
-
- const Schmervice = require('@hapipal/schmervice');
- const internals = {};
-
- module.exports = class DisplayService extends Schmervice.Service {
- user({ password, ...user }, token) {
- return { ...user, token }
- }
-
- async profile(currentUserId, user, transaction) {
- const { User } = this.server.models()
- const { toProfile } = internals
-
- const result = await User.fetchGraph(user, `[
- followedBy(currentUser) as following
- ]`, {
- transaction
- }).modifiers({
- currentUser: (builder) => builder.where('Users.id', currentUserId)
- })
-
- return toProfile(result)
- }
- }
-
- internals.toProfile = ({ password, email, following, ...user }) => ({
- ...user,
- following: (following.length > 0)
- })
|