@@ -38,25 +38,32 @@ export const getAppConfig = cache(async (headers: Headers): Promise<AppConfig> =
3838        headers : {  'X-Sandbox-ID' : sandboxId  } , 
3939      } ) ; 
4040
41-       const   remoteConfig :  SandboxConfig   =   await   response . json ( ) ; 
42-       const  config :  AppConfig  =  {  ... APP_CONFIG_DEFAULTS ,  sandboxId  } ; 
41+       if   ( response . ok )   { 
42+          const  remoteConfig :  SandboxConfig  =  await   response . json ( ) ; 
4343
44-       for  ( const  [ key ,  entry ]  of  Object . entries ( remoteConfig ) )  { 
45-         if  ( entry  ===  null )  continue ; 
46-         // Only include app config entries that are declared in defaults and, if set, 
47-         // share the same primitive type as the default value. 
48-         if  ( 
49-           ( key  in  APP_CONFIG_DEFAULTS  && 
50-             APP_CONFIG_DEFAULTS [ key  as  keyof  AppConfig ]  ===  undefined )  || 
51-           ( typeof  config [ key  as  keyof  AppConfig ]  ===  entry . type  && 
52-             typeof  config [ key  as  keyof  AppConfig ]  ===  typeof  entry . value ) 
53-         )  { 
54-           // @ts -expect-error I'm not sure quite how to appease TypeScript, but we've thoroughly checked types above 
55-           config [ key  as  keyof  AppConfig ]  =  entry . value  as  AppConfig [ keyof  AppConfig ] ; 
44+         const  config : AppConfig  =  {  ...APP_CONFIG_DEFAULTS ,  sandboxId } ; 
45+ 
46+         for  ( const  [ key ,  entry ]  of  Object . entries ( remoteConfig ) )  { 
47+           if  ( entry  ===  null )  continue ; 
48+           // Only include app config entries that are declared in defaults and, if set, 
49+           // share the same primitive type as the default value. 
50+           if  ( 
51+             ( key  in  APP_CONFIG_DEFAULTS  && 
52+               APP_CONFIG_DEFAULTS [ key  as  keyof  AppConfig ]  ===  undefined )  || 
53+             ( typeof  config [ key  as  keyof  AppConfig ]  ===  entry . type  && 
54+               typeof  config [ key  as  keyof  AppConfig ]  ===  typeof  entry . value ) 
55+           )  { 
56+             // @ts -expect-error I'm not sure quite how to appease TypeScript, but we've thoroughly checked types above 
57+             config [ key  as  keyof  AppConfig ]  =  entry . value  as  AppConfig [ keyof  AppConfig ] ; 
58+           } 
5659        } 
57-       } 
5860
59-       return  config ; 
61+         return  config ; 
62+       }  else  { 
63+         console . error ( 
64+           `ERROR: querying config endpoint failed with status ${ response . status } ${ response . statusText }  
65+         ) ; 
66+       } 
6067    }  catch  ( error )  { 
6168      console . error ( 'ERROR: getAppConfig() - lib/utils.ts' ,  error ) ; 
6269    } 
0 commit comments