mirror of
https://github.com/google-gemini/gemini-cli.git
synced 2026-03-11 22:51:00 -07:00
chore: fix merge conflicts
This commit is contained in:
@@ -2297,14 +2297,11 @@ Logging in with Google... Restarting Gemini CLI to continue.
|
||||
}
|
||||
setNewAgents(null);
|
||||
},
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
getPreferredEditor,
|
||||
clearAccountSuspension: () => {
|
||||
setAccountSuspensionInfo(null);
|
||||
setAuthState(AuthState.Updating);
|
||||
},
|
||||
>>>>>>> ea48bd941 (feat: better error messages (#20577))
|
||||
}),
|
||||
[
|
||||
handleThemeSelect,
|
||||
@@ -2356,6 +2353,7 @@ Logging in with Google... Restarting Gemini CLI to continue.
|
||||
newAgents,
|
||||
config,
|
||||
historyManager,
|
||||
getPreferredEditor,
|
||||
],
|
||||
);
|
||||
|
||||
|
||||
@@ -82,11 +82,8 @@ export interface UIActions {
|
||||
setAuthContext: (context: { requiresRestart?: boolean }) => void;
|
||||
handleRestart: () => void;
|
||||
handleNewAgentsSelect: (choice: NewAgentsChoice) => Promise<void>;
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
getPreferredEditor: () => EditorType | undefined;
|
||||
clearAccountSuspension: () => void;
|
||||
>>>>>>> ea48bd941 (feat: better error messages (#20577))
|
||||
}
|
||||
|
||||
export const UIActionsContext = createContext<UIActions | null>(null);
|
||||
|
||||
@@ -13,6 +13,14 @@ import {
|
||||
ForbiddenError,
|
||||
AccountSuspendedError,
|
||||
getErrorMessage,
|
||||
getErrorType,
|
||||
FatalAuthenticationError,
|
||||
FatalCancellationError,
|
||||
FatalConfigError,
|
||||
FatalInputError,
|
||||
FatalSandboxError,
|
||||
FatalToolExecutionError,
|
||||
FatalTurnLimitedError,
|
||||
} from './errors.js';
|
||||
|
||||
describe('getErrorMessage', () => {
|
||||
@@ -279,8 +287,6 @@ describe('toFriendlyError', () => {
|
||||
expect(toFriendlyError(error)).toBe(error);
|
||||
});
|
||||
});
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
|
||||
describe('getErrorType', () => {
|
||||
it('should return error name for standard errors', () => {
|
||||
@@ -325,4 +331,3 @@ describe('getErrorType', () => {
|
||||
expect(getErrorType(undefined)).toBe('unknown');
|
||||
});
|
||||
});
|
||||
>>>>>>> ea48bd941 (feat: better error messages (#20577))
|
||||
|
||||
@@ -12,6 +12,16 @@ interface GaxiosError {
|
||||
};
|
||||
}
|
||||
|
||||
function isGaxiosError(error: unknown): error is GaxiosError {
|
||||
return (
|
||||
typeof error === 'object' &&
|
||||
error !== null &&
|
||||
'response' in error &&
|
||||
typeof (error as { response: unknown }).response === 'object' &&
|
||||
(error as { response: unknown }).response !== null
|
||||
);
|
||||
}
|
||||
|
||||
export function isNodeError(error: unknown): error is NodeJS.ErrnoException {
|
||||
return error instanceof Error && 'code' in error;
|
||||
}
|
||||
@@ -28,6 +38,15 @@ export function getErrorMessage(error: unknown): string {
|
||||
}
|
||||
}
|
||||
|
||||
export function getErrorType(error: unknown): string {
|
||||
if (!(error instanceof Error)) return 'unknown';
|
||||
|
||||
// Return constructor name if the generic 'Error' name is used (for custom errors)
|
||||
return error.name === 'Error'
|
||||
? (error.constructor?.name ?? 'Error')
|
||||
: error.name;
|
||||
}
|
||||
|
||||
export class FatalError extends Error {
|
||||
constructor(
|
||||
message: string,
|
||||
@@ -110,12 +129,6 @@ interface ResponseData {
|
||||
}
|
||||
|
||||
export function toFriendlyError(error: unknown): unknown {
|
||||
<<<<<<< HEAD
|
||||
if (error && typeof error === 'object' && 'response' in error) {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
|
||||
const gaxiosError = error as GaxiosError;
|
||||
const data = parseResponseData(gaxiosError);
|
||||
=======
|
||||
// First, try structured parsing for TOS_VIOLATION detection.
|
||||
const googleApiError = parseGoogleApiError(error);
|
||||
if (googleApiError && googleApiError.code === 403) {
|
||||
@@ -136,7 +149,6 @@ export function toFriendlyError(error: unknown): unknown {
|
||||
// Fall back to basic Gaxios error parsing for other HTTP errors.
|
||||
if (isGaxiosError(error)) {
|
||||
const data = parseResponseData(error);
|
||||
>>>>>>> ea48bd941 (feat: better error messages (#20577))
|
||||
if (data && data.error && data.error.message && data.error.code) {
|
||||
switch (data.error.code) {
|
||||
case 400:
|
||||
|
||||
Reference in New Issue
Block a user