MCPcopy Create free account
hub / github.com/ColmapView/Colmapview.github.io / classifyError

Function classifyError

src/utils/errorUtils.ts:17–63  ·  view source on GitHub ↗
(error: Error)

Source from the content-addressed store, hash-verified

15 * Classifies an error into a known type for appropriate handling.
16 */
17export function classifyError(error: Error): AppErrorType {
18 const message = error.message.toLowerCase();
19 const name = error.name.toLowerCase();
20
21 // WebGL context lost
22 if (
23 message.includes('context lost') ||
24 message.includes('webgl') ||
25 message.includes('gl_')
26 ) {
27 return 'webgl_context_lost';
28 }
29
30 // WebGL render errors (shader compilation, buffer issues, etc.)
31 if (
32 message.includes('shader') ||
33 message.includes('render') ||
34 message.includes('draw') ||
35 message.includes('buffer') ||
36 message.includes('three')
37 ) {
38 return 'webgl_render_error';
39 }
40
41 // Image loading errors
42 if (
43 message.includes('image') ||
44 message.includes('load') ||
45 message.includes('decode') ||
46 message.includes('blob')
47 ) {
48 return 'image_load_error';
49 }
50
51 // Network errors
52 if (
53 name.includes('networkerror') ||
54 message.includes('fetch') ||
55 message.includes('network') ||
56 message.includes('timeout') ||
57 message.includes('cors')
58 ) {
59 return 'network_error';
60 }
61
62 return 'unknown';
63}
64
65/**
66 * Determines the appropriate recovery strategy for an error type.

Callers 6

isWebGLContextLostErrorFunction · 0.85
isRecoverableErrorFunction · 0.85
resolveUrlLoadErrorFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected