From 7df73eebdc9716819d59a27e4bc783cb853c9775 Mon Sep 17 00:00:00 2001 From: Iwo Plaza Date: Thu, 23 Jan 2025 08:55:25 -0800 Subject: [PATCH] Migrated `Libraries/WebSocket/*` to `export` syntax. (#48884) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/48884 ## Motivation Modernising the react-native codebase to allow for ingestion by modern Flow tooling. ## This diff - Updates files in `Libraries/WebSocket` to use `export` syntax - Appends `.default` to requires of the changed files. - Updates mocks. - Updates the public API snapshot (intented breaking change) Changelog: [General][Breaking] - Files inside `Libraries/WebSocket` use `export` syntax, which requires the addition of `.default` when imported with the CJS `require` syntax. Reviewed By: cortinico Differential Revision: D68554260 fbshipit-source-id: 90a660fe9e76b255171189101819253521354fda --- packages/react-native/Libraries/Core/setUpReactDevTools.js | 2 +- packages/react-native/Libraries/Core/setUpXHR.js | 2 +- packages/react-native/Libraries/Inspector/NetworkOverlay.js | 3 ++- packages/react-native/Libraries/WebSocket/WebSocket.js | 2 +- packages/react-native/Libraries/WebSocket/WebSocketEvent.js | 2 +- .../Libraries/WebSocket/WebSocketInterceptor.js | 2 +- .../Libraries/WebSocket/__mocks__/event-target-shim.js | 2 +- .../Libraries/WebSocket/__tests__/WebSocket-test.js | 2 +- .../__tests__/__snapshots__/public-api-test.js.snap | 6 +++--- 9 files changed, 12 insertions(+), 11 deletions(-) diff --git a/packages/react-native/Libraries/Core/setUpReactDevTools.js b/packages/react-native/Libraries/Core/setUpReactDevTools.js index 11a3529ba69..6dbeb5f04fc 100644 --- a/packages/react-native/Libraries/Core/setUpReactDevTools.js +++ b/packages/react-native/Libraries/Core/setUpReactDevTools.js @@ -155,7 +155,7 @@ if (__DEV__) { ? window.__REACT_DEVTOOLS_PORT__ : 8097; - const WebSocket = require('../WebSocket/WebSocket'); + const WebSocket = require('../WebSocket/WebSocket').default; ws = new WebSocket('ws://' + host + ':' + port); ws.addEventListener('close', event => { isWebSocketOpen = false; diff --git a/packages/react-native/Libraries/Core/setUpXHR.js b/packages/react-native/Libraries/Core/setUpXHR.js index f7d78709751..a667af0b7be 100644 --- a/packages/react-native/Libraries/Core/setUpXHR.js +++ b/packages/react-native/Libraries/Core/setUpXHR.js @@ -25,7 +25,7 @@ polyfillGlobal('fetch', () => require('../Network/fetch').fetch); polyfillGlobal('Headers', () => require('../Network/fetch').Headers); polyfillGlobal('Request', () => require('../Network/fetch').Request); polyfillGlobal('Response', () => require('../Network/fetch').Response); -polyfillGlobal('WebSocket', () => require('../WebSocket/WebSocket')); +polyfillGlobal('WebSocket', () => require('../WebSocket/WebSocket').default); polyfillGlobal('Blob', () => require('../Blob/Blob').default); polyfillGlobal('File', () => require('../Blob/File').default); polyfillGlobal('FileReader', () => require('../Blob/FileReader').default); diff --git a/packages/react-native/Libraries/Inspector/NetworkOverlay.js b/packages/react-native/Libraries/Inspector/NetworkOverlay.js index 2b6c3162b1d..50afe7ecfa2 100644 --- a/packages/react-native/Libraries/Inspector/NetworkOverlay.js +++ b/packages/react-native/Libraries/Inspector/NetworkOverlay.js @@ -21,7 +21,8 @@ const FlatList = require('../Lists/FlatList'); const XHRInterceptor = require('../Network/XHRInterceptor'); const StyleSheet = require('../StyleSheet/StyleSheet'); const Text = require('../Text/Text'); -const WebSocketInterceptor = require('../WebSocket/WebSocketInterceptor'); +const WebSocketInterceptor = + require('../WebSocket/WebSocketInterceptor').default; const LISTVIEW_CELL_HEIGHT = 15; diff --git a/packages/react-native/Libraries/WebSocket/WebSocket.js b/packages/react-native/Libraries/WebSocket/WebSocket.js index 08d737493c3..348161af248 100644 --- a/packages/react-native/Libraries/WebSocket/WebSocket.js +++ b/packages/react-native/Libraries/WebSocket/WebSocket.js @@ -294,4 +294,4 @@ class WebSocket extends (EventTarget(...WEBSOCKET_EVENTS): typeof EventTarget) { } } -module.exports = WebSocket; +export default WebSocket; diff --git a/packages/react-native/Libraries/WebSocket/WebSocketEvent.js b/packages/react-native/Libraries/WebSocket/WebSocketEvent.js index 14703a8a90d..0dff4745645 100644 --- a/packages/react-native/Libraries/WebSocket/WebSocketEvent.js +++ b/packages/react-native/Libraries/WebSocket/WebSocketEvent.js @@ -27,4 +27,4 @@ class WebSocketEvent { } } -module.exports = WebSocketEvent; +export default WebSocketEvent; diff --git a/packages/react-native/Libraries/WebSocket/WebSocketInterceptor.js b/packages/react-native/Libraries/WebSocket/WebSocketInterceptor.js index 20eea68c720..f6deedb9c0f 100644 --- a/packages/react-native/Libraries/WebSocket/WebSocketInterceptor.js +++ b/packages/react-native/Libraries/WebSocket/WebSocketInterceptor.js @@ -244,4 +244,4 @@ const WebSocketInterceptor = { }, }; -module.exports = WebSocketInterceptor; +export default WebSocketInterceptor; diff --git a/packages/react-native/Libraries/WebSocket/__mocks__/event-target-shim.js b/packages/react-native/Libraries/WebSocket/__mocks__/event-target-shim.js index 652a9abd7c7..557cf3ab38f 100644 --- a/packages/react-native/Libraries/WebSocket/__mocks__/event-target-shim.js +++ b/packages/react-native/Libraries/WebSocket/__mocks__/event-target-shim.js @@ -24,4 +24,4 @@ function EventTarget() { } } -module.exports = EventTarget; +export default EventTarget; diff --git a/packages/react-native/Libraries/WebSocket/__tests__/WebSocket-test.js b/packages/react-native/Libraries/WebSocket/__tests__/WebSocket-test.js index 69c1bcbf258..a376fe22e12 100644 --- a/packages/react-native/Libraries/WebSocket/__tests__/WebSocket-test.js +++ b/packages/react-native/Libraries/WebSocket/__tests__/WebSocket-test.js @@ -21,7 +21,7 @@ jest.setMock('../../BatchedBridge/NativeModules', { }, }); -const WebSocket = require('../WebSocket'); +const WebSocket = require('../WebSocket').default; describe('WebSocket', function () { it('should have connection lifecycle constants defined on the class', () => { diff --git a/packages/react-native/Libraries/__tests__/__snapshots__/public-api-test.js.snap b/packages/react-native/Libraries/__tests__/__snapshots__/public-api-test.js.snap index 228509ffd56..9af8ede6e56 100644 --- a/packages/react-native/Libraries/__tests__/__snapshots__/public-api-test.js.snap +++ b/packages/react-native/Libraries/__tests__/__snapshots__/public-api-test.js.snap @@ -9480,7 +9480,7 @@ declare class WebSocket extends EventTarget { _unregisterEvents(): void; _registerEvents(): void; } -declare module.exports: WebSocket; +declare export default typeof WebSocket; " `; @@ -9489,7 +9489,7 @@ exports[`public API should not change unintentionally Libraries/WebSocket/WebSoc type: string; constructor(type: string, eventInitDict: ?{ ... }): void; } -declare module.exports: WebSocketEvent; +declare export default typeof WebSocketEvent; " `; @@ -9509,7 +9509,7 @@ exports[`public API should not change unintentionally Libraries/WebSocket/WebSoc _arrayBufferToString(data: string): ArrayBuffer | string, disableInterception(): void, }; -declare module.exports: WebSocketInterceptor; +declare export default typeof WebSocketInterceptor; " `;