@seriousme/opifex 2.0.3 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (225) hide show
  1. package/client/ConnectionState.ts +1 -1
  2. package/client/client.ts +41 -9
  3. package/client/context.ts +11 -13
  4. package/client/deps.ts +8 -5
  5. package/client/handlers/handleConnack.ts +2 -2
  6. package/client/mod.ts +13 -2
  7. package/client/store/memoryStore.ts +11 -10
  8. package/client/store/store.ts +1 -1
  9. package/deno/mod.ts +7 -0
  10. package/deno/tcpClient.ts +21 -8
  11. package/deno/tcpServer.ts +21 -4
  12. package/deno/tlsServer.ts +20 -4
  13. package/deno/wsServer.ts +23 -0
  14. package/dist/client/ConnectionState.d.ts +1 -1
  15. package/dist/client/ConnectionState.d.ts.map +1 -1
  16. package/dist/client/client.d.ts +39 -9
  17. package/dist/client/client.d.ts.map +1 -1
  18. package/dist/client/client.js +24 -0
  19. package/dist/client/client.js.map +1 -1
  20. package/dist/client/context.d.ts +8 -8
  21. package/dist/client/context.d.ts.map +1 -1
  22. package/dist/client/context.js.map +1 -1
  23. package/dist/client/deps.d.ts +3 -3
  24. package/dist/client/deps.d.ts.map +1 -1
  25. package/dist/client/deps.js.map +1 -1
  26. package/dist/client/handlers/handleConnack.d.ts.map +1 -1
  27. package/dist/client/handlers/handleConnack.js.map +1 -1
  28. package/dist/client/mod.d.ts +3 -2
  29. package/dist/client/mod.d.ts.map +1 -1
  30. package/dist/client/mod.js +1 -1
  31. package/dist/client/mod.js.map +1 -1
  32. package/dist/client/store/memoryStore.d.ts +3 -3
  33. package/dist/client/store/memoryStore.d.ts.map +1 -1
  34. package/dist/client/store/memoryStore.js +2 -2
  35. package/dist/client/store/memoryStore.js.map +1 -1
  36. package/dist/client/store/store.d.ts +1 -1
  37. package/dist/client/store/store.d.ts.map +1 -1
  38. package/dist/examples/authHandler.test.js +3 -3
  39. package/dist/examples/authHandler.test.js.map +1 -1
  40. package/dist/mqttConn/mqttConn.d.ts +2 -17
  41. package/dist/mqttConn/mqttConn.d.ts.map +1 -1
  42. package/dist/mqttConn/mqttConn.js +1 -1
  43. package/dist/mqttConn/mqttConn.js.map +1 -1
  44. package/dist/mqttPacket/AuthenticationResult.d.ts +4 -0
  45. package/dist/mqttPacket/AuthenticationResult.d.ts.map +1 -1
  46. package/dist/mqttPacket/AuthenticationResult.js.map +1 -1
  47. package/dist/mqttPacket/PacketType.d.ts +4 -0
  48. package/dist/mqttPacket/PacketType.d.ts.map +1 -1
  49. package/dist/mqttPacket/Properties.d.ts +2 -2
  50. package/dist/mqttPacket/Properties.d.ts.map +1 -1
  51. package/dist/mqttPacket/ReasonCode.d.ts +3 -5
  52. package/dist/mqttPacket/ReasonCode.d.ts.map +1 -1
  53. package/dist/mqttPacket/ReasonCode.js.map +1 -1
  54. package/dist/mqttPacket/RetainHandling.d.ts +4 -0
  55. package/dist/mqttPacket/RetainHandling.d.ts.map +1 -1
  56. package/dist/mqttPacket/auth.d.ts +6 -5
  57. package/dist/mqttPacket/auth.d.ts.map +1 -1
  58. package/dist/mqttPacket/auth.js +2 -2
  59. package/dist/mqttPacket/auth.js.map +1 -1
  60. package/dist/mqttPacket/codec.d.ts.map +1 -1
  61. package/dist/mqttPacket/codec.js.map +1 -1
  62. package/dist/mqttPacket/connack.d.ts +9 -7
  63. package/dist/mqttPacket/connack.d.ts.map +1 -1
  64. package/dist/mqttPacket/connack.js +2 -2
  65. package/dist/mqttPacket/connack.js.map +1 -1
  66. package/dist/mqttPacket/connect.d.ts +5 -4
  67. package/dist/mqttPacket/connect.d.ts.map +1 -1
  68. package/dist/mqttPacket/connect.js.map +1 -1
  69. package/dist/mqttPacket/decoder.d.ts +6 -4
  70. package/dist/mqttPacket/decoder.d.ts.map +1 -1
  71. package/dist/mqttPacket/decoder.js +1 -1
  72. package/dist/mqttPacket/decoder.js.map +1 -1
  73. package/dist/mqttPacket/disconnect.d.ts +7 -5
  74. package/dist/mqttPacket/disconnect.d.ts.map +1 -1
  75. package/dist/mqttPacket/disconnect.js +2 -2
  76. package/dist/mqttPacket/disconnect.js.map +1 -1
  77. package/dist/mqttPacket/encoder.d.ts +7 -5
  78. package/dist/mqttPacket/encoder.d.ts.map +1 -1
  79. package/dist/mqttPacket/encoder.js +1 -1
  80. package/dist/mqttPacket/encoder.js.map +1 -1
  81. package/dist/mqttPacket/mod.d.ts +1 -1
  82. package/dist/mqttPacket/mod.d.ts.map +1 -1
  83. package/dist/mqttPacket/pingreq.d.ts +4 -3
  84. package/dist/mqttPacket/pingreq.d.ts.map +1 -1
  85. package/dist/mqttPacket/pingreq.js.map +1 -1
  86. package/dist/mqttPacket/pingres.d.ts +4 -3
  87. package/dist/mqttPacket/pingres.d.ts.map +1 -1
  88. package/dist/mqttPacket/pingres.js.map +1 -1
  89. package/dist/mqttPacket/protocolLevels.d.ts +2 -0
  90. package/dist/mqttPacket/protocolLevels.d.ts.map +1 -1
  91. package/dist/mqttPacket/pubblishAcks.d.ts +7 -7
  92. package/dist/mqttPacket/pubblishAcks.d.ts.map +1 -1
  93. package/dist/mqttPacket/pubblishAcks.js +2 -2
  94. package/dist/mqttPacket/pubblishAcks.js.map +1 -1
  95. package/dist/mqttPacket/publish.d.ts +5 -4
  96. package/dist/mqttPacket/publish.d.ts.map +1 -1
  97. package/dist/mqttPacket/publish.js.map +1 -1
  98. package/dist/mqttPacket/suback.d.ts +7 -5
  99. package/dist/mqttPacket/suback.d.ts.map +1 -1
  100. package/dist/mqttPacket/suback.js +2 -2
  101. package/dist/mqttPacket/suback.js.map +1 -1
  102. package/dist/mqttPacket/subscribe.d.ts +7 -5
  103. package/dist/mqttPacket/subscribe.d.ts.map +1 -1
  104. package/dist/mqttPacket/subscribe.js.map +1 -1
  105. package/dist/mqttPacket/types.d.ts +1 -21
  106. package/dist/mqttPacket/types.d.ts.map +1 -1
  107. package/dist/mqttPacket/unsuback.d.ts +7 -5
  108. package/dist/mqttPacket/unsuback.d.ts.map +1 -1
  109. package/dist/mqttPacket/unsuback.js +1 -1
  110. package/dist/mqttPacket/unsuback.js.map +1 -1
  111. package/dist/mqttPacket/unsubscribe.d.ts +5 -4
  112. package/dist/mqttPacket/unsubscribe.d.ts.map +1 -1
  113. package/dist/mqttPacket/unsubscribe.js.map +1 -1
  114. package/dist/node/tcpClient.d.ts +21 -1
  115. package/dist/node/tcpClient.d.ts.map +1 -1
  116. package/dist/node/tcpClient.js +18 -4
  117. package/dist/node/tcpClient.js.map +1 -1
  118. package/dist/node/tcpServer.d.ts +18 -0
  119. package/dist/node/tcpServer.d.ts.map +1 -1
  120. package/dist/node/tcpServer.js +17 -2
  121. package/dist/node/tcpServer.js.map +1 -1
  122. package/dist/node/tlsServer.d.ts +18 -0
  123. package/dist/node/tlsServer.d.ts.map +1 -1
  124. package/dist/node/tlsServer.js +17 -2
  125. package/dist/node/tlsServer.js.map +1 -1
  126. package/dist/persistence/basicPersistence.d.ts +4 -4
  127. package/dist/persistence/basicPersistence.d.ts.map +1 -1
  128. package/dist/persistence/basicPersistence.js.map +1 -1
  129. package/dist/persistence/deps.d.ts +1 -1
  130. package/dist/persistence/deps.d.ts.map +1 -1
  131. package/dist/persistence/memory/memoryStorage.d.ts +3 -3
  132. package/dist/persistence/memory/memoryStorage.d.ts.map +1 -1
  133. package/dist/persistence/mod.d.ts +1 -1
  134. package/dist/persistence/mod.d.ts.map +1 -1
  135. package/dist/persistence/persistence.d.ts +3 -3
  136. package/dist/persistence/persistence.d.ts.map +1 -1
  137. package/dist/persistence/sqlite/sqliteStorage.d.ts +2 -2
  138. package/dist/persistence/sqlite/sqliteStorage.d.ts.map +1 -1
  139. package/dist/persistence/storage.d.ts +1 -1
  140. package/dist/persistence/storage.d.ts.map +1 -1
  141. package/dist/server/context.d.ts +4 -4
  142. package/dist/server/context.d.ts.map +1 -1
  143. package/dist/server/context.js.map +1 -1
  144. package/dist/server/deps.d.ts +2 -2
  145. package/dist/server/deps.d.ts.map +1 -1
  146. package/dist/server/deps.js.map +1 -1
  147. package/dist/server/handlers/completeConnect.d.ts +3 -2
  148. package/dist/server/handlers/completeConnect.d.ts.map +1 -1
  149. package/dist/server/handlers/completeConnect.js.map +1 -1
  150. package/dist/server/handlers/handlePublish.d.ts.map +1 -1
  151. package/dist/server/handlers/handlePublish.js.map +1 -1
  152. package/dist/server/handlers/handleSubscribe.d.ts.map +1 -1
  153. package/dist/server/handlers/handleSubscribe.js.map +1 -1
  154. package/dist/server/handlers/handleUnsubscribe.d.ts.map +1 -1
  155. package/dist/server/handlers/handleUnsubscribe.js.map +1 -1
  156. package/dist/server/mod.d.ts +1 -1
  157. package/dist/server/mod.d.ts.map +1 -1
  158. package/dist/server/server.d.ts +3 -3
  159. package/dist/server/server.d.ts.map +1 -1
  160. package/dist/server/server.js.map +1 -1
  161. package/dist/socket/socket.d.ts +22 -0
  162. package/dist/socket/socket.d.ts.map +1 -1
  163. package/dist/socket/socket.js +5 -0
  164. package/dist/socket/socket.js.map +1 -1
  165. package/dist/utils/logger.d.ts +3 -3
  166. package/dist/utils/logger.d.ts.map +1 -1
  167. package/dist/utils/logger.js +1 -1
  168. package/dist/utils/logger.js.map +1 -1
  169. package/dist/web/wsClient.d.ts +12 -0
  170. package/dist/web/wsClient.d.ts.map +1 -1
  171. package/dist/web/wsClient.js +12 -1
  172. package/dist/web/wsClient.js.map +1 -1
  173. package/examples/authHandler.test.ts +3 -3
  174. package/mqttConn/mqttConn.ts +2 -18
  175. package/mqttPacket/AuthenticationResult.ts +6 -0
  176. package/mqttPacket/PacketType.ts +5 -0
  177. package/mqttPacket/Properties.ts +2 -2
  178. package/mqttPacket/ReasonCode.ts +6 -8
  179. package/mqttPacket/RetainHandling.ts +5 -0
  180. package/mqttPacket/auth.ts +7 -7
  181. package/mqttPacket/codec.ts +3 -2
  182. package/mqttPacket/connack.ts +11 -10
  183. package/mqttPacket/connect.ts +4 -11
  184. package/mqttPacket/decoder.ts +9 -11
  185. package/mqttPacket/disconnect.ts +7 -7
  186. package/mqttPacket/encoder.test.ts +2 -2
  187. package/mqttPacket/encoder.ts +9 -7
  188. package/mqttPacket/mod.ts +0 -4
  189. package/mqttPacket/pingreq.ts +3 -3
  190. package/mqttPacket/pingres.ts +3 -3
  191. package/mqttPacket/protocolLevels.ts +2 -0
  192. package/mqttPacket/pubblishAcks.ts +9 -9
  193. package/mqttPacket/publish.ts +4 -11
  194. package/mqttPacket/publishAcks.test.ts +3 -3
  195. package/mqttPacket/suback.ts +8 -13
  196. package/mqttPacket/subscribe.ts +6 -12
  197. package/mqttPacket/types.ts +1 -26
  198. package/mqttPacket/unsuback.ts +8 -7
  199. package/mqttPacket/unsubscribe.ts +4 -10
  200. package/node/mod.ts +7 -0
  201. package/node/tcpClient.ts +21 -6
  202. package/node/tcpServer.ts +23 -6
  203. package/node/tlsServer.ts +23 -7
  204. package/package.json +6 -1
  205. package/persistence/basicPersistence.ts +5 -5
  206. package/persistence/deps.ts +1 -1
  207. package/persistence/memory/memoryStorage.ts +3 -3
  208. package/persistence/mod.ts +1 -1
  209. package/persistence/persistence.testing.ts +4 -4
  210. package/persistence/persistence.ts +3 -3
  211. package/persistence/sqlite/sqliteStorage.ts +2 -2
  212. package/persistence/storage.ts +1 -1
  213. package/server/context.ts +5 -5
  214. package/server/deps.ts +1 -2
  215. package/server/handlers/completeConnect.ts +2 -2
  216. package/server/handlers/handlePublish.ts +3 -4
  217. package/server/handlers/handleSubscribe.ts +3 -4
  218. package/server/handlers/handleUnsubscribe.ts +2 -2
  219. package/server/mod.ts +1 -1
  220. package/server/server.ts +3 -3
  221. package/socket/socket.ts +31 -2
  222. package/tools/benchmarks/receiver.ts +2 -2
  223. package/tools/benchmarks/sender.ts +2 -2
  224. package/utils/logger.ts +3 -3
  225. package/web/wsClient.ts +13 -1
@@ -13,10 +13,9 @@ import type {
13
13
  PublishPacket,
14
14
  QoS,
15
15
  Topic,
16
- TReasonCode,
17
16
  } from "../deps.ts";
18
17
 
19
- const reasonsToDisconnect: TReasonCode[] = [
18
+ const reasonsToDisconnect: ReasonCode[] = [
20
19
  ReasonCode.topicAliasInvalid,
21
20
  ];
22
21
 
@@ -24,7 +23,7 @@ async function handlePublishError(
24
23
  ctx: Context,
25
24
  id: PacketId | undefined,
26
25
  qos: QoS,
27
- reasonCode: TReasonCode,
26
+ reasonCode: ReasonCode,
28
27
  reasonString: string,
29
28
  ) {
30
29
  // in v4 we can only close the connection
@@ -103,7 +102,7 @@ async function authorizedToPublish(ctx: Context, topic: Topic) {
103
102
  function validatePublishPacket(
104
103
  ctx: Context,
105
104
  packet: PublishPacket,
106
- ): { reasonCode: TReasonCode; message: string } | null {
105
+ ): { reasonCode: ReasonCode; message: string } | null {
107
106
  const cfg = ctx.config.context;
108
107
  const isProtocolV5 = packet.protocolLevel === 5;
109
108
  const hasTopicAlias = isProtocolV5 &&
@@ -15,7 +15,6 @@ import type {
15
15
  ShareName,
16
16
  SubscribePacket,
17
17
  Topic,
18
- TReasonCode,
19
18
  } from "../deps.ts";
20
19
 
21
20
  // V4 Subscription Failure
@@ -58,7 +57,7 @@ function validateSubscription(
58
57
  isProtocolV5: boolean,
59
58
  sub: ClientSubscription,
60
59
  cfg: Context["config"]["context"],
61
- ): TReasonCode | null {
60
+ ): ReasonCode | null {
62
61
  if (
63
62
  cfg.wildcardSubscriptionAvailable === false && hasWildcards(sub.topicFilter)
64
63
  ) {
@@ -108,7 +107,7 @@ export async function handleSubscribe(
108
107
  }
109
108
 
110
109
  const retainedSubscriptions: ClientSubscription[] = [];
111
- const results: TReasonCode[] = [];
110
+ const results: ReasonCode[] = [];
112
111
 
113
112
  for (const sub of packet.subscriptions) {
114
113
  const clientSub = sub as ClientSubscription;
@@ -166,7 +165,7 @@ export async function handleSubscribe(
166
165
  }
167
166
 
168
167
  // Success code (Granted QoS)
169
- results.push(sub.qos as TReasonCode);
168
+ results.push(sub.qos as ReasonCode);
170
169
  }
171
170
 
172
171
  // Send SUBACK response
@@ -4,7 +4,7 @@ import {
4
4
  parseTopicFilter,
5
5
  ReasonCode,
6
6
  } from "../deps.ts";
7
- import type { TReasonCode, UnsubscribePacket } from "../deps.ts";
7
+ import type { UnsubscribePacket } from "../deps.ts";
8
8
  import { SessionState } from "../context.ts";
9
9
  import type { Context } from "../context.ts";
10
10
 
@@ -26,7 +26,7 @@ export async function handleUnsubscribe(
26
26
  subscriptions.add(joinTopicFilter(sub.topicFilter, sub.shareName));
27
27
  }
28
28
 
29
- const reasonCodes: TReasonCode[] = [];
29
+ const reasonCodes: ReasonCode[] = [];
30
30
 
31
31
  for (const packetTopicFilter of packet.topicFilters) {
32
32
  // split topicFilter into topicFilter and shareName
package/server/mod.ts CHANGED
@@ -5,7 +5,7 @@
5
5
  export { ReasonCode } from "./deps.ts";
6
6
  export type {
7
7
  ConnectPacket,
8
- IPersistence,
8
+ Persistence,
9
9
  ShareName,
10
10
  SockConn,
11
11
  Topic,
package/server/server.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { logger, MemoryPersistence, ReasonCode } from "./deps.ts";
2
2
  import { Context } from "./context.ts";
3
3
  import type { Handlers } from "./context.ts";
4
- import type { IPersistence, ShareName, SockConn, Topic } from "./deps.ts";
4
+ import type { Persistence, ShareName, SockConn, Topic } from "./deps.ts";
5
5
  import { handlePacket } from "./handlers/handlePacket.ts";
6
6
  import { createConfiguration } from "./config.ts";
7
7
  import type { Configuration, ConfigurationInput } from "./config.ts";
@@ -69,7 +69,7 @@ const defaultIsAuthorizedToSubscribe = (
69
69
  */
70
70
  export type MqttServerOptions = {
71
71
  /** Optional persistence layer implementation. Defaults to MemoryPersistence. */
72
- persistence?: IPersistence;
72
+ persistence?: Persistence;
73
73
  /** Optional custom handlers for authentication and authorization. */
74
74
  handlers?: Handlers;
75
75
  /** Optional configuration data */
@@ -91,7 +91,7 @@ export class MqttServer {
91
91
  /** The registered authentication and authorization handlers. */
92
92
  handlers: Handlers;
93
93
  /** The persistence layer used for storing sessions and messages. */
94
- persistence: IPersistence;
94
+ persistence: Persistence;
95
95
  /** The persistence layer used for storing sessions and messages. */
96
96
  configuration: Configuration;
97
97
 
package/socket/socket.ts CHANGED
@@ -1,20 +1,45 @@
1
+ /** Net addresses */
1
2
  export type NetAddr = {
3
+ /** The IP-based transport protocol */
2
4
  transport: "tcp" | "udp";
5
+ /** The hostname */
3
6
  hostname: string;
7
+ /** The port number */
4
8
  port: number;
5
9
  };
6
- export type UnixAddr = { transport: "unix" | "unixpacket"; path: string };
7
- export type VsockAddr = { transport: "vsock"; cid: number; port: number };
10
+ /** Unix addresses */
11
+ export type UnixAddr = {
12
+ /** The Unix domain socket transport protocol */
13
+ transport: "unix" | "unixpacket";
14
+ /** The file system path to the socket to connect to */
15
+ path: string;
16
+ };
17
+ /** vSock addresses */
18
+ export type VsockAddr = {
19
+ /** The VSOCK transport protocol */
20
+ transport: "vsock";
21
+ /** The context identifier (CID) of the peer */
22
+ cid: number;
23
+ /** The port number */
24
+ port: number;
25
+ };
26
+ /** Socket addresses */
8
27
  export type SockAddr = NetAddr | UnixAddr | VsockAddr;
9
28
  /** Socket connection descriptor. */
10
29
  export type SockConn = {
30
+ /** The stream to read from */
11
31
  readable: ReadableStream<Uint8Array>;
32
+ /** The stream to write to */
12
33
  writable: WritableStream<Uint8Array>;
34
+ /** The callback to call on close */
13
35
  close: () => void;
36
+ /** The local address of the connection */
14
37
  localAddr?: SockAddr;
38
+ /** The remote address of the connection */
15
39
  remoteAddr?: SockAddr;
16
40
  };
17
41
 
42
+ /** Connection class */
18
43
  export class Conn {
19
44
  reader: ReadableStreamDefaultReader<Uint8Array>;
20
45
  writer: WritableStreamDefaultWriter<Uint8Array>;
@@ -24,6 +49,7 @@ export class Conn {
24
49
 
25
50
  private leftover: Uint8Array = new Uint8Array(0);
26
51
 
52
+ /** Create a new Conn object from a SockConn */
27
53
  constructor(sockConn: SockConn) {
28
54
  this.closed = false;
29
55
  this.reader = sockConn.readable.getReader();
@@ -34,6 +60,7 @@ export class Conn {
34
60
  this.remoteAddr = sockConn.remoteAddr;
35
61
  }
36
62
 
63
+ /** Read bytes from the connection */
37
64
  async read(length: number): Promise<Uint8Array | null> {
38
65
  if (this.closed || length < 0) {
39
66
  return null;
@@ -81,6 +108,7 @@ export class Conn {
81
108
  return result;
82
109
  }
83
110
 
111
+ /** Write bytes to the connection */
84
112
  async write(data: Uint8Array): Promise<number> {
85
113
  if (this.closed) {
86
114
  return Promise.reject(new Error("Connection closed"));
@@ -94,6 +122,7 @@ export class Conn {
94
122
  }
95
123
  }
96
124
 
125
+ /** close the connection */
97
126
  close() {
98
127
  if (!this.closed) {
99
128
  this.closed = true;
@@ -1,11 +1,11 @@
1
1
  import { exit } from "node:process";
2
2
  import { getArgs, importClientClass } from "./utils.ts";
3
3
  import { logger } from "../../utils/mod.ts";
4
- import type { TLogLevel } from "../../utils/logger.ts";
4
+ import type { LogLevel } from "../../utils/logger.ts";
5
5
  import type { QoS } from "../../client/deps.ts";
6
6
 
7
7
  export async function runReceiver(
8
- level: TLogLevel,
8
+ level: LogLevel,
9
9
  url: string,
10
10
  topic: string,
11
11
  qos: QoS,
@@ -2,7 +2,7 @@ import { exit } from "node:process";
2
2
  import { runAsap } from "../../dev_utils/timers.ts";
3
3
  import { getArgs, importClientClass } from "./utils.ts";
4
4
  import { logger } from "../../utils/mod.ts";
5
- import type { TLogLevel } from "../../utils/logger.ts";
5
+ import type { LogLevel } from "../../utils/logger.ts";
6
6
  import type { QoS } from "../../client/deps.ts";
7
7
 
8
8
  const { TcpClient } = await importClientClass();
@@ -13,7 +13,7 @@ client.onError = (err: Error) => {
13
13
  };
14
14
 
15
15
  export async function runSender(
16
- level: TLogLevel,
16
+ level: LogLevel,
17
17
  url: string,
18
18
  topic: string,
19
19
  qos: QoS,
package/utils/logger.ts CHANGED
@@ -19,7 +19,7 @@ export const LogLevel = {
19
19
  /**
20
20
  * Union type representing the permitted numeric log level indices.
21
21
  */
22
- export type TLogLevel = typeof LogLevel[keyof typeof LogLevel];
22
+ export type LogLevel = typeof LogLevel[keyof typeof LogLevel];
23
23
 
24
24
  type LogArgument = unknown | (() => unknown);
25
25
 
@@ -88,9 +88,9 @@ export class Logger {
88
88
 
89
89
  /**
90
90
  * Adjusts the current verbosity threshold, enabling or masking specific log outputs.
91
- * @param {TLogLevel} logLevel - The minimum numeric severity level threshold to output.
91
+ * @param {LogLevel} logLevel - The minimum numeric severity level threshold to output.
92
92
  */
93
- level(logLevel: TLogLevel) {
93
+ level(logLevel: LogLevel) {
94
94
  this.isWarn = logLevel >= LogLevel.warn;
95
95
  this.isInfo = logLevel >= LogLevel.info;
96
96
  this.isVerbose = logLevel >= LogLevel.verbose;
package/web/wsClient.ts CHANGED
@@ -1,16 +1,28 @@
1
+ /**
2
+ * this is a WebSockets specific client
3
+ * it extends the platform agnostic Client class
4
+ * @module
5
+ */
6
+
1
7
  import { Client } from "../client/client.ts";
2
8
  import { logger } from "../client/deps.ts";
3
9
  import type { SockConn } from "../client/deps.ts";
4
10
  import { wrapWebSocket } from "./wrapWebSocket.ts";
5
11
 
12
+ /**
13
+ * WsClient extends the Client class to provide WebSocket based clients
14
+ * it is used by the MQTTclient to connect to the broker
15
+ * see the /examples folder for an example
16
+ */
6
17
  export class WsClient extends Client {
18
+ /** create a websocket and wrap it in a SockConn */
7
19
  private async establishSocket(url: string): Promise<SockConn> {
8
20
  const ws = new WebSocket(url);
9
21
  const conn = await wrapWebSocket(ws);
10
22
  return conn;
11
23
  }
12
24
 
13
- // overload createConn from the base client class
25
+ /** createConn provides support for both "ws:" and "wss:" URLs */
14
26
  protected override createConn(): Promise<SockConn> {
15
27
  const { protocol, hostname, port: portStr, pathname } = this.connectUrl;
16
28
  const port = portStr ? Number(portStr) : (protocol === "wss:" ? 443 : 80);