diff --git a/desktop/scripts/get-app-watch-folders.ts b/desktop/scripts/get-app-watch-folders.ts index a6605e5c6..76f7cf645 100644 --- a/desktop/scripts/get-app-watch-folders.ts +++ b/desktop/scripts/get-app-watch-folders.ts @@ -9,25 +9,12 @@ import fs from 'fs-extra'; import pFilter from 'p-filter'; -import path from 'path'; import {getWatchFolders} from 'flipper-pkg-lib'; -import {appDir, publicPluginsDir, fbPluginsDir} from './paths'; - -/** - * Flipper references code from below plugins directly. Such directly referenced plugins - * and their dependencies should be added as watch folders so Metro bundled can resolve them. - */ -const pluginsReferencedDirectlyFromFlipper = [ - path.join(publicPluginsDir, 'navigation'), - path.join(fbPluginsDir, 'mobileconfig'), - path.join(fbPluginsDir, 'watch'), -]; +import {appDir} from './paths'; export default async function getAppWatchFolders() { const getWatchFoldersResults = await Promise.all( - [appDir, ...pluginsReferencedDirectlyFromFlipper].map((dir) => - getWatchFolders(dir), - ), + [appDir].map((dir) => getWatchFolders(dir)), ); const watchFolders = ([] as string[]).concat(...getWatchFoldersResults); return pFilter( diff --git a/desktop/scripts/start-dev-server.ts b/desktop/scripts/start-dev-server.ts index 98e40c22b..8fb2abec3 100644 --- a/desktop/scripts/start-dev-server.ts +++ b/desktop/scripts/start-dev-server.ts @@ -244,6 +244,8 @@ async function startMetroServer(app: Express, server: http.Server) { const watchFolders = (await getAppWatchFolders()).concat( await getPluginSourceFolders(), ); + console.log('Source dirs\n\t' + watchFolders.join('\n\t')); + const baseConfig = await Metro.loadConfig(); const config = Object.assign({}, baseConfig, { projectRoot: rootDir, @@ -339,7 +341,15 @@ async function startWatchChanges(io: socketIo.Server) { const watchman = new Watchman(path.resolve(__dirname, '..')); await watchman.initialize(); await Promise.all( - ['app', 'pkg', 'doctor', 'plugin-lib', 'flipper-plugin'].map((dir) => + [ + 'app', + 'pkg', + 'doctor', + 'plugin-lib', + 'flipper-plugin', + 'flipper-common', + 'flipper-ui-core', + ].map((dir) => watchman.startWatchFiles( dir, () => {