@mochabug/adapt-web 0.0.58 → 0.0.59

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.
package/dist/cjs/index.js CHANGED
@@ -20,10 +20,7 @@ const STATUS_REQUEST_TIMEOUT = 408;
20
20
  const STATUS_MAX_ACK_PENDING = 409;
21
21
  const STATUS_FLOW_CONTROL = 100;
22
22
  // Default configuration
23
- const DEFAULT_MAX_MESSAGES = 100;
24
- const DEFAULT_EXPIRES_MS = 30000;
25
- const DEFAULT_POLL_INTERVAL_MS = 100;
26
- const DEFAULT_THRESHOLD_RATIO = 0.5;
23
+ const MESSAGE_BATCH_SIZE = 10;
27
24
  const natsUrl = "wss://adapt-dev.mochabugapis.com:443/pubsub";
28
25
  const baseUrl = "https://adapt-dev.mochabugapis.com/v1/automations";
29
26
  // REST API functions
@@ -131,25 +128,18 @@ var ConnectionState;
131
128
  class PubsubClient {
132
129
  constructor(debug = false) {
133
130
  this.nc = null;
134
- this.pullSubscription = null;
135
- this.subject = null;
131
+ this.subscription = null;
136
132
  this.streamName = null;
137
133
  this.consumerName = null;
138
134
  this.outputHandler = null;
139
135
  this.sessionHandler = null;
140
136
  this.urlHandler = null;
141
137
  this.isReconnecting = false;
138
+ this.inbox = null;
142
139
  this.connectionState = ConnectionState.DISCONNECTED;
140
+ this.jc = (0, nats_ws_1.JSONCodec)();
143
141
  // Pull consumer state
144
142
  this.pending = 0;
145
- this.pulling = false;
146
- this.pullTimer = null;
147
- this.maxMessages = DEFAULT_MAX_MESSAGES;
148
- this.expiresMs = DEFAULT_EXPIRES_MS;
149
- this.pollIntervalMs = DEFAULT_POLL_INTERVAL_MS;
150
- this.threshold = DEFAULT_MAX_MESSAGES * DEFAULT_THRESHOLD_RATIO;
151
- this.inbox = null;
152
- this.jc = (0, nats_ws_1.JSONCodec)();
153
143
  this.debug = debug;
154
144
  }
155
145
  log(level, message, data) {
@@ -165,21 +155,15 @@ class PubsubClient {
165
155
  }
166
156
  }
167
157
  async subscribe(opts) {
168
- this.log("info", "Subscribe called with:", {
169
- subject: opts.subject,
158
+ this.log("debug", "Subscribe called with:", {
170
159
  consumer: opts.consumer,
171
160
  stream: opts.stream,
172
161
  });
173
- // Validate inputs
174
- if (!validateSubject(opts.subject)) {
175
- throw new Error(`Invalid subject: "${opts.subject}"`);
176
- }
177
162
  if (!opts.consumer || !opts.stream) {
178
163
  throw new Error("Consumer and stream names are required");
179
164
  }
180
- // If we're already connected to the same subject, just update handlers
165
+ // Only update the handlers if we stay on the same consumer and stream
181
166
  if (this.connectionState === ConnectionState.CONNECTED &&
182
- this.subject === opts.subject &&
183
167
  this.streamName === opts.stream &&
184
168
  this.consumerName === opts.consumer) {
185
169
  this.log("debug", "Already connected to same subject, updating handlers only");
@@ -191,24 +175,18 @@ class PubsubClient {
191
175
  if (this.connectionState === ConnectionState.CONNECTING) {
192
176
  throw new Error("Already connecting, please wait");
193
177
  }
194
- // If connected to a different subject, close first
195
- if (this.connectionState === ConnectionState.CONNECTED ||
196
- this.connectionState === ConnectionState.CLOSING) {
178
+ // If already connected, let's ubsubscribe first
179
+ if (this.connectionState === ConnectionState.CONNECTED) {
197
180
  await this.unsubscribe();
198
181
  }
199
182
  try {
200
183
  this.connectionState = ConnectionState.CONNECTING;
201
184
  // Store configuration
202
- this.subject = opts.subject;
203
185
  this.streamName = opts.stream;
204
186
  this.consumerName = opts.consumer;
205
187
  this.outputHandler = opts.onOutput || null;
206
188
  this.sessionHandler = opts.onSession || null;
207
189
  this.urlHandler = opts.onUrl || null;
208
- this.maxMessages = opts.maxMessages || DEFAULT_MAX_MESSAGES;
209
- this.expiresMs = opts.expiresMs || DEFAULT_EXPIRES_MS;
210
- this.pollIntervalMs = opts.pollIntervalMs || DEFAULT_POLL_INTERVAL_MS;
211
- this.threshold = Math.floor(this.maxMessages * DEFAULT_THRESHOLD_RATIO);
212
190
  // Connect to NATS
213
191
  const inboxPrefix = `_INBOX_${opts.consumer}`;
214
192
  this.log("debug", `Connecting with inbox prefix: ${inboxPrefix}`);
@@ -302,27 +280,17 @@ class PubsubClient {
302
280
  if (!this.nc || !this.streamName || !this.consumerName) {
303
281
  throw new Error("Not properly initialized");
304
282
  }
305
- await this.clearSubscriptions();
283
+ this.clearSubscriptions();
306
284
  try {
307
285
  this.log("info", `Creating pull subscription for consumer: ${this.consumerName} on stream: ${this.streamName}`);
308
286
  // Create inbox for receiving messages
309
287
  this.inbox = (0, nats_ws_1.createInbox)(`_INBOX_${this.consumerName}`);
310
288
  const sub = this.nc.subscribe(this.inbox);
311
- this.pullSubscription = sub;
312
- // Reset state
289
+ this.subscription = sub;
313
290
  this.pending = 0;
314
- this.pulling = false;
315
291
  // Start message processing loop
316
292
  this.processMessages(sub);
317
- // Initial pull - use no_wait to check for immediate messages
318
- this.log("debug", `Initial no_wait pull for ${this.maxMessages} messages`);
319
- await this.pull(this.maxMessages, true);
320
- // IMPORTANT: Immediately pull again without no_wait to get pending messages
321
- // This will wait for messages up to the timeout
322
- this.log("debug", "Following up with blocking pull for pending messages");
323
- await this.pull(this.maxMessages, false);
324
- // Schedule periodic pulls for long polling
325
- this.schedulePull();
293
+ this.pull();
326
294
  this.log("info", "Pull subscription created successfully");
327
295
  }
328
296
  catch (error) {
@@ -333,6 +301,7 @@ class PubsubClient {
333
301
  async processMessages(sub) {
334
302
  try {
335
303
  for await (const msg of sub) {
304
+ // Early exit if we're closing or disconnected
336
305
  if (this.connectionState === ConnectionState.CLOSING ||
337
306
  this.connectionState === ConnectionState.DISCONNECTED) {
338
307
  this.log("info", "Subscription closing");
@@ -369,8 +338,12 @@ class PubsubClient {
369
338
  this.log("warn", `Message without valid subject`);
370
339
  return;
371
340
  }
372
- // We got a real message
373
- this.pending = Math.max(0, this.pending - 1);
341
+ // Now, we need to count the messages that are actually on the consumer's subject
342
+ // which is what we are pulling
343
+ this.pending--;
344
+ if (this.pending <= 0) {
345
+ this.pull();
346
+ }
374
347
  // Process the message based on the last part of the subject
375
348
  const parts = msg.subject.split(".");
376
349
  const action = parts[parts.length - 1];
@@ -417,47 +390,24 @@ class PubsubClient {
417
390
  catch (error) {
418
391
  this.log("error", `Error processing ${action} message:`, error);
419
392
  this.nak(msg);
420
- throw error;
421
- }
422
- // Pull more if below threshold
423
- if (this.pending < this.threshold && !this.pulling) {
424
- const pullCount = this.maxMessages - this.pending;
425
- this.pull(pullCount, false);
426
393
  }
427
394
  }
428
395
  async handleStatusMessage(status, description, msg) {
429
396
  switch (status) {
397
+ // This should never be received in a pull consumer without no_wait: true
430
398
  case STATUS_NO_MESSAGES:
431
- this.log("debug", `No messages available: ${description}`);
432
- this.pending = 0;
399
+ this.log("warn", `No messages available: ${description}`);
400
+ this.log("debug", "Headers", msg.headers);
433
401
  break;
402
+ // This should never be received in a pull consumer without expires: ns
434
403
  case STATUS_REQUEST_TIMEOUT:
435
- this.log("debug", `Request timeout: ${description}`);
436
- if (this.pending > 0) {
437
- this.pending--;
438
- }
439
- // Check for pending messages and pull them immediately
440
- if (msg.headers) {
441
- const pendingMsgsHeader = msg.headers.get("Nats-Pending-Messages");
442
- if (pendingMsgsHeader) {
443
- const pendingCount = parseInt(pendingMsgsHeader);
444
- if (pendingCount > 0) {
445
- this.log("info", `Pulling ${pendingCount} pending messages immediately`);
446
- // Reset pending counter and pull all pending messages
447
- this.pending = 0;
448
- await this.pull(Math.min(pendingCount, this.maxMessages), true);
449
- }
450
- }
451
- }
404
+ this.log("warn", `Request timeout: ${description}`);
405
+ this.log("debug", "Headers", msg.headers);
452
406
  break;
453
407
  case STATUS_MAX_ACK_PENDING:
454
- this.log("warn", `Max ack pending: ${description}`);
455
- this.pending = 0;
456
- setTimeout(() => {
457
- if (this.connectionState === ConnectionState.CONNECTED) {
458
- this.pull(this.maxMessages, false);
459
- }
460
- }, 5000);
408
+ this.log("error", `Max ack pending: ${description}`);
409
+ this.log("error", "You are throwing excpetion in your handlers or processing messages too slowly. Please ensure you are acknowledging messages properly.");
410
+ await this.unsubscribe();
461
411
  break;
462
412
  case STATUS_FLOW_CONTROL:
463
413
  this.log("debug", `Flow control: ${description}`);
@@ -489,95 +439,58 @@ class PubsubClient {
489
439
  this.log("debug", `Sending ACK for message: '${msg.subject}' on '${msg.reply}'`);
490
440
  this.nc.publish(msg.reply, new Uint8Array(0));
491
441
  }
492
- async pull(batch, noWait = false) {
493
- if (this.pulling || !this.nc || !this.inbox || batch <= 0) {
494
- return;
442
+ pull() {
443
+ if (!this.nc || !this.inbox) {
444
+ this.log("error", "NATS connection or inbox not initialized");
445
+ throw new Error("NATS connection or inbox not initialized");
495
446
  }
496
447
  if (this.connectionState !== ConnectionState.CONNECTED) {
448
+ this.log("warn", "Not connected, cannot pull messages");
449
+ return;
450
+ }
451
+ if (this.pending > 0) {
452
+ this.log("warn", `Already have outstanding messages: ${this.pending}`);
497
453
  return;
498
454
  }
499
- this.pulling = true;
500
455
  try {
501
456
  const pullSubject = `${CONSUMER_MSG_NEXT_PREFIX}${this.streamName}.${this.consumerName}`;
502
- const request = {
503
- batch: batch,
504
- };
505
- if (noWait) {
506
- request.no_wait = true;
507
- }
508
- else if (this.expiresMs > 0) {
509
- request.expires = this.expiresMs * 1000000; // Convert to nanoseconds
510
- }
511
- this.nc.publish(pullSubject, this.jc.encode(request), {
457
+ this.log("debug", `Pulling messages from: ${pullSubject}`);
458
+ this.nc.publish(pullSubject, this.jc.encode({
459
+ batch: MESSAGE_BATCH_SIZE,
460
+ no_wait: false,
461
+ }), {
512
462
  reply: this.inbox,
513
463
  });
514
- this.pending += batch;
515
- this.log("debug", `Pull sent: batch=${batch}, pending=${this.pending}, noWait=${noWait}`);
464
+ this.pending = MESSAGE_BATCH_SIZE;
465
+ this.log("debug", `Pull sent: batch=${MESSAGE_BATCH_SIZE}, pending=${this.pending}`);
516
466
  }
517
467
  catch (error) {
518
468
  this.log("error", "Error sending pull request:", error);
519
- this.pending = Math.max(0, this.pending - batch);
520
469
  throw error;
521
470
  }
522
- finally {
523
- this.pulling = false;
524
- }
525
- }
526
- schedulePull() {
527
- if (this.pullTimer) {
528
- clearTimeout(this.pullTimer);
529
- }
530
- if (this.connectionState !== ConnectionState.CONNECTED) {
531
- return;
532
- }
533
- this.pullTimer = setTimeout(() => {
534
- if (this.connectionState !== ConnectionState.CONNECTED) {
535
- return;
536
- }
537
- // Maintain batch size
538
- if (this.pending < this.threshold && !this.pulling) {
539
- const pullCount = this.maxMessages - this.pending;
540
- this.log("debug", `Scheduled pull: ${pullCount} messages`);
541
- this.pull(pullCount, false);
542
- }
543
- else if (this.pending === 0 && !this.pulling) {
544
- // No pending at all, pull full batch
545
- this.log("debug", "No pending, pulling full batch");
546
- this.pull(this.maxMessages, false);
547
- }
548
- this.schedulePull();
549
- }, this.pollIntervalMs);
550
471
  }
551
- async clearSubscriptions() {
552
- if (this.pullTimer) {
553
- clearTimeout(this.pullTimer);
554
- this.pullTimer = null;
555
- }
556
- if (!this.pullSubscription)
472
+ clearSubscriptions() {
473
+ if (!this.subscription)
557
474
  return;
558
475
  this.log("debug", "Clearing subscription");
559
476
  try {
560
- this.pullSubscription.unsubscribe();
477
+ this.subscription.unsubscribe();
561
478
  this.log("debug", "✓ Subscription cleared");
562
479
  }
563
480
  catch (error) {
564
481
  this.log("error", "Error clearing subscription:", error);
565
482
  }
566
- this.pullSubscription = null;
483
+ this.subscription = null;
567
484
  }
568
485
  async resubscribe() {
569
486
  if (!this.streamName || !this.consumerName)
570
487
  return;
571
488
  this.log("info", "Resubscribing after reconnection");
572
- // Clear old state
573
- this.pending = 0;
574
- this.pulling = false;
575
489
  // Recreate subscription
576
490
  await this.createPullSubscription();
577
491
  this.log("info", "✓ Resubscribed successfully");
578
492
  }
579
493
  cleanupState() {
580
- this.subject = null;
581
494
  this.streamName = null;
582
495
  this.consumerName = null;
583
496
  this.outputHandler = null;
@@ -585,7 +498,6 @@ class PubsubClient {
585
498
  this.urlHandler = null;
586
499
  this.inbox = null;
587
500
  this.pending = 0;
588
- this.pulling = false;
589
501
  }
590
502
  async unsubscribe() {
591
503
  if (this.connectionState === ConnectionState.DISCONNECTED ||
@@ -594,7 +506,7 @@ class PubsubClient {
594
506
  }
595
507
  this.log("info", "Starting unsubscribe process");
596
508
  this.connectionState = ConnectionState.CLOSING;
597
- await this.clearSubscriptions();
509
+ this.clearSubscriptions();
598
510
  this.cleanupState();
599
511
  this.isReconnecting = false;
600
512
  if (this.nc && !this.nc.isClosed()) {
@@ -618,18 +530,6 @@ class PubsubClient {
618
530
  }
619
531
  }
620
532
  exports.PubsubClient = PubsubClient;
621
- // Helper functions
622
- function validateSubject(subject) {
623
- if (!subject || subject.includes(" ") || subject.includes("\t")) {
624
- return false;
625
- }
626
- if (subject.includes("..") ||
627
- subject.startsWith(".") ||
628
- subject.endsWith(".")) {
629
- return false;
630
- }
631
- return true;
632
- }
633
533
  function parseOutputData(data) {
634
534
  return Object.fromEntries(Object.entries(data).map(([key, value]) => {
635
535
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/esm/index.js CHANGED
@@ -11,10 +11,7 @@ const STATUS_REQUEST_TIMEOUT = 408;
11
11
  const STATUS_MAX_ACK_PENDING = 409;
12
12
  const STATUS_FLOW_CONTROL = 100;
13
13
  // Default configuration
14
- const DEFAULT_MAX_MESSAGES = 100;
15
- const DEFAULT_EXPIRES_MS = 30000;
16
- const DEFAULT_POLL_INTERVAL_MS = 100;
17
- const DEFAULT_THRESHOLD_RATIO = 0.5;
14
+ const MESSAGE_BATCH_SIZE = 10;
18
15
  const natsUrl = "wss://adapt-dev.mochabugapis.com:443/pubsub";
19
16
  const baseUrl = "https://adapt-dev.mochabugapis.com/v1/automations";
20
17
  // REST API functions
@@ -121,25 +118,18 @@ var ConnectionState;
121
118
  export class PubsubClient {
122
119
  constructor(debug = false) {
123
120
  this.nc = null;
124
- this.pullSubscription = null;
125
- this.subject = null;
121
+ this.subscription = null;
126
122
  this.streamName = null;
127
123
  this.consumerName = null;
128
124
  this.outputHandler = null;
129
125
  this.sessionHandler = null;
130
126
  this.urlHandler = null;
131
127
  this.isReconnecting = false;
128
+ this.inbox = null;
132
129
  this.connectionState = ConnectionState.DISCONNECTED;
130
+ this.jc = JSONCodec();
133
131
  // Pull consumer state
134
132
  this.pending = 0;
135
- this.pulling = false;
136
- this.pullTimer = null;
137
- this.maxMessages = DEFAULT_MAX_MESSAGES;
138
- this.expiresMs = DEFAULT_EXPIRES_MS;
139
- this.pollIntervalMs = DEFAULT_POLL_INTERVAL_MS;
140
- this.threshold = DEFAULT_MAX_MESSAGES * DEFAULT_THRESHOLD_RATIO;
141
- this.inbox = null;
142
- this.jc = JSONCodec();
143
133
  this.debug = debug;
144
134
  }
145
135
  log(level, message, data) {
@@ -155,21 +145,15 @@ export class PubsubClient {
155
145
  }
156
146
  }
157
147
  async subscribe(opts) {
158
- this.log("info", "Subscribe called with:", {
159
- subject: opts.subject,
148
+ this.log("debug", "Subscribe called with:", {
160
149
  consumer: opts.consumer,
161
150
  stream: opts.stream,
162
151
  });
163
- // Validate inputs
164
- if (!validateSubject(opts.subject)) {
165
- throw new Error(`Invalid subject: "${opts.subject}"`);
166
- }
167
152
  if (!opts.consumer || !opts.stream) {
168
153
  throw new Error("Consumer and stream names are required");
169
154
  }
170
- // If we're already connected to the same subject, just update handlers
155
+ // Only update the handlers if we stay on the same consumer and stream
171
156
  if (this.connectionState === ConnectionState.CONNECTED &&
172
- this.subject === opts.subject &&
173
157
  this.streamName === opts.stream &&
174
158
  this.consumerName === opts.consumer) {
175
159
  this.log("debug", "Already connected to same subject, updating handlers only");
@@ -181,24 +165,18 @@ export class PubsubClient {
181
165
  if (this.connectionState === ConnectionState.CONNECTING) {
182
166
  throw new Error("Already connecting, please wait");
183
167
  }
184
- // If connected to a different subject, close first
185
- if (this.connectionState === ConnectionState.CONNECTED ||
186
- this.connectionState === ConnectionState.CLOSING) {
168
+ // If already connected, let's ubsubscribe first
169
+ if (this.connectionState === ConnectionState.CONNECTED) {
187
170
  await this.unsubscribe();
188
171
  }
189
172
  try {
190
173
  this.connectionState = ConnectionState.CONNECTING;
191
174
  // Store configuration
192
- this.subject = opts.subject;
193
175
  this.streamName = opts.stream;
194
176
  this.consumerName = opts.consumer;
195
177
  this.outputHandler = opts.onOutput || null;
196
178
  this.sessionHandler = opts.onSession || null;
197
179
  this.urlHandler = opts.onUrl || null;
198
- this.maxMessages = opts.maxMessages || DEFAULT_MAX_MESSAGES;
199
- this.expiresMs = opts.expiresMs || DEFAULT_EXPIRES_MS;
200
- this.pollIntervalMs = opts.pollIntervalMs || DEFAULT_POLL_INTERVAL_MS;
201
- this.threshold = Math.floor(this.maxMessages * DEFAULT_THRESHOLD_RATIO);
202
180
  // Connect to NATS
203
181
  const inboxPrefix = `_INBOX_${opts.consumer}`;
204
182
  this.log("debug", `Connecting with inbox prefix: ${inboxPrefix}`);
@@ -292,27 +270,17 @@ export class PubsubClient {
292
270
  if (!this.nc || !this.streamName || !this.consumerName) {
293
271
  throw new Error("Not properly initialized");
294
272
  }
295
- await this.clearSubscriptions();
273
+ this.clearSubscriptions();
296
274
  try {
297
275
  this.log("info", `Creating pull subscription for consumer: ${this.consumerName} on stream: ${this.streamName}`);
298
276
  // Create inbox for receiving messages
299
277
  this.inbox = createInbox(`_INBOX_${this.consumerName}`);
300
278
  const sub = this.nc.subscribe(this.inbox);
301
- this.pullSubscription = sub;
302
- // Reset state
279
+ this.subscription = sub;
303
280
  this.pending = 0;
304
- this.pulling = false;
305
281
  // Start message processing loop
306
282
  this.processMessages(sub);
307
- // Initial pull - use no_wait to check for immediate messages
308
- this.log("debug", `Initial no_wait pull for ${this.maxMessages} messages`);
309
- await this.pull(this.maxMessages, true);
310
- // IMPORTANT: Immediately pull again without no_wait to get pending messages
311
- // This will wait for messages up to the timeout
312
- this.log("debug", "Following up with blocking pull for pending messages");
313
- await this.pull(this.maxMessages, false);
314
- // Schedule periodic pulls for long polling
315
- this.schedulePull();
283
+ this.pull();
316
284
  this.log("info", "Pull subscription created successfully");
317
285
  }
318
286
  catch (error) {
@@ -323,6 +291,7 @@ export class PubsubClient {
323
291
  async processMessages(sub) {
324
292
  try {
325
293
  for await (const msg of sub) {
294
+ // Early exit if we're closing or disconnected
326
295
  if (this.connectionState === ConnectionState.CLOSING ||
327
296
  this.connectionState === ConnectionState.DISCONNECTED) {
328
297
  this.log("info", "Subscription closing");
@@ -359,8 +328,12 @@ export class PubsubClient {
359
328
  this.log("warn", `Message without valid subject`);
360
329
  return;
361
330
  }
362
- // We got a real message
363
- this.pending = Math.max(0, this.pending - 1);
331
+ // Now, we need to count the messages that are actually on the consumer's subject
332
+ // which is what we are pulling
333
+ this.pending--;
334
+ if (this.pending <= 0) {
335
+ this.pull();
336
+ }
364
337
  // Process the message based on the last part of the subject
365
338
  const parts = msg.subject.split(".");
366
339
  const action = parts[parts.length - 1];
@@ -407,47 +380,24 @@ export class PubsubClient {
407
380
  catch (error) {
408
381
  this.log("error", `Error processing ${action} message:`, error);
409
382
  this.nak(msg);
410
- throw error;
411
- }
412
- // Pull more if below threshold
413
- if (this.pending < this.threshold && !this.pulling) {
414
- const pullCount = this.maxMessages - this.pending;
415
- this.pull(pullCount, false);
416
383
  }
417
384
  }
418
385
  async handleStatusMessage(status, description, msg) {
419
386
  switch (status) {
387
+ // This should never be received in a pull consumer without no_wait: true
420
388
  case STATUS_NO_MESSAGES:
421
- this.log("debug", `No messages available: ${description}`);
422
- this.pending = 0;
389
+ this.log("warn", `No messages available: ${description}`);
390
+ this.log("debug", "Headers", msg.headers);
423
391
  break;
392
+ // This should never be received in a pull consumer without expires: ns
424
393
  case STATUS_REQUEST_TIMEOUT:
425
- this.log("debug", `Request timeout: ${description}`);
426
- if (this.pending > 0) {
427
- this.pending--;
428
- }
429
- // Check for pending messages and pull them immediately
430
- if (msg.headers) {
431
- const pendingMsgsHeader = msg.headers.get("Nats-Pending-Messages");
432
- if (pendingMsgsHeader) {
433
- const pendingCount = parseInt(pendingMsgsHeader);
434
- if (pendingCount > 0) {
435
- this.log("info", `Pulling ${pendingCount} pending messages immediately`);
436
- // Reset pending counter and pull all pending messages
437
- this.pending = 0;
438
- await this.pull(Math.min(pendingCount, this.maxMessages), true);
439
- }
440
- }
441
- }
394
+ this.log("warn", `Request timeout: ${description}`);
395
+ this.log("debug", "Headers", msg.headers);
442
396
  break;
443
397
  case STATUS_MAX_ACK_PENDING:
444
- this.log("warn", `Max ack pending: ${description}`);
445
- this.pending = 0;
446
- setTimeout(() => {
447
- if (this.connectionState === ConnectionState.CONNECTED) {
448
- this.pull(this.maxMessages, false);
449
- }
450
- }, 5000);
398
+ this.log("error", `Max ack pending: ${description}`);
399
+ this.log("error", "You are throwing excpetion in your handlers or processing messages too slowly. Please ensure you are acknowledging messages properly.");
400
+ await this.unsubscribe();
451
401
  break;
452
402
  case STATUS_FLOW_CONTROL:
453
403
  this.log("debug", `Flow control: ${description}`);
@@ -479,95 +429,58 @@ export class PubsubClient {
479
429
  this.log("debug", `Sending ACK for message: '${msg.subject}' on '${msg.reply}'`);
480
430
  this.nc.publish(msg.reply, new Uint8Array(0));
481
431
  }
482
- async pull(batch, noWait = false) {
483
- if (this.pulling || !this.nc || !this.inbox || batch <= 0) {
484
- return;
432
+ pull() {
433
+ if (!this.nc || !this.inbox) {
434
+ this.log("error", "NATS connection or inbox not initialized");
435
+ throw new Error("NATS connection or inbox not initialized");
485
436
  }
486
437
  if (this.connectionState !== ConnectionState.CONNECTED) {
438
+ this.log("warn", "Not connected, cannot pull messages");
439
+ return;
440
+ }
441
+ if (this.pending > 0) {
442
+ this.log("warn", `Already have outstanding messages: ${this.pending}`);
487
443
  return;
488
444
  }
489
- this.pulling = true;
490
445
  try {
491
446
  const pullSubject = `${CONSUMER_MSG_NEXT_PREFIX}${this.streamName}.${this.consumerName}`;
492
- const request = {
493
- batch: batch,
494
- };
495
- if (noWait) {
496
- request.no_wait = true;
497
- }
498
- else if (this.expiresMs > 0) {
499
- request.expires = this.expiresMs * 1000000; // Convert to nanoseconds
500
- }
501
- this.nc.publish(pullSubject, this.jc.encode(request), {
447
+ this.log("debug", `Pulling messages from: ${pullSubject}`);
448
+ this.nc.publish(pullSubject, this.jc.encode({
449
+ batch: MESSAGE_BATCH_SIZE,
450
+ no_wait: false,
451
+ }), {
502
452
  reply: this.inbox,
503
453
  });
504
- this.pending += batch;
505
- this.log("debug", `Pull sent: batch=${batch}, pending=${this.pending}, noWait=${noWait}`);
454
+ this.pending = MESSAGE_BATCH_SIZE;
455
+ this.log("debug", `Pull sent: batch=${MESSAGE_BATCH_SIZE}, pending=${this.pending}`);
506
456
  }
507
457
  catch (error) {
508
458
  this.log("error", "Error sending pull request:", error);
509
- this.pending = Math.max(0, this.pending - batch);
510
459
  throw error;
511
460
  }
512
- finally {
513
- this.pulling = false;
514
- }
515
- }
516
- schedulePull() {
517
- if (this.pullTimer) {
518
- clearTimeout(this.pullTimer);
519
- }
520
- if (this.connectionState !== ConnectionState.CONNECTED) {
521
- return;
522
- }
523
- this.pullTimer = setTimeout(() => {
524
- if (this.connectionState !== ConnectionState.CONNECTED) {
525
- return;
526
- }
527
- // Maintain batch size
528
- if (this.pending < this.threshold && !this.pulling) {
529
- const pullCount = this.maxMessages - this.pending;
530
- this.log("debug", `Scheduled pull: ${pullCount} messages`);
531
- this.pull(pullCount, false);
532
- }
533
- else if (this.pending === 0 && !this.pulling) {
534
- // No pending at all, pull full batch
535
- this.log("debug", "No pending, pulling full batch");
536
- this.pull(this.maxMessages, false);
537
- }
538
- this.schedulePull();
539
- }, this.pollIntervalMs);
540
461
  }
541
- async clearSubscriptions() {
542
- if (this.pullTimer) {
543
- clearTimeout(this.pullTimer);
544
- this.pullTimer = null;
545
- }
546
- if (!this.pullSubscription)
462
+ clearSubscriptions() {
463
+ if (!this.subscription)
547
464
  return;
548
465
  this.log("debug", "Clearing subscription");
549
466
  try {
550
- this.pullSubscription.unsubscribe();
467
+ this.subscription.unsubscribe();
551
468
  this.log("debug", "✓ Subscription cleared");
552
469
  }
553
470
  catch (error) {
554
471
  this.log("error", "Error clearing subscription:", error);
555
472
  }
556
- this.pullSubscription = null;
473
+ this.subscription = null;
557
474
  }
558
475
  async resubscribe() {
559
476
  if (!this.streamName || !this.consumerName)
560
477
  return;
561
478
  this.log("info", "Resubscribing after reconnection");
562
- // Clear old state
563
- this.pending = 0;
564
- this.pulling = false;
565
479
  // Recreate subscription
566
480
  await this.createPullSubscription();
567
481
  this.log("info", "✓ Resubscribed successfully");
568
482
  }
569
483
  cleanupState() {
570
- this.subject = null;
571
484
  this.streamName = null;
572
485
  this.consumerName = null;
573
486
  this.outputHandler = null;
@@ -575,7 +488,6 @@ export class PubsubClient {
575
488
  this.urlHandler = null;
576
489
  this.inbox = null;
577
490
  this.pending = 0;
578
- this.pulling = false;
579
491
  }
580
492
  async unsubscribe() {
581
493
  if (this.connectionState === ConnectionState.DISCONNECTED ||
@@ -584,7 +496,7 @@ export class PubsubClient {
584
496
  }
585
497
  this.log("info", "Starting unsubscribe process");
586
498
  this.connectionState = ConnectionState.CLOSING;
587
- await this.clearSubscriptions();
499
+ this.clearSubscriptions();
588
500
  this.cleanupState();
589
501
  this.isReconnecting = false;
590
502
  if (this.nc && !this.nc.isClosed()) {
@@ -607,18 +519,6 @@ export class PubsubClient {
607
519
  return this.connectionState;
608
520
  }
609
521
  }
610
- // Helper functions
611
- function validateSubject(subject) {
612
- if (!subject || subject.includes(" ") || subject.includes("\t")) {
613
- return false;
614
- }
615
- if (subject.includes("..") ||
616
- subject.startsWith(".") ||
617
- subject.endsWith(".")) {
618
- return false;
619
- }
620
- return true;
621
- }
622
522
  function parseOutputData(data) {
623
523
  return Object.fromEntries(Object.entries(data).map(([key, value]) => {
624
524
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -22,38 +22,33 @@ export interface Output {
22
22
  }
23
23
  export type SubscriptionOptions = {
24
24
  credentials: Uint8Array | string;
25
- subject: string;
26
25
  consumer: string;
27
26
  stream: string;
28
27
  onOutput?: (output: Output) => void;
29
28
  onSession?: (session: SessionJson) => void;
30
29
  onUrl?: (url: UrlJson) => void;
31
- maxMessages?: number;
32
- expiresMs?: number;
33
- pollIntervalMs?: number;
34
30
  debug?: boolean;
35
31
  };
32
+ declare enum ConnectionState {
33
+ DISCONNECTED = "disconnected",
34
+ CONNECTING = "connecting",
35
+ CONNECTED = "connected",
36
+ CLOSING = "closing"
37
+ }
36
38
  export declare class PubsubClient {
37
39
  private nc;
38
- private pullSubscription;
39
- private subject;
40
+ private subscription;
40
41
  private streamName;
41
42
  private consumerName;
42
43
  private outputHandler;
43
44
  private sessionHandler;
44
45
  private urlHandler;
45
46
  private isReconnecting;
47
+ private inbox;
46
48
  private connectionState;
47
49
  private debug;
48
- private pending;
49
- private pulling;
50
- private pullTimer;
51
- private maxMessages;
52
- private expiresMs;
53
- private pollIntervalMs;
54
- private threshold;
55
- private inbox;
56
50
  private jc;
51
+ private pending;
57
52
  constructor(debug?: boolean);
58
53
  private log;
59
54
  subscribe(opts: SubscriptionOptions): Promise<void>;
@@ -65,11 +60,11 @@ export declare class PubsubClient {
65
60
  private nak;
66
61
  private ack;
67
62
  private pull;
68
- private schedulePull;
69
63
  private clearSubscriptions;
70
64
  private resubscribe;
71
65
  private cleanupState;
72
66
  unsubscribe(): Promise<void>;
73
67
  isConnected(): boolean;
74
- getConnectionState(): string;
68
+ getConnectionState(): ConnectionState;
75
69
  }
70
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mochabug/adapt-web",
3
- "version": "0.0.58",
3
+ "version": "0.0.59",
4
4
  "description": "The client library to execute automations, without effort, in a browser environment",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",