diff options
| author | Eugene Sokolov <eug-vs@keemail.me> | 2020-06-25 14:39:21 +0300 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-06-25 14:39:21 +0300 | 
| commit | 0afe8f1530affad1e58a65385b2a4bf888ab86cb (patch) | |
| tree | 3bd5599bc5c3ce23777c5b369eaadd744f3c5c1f /hooks/expandAuthor.ts | |
| parent | e488591b9548264d0305a5f34786138bd6c6622b (diff) | |
| parent | 64f5f8c3f9660f649dfdaad07d84aa8c26b9661e (diff) | |
| download | which-api-0afe8f1530affad1e58a65385b2a4bf888ab86cb.tar.gz | |
Merge pull request #8 from which-ecosystem/votes
Votes
Diffstat (limited to 'hooks/expandAuthor.ts')
| -rw-r--r-- | hooks/expandAuthor.ts | 32 | 
1 files changed, 0 insertions, 32 deletions
diff --git a/hooks/expandAuthor.ts b/hooks/expandAuthor.ts deleted file mode 100644 index 3b3e3df..0000000 --- a/hooks/expandAuthor.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { HookContext } from '@feathersjs/feathers'; -import bluebird from 'bluebird'; -import _ from 'lodash'; - -import { Poll, PollSchema } from '../models/polls/poll.schema'; -import { User } from '../models/users/user.schema'; -import UserModel from '../models/users/user.model'; - -const expandAuthor = async (poll: PollSchema): Promise<Poll | null> => { -  return UserModel.findById(poll.authorId) -    .lean<User>() -    .exec() -    .then((author: User | null): Poll | null => { -      return author && _.merge(_.omit(poll, 'authorId'), { author }); -    }) -    .catch(err => { -      console.error(err); -      return err; -    }); -}; - -export const expandAuthorHook = async (context: HookContext): Promise<HookContext> => { -  context.result = await expandAuthor(context.result); -  return context; -}; - -export const expandAuthorManyHook = async (context: HookContext): Promise<HookContext> => { -  const polls = await bluebird.map(context.result, (poll: PollSchema) => expandAuthor(poll)); -  context.result = _.compact(polls); -  return context; -}; -  |