@@ -25,53 +25,57 @@ const {
25
25
level = 'warning' ,
26
26
} = _workerData as ValidateSchemaWorkerData
27
27
28
- if ( isMainThread || ! parentPort ) {
29
- throw new Error ( 'This module must be run as a worker thread' )
30
- }
28
+ async function main ( ) {
29
+ if ( isMainThread || ! parentPort ) {
30
+ throw new Error ( 'This module must be run as a worker thread' )
31
+ }
31
32
32
- const cleanup = mockBrowserEnvironment ( workDir )
33
+ const cleanup = mockBrowserEnvironment ( workDir )
33
34
34
- try {
35
- const workspaces = getStudioConfig ( { basePath : workDir } )
35
+ try {
36
+ const workspaces = getStudioConfig ( { basePath : workDir } )
36
37
37
- if ( ! workspaces . length ) {
38
- throw new Error ( `Configuration did not return any workspaces.` )
39
- }
40
-
41
- let workspace
42
- if ( workspaceName ) {
43
- workspace = workspaces . find ( ( w ) => w . name === workspaceName )
44
- if ( ! workspace ) {
45
- throw new Error ( `Could not find any workspaces with name \`${ workspaceName } \`` )
38
+ if ( ! workspaces . length ) {
39
+ throw new Error ( `Configuration did not return any workspaces.` )
46
40
}
47
- } else {
48
- if ( workspaces . length !== 1 ) {
49
- throw new Error (
50
- "Multiple workspaces found. Please specify which workspace to use with '--workspace'." ,
51
- )
41
+
42
+ let workspace
43
+ if ( workspaceName ) {
44
+ workspace = workspaces . find ( ( w ) => w . name === workspaceName )
45
+ if ( ! workspace ) {
46
+ throw new Error ( `Could not find any workspaces with name \`${ workspaceName } \`` )
47
+ }
48
+ } else {
49
+ if ( workspaces . length !== 1 ) {
50
+ throw new Error (
51
+ "Multiple workspaces found. Please specify which workspace to use with '--workspace'." ,
52
+ )
53
+ }
54
+ workspace = workspaces [ 0 ]
52
55
}
53
- workspace = workspaces [ 0 ]
54
- }
55
56
56
- const schemaTypes = resolveSchemaTypes ( {
57
- config : workspace ,
58
- context : { dataset : workspace . dataset , projectId : workspace . projectId } ,
59
- } )
57
+ const schemaTypes = resolveSchemaTypes ( {
58
+ config : workspace ,
59
+ context : { dataset : workspace . dataset , projectId : workspace . projectId } ,
60
+ } )
60
61
61
- const validation = groupProblems ( validateSchema ( schemaTypes ) . getTypes ( ) )
62
+ const validation = groupProblems ( validateSchema ( schemaTypes ) . getTypes ( ) )
62
63
63
- const result : ValidateSchemaWorkerResult = {
64
- validation : validation
65
- . map ( ( group ) => ( {
66
- ...group ,
67
- problems : group . problems . filter ( ( problem ) =>
68
- level === 'error' ? problem . severity === 'error' : true ,
69
- ) ,
70
- } ) )
71
- . filter ( ( group ) => group . problems . length ) ,
72
- }
64
+ const result : ValidateSchemaWorkerResult = {
65
+ validation : validation
66
+ . map ( ( group ) => ( {
67
+ ...group ,
68
+ problems : group . problems . filter ( ( problem ) =>
69
+ level === 'error' ? problem . severity === 'error' : true ,
70
+ ) ,
71
+ } ) )
72
+ . filter ( ( group ) => group . problems . length ) ,
73
+ }
73
74
74
- parentPort ?. postMessage ( result )
75
- } finally {
76
- cleanup ( )
75
+ parentPort ?. postMessage ( result )
76
+ } finally {
77
+ cleanup ( )
78
+ }
77
79
}
80
+
81
+ main ( ) . then ( ( ) => process . exit ( ) )
0 commit comments