resolveErrors() — supabase Function Reference
Architecture documentation for the resolveErrors() function in errorResolver.ts from the supabase codebase.
Entity Profile
Dependency Diagram
graph TD 755e8915_9c62_434e_3517_2349a2c7b217["resolveErrors()"] 0483845d_079f_75e1_7fe8_82b5925bc5ff["tryCatchFlat()"] 755e8915_9c62_434e_3517_2349a2c7b217 -->|calls| 0483845d_079f_75e1_7fe8_82b5925bc5ff 50f617d6_81f5_4c21_6f5a_c2f5e6cbefd2["loadErrors()"] 755e8915_9c62_434e_3517_2349a2c7b217 -->|calls| 50f617d6_81f5_4c21_6f5a_c2f5e6cbefd2 633da633_56bc_96a8_6477_207ace68b6c7["mapError()"] 755e8915_9c62_434e_3517_2349a2c7b217 -->|calls| 633da633_56bc_96a8_6477_207ace68b6c7 f0cb3c6d_e823_6f6f_b9a4_ab144fc70aa5["extractMessageFromAnyError()"] 755e8915_9c62_434e_3517_2349a2c7b217 -->|calls| f0cb3c6d_e823_6f6f_b9a4_ab144fc70aa5 3509f517_13dc_8b88_0eb7_279204392f64["decodeBase64()"] 755e8915_9c62_434e_3517_2349a2c7b217 -->|calls| 3509f517_13dc_8b88_0eb7_279204392f64 6c92a39e_3bc9_a415_8ea0_5fa9b1d42ea3["encodeBase64()"] 755e8915_9c62_434e_3517_2349a2c7b217 -->|calls| 6c92a39e_3bc9_a415_8ea0_5fa9b1d42ea3 1ee162b1_d232_4846_ef61_0018a3d5f851["error()"] 755e8915_9c62_434e_3517_2349a2c7b217 -->|calls| 1ee162b1_d232_4846_ef61_0018a3d5f851 98dae242_6132_86d3_9fa0_eb45046dbbb0["isUserError()"] 755e8915_9c62_434e_3517_2349a2c7b217 -->|calls| 98dae242_6132_86d3_9fa0_eb45046dbbb0 69cdaf4e_592b_f232_a6d3_d02e50f30f76["isPrivate()"] 755e8915_9c62_434e_3517_2349a2c7b217 -->|calls| 69cdaf4e_592b_f232_a6d3_d02e50f30f76 style 755e8915_9c62_434e_3517_2349a2c7b217 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
apps/docs/resources/error/errorResolver.ts lines 59–118
async function resolveErrors(
_parent: unknown,
args: RootQueryTypeErrorsArgs,
_context: unknown,
_info: GraphQLResolveInfo
): Promise<ErrorCollection | GraphQLError> {
return (
await Result.tryCatchFlat(
async (...args) => {
const fetch: CollectionFetch<
ErrorModel,
{ service?: Service; code?: string },
ApiError
>['fetch'] = async (fetchArgs) => {
const result = await ErrorModel.loadErrors({
...fetchArgs,
additionalArgs: {
service: args[0].service ?? undefined,
code: args[0].code ?? undefined,
},
})
return result.mapError(
(error) =>
new ApiError(
`Failed to resolve error codes: ${extractMessageFromAnyError(error)}`,
error
)
)
}
return await GraphQLCollectionBuilder.create<
ErrorModel,
{ service?: Service; code?: string },
ApiError
>({
fetch,
args: {
...args[0],
// Decode base64 cursors before passing to fetch function
after: args[0].after ? decodeBase64(args[0].after) : undefined,
before: args[0].before ? decodeBase64(args[0].before) : undefined,
},
getCursor: (item) => encodeBase64(item.id),
})
},
convertUnknownToApiError,
args
)
).match(
(data) => data as ErrorCollection,
(error) => {
console.error(`Error resolving ${GRAPHQL_FIELD_ERRORS_GLOBAL}:`, error)
if (error instanceof ApiError && !error.isUserError()) {
Sentry.captureException(error)
}
return error instanceof GraphQLError
? error
: new GraphQLError(error.isPrivate() ? 'Internal Server Error' : error.message)
}
)
}
Domain
Subdomains
Calls
Source
Frequently Asked Questions
What does resolveErrors() do?
resolveErrors() is a function in the supabase codebase.
What does resolveErrors() call?
resolveErrors() calls 9 function(s): decodeBase64, encodeBase64, error, extractMessageFromAnyError, isPrivate, isUserError, loadErrors, mapError, and 1 more.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free