request-iframe 0.1.0 → 0.1.1

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 (71) hide show
  1. package/README.CN.md +174 -22
  2. package/README.md +166 -22
  3. package/esm/api/client.js +6 -5
  4. package/esm/api/server.js +3 -1
  5. package/esm/constants/index.js +38 -6
  6. package/esm/constants/messages.js +3 -1
  7. package/esm/core/client-server.js +8 -43
  8. package/esm/core/client.js +7 -7
  9. package/esm/core/response.js +16 -8
  10. package/esm/core/server.js +18 -9
  11. package/esm/message/channel.js +2 -1
  12. package/esm/message/dispatcher.js +63 -25
  13. package/esm/stream/readable-stream.js +57 -18
  14. package/esm/stream/stream-core.js +115 -2
  15. package/esm/stream/writable-stream.js +281 -27
  16. package/esm/utils/ack.js +36 -0
  17. package/esm/utils/debug.js +1 -1
  18. package/esm/utils/index.js +5 -3
  19. package/esm/utils/origin.js +3 -1
  20. package/library/api/client.d.ts.map +1 -1
  21. package/library/api/client.js +5 -4
  22. package/library/api/server.d.ts.map +1 -1
  23. package/library/api/server.js +3 -1
  24. package/library/constants/index.d.ts +36 -5
  25. package/library/constants/index.d.ts.map +1 -1
  26. package/library/constants/index.js +41 -8
  27. package/library/constants/messages.d.ts +3 -1
  28. package/library/constants/messages.d.ts.map +1 -1
  29. package/library/constants/messages.js +3 -1
  30. package/library/core/client-server.d.ts +4 -13
  31. package/library/core/client-server.d.ts.map +1 -1
  32. package/library/core/client-server.js +7 -42
  33. package/library/core/client.d.ts.map +1 -1
  34. package/library/core/client.js +6 -6
  35. package/library/core/response.d.ts +2 -2
  36. package/library/core/response.d.ts.map +1 -1
  37. package/library/core/response.js +15 -7
  38. package/library/core/server.d.ts +6 -2
  39. package/library/core/server.d.ts.map +1 -1
  40. package/library/core/server.js +18 -9
  41. package/library/message/channel.d.ts +1 -1
  42. package/library/message/channel.d.ts.map +1 -1
  43. package/library/message/channel.js +2 -1
  44. package/library/message/dispatcher.d.ts +10 -0
  45. package/library/message/dispatcher.d.ts.map +1 -1
  46. package/library/message/dispatcher.js +62 -24
  47. package/library/stream/readable-stream.d.ts.map +1 -1
  48. package/library/stream/readable-stream.js +56 -17
  49. package/library/stream/stream-core.d.ts +22 -1
  50. package/library/stream/stream-core.d.ts.map +1 -1
  51. package/library/stream/stream-core.js +114 -1
  52. package/library/stream/types.d.ts +115 -2
  53. package/library/stream/types.d.ts.map +1 -1
  54. package/library/stream/writable-stream.d.ts +20 -2
  55. package/library/stream/writable-stream.d.ts.map +1 -1
  56. package/library/stream/writable-stream.js +277 -23
  57. package/library/types/index.d.ts +3 -4
  58. package/library/types/index.d.ts.map +1 -1
  59. package/library/utils/ack.d.ts +2 -0
  60. package/library/utils/ack.d.ts.map +1 -0
  61. package/library/utils/ack.js +44 -0
  62. package/library/utils/debug.js +1 -1
  63. package/library/utils/index.d.ts.map +1 -1
  64. package/library/utils/index.js +4 -3
  65. package/library/utils/origin.d.ts.map +1 -1
  66. package/library/utils/origin.js +2 -1
  67. package/package.json +1 -1
  68. package/esm/utils/ack-meta.js +0 -53
  69. package/library/utils/ack-meta.d.ts +0 -2
  70. package/library/utils/ack-meta.d.ts.map +0 -1
  71. package/library/utils/ack-meta.js +0 -59
@@ -2,7 +2,6 @@
2
2
 
3
3
  require("core-js/modules/es.array.filter.js");
4
4
  require("core-js/modules/es.object.get-own-property-descriptors.js");
5
- require("core-js/modules/web.dom-collections.for-each.js");
6
5
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
7
6
  Object.defineProperty(exports, "__esModule", {
8
7
  value: true
@@ -11,10 +10,14 @@ exports.IframeWritableStream = void 0;
11
10
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
12
11
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
12
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+ require("core-js/modules/es.array.iterator.js");
14
14
  require("core-js/modules/es.array.slice.js");
15
+ require("core-js/modules/es.map.js");
15
16
  require("core-js/modules/es.promise.js");
16
17
  require("core-js/modules/es.promise.finally.js");
17
18
  require("core-js/modules/es.regexp.to-string.js");
19
+ require("core-js/modules/web.dom-collections.for-each.js");
20
+ require("core-js/modules/web.dom-collections.iterator.js");
18
21
  var _utils = require("../utils");
19
22
  var _constants = require("../constants");
20
23
  var _streamCore = require("./stream-core");
@@ -29,7 +32,11 @@ function generateStreamId() {
29
32
 
30
33
  /**
31
34
  * IframeWritableStream - Server-side writable stream
32
- * Used to send stream data to the client
35
+ *
36
+ * Writer/producer stream.
37
+ * It can be created on either side:
38
+ * - Server → Client: used as response stream (via `res.sendStream(stream)`)
39
+ * - Client → Server: used as request body stream (via `client.sendStream(path, stream)`)
33
40
  */
34
41
  class IframeWritableStream extends _streamCore.IframeStreamCore {
35
42
  constructor(options = {}) {
@@ -46,11 +53,14 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
46
53
  /** pull/ack protocol */
47
54
  (0, _defineProperty2.default)(this, "pullCredit", 0);
48
55
  (0, _defineProperty2.default)(this, "seq", 0);
56
+ (0, _defineProperty2.default)(this, "pendingBytes", 0);
49
57
  (0, _defineProperty2.default)(this, "pendingQueue", []);
50
58
  (0, _defineProperty2.default)(this, "pumping", false);
51
59
  (0, _defineProperty2.default)(this, "completionPromise", null);
52
60
  (0, _defineProperty2.default)(this, "resolveCompletion", null);
53
61
  (0, _defineProperty2.default)(this, "rejectCompletion", null);
62
+ (0, _defineProperty2.default)(this, "ackWaiters", new Map());
63
+ (0, _defineProperty2.default)(this, "ackReceiverRegistered", false);
54
64
  this.mode = (_options$mode = options.mode) !== null && _options$mode !== void 0 ? _options$mode : _constants.StreamMode.PULL;
55
65
  this.iterator = options.iterator;
56
66
  this.nextFn = options.next;
@@ -58,6 +68,72 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
58
68
  // Default to async-timeout length to avoid leaking long-lived streams
59
69
  this.expireTimeout = (_options$expireTimeou = options.expireTimeout) !== null && _options$expireTimeou !== void 0 ? _options$expireTimeou : _constants.DefaultTimeout.ASYNC;
60
70
  this.streamTimeout = options.streamTimeout;
71
+ this.maxPendingChunks = options.maxPendingChunks;
72
+ this.maxPendingBytes = options.maxPendingBytes;
73
+ }
74
+ enqueue(item) {
75
+ var max = this.maxPendingChunks;
76
+ if (typeof max === 'number' && max > 0 && this.pendingQueue.length >= max) {
77
+ throw new Error((0, _constants.formatMessage)(_constants.Messages.STREAM_PENDING_QUEUE_OVERFLOW, max));
78
+ }
79
+ var bytes = this.estimateChunkBytes(item.data);
80
+ var maxBytes = this.maxPendingBytes;
81
+ if (typeof maxBytes === 'number' && maxBytes > 0) {
82
+ var next = this.pendingBytes + bytes;
83
+ if (!Number.isFinite(next) || next > maxBytes) {
84
+ throw new Error((0, _constants.formatMessage)(_constants.Messages.STREAM_PENDING_BYTES_OVERFLOW, maxBytes));
85
+ }
86
+ }
87
+ this.pendingQueue.push(_objectSpread(_objectSpread({}, item), {}, {
88
+ bytes
89
+ }));
90
+ this.pendingBytes += bytes;
91
+ }
92
+ estimateChunkBytes(data) {
93
+ if (data === null || data === undefined) return 0;
94
+ if (typeof data === 'string') return this.utf8ByteLength(data);
95
+ try {
96
+ // ArrayBuffer
97
+ if (typeof ArrayBuffer !== 'undefined' && data instanceof ArrayBuffer) {
98
+ return data.byteLength;
99
+ }
100
+ // TypedArray / DataView
101
+ if (typeof ArrayBuffer !== 'undefined' && ArrayBuffer.isView && ArrayBuffer.isView(data)) {
102
+ return data.byteLength;
103
+ }
104
+ } catch (_unused) {
105
+ /** ignore */
106
+ }
107
+ try {
108
+ // Blob / File
109
+ if (typeof Blob !== 'undefined' && data instanceof Blob) {
110
+ return data.size;
111
+ }
112
+ } catch (_unused2) {
113
+ /** ignore */
114
+ }
115
+
116
+ // Strategy C: only count well-defined types; other values are not counted.
117
+ return 0;
118
+ }
119
+ utf8ByteLength(text) {
120
+ try {
121
+ if (typeof TextEncoder !== 'undefined') {
122
+ return new TextEncoder().encode(text).length;
123
+ }
124
+ } catch (_unused3) {
125
+ /** ignore */
126
+ }
127
+ try {
128
+ // eslint-disable-next-line no-undef
129
+ if (typeof Buffer !== 'undefined') {
130
+ // eslint-disable-next-line no-undef
131
+ return Buffer.byteLength(text, 'utf8');
132
+ }
133
+ } catch (_unused4) {
134
+ /** ignore */
135
+ }
136
+ return text.length;
61
137
  }
62
138
 
63
139
  /** Get stream state */
@@ -90,14 +166,19 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
90
166
  {
91
167
  var credit = typeof data.credit === 'number' && data.credit > 0 ? data.credit : 1;
92
168
  this.pullCredit += credit;
169
+ this.emit(_constants.StreamEvent.PULL, {
170
+ credit,
171
+ totalCredit: this.pullCredit
172
+ });
93
173
  // Try flushing buffered chunks or pumping generator
94
174
  this.flush();
95
175
  break;
96
176
  }
97
- case _constants.StreamInternalMessageType.ACK:
98
- // Ack is treated as heartbeat; no further action required
99
- break;
100
177
  case _constants.StreamInternalMessageType.CANCEL:
178
+ this.emit(_constants.StreamEvent.CANCEL, {
179
+ reason: data.reason,
180
+ remote: true
181
+ });
101
182
  this.cancel(data.reason);
102
183
  break;
103
184
  default:
@@ -172,8 +253,11 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
172
253
  return _context2.abrupt("return");
173
254
  case 4:
174
255
  try {
256
+ _this2.emit(_constants.StreamEvent.TIMEOUT, {
257
+ timeout
258
+ });
175
259
  _this2.error((0, _constants.formatMessage)(_constants.Messages.STREAM_TIMEOUT, timeout));
176
- } catch (_unused) {
260
+ } catch (_unused5) {
177
261
  /** ignore */
178
262
  }
179
263
  case 5:
@@ -214,6 +298,54 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
214
298
  }
215
299
  return true;
216
300
  }
301
+ ensureAckReceiver() {
302
+ if (this.ackReceiverRegistered) return;
303
+ if (!this.context) return;
304
+ var ch = this.context.channel;
305
+ if (typeof ch.addReceiver !== 'function' || typeof ch.removeReceiver !== 'function') return;
306
+ this.ackReceiver = (data, context) => {
307
+ if (!data || data.type !== _constants.MessageType.ACK) return;
308
+ var pending = this.ackWaiters.get(data.requestId);
309
+ if (!pending) return;
310
+ if (context && !context.handledBy) {
311
+ context.handledBy = `stream:${this.streamId}`;
312
+ }
313
+ clearTimeout(pending.timeoutId);
314
+ this.ackWaiters.delete(data.requestId);
315
+ pending.resolve(true);
316
+ };
317
+ ch.addReceiver(this.ackReceiver);
318
+ this.ackReceiverRegistered = true;
319
+ }
320
+ cleanupAckWaiters() {
321
+ this.ackWaiters.forEach(p => {
322
+ clearTimeout(p.timeoutId);
323
+ p.resolve(false);
324
+ });
325
+ this.ackWaiters.clear();
326
+ if (this.ackReceiverRegistered && this.ackReceiver && this.context) {
327
+ var ch = this.context.channel;
328
+ if (typeof ch.removeReceiver === 'function') {
329
+ try {
330
+ ch.removeReceiver(this.ackReceiver);
331
+ } catch (_unused6) {
332
+ /** ignore */
333
+ }
334
+ }
335
+ }
336
+ this.ackReceiverRegistered = false;
337
+ this.ackReceiver = undefined;
338
+ }
339
+ registerAckWaiter(requestId, timeoutMs, resolve) {
340
+ var timeoutId = setTimeout(() => {
341
+ this.ackWaiters.delete(requestId);
342
+ resolve(false);
343
+ }, timeoutMs);
344
+ this.ackWaiters.set(requestId, {
345
+ resolve,
346
+ timeoutId
347
+ });
348
+ }
217
349
  clearExpireTimer() {
218
350
  if (this.expireTimer) {
219
351
  clearTimeout(this.expireTimer);
@@ -227,8 +359,11 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
227
359
  this.expireTimer = setTimeout(() => {
228
360
  if (this._state !== _constants.StreamState.STREAMING) return;
229
361
  try {
362
+ this.emit(_constants.StreamEvent.EXPIRED, {
363
+ timeout: expireTimeout
364
+ });
230
365
  this.error((0, _constants.formatMessage)(_constants.Messages.STREAM_EXPIRED, expireTimeout));
231
- } catch (_unused2) {
366
+ } catch (_unused7) {
232
367
  /** ignore timer-triggered send failures */
233
368
  }
234
369
  }, expireTimeout);
@@ -274,6 +409,13 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
274
409
  metadata: _this3.metadata,
275
410
  autoResolve: _this3.autoResolve
276
411
  });
412
+ _this3.emit(_constants.StreamEvent.START, {
413
+ streamId: _this3.streamId,
414
+ type: _this3.type,
415
+ chunked: _this3.chunked,
416
+ mode: _this3.mode,
417
+ metadata: _this3.metadata
418
+ });
277
419
  _context3.prev = 3;
278
420
  if (!(_this3.mode === _constants.StreamMode.PUSH)) {
279
421
  _context3.next = 5;
@@ -316,7 +458,9 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
316
458
  /**
317
459
  * Push a chunk manually (mode === 'push').
318
460
  */
319
- write(data, done = false) {
461
+
462
+ write(data, doneOrOptions = false, options) {
463
+ var _opts$ackTimeout;
320
464
  if (this.mode !== _constants.StreamMode.PUSH) {
321
465
  throw new Error(_constants.Messages.STREAM_WRITE_ONLY_IN_PUSH_MODE);
322
466
  }
@@ -329,12 +473,39 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
329
473
  if (this._state !== _constants.StreamState.STREAMING) {
330
474
  throw new Error(_constants.Messages.STREAM_ENDED);
331
475
  }
332
- // push mode now buffers and sends based on pull credit
333
- this.pendingQueue.push({
334
- data,
335
- done
476
+ var done = typeof doneOrOptions === 'boolean' ? doneOrOptions : false;
477
+ var opts = typeof doneOrOptions === 'object' ? doneOrOptions : options;
478
+ var requireAck = (opts === null || opts === void 0 ? void 0 : opts.requireAck) === true;
479
+ var ackTimeout = (_opts$ackTimeout = opts === null || opts === void 0 ? void 0 : opts.ackTimeout) !== null && _opts$ackTimeout !== void 0 ? _opts$ackTimeout : _constants.DefaultTimeout.ACK;
480
+ if (!requireAck) {
481
+ // push mode now buffers and sends based on pull credit
482
+ this.enqueue({
483
+ data,
484
+ done
485
+ });
486
+ this.emit(_constants.StreamEvent.WRITE, {
487
+ data,
488
+ done
489
+ });
490
+ this.flush();
491
+ return;
492
+ }
493
+ return new Promise(resolve => {
494
+ var ackRequestId = (0, _utils.generateRequestId)();
495
+ this.enqueue({
496
+ data,
497
+ done,
498
+ requireAck: true,
499
+ ackRequestId,
500
+ ackTimeout,
501
+ resolveAck: resolve
502
+ });
503
+ this.emit(_constants.StreamEvent.WRITE, {
504
+ data,
505
+ done
506
+ });
507
+ this.flush();
336
508
  });
337
- this.flush();
338
509
  }
339
510
 
340
511
  /**
@@ -349,7 +520,7 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
349
520
  // In push mode, end means enqueue a terminal marker if nothing queued
350
521
  if (this.mode === _constants.StreamMode.PUSH) {
351
522
  if (this.pendingQueue.length === 0) {
352
- this.pendingQueue.push({
523
+ this.enqueue({
353
524
  data: undefined,
354
525
  done: true
355
526
  });
@@ -409,7 +580,7 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
409
580
  _this4.endInternal();
410
581
  return _context4.abrupt("continue", 7);
411
582
  case 6:
412
- _this4.pendingQueue.push({
583
+ _this4.enqueue({
413
584
  data: r.value,
414
585
  done: false
415
586
  });
@@ -439,7 +610,7 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
439
610
  return Promise.resolve(_this4.nextFn());
440
611
  case 11:
441
612
  result = _context4.sent;
442
- _this4.pendingQueue.push({
613
+ _this4.enqueue({
443
614
  data: result.data,
444
615
  done: result.done
445
616
  });
@@ -484,11 +655,46 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
484
655
  /**
485
656
  * Send data chunk
486
657
  */
487
- sendData(data, done = false) {
488
- this.sendMessage(_constants.MessageType.STREAM_DATA, {
489
- data: this.encodeData(data),
490
- done,
491
- seq: this.seq++
658
+ sendData(data, done = false, options) {
659
+ var _this$context$serverI2, _options$requestId;
660
+ if (!this.context) {
661
+ throw new Error(_constants.Messages.STREAM_NOT_BOUND);
662
+ }
663
+ var seq = this.seq++;
664
+ var isClientStream = this.context.clientId !== undefined && this.context.serverId === undefined;
665
+ var role = isClientStream ? _constants.MessageRole.CLIENT : _constants.MessageRole.SERVER;
666
+ var creatorId = (_this$context$serverI2 = this.context.serverId) !== null && _this$context$serverI2 !== void 0 ? _this$context$serverI2 : this.context.clientId;
667
+ var message = (0, _utils.createPostMessage)(_constants.MessageType.STREAM_DATA, (_options$requestId = options === null || options === void 0 ? void 0 : options.requestId) !== null && _options$requestId !== void 0 ? _options$requestId : this.context.requestId, {
668
+ secretKey: this.context.secretKey,
669
+ requireAck: options === null || options === void 0 ? void 0 : options.requireAck,
670
+ /**
671
+ * When per-frame requireAck is enabled, include a unique identifier in ack.
672
+ * - seq is the stream frame sequence number.
673
+ *
674
+ * NOTE: ack is an internal reserved field (not part of public API).
675
+ */
676
+ ack: options !== null && options !== void 0 && options.requireAck ? {
677
+ id: `${this.streamId}:${seq}`
678
+ } : undefined,
679
+ body: {
680
+ streamId: this.streamId,
681
+ data: this.encodeData(data),
682
+ done,
683
+ seq
684
+ },
685
+ role,
686
+ creatorId,
687
+ targetId: this.context.targetId
688
+ });
689
+ var ok = this.context.channel.send(this.context.targetWindow, message, this.context.targetOrigin);
690
+ if (!ok) {
691
+ this._state = _constants.StreamState.CANCELLED;
692
+ this.clearExpireTimer();
693
+ throw new Error((0, _constants.formatMessage)(_constants.Messages.STREAM_CANCELLED, 'Target window closed'));
694
+ }
695
+ this.emit(_constants.StreamEvent.SEND, {
696
+ seq,
697
+ done
492
698
  });
493
699
  }
494
700
  flush() {
@@ -500,9 +706,25 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
500
706
  }
501
707
  while (this.pullCredit > 0 && this.pendingQueue.length > 0 && this._state === _constants.StreamState.STREAMING) {
502
708
  var item = this.pendingQueue.shift();
709
+ this.pendingBytes -= item.bytes;
503
710
  this.pullCredit--;
504
711
  try {
505
- this.sendData(item.data, item.done);
712
+ if (item.requireAck && item.ackRequestId && item.resolveAck) {
713
+ this.ensureAckReceiver();
714
+ if (this.ackReceiverRegistered) {
715
+ var _item$ackTimeout;
716
+ this.registerAckWaiter(item.ackRequestId, (_item$ackTimeout = item.ackTimeout) !== null && _item$ackTimeout !== void 0 ? _item$ackTimeout : _constants.DefaultTimeout.ACK, item.resolveAck);
717
+ this.sendData(item.data, item.done, {
718
+ requestId: item.ackRequestId,
719
+ requireAck: true
720
+ });
721
+ } else {
722
+ item.resolveAck(false);
723
+ this.sendData(item.data, item.done);
724
+ }
725
+ } else {
726
+ this.sendData(item.data, item.done);
727
+ }
506
728
  } catch (e) {
507
729
  var _this$rejectCompletio;
508
730
  // send failure treated as cancellation
@@ -510,6 +732,9 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
510
732
  this.clearExpireTimer();
511
733
  this.clearIdleTimer();
512
734
  this.unregisterControlHandler();
735
+ this.pendingQueue.length = 0;
736
+ this.pendingBytes = 0;
737
+ this.cleanupAckWaiters();
513
738
  (_this$rejectCompletio = this.rejectCompletion) === null || _this$rejectCompletio === void 0 || _this$rejectCompletio.call(this, e instanceof Error ? e : new Error(String(e)));
514
739
  throw e;
515
740
  }
@@ -537,7 +762,15 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
537
762
  this.clearExpireTimer();
538
763
  this.clearIdleTimer();
539
764
  this.unregisterControlHandler();
765
+ this.pendingQueue.length = 0;
766
+ this.pendingBytes = 0;
540
767
  this.sendMessage(_constants.MessageType.STREAM_END);
768
+ this.emit(_constants.StreamEvent.END);
769
+ this.emit(_constants.StreamEvent.STATE, {
770
+ state: this._state
771
+ });
772
+ this.cleanupAckWaiters();
773
+ this.clearAllListeners();
541
774
  (_this$resolveCompleti = this.resolveCompletion) === null || _this$resolveCompleti === void 0 || _this$resolveCompleti.call(this);
542
775
  }
543
776
 
@@ -551,9 +784,19 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
551
784
  this.clearExpireTimer();
552
785
  this.clearIdleTimer();
553
786
  this.unregisterControlHandler();
787
+ this.pendingQueue.length = 0;
788
+ this.pendingBytes = 0;
554
789
  this.sendMessage(_constants.MessageType.STREAM_ERROR, {
555
790
  error: message
556
791
  });
792
+ this.emit(_constants.StreamEvent.ERROR, {
793
+ error: new Error(message)
794
+ });
795
+ this.emit(_constants.StreamEvent.STATE, {
796
+ state: this._state
797
+ });
798
+ this.cleanupAckWaiters();
799
+ this.clearAllListeners();
557
800
  (_this$resolveCompleti2 = this.resolveCompletion) === null || _this$resolveCompleti2 === void 0 || _this$resolveCompleti2.call(this);
558
801
  }
559
802
 
@@ -574,15 +817,26 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
574
817
  this.clearExpireTimer();
575
818
  this.clearIdleTimer();
576
819
  this.unregisterControlHandler();
820
+ this.pendingQueue.length = 0;
821
+ this.pendingBytes = 0;
822
+ this.emit(_constants.StreamEvent.CANCEL, {
823
+ reason,
824
+ remote: false
825
+ });
826
+ this.emit(_constants.StreamEvent.STATE, {
827
+ state: this._state
828
+ });
577
829
  if (this.context) {
578
830
  try {
579
831
  this.sendMessage(_constants.MessageType.STREAM_CANCEL, {
580
832
  reason
581
833
  });
582
- } catch (_unused3) {
834
+ } catch (_unused8) {
583
835
  // ignore send failures on cancel
584
836
  }
585
837
  }
838
+ this.cleanupAckWaiters();
839
+ this.clearAllListeners();
586
840
  (_this$resolveCompleti3 = this.resolveCompletion) === null || _this$resolveCompleti3 === void 0 || _this$resolveCompleti3.call(this);
587
841
  }
588
842
  }
@@ -159,7 +159,7 @@ export interface PostMessageData {
159
159
  /** Message isolation key (used to isolate different businesses/instances) */
160
160
  secretKey?: string;
161
161
  /** Message type */
162
- type: 'request' | 'ack' | 'async' | 'response' | 'error' | 'received' | 'ping' | 'pong' | 'stream_start' | 'stream_data' | 'stream_end' | 'stream_error' | 'stream_cancel' | 'stream_pull' | 'stream_ack';
162
+ type: 'request' | 'ack' | 'async' | 'response' | 'error' | 'ping' | 'pong' | 'stream_start' | 'stream_data' | 'stream_end' | 'stream_error' | 'stream_cancel' | 'stream_pull' | 'stream_ack';
163
163
  /** Request ID */
164
164
  requestId: string;
165
165
  /** Request path */
@@ -193,8 +193,7 @@ export interface PostMessageData {
193
193
  * Whether the sender requires the receiver to send back a confirmation message.
194
194
  *
195
195
  * Typical usage:
196
- * - REQUEST / PING: receiver sends ACK to confirm it accepted the message
197
- * - RESPONSE / ERROR: receiver sends RECEIVED to confirm it received the result
196
+ * - Any message: receiver sends ACK to confirm it accepted the message (ACK-only workflow)
198
197
  */
199
198
  requireAck?: boolean;
200
199
  /**
@@ -357,7 +356,7 @@ export type ServerHandler = (req: ServerRequest, res: ServerResponse) => any | P
357
356
  /**
358
357
  * server.on/off event names (low-level)
359
358
  */
360
- export type ServerEventName = 'request' | 'ack' | 'async' | 'response' | 'error' | 'received' | 'ping' | 'pong';
359
+ export type ServerEventName = 'request' | 'ack' | 'async' | 'response' | 'error' | 'ping' | 'pong';
361
360
  /**
362
361
  * Client interface
363
362
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,gIAAgI;IAChI,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4GAA4G;IAC5G,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kHAAkH;IAClH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAMvB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,aAAa,KAAK,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;AAE7F;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,eAAe;IACrD,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,sBAAsB;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,cAAc;IACnD,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,wEAAwE;IACxE,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,sBAAsB;IACtB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,sBAAsB;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ,CAAC,CAAC,GAAG,GAAG;IAC/B,oBAAoB;IACpB,IAAI,EAAE,CAAC,CAAC;IACR,kBAAkB;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IAC5C,4CAA4C;IAC5C,MAAM,CAAC,EAAE,OAAO,WAAW,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC;CACvD;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,oBAAoB;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,mCAAmC;IACnC,QAAQ,CAAC,EAAE;QACT,IAAI,EAAE,GAAG,CAAC;QACV,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,iBAAiB;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAC9C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACzC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,GAAG,CAAC;CAC1C;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;OAKG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB;IACnB,IAAI,EAAE,SAAS,GAAG,KAAK,GAAG,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,GACjF,cAAc,GAAG,aAAa,GAAG,YAAY,GAAG,cAAc,GAAG,eAAe,GAAG,aAAa,GAAG,YAAY,CAAC;IACtH,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mBAAmB;IACnB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IAC5C;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,oBAAoB;IACpB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,wBAAwB;IACxB,KAAK,CAAC,EAAE;QACN,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,kBAAkB;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kBAAkB;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAMrB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wGAAwG;IACxG,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;AAErE;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,CAC5B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,OAAO,YAAY,EAAE,cAAc,KACzC,OAAO,CAAC;AAEb;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,mBAAmB;IACnB,IAAI,EAAE,GAAG,CAAC;IACV,uDAAuD;IACvD,MAAM,CAAC,EAAE,OAAO,WAAW,EAAE,qBAAqB,CAAC;IACnD,sBAAsB;IACtB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,sBAAsB;IACtB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,mHAAmH;IACnH,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,GAAG,EAAE,cAAc,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CAMtB;AAED;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,WAAW;IAClD,qBAAqB;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,6BAA6B;IAC7B,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,mCAAmC;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kBAAkB;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;CAChD;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;OAKG;IACH,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACzD;;;;;OAKG;IACH,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACzD;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrF;;;;OAIG;IACH,UAAU,CAAC,MAAM,EAAE,OAAO,WAAW,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,2CAA2C;IAC3C,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAAC;IACrC,kEAAkE;IAClE,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC;IACjE,+EAA+E;IAC/E,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,cAAc,CAAC;IACrE,wEAAwE;IACxE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,cAAc,CAAC;IAC7E,6CAA6C;IAC7C,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,cAAc,CAAC;IACnE,0BAA0B;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IAC3C,wDAAwD;IACxD,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,CACvB,GAAG,EAAE,aAAa,EAClB,GAAG,EAAE,cAAc,EACnB,IAAI,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAC7B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,CAC1B,GAAG,EAAE,aAAa,EAClB,GAAG,EAAE,cAAc,KAChB,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;AAExB;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,KAAK,GAAG,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;AAEhH;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,oBAAoB;IACpB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,yBAAyB;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,qEAAqE;IACrE,WAAW,IAAI,OAAO,CAAC;IACvB,yDAAyD;IACzD,IAAI,IAAI,IAAI,CAAC;IACb,yFAAyF;IACzF,KAAK,IAAI,IAAI,CAAC;IACd,6CAA6C;IAC7C,YAAY,EAAE;QACZ,OAAO,EAAE,OAAO,iBAAiB,EAAE,yBAAyB,CAAC;QAC7D,QAAQ,EAAE,OAAO,iBAAiB,EAAE,0BAA0B,CAAC;KAChE,CAAC;IACF,2HAA2H;IAC3H,IAAI,CAAC,CAAC,GAAG,GAAG,EACV,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,GAAG,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,iHAAiH;IACjH,QAAQ,CAAC,CAAC,GAAG,GAAG,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,EAC7B,OAAO,CAAC,EAAE,cAAc,GAAG;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE,GACzF,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,oEAAoE;IACpE,UAAU,CAAC,CAAC,GAAG,GAAG,EAChB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,OAAO,WAAW,EAAE,oBAAoB,EAChD,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,mCAAmC;IACnC,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9B;;;OAGG;IACH,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAC3D;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,IAAI,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC3G;;;;OAIG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChD;;OAEG;IACH,YAAY,IAAI,IAAI,CAAC;IACrB,mDAAmD;IACnD,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,+CAA+C;IAC/C,OAAO,IAAI,IAAI,CAAC;IAChB,kDAAkD;IAClD,GAAG,CAAC,KAAK,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;IAC9D,yDAAyD;IACzD,IAAI,CAAC,KAAK,EAAE,eAAe,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;IAChE,2EAA2E;IAC3E,uBAAuB,CACrB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,EACxC,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,EAC9B,MAAM,CAAC,EAAE,MAAM,EACf,eAAe,CAAC,EAAE,eAAe,GAChC,IAAI,CAAC;IACR,oDAAoD;IACpD,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACpD;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,yBAAyB;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,wCAAwC;IACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,0CAA0C;IAC1C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,yDAAyD;IACzD,IAAI,IAAI,IAAI,CAAC;IACb,yFAAyF;IACzF,KAAK,IAAI,IAAI,CAAC;IACd;;;;OAIG;IACH,GAAG,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAClC,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IACrD,6BAA6B;IAC7B,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;IACvD,+BAA+B;IAC/B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IACjC,4DAA4D;IAC5D,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;IAC3D,mDAAmD;IACnD,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,0BAA2B,SAAQ,eAAe;IACjE;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B;;;OAGG;IACH,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;OAIG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,0BAA2B,SAAQ,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC;IACrF;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B;;;OAGG;IACH,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,8BAA8B,CAAC,EAAE,MAAM,CAAC;CACzC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ack.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ack.d.ts","sourceRoot":"","sources":["../../src/utils/ack.ts"],"names":[],"mappings":""}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getAckId = getAckId;
7
+ exports.getAckMeta = getAckMeta;
8
+ exports.isAckMatch = isAckMatch;
9
+ /**
10
+ * ack is an internal reserved protocol field (previously named ackMeta).
11
+ *
12
+ * Semantics (ACK-only workflow):
13
+ * - If `ack` exists, it should contain a required `id` (string|number) for matching.
14
+ * - Fixed shape: { id, meta?: string } (meta is optional and must be a string if present).
15
+ * - Matching is by `id` only; never deep-compare other fields.
16
+ *
17
+ * @internal
18
+ */
19
+ function getAckId(ack) {
20
+ if (!ack || typeof ack !== 'object') return undefined;
21
+ var id = ack.id;
22
+ return typeof id === 'string' || typeof id === 'number' ? id : undefined;
23
+ }
24
+
25
+ /**
26
+ * @internal
27
+ */
28
+ function getAckMeta(ack) {
29
+ if (!ack || typeof ack !== 'object') return undefined;
30
+ var meta = ack.meta;
31
+ return typeof meta === 'string' ? meta : undefined;
32
+ }
33
+
34
+ /**
35
+ * Match ack by `id` only.
36
+ * @internal
37
+ */
38
+ function isAckMatch(expected, received) {
39
+ if (expected === undefined) return true;
40
+ var expectedId = getAckId(expected);
41
+ var receivedId = getAckId(received);
42
+ if (expectedId === undefined || receivedId === undefined) return false;
43
+ return expectedId === receivedId;
44
+ }
@@ -229,7 +229,7 @@ function setupClientMessageDebugging(clientImpl) {
229
229
  log('info', _constants.Messages.DEBUG_CLIENT_SENDING_PING, {
230
230
  requestId
231
231
  });
232
- } else if (type === _constants.MessageType.RECEIVED) {
232
+ } else if (type === _constants.MessageType.ACK) {
233
233
  log('info', _constants.Messages.DEBUG_CLIENT_SENDING_RECEIVED_ACK, {
234
234
  requestId
235
235
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CASvE;AAGD,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC,CAE5D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAuBlF;AAED,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAGpB,cAAc,SAAS,CAAC;AAGxB,cAAc,cAAc,CAAC;AAG7B,cAAc,UAAU,CAAC;AAKzB,cAAc,UAAU,CAAC;AAGzB,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE7C;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,GAAG,EACT,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,sBAAsB,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,CAAA;CAAE,GACpF,MAAM,GAAG,IAAI,CAkEf;AAED,oCAAoC;AACpC,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAWxD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CASvE;AAGD,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC,CAE5D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAuBlF;AAED,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAGpB,cAAc,SAAS,CAAC;AAGxB,cAAc,cAAc,CAAC;AAG7B,cAAc,UAAU,CAAC;AAKzB,cAAc,UAAU,CAAC;AAGzB,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE7C;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,GAAG,EACT,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,sBAAsB,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,CAAA;CAAE,GACpF,MAAM,GAAG,IAAI,CAkEf;AAED,oCAAoC;AACpC,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAWxD"}
@@ -85,6 +85,7 @@ require("core-js/modules/web.dom-collections.iterator.js");
85
85
  require("core-js/modules/web.url.js");
86
86
  require("core-js/modules/web.url.to-json.js");
87
87
  require("core-js/modules/web.url-search-params.js");
88
+ var _constants = require("../constants");
88
89
  var _protocol = require("./protocol");
89
90
  var _cache = require("./cache");
90
91
  Object.keys(_cache).forEach(function (key) {
@@ -154,12 +155,12 @@ function generateInstanceId() {
154
155
  */
155
156
  function getIframeTargetOrigin(iframe) {
156
157
  if (!iframe.src) {
157
- return '*';
158
+ return _constants.OriginConstant.ANY;
158
159
  }
159
160
  try {
160
161
  return new URL(iframe.src).origin;
161
162
  } catch (e) {
162
- return '*';
163
+ return _constants.OriginConstant.ANY;
163
164
  }
164
165
  }
165
166
  function isPromise(value) {
@@ -202,7 +203,7 @@ function isWindowAvailable(targetWindow) {
202
203
 
203
204
  // Export origin matching functions
204
205
 
205
- // ackMeta is a reserved protocol field (internal). Do not export helpers publicly.
206
+ // ack is a reserved protocol field (internal). Do not export helpers publicly.
206
207
 
207
208
  // Export Cookie-related functions
208
209
 
@@ -1 +1 @@
1
- {"version":3,"file":"origin.d.ts","sourceRoot":"","sources":["../../src/utils/origin.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;AAErE;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAa3E"}
1
+ {"version":3,"file":"origin.d.ts","sourceRoot":"","sources":["../../src/utils/origin.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;AAErE;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAa3E"}
@@ -7,6 +7,7 @@ exports.matchOrigin = matchOrigin;
7
7
  require("core-js/modules/es.regexp.constructor.js");
8
8
  require("core-js/modules/es.regexp.exec.js");
9
9
  require("core-js/modules/es.regexp.to-string.js");
10
+ var _constants = require("../constants");
10
11
  /**
11
12
  * Origin matcher type (supports string, RegExp, Array)
12
13
  */
@@ -20,7 +21,7 @@ require("core-js/modules/es.regexp.to-string.js");
20
21
  * - Array: any item matches.
21
22
  */
22
23
  function matchOrigin(origin, matcher) {
23
- if (matcher === '*') return true;
24
+ if (matcher === _constants.OriginConstant.ANY) return true;
24
25
  if (typeof matcher === 'string') {
25
26
  return origin === matcher;
26
27
  }