UNPKG

@robot.com/better-mqtt

Version:

A modern, TypeScript-first MQTT client library that provides a better developer experience with async iterators, shared subscriptions, and React hooks. Better MQTT is a wrapper around the excellent [mqtt.js](https://github.com/mqttjs/MQTT.js) library, enh

89 lines 2.01 kB
// src/mock.ts import { EventEmitter } from "ee-ts"; function stringParser(message) { return message.toString("utf8"); } function jsonParser(message) { return JSON.parse(message.toString("utf8")); } function binaryParser(message) { return message; } var Subscription = class extends EventEmitter { topic; parser; constructor(opts) { super(); this.topic = opts.topic; this.parser = opts.parser; } handleMessage(_message, _topic, _params) { } async *[Symbol.asyncIterator]() { } end() { this.emit("end"); } }; var BetterMQTT = class _BetterMQTT extends EventEmitter { client = new EventEmitter(); error = null; get status() { return "offline"; } publish(_topic, _message, _opts) { } async publishAsync(_topic, _message) { return Promise.resolve(); } publishJson(_topic, _message) { } async publishJsonAsync(_topic, _message) { return Promise.resolve(); } unsubscribe(_sub) { } subscribe(topic, parser) { return new Subscription({ mqtt: this, topic, parser }); } subscribeString(topic) { return this.subscribe(topic, stringParser); } subscribeJson(topic) { return this.subscribe(topic, jsonParser); } subscribeBinary(topic) { return this.subscribe(topic, binaryParser); } async subscribeAsync(topic, parser) { return Promise.resolve( new Subscription({ mqtt: this, topic, parser }) ); } async subscribeStringAsync(topic) { return this.subscribeAsync(topic, stringParser); } async subscribeJsonAsync(topic) { return this.subscribeAsync(topic, jsonParser); } async subscribeBinaryAsync(topic) { return this.subscribeAsync(topic, binaryParser); } static async connectAsync(..._args) { return Promise.resolve(new _BetterMQTT()); } static connect(..._args) { return new _BetterMQTT(); } end() { this.emit("end"); } }; export { BetterMQTT, Subscription, binaryParser, jsonParser, stringParser }; //# sourceMappingURL=mock.js.map