From 93f22e79d44db733e65eb9f5b9bcb2ed40ba4352 Mon Sep 17 00:00:00 2001 From: Rob Hogan Date: Sun, 4 May 2025 09:57:57 -0700 Subject: [PATCH] community-cli-plugin: Use `TerminalReporter` type from `metro`, replace deep imports (#51092) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/51092 `TerminalReporter` is re-exported from `metro` (since [0.76.7](https://github.com/facebook/metro/releases/tag/v0.76.7)), so we can update these deep imports to use public exports. Changelog: [Internal] Reviewed By: huntie Differential Revision: D74141704 fbshipit-source-id: 22cd3209868ed9ab260e199f9099ef98335feaeb --- .../src/commands/start/OpenDebuggerKeyboardHandler.js | 2 +- .../src/commands/start/attachKeyHandlers.js | 2 +- .../community-cli-plugin/src/commands/start/runServer.js | 6 ++++-- .../src/utils/createDevMiddlewareLogger.js | 2 +- packages/community-cli-plugin/src/utils/version.js | 2 +- 5 files changed, 8 insertions(+), 6 deletions(-) diff --git a/packages/community-cli-plugin/src/commands/start/OpenDebuggerKeyboardHandler.js b/packages/community-cli-plugin/src/commands/start/OpenDebuggerKeyboardHandler.js index fafc6e94d82..716a008c1ed 100644 --- a/packages/community-cli-plugin/src/commands/start/OpenDebuggerKeyboardHandler.js +++ b/packages/community-cli-plugin/src/commands/start/OpenDebuggerKeyboardHandler.js @@ -9,7 +9,7 @@ * @oncall react_native */ -import type TerminalReporter from 'metro/src/lib/TerminalReporter'; +import type {TerminalReporter} from 'metro'; import chalk from 'chalk'; diff --git a/packages/community-cli-plugin/src/commands/start/attachKeyHandlers.js b/packages/community-cli-plugin/src/commands/start/attachKeyHandlers.js index bc87bf1958f..5706dd66d44 100644 --- a/packages/community-cli-plugin/src/commands/start/attachKeyHandlers.js +++ b/packages/community-cli-plugin/src/commands/start/attachKeyHandlers.js @@ -9,7 +9,7 @@ * @oncall react_native */ -import type TerminalReporter from 'metro/src/lib/TerminalReporter'; +import type {TerminalReporter} from 'metro'; import OpenDebuggerKeyboardHandler from './OpenDebuggerKeyboardHandler'; import chalk from 'chalk'; diff --git a/packages/community-cli-plugin/src/commands/start/runServer.js b/packages/community-cli-plugin/src/commands/start/runServer.js index d4a8636ac45..a3c911b1c05 100644 --- a/packages/community-cli-plugin/src/commands/start/runServer.js +++ b/packages/community-cli-plugin/src/commands/start/runServer.js @@ -10,9 +10,9 @@ */ import type {Config} from '@react-native-community/cli-types'; +import type {TerminalReporter} from 'metro'; import type {Reporter} from 'metro/src/lib/reporting'; import type {TerminalReportableEvent} from 'metro/src/lib/TerminalReporter'; -import typeof TerminalReporter from 'metro/src/lib/TerminalReporter'; import createDevMiddlewareLogger from '../../utils/createDevMiddlewareLogger'; import isDevServerRunning from '../../utils/isDevServerRunning'; @@ -176,7 +176,9 @@ async function runServer( await version.logIfUpdateAvailable(cliConfig, terminalReporter); } -function getReporterImpl(customLogReporterPath?: string): TerminalReporter { +function getReporterImpl( + customLogReporterPath?: string, +): Class { if (customLogReporterPath == null) { return require('metro/src/lib/TerminalReporter'); } diff --git a/packages/community-cli-plugin/src/utils/createDevMiddlewareLogger.js b/packages/community-cli-plugin/src/utils/createDevMiddlewareLogger.js index 2bbc0487b23..6235b15088b 100644 --- a/packages/community-cli-plugin/src/utils/createDevMiddlewareLogger.js +++ b/packages/community-cli-plugin/src/utils/createDevMiddlewareLogger.js @@ -9,7 +9,7 @@ * @oncall react_native */ -import type TerminalReporter from 'metro/src/lib/TerminalReporter'; +import type {TerminalReporter} from 'metro'; type LoggerFn = (...message: $ReadOnlyArray) => void; diff --git a/packages/community-cli-plugin/src/utils/version.js b/packages/community-cli-plugin/src/utils/version.js index 15e5f385227..d6a3703799f 100644 --- a/packages/community-cli-plugin/src/utils/version.js +++ b/packages/community-cli-plugin/src/utils/version.js @@ -10,7 +10,7 @@ */ import type {Config} from '@react-native-community/cli-types'; -import type TerminalReporter from 'metro/src/lib/TerminalReporter'; +import type {TerminalReporter} from 'metro'; import chalk from 'chalk'; import semver from 'semver';