@@ -5,10 +5,7 @@ import dns from 'dns';
55import { ipcRenderer } from 'hadron-ipc' ;
66import * as remote from '@electron/remote' ;
77import { AppRegistryProvider , globalAppRegistry } from 'hadron-app-registry' ;
8- import {
9- defaultPreferencesInstance ,
10- getActiveUser ,
11- } from 'compass-preferences-model' ;
8+ import { defaultPreferencesInstance } from 'compass-preferences-model' ;
129import { CompassHomePlugin } from '@mongodb-js/compass-home' ;
1310import { PreferencesProvider } from 'compass-preferences-model/provider' ;
1411
@@ -24,7 +21,7 @@ if (!process.env.NODE_OPTIONS.includes('--dns-result-order')) {
2421// Setup error reporting to main process before anything else.
2522window . addEventListener ( 'error' , ( event ) => {
2623 event . preventDefault ( ) ;
27- ipcRenderer ?. call (
24+ void ipcRenderer ?. call (
2825 'compass:error:fatal' ,
2926 event . error
3027 ? { message : event . error . message , stack : event . error . stack }
@@ -65,7 +62,7 @@ import { createLoggerAndTelemetry } from '@mongodb-js/compass-logging';
6562const { log, mongoLogId, track } = createLoggerAndTelemetry ( 'COMPASS-APP' ) ;
6663
6764// Lets us call `setShowDevFeatureFlags(true | false)` from DevTools.
68- window . setShowDevFeatureFlags = async ( showDevFeatureFlags = true ) => {
65+ ( window as any ) . setShowDevFeatureFlags = async ( showDevFeatureFlags = true ) => {
6966 await defaultPreferencesInstance . savePreferences ( { showDevFeatureFlags } ) ;
7067} ;
7168
@@ -108,14 +105,20 @@ const Application = View.extend({
108105 * @see NODE-4281
109106 * @todo : remove when NODE-4281 is merged.
110107 */
111- Number . prototype . unref = ( ) => { } ;
108+ ( Number . prototype as any ) . unref = ( ) => {
109+ // noop
110+ } ;
112111
113- function trackPerfEvent ( { name, value } ) {
112+ function trackPerfEvent ( {
113+ name,
114+ value,
115+ } : Pick < webvitals . Metric , 'name' | 'value' > ) {
114116 const fullName = {
115117 FCP : 'First Contentful Paint' ,
116118 LCP : 'Largest Contentful Paint' ,
117119 FID : 'First Input Delay' ,
118120 CLS : 'Cumulative Layout Shift' ,
121+ TTFB : 'Time to First Byte' ,
119122 } [ name ] ;
120123 track ( fullName , { value } ) ;
121124 }
@@ -211,9 +214,16 @@ const app = {
211214 state . preRender ( ) ;
212215
213216 try {
214- const user = await getActiveUser ( defaultPreferencesInstance ) ;
215- setupIntercom ( user , defaultPreferencesInstance ) ;
217+ void setupIntercom ( defaultPreferencesInstance ) ;
216218 } catch ( e ) {
219+ log . warn (
220+ mongoLogId ( 1_001_000_289 ) ,
221+ 'Main Window' ,
222+ 'Failed to set up Intercom' ,
223+ {
224+ error : ( e as Error ) . message ,
225+ }
226+ ) ;
217227 // noop
218228 }
219229 // Catch a data refresh coming from window-manager.
@@ -273,4 +283,4 @@ Object.defineProperty(app, 'state', {
273283 } ,
274284} ) ;
275285
276- app . init ( ) ;
286+ void app . init ( ) ;
0 commit comments