From 31357132e437bc38eb16ea4577fec236fef882ab Mon Sep 17 00:00:00 2001 From: di-sukharev Date: Sat, 11 Mar 2023 13:24:02 +0800 Subject: [PATCH] * chore(api.ts): add error handling for openAI api error * chore(generateCommitMessageFromGitDiff.ts): remove console.log statement --- src/api.ts | 22 +++++++++++++++++++--- src/generateCommitMessageFromGitDiff.ts | 1 - 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/src/api.ts b/src/api.ts index 2be4cf5..4223bd4 100644 --- a/src/api.ts +++ b/src/api.ts @@ -1,4 +1,6 @@ import { intro, outro } from '@clack/prompts'; +import { AxiosError } from 'axios'; +import chalk from 'chalk'; import { ChatCompletionRequestMessage, Configuration as OpenAiApiConfiguration, @@ -48,9 +50,23 @@ class OpenAi { const message = data.choices[0].message; return message?.content; - } catch (error) { - // console.error('openAI api error', { error }); - throw error; + } catch (error: any) { + outro(`${chalk.red('✖')} ${error}`); + + if (error.isAxiosError && error.response?.status === 401) { + const err = error as AxiosError; + + const openAiError = ( + err.response?.data as { error?: { message: string } } + ).error; + + if (openAiError?.message) outro(openAiError.message); + outro( + 'For help look into README https://github.com/di-sukharev/opencommit#setup' + ); + } + + process.exit(1); } }; } diff --git a/src/generateCommitMessageFromGitDiff.ts b/src/generateCommitMessageFromGitDiff.ts index d860e2d..4aabcc4 100644 --- a/src/generateCommitMessageFromGitDiff.ts +++ b/src/generateCommitMessageFromGitDiff.ts @@ -105,7 +105,6 @@ export const generateCommitMessageWithChatCompletion = async ( return commitMessage; } } catch (error) { - console.log({ error }); return { error: GenerateCommitMessageErrorEnum.internalError }; } };