From e8fc708f56de916805ce2c0449ad88f619beaca4 Mon Sep 17 00:00:00 2001 From: Tim Yung Date: Tue, 12 Sep 2023 04:07:17 -0700 Subject: [PATCH] RN: Use a Private Property in `EventEmitter` (#39395) Summary: Switches `EventEmitter` to use a private property. Support for private properties was [only recently added](https://github.com/facebook/react-native/pull/39318), so this will be the first end-to-end validation of support in the `facebook/react-native` project. Changelog: [Internal] Reviewed By: voideanvalue Differential Revision: D49167908 --- .../Libraries/vendor/emitter/EventEmitter.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/react-native/Libraries/vendor/emitter/EventEmitter.js b/packages/react-native/Libraries/vendor/emitter/EventEmitter.js index 904b77a3226756..e638309de87fc8 100644 --- a/packages/react-native/Libraries/vendor/emitter/EventEmitter.js +++ b/packages/react-native/Libraries/vendor/emitter/EventEmitter.js @@ -63,7 +63,7 @@ type Registry = $ObjMap< export default class EventEmitter implements IEventEmitter { - _registry: Registry = {}; + #registry: Registry = {}; /** * Registers a listener that is called when the supplied event is emitted. @@ -83,7 +83,7 @@ export default class EventEmitter TEventToArgsMap, TEvent, TEventToArgsMap[TEvent], - >(this._registry, eventType); + >(this.#registry, eventType); const registration: Registration = { context, listener, @@ -107,7 +107,7 @@ export default class EventEmitter ...args: TEventToArgsMap[TEvent] ): void { const registrations: ?Set> = - this._registry[eventType]; + this.#registry[eventType]; if (registrations != null) { for (const registration of [...registrations]) { registration.listener.apply(registration.context, args); @@ -122,9 +122,9 @@ export default class EventEmitter eventType?: ?TEvent, ): void { if (eventType == null) { - this._registry = {}; + this.#registry = {}; } else { - delete this._registry[eventType]; + delete this.#registry[eventType]; } } @@ -132,7 +132,7 @@ export default class EventEmitter * Returns the number of registered listeners for the supplied event. */ listenerCount>(eventType: TEvent): number { - const registrations: ?Set> = this._registry[eventType]; + const registrations: ?Set> = this.#registry[eventType]; return registrations == null ? 0 : registrations.size; } }