From 80d0bacd9502412b95233139a7ff95314e046c5f Mon Sep 17 00:00:00 2001 From: Jan Nicklas Date: Tue, 29 Nov 2022 19:22:00 +0100 Subject: [PATCH] remove reducer --- packages/graphql-codegen-cli/src/hooks.ts | 39 +++-------------------- 1 file changed, 4 insertions(+), 35 deletions(-) diff --git a/packages/graphql-codegen-cli/src/hooks.ts b/packages/graphql-codegen-cli/src/hooks.ts index e31ee965b5fc..8710988a31ab 100644 --- a/packages/graphql-codegen-cli/src/hooks.ts +++ b/packages/graphql-codegen-cli/src/hooks.ts @@ -15,40 +15,6 @@ const DEFAULT_HOOKS: Types.LifecycleHooksDefinition = { beforeAllFileWrite: [], }; -function normalizeHooks(_hooks: Partial): { - [key in keyof Types.LifecycleHooksDefinition]: (string | Types.HookFunction)[]; -} { - const keys = Object.keys({ - ...DEFAULT_HOOKS, - ..._hooks, - }); - - return keys.reduce( - (prev: { [key in keyof Types.LifecycleHooksDefinition]: (string | Types.HookFunction)[] }, hookName: string) => { - if (typeof _hooks[hookName] === 'string') { - return { - ...prev, - [hookName]: [_hooks[hookName]] as string[], - }; - } - if (typeof _hooks[hookName] === 'function') { - return { - ...prev, - [hookName]: [_hooks[hookName]], - }; - } - if (Array.isArray(_hooks[hookName])) { - return { - ...prev, - [hookName]: _hooks[hookName] as string[], - }; - } - return prev; - }, - {} as { [key in keyof Types.LifecycleHooksDefinition]: (string | Types.HookFunction)[] } - ); -} - function execShellCommand(cmd: string): Promise { return new Promise((resolve, reject) => { exec( @@ -94,7 +60,10 @@ async function executeHooks( } export const lifecycleHooks = (_hooks: Partial = {}) => { - const hooks = normalizeHooks(_hooks); + const hooks = { + ...DEFAULT_HOOKS, + ..._hooks, + }; return { afterStart: async (): Promise => executeHooks('afterStart', hooks.afterStart),