react-native-navigation
Version:
React Native Navigation - truly native navigation for iOS and Android
22 lines (21 loc) • 654 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CommandsObserver = void 0;
class CommandsObserver {
uniqueIdProvider;
listeners = {};
constructor(uniqueIdProvider) {
this.uniqueIdProvider = uniqueIdProvider;
}
register(listener) {
const id = this.uniqueIdProvider.generate();
this.listeners[id] = listener;
return {
remove: () => delete this.listeners[id],
};
}
notify(commandName, params) {
Object.values(this.listeners).forEach((listener) => listener(commandName, params));
}
}
exports.CommandsObserver = CommandsObserver;