Spaces:
Build error
Build error
File size: 1,066 Bytes
d9494a5 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | import { isDefined } from 'twenty-shared/utils';
import {
FlatEntityMapsException,
flatEntityMapsExceptionContextSchema,
type FlatEntityMapsExceptionContext,
} from 'src/engine/metadata-modules/flat-entity/exceptions/flat-entity-maps.exception';
const hasFlatEntityIdentifier = (
context: FlatEntityMapsExceptionContext,
): boolean => isDefined(context.universalIdentifier) || isDefined(context.id);
export const getFlatEntityMapsExceptionContext = (
error: unknown,
): FlatEntityMapsExceptionContext | undefined => {
if (error instanceof FlatEntityMapsException) {
return isDefined(error.context) && hasFlatEntityIdentifier(error.context)
? error.context
: undefined;
}
if (isDefined(error) && typeof error === 'object' && 'context' in error) {
const parsedContext = flatEntityMapsExceptionContextSchema.safeParse(
(error as { context?: unknown }).context,
);
return parsedContext.success && hasFlatEntityIdentifier(parsedContext.data)
? parsedContext.data
: undefined;
}
return undefined;
};
|