From dda68de44591b2f5754bc56511ad96ea640016cd Mon Sep 17 00:00:00 2001 From: Michel Weststrate Date: Wed, 29 Dec 2021 06:48:10 -0800 Subject: [PATCH] Fix issue where TypeScript errors in scripts/ folder weren't picked up Summary: This diff fixes an issue where the `scripts` folder wasn't automatically type checked by TypeScript, and as a result `yarn flipper-server` was broken atm. Reviewed By: nikoant Differential Revision: D33348825 fbshipit-source-id: 059a834cacb881d45ae4b0933af3f1feabb90182 --- desktop/scripts/build-utils.ts | 1 - desktop/scripts/jest-setup-after.ts | 8 ++++---- desktop/scripts/jest-setup.ts | 2 +- desktop/scripts/start-dev-server.ts | 1 + desktop/scripts/start-flipper-server-dev.ts | 4 ---- desktop/scripts/tsconfig.json | 3 ++- desktop/tsc-root/tsconfig.json | 3 +++ 7 files changed, 11 insertions(+), 11 deletions(-) diff --git a/desktop/scripts/build-utils.ts b/desktop/scripts/build-utils.ts index 6325f7c17..91b594b29 100644 --- a/desktop/scripts/build-utils.ts +++ b/desktop/scripts/build-utils.ts @@ -36,7 +36,6 @@ import { serverDir, rootDir, browserUiDir, - serverStaticDir, } from './paths'; import pFilter from 'p-filter'; import child from 'child_process'; diff --git a/desktop/scripts/jest-setup-after.ts b/desktop/scripts/jest-setup-after.ts index b0519b064..d5fff08d2 100644 --- a/desktop/scripts/jest-setup-after.ts +++ b/desktop/scripts/jest-setup-after.ts @@ -14,7 +14,7 @@ import {cleanup} from '@testing-library/react'; import {resolve} from 'path'; import os from 'os'; -(window as any).FlipperRenderHostInstance = createStubRenderHost(); +(global as any).FlipperRenderHostInstance = createStubRenderHost(); import {TestUtils} from 'flipper-plugin'; import { @@ -53,7 +53,7 @@ if (!test) { beforeEach(() => { // Fresh mock flipperServer for every test - (window as any).FlipperRenderHostInstance = createStubRenderHost(); + (global as any).FlipperRenderHostInstance = createStubRenderHost(); }); afterEach(cleanup); @@ -77,10 +77,10 @@ Object.defineProperty(global, 'performance', { }, }); -global.PerformanceObserver = PerformanceObserver; +(global as any).PerformanceObserver = PerformanceObserver; // https://jestjs.io/docs/manual-mocks#mocking-methods-which-are-not-implemented-in-jsdom -Object.defineProperty(window, 'matchMedia', { +Object.defineProperty(global, 'matchMedia', { writable: true, value: jest.fn().mockImplementation((query) => ({ matches: false, diff --git a/desktop/scripts/jest-setup.ts b/desktop/scripts/jest-setup.ts index 263119f8f..1845839a1 100644 --- a/desktop/scripts/jest-setup.ts +++ b/desktop/scripts/jest-setup.ts @@ -9,7 +9,7 @@ // import/no-unresolved complains, although it is a perfectly fine import // eslint-disable-next-line -global.fetch = require('jest-fetch-mock'); +(global as any).fetch = require('jest-fetch-mock'); // @ts-ignore global.electronRequire = require; diff --git a/desktop/scripts/start-dev-server.ts b/desktop/scripts/start-dev-server.ts index 77087fc2c..af7bffc06 100644 --- a/desktop/scripts/start-dev-server.ts +++ b/desktop/scripts/start-dev-server.ts @@ -22,6 +22,7 @@ import fs from 'fs-extra'; import {hostname} from 'os'; import {compileMain, prepareDefaultPlugins} from './build-utils'; import Watchman from './watchman'; +// @ts-ignore no typings for metro import Metro from 'metro'; import {staticDir, babelTransformationsDir, rootDir} from './paths'; import isFB from './isFB'; diff --git a/desktop/scripts/start-flipper-server-dev.ts b/desktop/scripts/start-flipper-server-dev.ts index 11c07f7db..94a52ecf5 100644 --- a/desktop/scripts/start-flipper-server-dev.ts +++ b/desktop/scripts/start-flipper-server-dev.ts @@ -16,11 +16,9 @@ import { prepareDefaultPlugins, } from './build-utils'; import Watchman from './watchman'; -import {serverStaticDir} from './paths'; import isFB from './isFB'; import yargs from 'yargs'; import ensurePluginFoldersWatchable from './ensurePluginFoldersWatchable'; -import {remove} from 'fs-extra'; const argv = yargs .usage('yarn flipper-server [args]') @@ -179,8 +177,6 @@ async function startWatchChanges() { } (async () => { - await remove(serverStaticDir); - if (dotenv && dotenv.parsed) { console.log('✅ Loaded env vars from .env file: ', dotenv.parsed); } diff --git a/desktop/scripts/tsconfig.json b/desktop/scripts/tsconfig.json index 2d69f6b4f..d8dad3015 100644 --- a/desktop/scripts/tsconfig.json +++ b/desktop/scripts/tsconfig.json @@ -5,7 +5,8 @@ "rootDir": ".", "lib": ["ES2019"], "noEmit": true, - "esModuleInterop": true + "esModuleInterop": true, + "types": ["jest"] }, "references": [ { diff --git a/desktop/tsc-root/tsconfig.json b/desktop/tsc-root/tsconfig.json index 67b8e9863..3b34dc963 100644 --- a/desktop/tsc-root/tsconfig.json +++ b/desktop/tsc-root/tsconfig.json @@ -41,6 +41,9 @@ }, { "path": "../test-utils" + }, + { + "path": "../scripts" } ] }