request-iframe 0.2.0 → 0.2.2

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 (93) hide show
  1. package/QUICKSTART.CN.md +33 -11
  2. package/QUICKSTART.md +33 -11
  3. package/README.CN.md +157 -44
  4. package/README.md +159 -41
  5. package/cdn/request-iframe.umd.js +4814 -4026
  6. package/cdn/request-iframe.umd.js.map +1 -1
  7. package/cdn/request-iframe.umd.min.js +2 -2
  8. package/cdn/request-iframe.umd.min.js.map +1 -1
  9. package/esm/api/client.js +45 -22
  10. package/esm/api/endpoint.js +30 -13
  11. package/esm/api/server.js +22 -13
  12. package/esm/constants/warn-once.js +7 -1
  13. package/esm/endpoint/index.js +1 -2
  14. package/esm/endpoint/infra/inbox.js +5 -4
  15. package/esm/endpoint/infra/outbox.js +8 -8
  16. package/esm/endpoint/stream/file-auto-resolve.js +9 -8
  17. package/esm/impl/client.js +3 -2
  18. package/esm/impl/response.js +4 -2
  19. package/esm/impl/server.js +8 -6
  20. package/esm/message/channel.js +15 -3
  21. package/esm/message/dispatcher.js +27 -0
  22. package/esm/stream/file-stream.js +311 -72
  23. package/esm/stream/writable-stream.js +21 -4
  24. package/esm/utils/blob.js +17 -0
  25. package/esm/utils/debug-lazy.js +76 -0
  26. package/esm/utils/logger.js +33 -1
  27. package/esm/utils/strict-mode.js +85 -0
  28. package/esm/utils/warn-once.js +30 -0
  29. package/esm/utils/warnings.js +47 -0
  30. package/library/api/client.d.ts.map +1 -1
  31. package/library/api/client.js +45 -22
  32. package/library/api/endpoint.d.ts.map +1 -1
  33. package/library/api/endpoint.js +30 -13
  34. package/library/api/server.d.ts.map +1 -1
  35. package/library/api/server.js +22 -13
  36. package/library/constants/warn-once.d.ts +6 -0
  37. package/library/constants/warn-once.d.ts.map +1 -1
  38. package/library/constants/warn-once.js +7 -1
  39. package/library/endpoint/index.d.ts +0 -1
  40. package/library/endpoint/index.d.ts.map +1 -1
  41. package/library/endpoint/index.js +1 -8
  42. package/library/endpoint/infra/inbox.d.ts.map +1 -1
  43. package/library/endpoint/infra/inbox.js +4 -3
  44. package/library/endpoint/infra/outbox.d.ts +2 -0
  45. package/library/endpoint/infra/outbox.d.ts.map +1 -1
  46. package/library/endpoint/infra/outbox.js +7 -7
  47. package/library/endpoint/stream/file-auto-resolve.d.ts +1 -1
  48. package/library/endpoint/stream/file-auto-resolve.d.ts.map +1 -1
  49. package/library/endpoint/stream/file-auto-resolve.js +8 -8
  50. package/library/impl/client.d.ts +2 -0
  51. package/library/impl/client.d.ts.map +1 -1
  52. package/library/impl/client.js +3 -2
  53. package/library/impl/response.d.ts.map +1 -1
  54. package/library/impl/response.js +4 -2
  55. package/library/impl/server.d.ts.map +1 -1
  56. package/library/impl/server.js +7 -5
  57. package/library/message/channel.d.ts +2 -2
  58. package/library/message/channel.d.ts.map +1 -1
  59. package/library/message/channel.js +15 -3
  60. package/library/message/dispatcher.d.ts.map +1 -1
  61. package/library/message/dispatcher.js +27 -0
  62. package/library/stream/file-stream.d.ts +70 -5
  63. package/library/stream/file-stream.d.ts.map +1 -1
  64. package/library/stream/file-stream.js +310 -70
  65. package/library/stream/types.d.ts +2 -0
  66. package/library/stream/types.d.ts.map +1 -1
  67. package/library/stream/writable-stream.d.ts.map +1 -1
  68. package/library/stream/writable-stream.js +21 -4
  69. package/library/types/index.d.ts +38 -0
  70. package/library/types/index.d.ts.map +1 -1
  71. package/library/utils/blob.d.ts +7 -0
  72. package/library/utils/blob.d.ts.map +1 -1
  73. package/library/utils/blob.js +18 -0
  74. package/library/utils/debug-lazy.d.ts +26 -0
  75. package/library/utils/debug-lazy.d.ts.map +1 -0
  76. package/library/utils/debug-lazy.js +85 -0
  77. package/library/utils/logger.d.ts +20 -0
  78. package/library/utils/logger.d.ts.map +1 -1
  79. package/library/utils/logger.js +34 -1
  80. package/library/utils/strict-mode.d.ts +37 -0
  81. package/library/utils/strict-mode.d.ts.map +1 -0
  82. package/library/utils/strict-mode.js +94 -0
  83. package/library/utils/warn-once.d.ts +9 -0
  84. package/library/utils/warn-once.d.ts.map +1 -0
  85. package/library/utils/warn-once.js +36 -0
  86. package/library/utils/warnings.d.ts +48 -0
  87. package/library/utils/warnings.d.ts.map +1 -0
  88. package/library/utils/warnings.js +54 -0
  89. package/package.json +1 -1
  90. package/esm/endpoint/stream/file-writable.js +0 -105
  91. package/library/endpoint/stream/file-writable.d.ts +0 -33
  92. package/library/endpoint/stream/file-writable.d.ts.map +0 -1
  93. package/library/endpoint/stream/file-writable.js +0 -115
@@ -4,7 +4,6 @@ require("core-js/modules/es.symbol.description.js");
4
4
  require("core-js/modules/es.array.filter.js");
5
5
  require("core-js/modules/es.array.from.js");
6
6
  require("core-js/modules/es.object.get-own-property-descriptors.js");
7
- require("core-js/modules/es.regexp.exec.js");
8
7
  require("core-js/modules/es.regexp.to-string.js");
9
8
  require("core-js/modules/web.dom-collections.for-each.js");
10
9
  require("core-js/modules/web.dom-collections.iterator.js");
@@ -14,11 +13,13 @@ Object.defineProperty(exports, "__esModule", {
14
13
  });
15
14
  exports.IframeFileWritableStream = exports.IframeFileReadableStream = void 0;
16
15
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
17
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
18
16
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
19
18
  require("core-js/modules/es.array.iterator.js");
20
19
  require("core-js/modules/es.array.reduce.js");
21
20
  require("core-js/modules/es.array.slice.js");
21
+ require("core-js/modules/es.regexp.exec.js");
22
+ require("core-js/modules/es.string.match.js");
22
23
  require("core-js/modules/es.typed-array.uint8-array.js");
23
24
  require("core-js/modules/es.typed-array.fill.js");
24
25
  require("core-js/modules/es.typed-array.iterator.js");
@@ -28,11 +29,14 @@ require("core-js/modules/es.typed-array.to-string.js");
28
29
  var _writableStream = require("./writable-stream");
29
30
  var _readableStream = require("./readable-stream");
30
31
  var _constants = require("../constants");
32
+ var _blob = require("../utils/blob");
31
33
  function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
32
34
  function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
33
35
  function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
34
36
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
35
37
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
38
+ var DEFAULT_FILE_CHUNK_SIZE = 256 * 1024; // 256KB
39
+
36
40
  /**
37
41
  * Convert Uint8Array to Base64 string
38
42
  */
@@ -51,22 +55,208 @@ function uint8ArrayToBase64(uint8Array) {
51
55
  }
52
56
 
53
57
  /**
54
- * Convert Base64 string to Uint8Array
58
+ * Convert string to UTF-8 bytes.
59
+ *
60
+ * Notes:
61
+ * - We prefer TextEncoder when available.
62
+ * - Fallback uses `unescape(encodeURIComponent(...))` for broad browser compatibility.
55
63
  */
56
- function base64ToUint8Array(base64) {
57
- var binary = atob(base64);
58
- var uint8Array = new Uint8Array(binary.length);
59
- for (var i = 0; i < binary.length; i++) {
60
- uint8Array[i] = binary.charCodeAt(i);
64
+ function stringToUtf8Uint8Array(value) {
65
+ try {
66
+ if (typeof TextEncoder !== 'undefined') {
67
+ return new TextEncoder().encode(value);
68
+ }
69
+ } catch (_unused) {
70
+ /** ignore */
61
71
  }
62
- return uint8Array;
72
+ var latin1 = unescape(encodeURIComponent(value));
73
+ var arr = new Uint8Array(latin1.length);
74
+ for (var i = 0; i < latin1.length; i++) {
75
+ arr[i] = latin1.charCodeAt(i);
76
+ }
77
+ return arr;
78
+ }
79
+
80
+ /**
81
+ * Convert UTF-8 bytes to string.
82
+ *
83
+ * Notes:
84
+ * - We prefer TextDecoder when available.
85
+ * - Fallback uses `escape/decodeURIComponent` for broad browser compatibility.
86
+ */
87
+ function utf8Uint8ArrayToString(bytes) {
88
+ try {
89
+ if (typeof TextDecoder !== 'undefined') {
90
+ return new TextDecoder('utf-8').decode(bytes);
91
+ }
92
+ } catch (_unused2) {
93
+ /** ignore */
94
+ }
95
+ /**
96
+ * Fallback:
97
+ * - Build a latin1 string from bytes, then decode as UTF-8.
98
+ * - We chunk to avoid call stack / argument limits.
99
+ */
100
+ var chunkSize = 0x8000;
101
+ var parts = [];
102
+ for (var i = 0; i < bytes.length; i += chunkSize) {
103
+ var chunk = bytes.subarray(i, i + chunkSize);
104
+ parts.push(String.fromCharCode.apply(null, chunk));
105
+ }
106
+ return decodeURIComponent(escape(parts.join('')));
63
107
  }
64
108
 
65
109
  /**
66
110
  * IframeFileWritableStream - Server-side file writable stream
67
- * Automatically handles Base64 encoding of file content
111
+ *
112
+ * Notes:
113
+ * - This stream supports binary chunks (ArrayBuffer / Uint8Array), which can be transferred
114
+ * via postMessage transfer list for better performance.
68
115
  */
69
116
  class IframeFileWritableStream extends _writableStream.IframeWritableStream {
117
+ /**
118
+ * Create a file writable stream from string/Blob/File.
119
+ *
120
+ * This is a stream-layer utility:
121
+ * - It does NOT depend on headers.
122
+ * - It produces binary chunks (ArrayBuffer) for better performance.
123
+ */
124
+ static from(params) {
125
+ return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2() {
126
+ var _params$chunked, _params$autoResolve;
127
+ var mimeType, fileName, size, t, blob, streamFileName, chunked, chunkSize, offset, stream;
128
+ return _regenerator.default.wrap(function (_context2) {
129
+ while (1) switch (_context2.prev = _context2.next) {
130
+ case 0:
131
+ mimeType = params.mimeType || params.defaultMimeType || 'application/octet-stream';
132
+ fileName = params.fileName;
133
+ try {
134
+ if (typeof File !== 'undefined' && params.content instanceof File) {
135
+ mimeType = params.content.type || mimeType;
136
+ fileName = fileName || params.content.name;
137
+ size = params.content.size;
138
+ }
139
+ } catch (_unused3) {
140
+ /** ignore */
141
+ }
142
+ try {
143
+ if (!fileName && typeof Blob !== 'undefined' && params.content instanceof Blob) {
144
+ t = params.content.type;
145
+ if (t) mimeType = t;
146
+ size = params.content.size;
147
+ }
148
+ } catch (_unused4) {
149
+ /** ignore */
150
+ }
151
+ blob = typeof params.content === 'string' ? new Blob([params.content], {
152
+ type: mimeType
153
+ }) : params.content;
154
+ size = size !== null && size !== void 0 ? size : blob === null || blob === void 0 ? void 0 : blob.size;
155
+ streamFileName = fileName || params.defaultFileName || 'file';
156
+ chunked = (_params$chunked = params.chunked) !== null && _params$chunked !== void 0 ? _params$chunked : false;
157
+ chunkSize = typeof params.chunkSize === 'number' && Number.isFinite(params.chunkSize) && params.chunkSize > 0 ? Math.floor(params.chunkSize) : DEFAULT_FILE_CHUNK_SIZE;
158
+ offset = 0;
159
+ stream = new IframeFileWritableStream({
160
+ filename: streamFileName,
161
+ mimeType,
162
+ size,
163
+ chunked,
164
+ autoResolve: (_params$autoResolve = params.autoResolve) !== null && _params$autoResolve !== void 0 ? _params$autoResolve : true,
165
+ next: function () {
166
+ var _next = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee() {
167
+ var _size;
168
+ var all, total, end, slice, buf;
169
+ return _regenerator.default.wrap(function (_context) {
170
+ while (1) switch (_context.prev = _context.next) {
171
+ case 0:
172
+ if (chunked) {
173
+ _context.next = 2;
174
+ break;
175
+ }
176
+ _context.next = 1;
177
+ return (0, _blob.blobToArrayBuffer)(blob);
178
+ case 1:
179
+ all = _context.sent;
180
+ return _context.abrupt("return", {
181
+ data: all,
182
+ done: true
183
+ });
184
+ case 2:
185
+ total = (_size = blob.size) !== null && _size !== void 0 ? _size : 0;
186
+ if (!(offset >= total)) {
187
+ _context.next = 3;
188
+ break;
189
+ }
190
+ return _context.abrupt("return", {
191
+ data: new ArrayBuffer(0),
192
+ done: true
193
+ });
194
+ case 3:
195
+ end = Math.min(total, offset + chunkSize);
196
+ slice = blob.slice(offset, end);
197
+ _context.next = 4;
198
+ return (0, _blob.blobToArrayBuffer)(slice);
199
+ case 4:
200
+ buf = _context.sent;
201
+ offset = end;
202
+ return _context.abrupt("return", {
203
+ data: buf,
204
+ done: offset >= total
205
+ });
206
+ case 5:
207
+ case "end":
208
+ return _context.stop();
209
+ }
210
+ }, _callee);
211
+ }));
212
+ function next() {
213
+ return _next.apply(this, arguments);
214
+ }
215
+ return next;
216
+ }()
217
+ });
218
+ return _context2.abrupt("return", stream);
219
+ case 1:
220
+ case "end":
221
+ return _context2.stop();
222
+ }
223
+ }, _callee2);
224
+ }))();
225
+ }
226
+
227
+ /**
228
+ * Create a UTF-8 text file stream.
229
+ *
230
+ * This is a convenience wrapper around from({ content: string, ... }):
231
+ * - Makes "string -> UTF-8 bytes -> file stream" intent explicit.
232
+ * - Sets a more appropriate default mimeType for text files.
233
+ */
234
+ static fromText(params) {
235
+ return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee3() {
236
+ var _params$mimeType, _params$defaultFileNa;
237
+ return _regenerator.default.wrap(function (_context3) {
238
+ while (1) switch (_context3.prev = _context3.next) {
239
+ case 0:
240
+ _context3.next = 1;
241
+ return IframeFileWritableStream.from({
242
+ content: params.text,
243
+ fileName: params.fileName,
244
+ mimeType: (_params$mimeType = params.mimeType) !== null && _params$mimeType !== void 0 ? _params$mimeType : 'text/plain; charset=utf-8',
245
+ chunked: params.chunked,
246
+ chunkSize: params.chunkSize,
247
+ autoResolve: params.autoResolve,
248
+ defaultFileName: (_params$defaultFileNa = params.defaultFileName) !== null && _params$defaultFileNa !== void 0 ? _params$defaultFileNa : 'file.txt',
249
+ defaultMimeType: 'text/plain; charset=utf-8'
250
+ });
251
+ case 1:
252
+ return _context3.abrupt("return", _context3.sent);
253
+ case 2:
254
+ case "end":
255
+ return _context3.stop();
256
+ }
257
+ }, _callee3);
258
+ }))();
259
+ }
70
260
  constructor(options) {
71
261
  super(_objectSpread(_objectSpread({}, options), {}, {
72
262
  type: _constants.StreamType.FILE,
@@ -82,27 +272,32 @@ class IframeFileWritableStream extends _writableStream.IframeWritableStream {
82
272
  }
83
273
 
84
274
  /**
85
- * Override encode method to convert Uint8Array to Base64
275
+ * Encode outbound chunk.
276
+ *
277
+ * - ArrayBuffer / TypedArray: keep as-is (binary chunks)
278
+ * - string: encoded as UTF-8 bytes
86
279
  */
87
280
  encodeData(data) {
88
- if (data instanceof Uint8Array) {
89
- return uint8ArrayToBase64(data);
90
- }
91
- if (data instanceof ArrayBuffer) {
92
- return uint8ArrayToBase64(new Uint8Array(data));
281
+ try {
282
+ if (typeof ArrayBuffer !== 'undefined' && data instanceof ArrayBuffer) {
283
+ return data;
284
+ }
285
+ if (typeof ArrayBuffer !== 'undefined' && ArrayBuffer.isView && ArrayBuffer.isView(data)) {
286
+ return data;
287
+ }
288
+ } catch (_unused5) {
289
+ /** ignore */
93
290
  }
94
291
  if (typeof data === 'string') {
95
- // Already a base64 string
96
- return data;
292
+ return stringToUtf8Uint8Array(data);
97
293
  }
98
- // Try to convert other types
99
- return String(data);
294
+ return stringToUtf8Uint8Array(String(data));
100
295
  }
101
296
  }
102
297
 
103
298
  /**
104
299
  * IframeFileReadableStream - Client-side file readable stream
105
- * Automatically handles Base64 decoding of file content
300
+ * Automatically normalizes inbound chunks to Uint8Array.
106
301
  */
107
302
  exports.IframeFileWritableStream = IframeFileWritableStream;
108
303
  class IframeFileReadableStream extends _readableStream.IframeReadableStream {
@@ -117,11 +312,11 @@ class IframeFileReadableStream extends _readableStream.IframeReadableStream {
117
312
  }
118
313
 
119
314
  /**
120
- * Override decode method to convert Base64 to Uint8Array
315
+ * Override decode method to normalize chunk to Uint8Array.
121
316
  */
122
317
  decodeData(data) {
123
318
  if (typeof data === 'string') {
124
- return base64ToUint8Array(data);
319
+ return stringToUtf8Uint8Array(data);
125
320
  }
126
321
  if (data instanceof Uint8Array) {
127
322
  return data;
@@ -132,6 +327,24 @@ class IframeFileReadableStream extends _readableStream.IframeReadableStream {
132
327
  return new Uint8Array();
133
328
  }
134
329
 
330
+ /**
331
+ * Parse filename from Content-Disposition header value.
332
+ */
333
+ static parseFilenameFromContentDisposition(value) {
334
+ if (!value) return undefined;
335
+ var disposition = typeof value === 'string' ? value : value[0];
336
+ if (!disposition) return undefined;
337
+ var match = disposition.match(/filename="?([^"]+)"?/i);
338
+ return match ? match[1] : undefined;
339
+ }
340
+
341
+ /**
342
+ * Resolve this file stream to File or Blob, depending on whether fileName is provided.
343
+ */
344
+ readAsFileOrBlob(fileName) {
345
+ return fileName ? this.readAsFile(fileName) : this.readAsBlob();
346
+ }
347
+
135
348
  /**
136
349
  * Override merge method to merge all Uint8Array chunks
137
350
  */
@@ -172,19 +385,19 @@ class IframeFileReadableStream extends _readableStream.IframeReadableStream {
172
385
  read() {
173
386
  var _superprop_getRead = () => super.read,
174
387
  _this = this;
175
- return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee() {
176
- return _regenerator.default.wrap(function (_context) {
177
- while (1) switch (_context.prev = _context.next) {
388
+ return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee4() {
389
+ return _regenerator.default.wrap(function (_context4) {
390
+ while (1) switch (_context4.prev = _context4.next) {
178
391
  case 0:
179
- _context.next = 1;
392
+ _context4.next = 1;
180
393
  return _superprop_getRead().call(_this);
181
394
  case 1:
182
- return _context.abrupt("return", _context.sent);
395
+ return _context4.abrupt("return", _context4.sent);
183
396
  case 2:
184
397
  case "end":
185
- return _context.stop();
398
+ return _context4.stop();
186
399
  }
187
- }, _callee);
400
+ }, _callee4);
188
401
  }))();
189
402
  }
190
403
 
@@ -193,25 +406,52 @@ class IframeFileReadableStream extends _readableStream.IframeReadableStream {
193
406
  */
194
407
  readAsBlob() {
195
408
  var _this2 = this;
196
- return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2() {
409
+ return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee5() {
197
410
  var data, buffer;
198
- return _regenerator.default.wrap(function (_context2) {
199
- while (1) switch (_context2.prev = _context2.next) {
411
+ return _regenerator.default.wrap(function (_context5) {
412
+ while (1) switch (_context5.prev = _context5.next) {
200
413
  case 0:
201
- _context2.next = 1;
414
+ _context5.next = 1;
202
415
  return _this2.read();
203
416
  case 1:
204
- data = _context2.sent;
417
+ data = _context5.sent;
205
418
  // Use slice to create a pure ArrayBuffer copy to avoid type issues
206
419
  buffer = data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength);
207
- return _context2.abrupt("return", new Blob([buffer], {
420
+ return _context5.abrupt("return", new Blob([buffer], {
208
421
  type: _this2.mimeType || 'application/octet-stream'
209
422
  }));
210
423
  case 2:
211
424
  case "end":
212
- return _context2.stop();
425
+ return _context5.stop();
213
426
  }
214
- }, _callee2);
427
+ }, _callee5);
428
+ }))();
429
+ }
430
+
431
+ /**
432
+ * Read as UTF-8 text.
433
+ *
434
+ * Notes:
435
+ * - This is intended for "text file" use cases where file stream chunks represent UTF-8 bytes.
436
+ * - For non-UTF-8 binary files, use readAsBlob()/readAsArrayBuffer().
437
+ */
438
+ readAsText() {
439
+ var _this3 = this;
440
+ return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee6() {
441
+ var data;
442
+ return _regenerator.default.wrap(function (_context6) {
443
+ while (1) switch (_context6.prev = _context6.next) {
444
+ case 0:
445
+ _context6.next = 1;
446
+ return _this3.read();
447
+ case 1:
448
+ data = _context6.sent;
449
+ return _context6.abrupt("return", utf8Uint8ArrayToString(data));
450
+ case 2:
451
+ case "end":
452
+ return _context6.stop();
453
+ }
454
+ }, _callee6);
215
455
  }))();
216
456
  }
217
457
 
@@ -220,27 +460,27 @@ class IframeFileReadableStream extends _readableStream.IframeReadableStream {
220
460
  * @param fileName Optional file name (if not provided, uses stream's filename)
221
461
  */
222
462
  readAsFile(fileName) {
223
- var _this3 = this;
224
- return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee3() {
463
+ var _this4 = this;
464
+ return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee7() {
225
465
  var data, buffer, name;
226
- return _regenerator.default.wrap(function (_context3) {
227
- while (1) switch (_context3.prev = _context3.next) {
466
+ return _regenerator.default.wrap(function (_context7) {
467
+ while (1) switch (_context7.prev = _context7.next) {
228
468
  case 0:
229
- _context3.next = 1;
230
- return _this3.read();
469
+ _context7.next = 1;
470
+ return _this4.read();
231
471
  case 1:
232
- data = _context3.sent;
472
+ data = _context7.sent;
233
473
  // Use slice to create a pure ArrayBuffer copy to avoid type issues
234
474
  buffer = data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength);
235
- name = fileName || _this3.filename || 'file';
236
- return _context3.abrupt("return", new File([buffer], name, {
237
- type: _this3.mimeType || 'application/octet-stream'
475
+ name = fileName || _this4.filename || 'file';
476
+ return _context7.abrupt("return", new File([buffer], name, {
477
+ type: _this4.mimeType || 'application/octet-stream'
238
478
  }));
239
479
  case 2:
240
480
  case "end":
241
- return _context3.stop();
481
+ return _context7.stop();
242
482
  }
243
- }, _callee3);
483
+ }, _callee7);
244
484
  }))();
245
485
  }
246
486
 
@@ -248,25 +488,25 @@ class IframeFileReadableStream extends _readableStream.IframeReadableStream {
248
488
  * Read as ArrayBuffer
249
489
  */
250
490
  readAsArrayBuffer() {
251
- var _this4 = this;
252
- return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee4() {
491
+ var _this5 = this;
492
+ return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee8() {
253
493
  var data, buffer;
254
- return _regenerator.default.wrap(function (_context4) {
255
- while (1) switch (_context4.prev = _context4.next) {
494
+ return _regenerator.default.wrap(function (_context8) {
495
+ while (1) switch (_context8.prev = _context8.next) {
256
496
  case 0:
257
- _context4.next = 1;
258
- return _this4.read();
497
+ _context8.next = 1;
498
+ return _this5.read();
259
499
  case 1:
260
- data = _context4.sent;
500
+ data = _context8.sent;
261
501
  // Create a new ArrayBuffer copy
262
502
  buffer = new ArrayBuffer(data.byteLength);
263
503
  new Uint8Array(buffer).set(data);
264
- return _context4.abrupt("return", buffer);
504
+ return _context8.abrupt("return", buffer);
265
505
  case 2:
266
506
  case "end":
267
- return _context4.stop();
507
+ return _context8.stop();
268
508
  }
269
- }, _callee4);
509
+ }, _callee8);
270
510
  }))();
271
511
  }
272
512
 
@@ -274,23 +514,23 @@ class IframeFileReadableStream extends _readableStream.IframeReadableStream {
274
514
  * Read as Data URL
275
515
  */
276
516
  readAsDataURL() {
277
- var _this5 = this;
278
- return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee5() {
517
+ var _this6 = this;
518
+ return (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee9() {
279
519
  var data, base64;
280
- return _regenerator.default.wrap(function (_context5) {
281
- while (1) switch (_context5.prev = _context5.next) {
520
+ return _regenerator.default.wrap(function (_context9) {
521
+ while (1) switch (_context9.prev = _context9.next) {
282
522
  case 0:
283
- _context5.next = 1;
284
- return _this5.read();
523
+ _context9.next = 1;
524
+ return _this6.read();
285
525
  case 1:
286
- data = _context5.sent;
526
+ data = _context9.sent;
287
527
  base64 = uint8ArrayToBase64(data);
288
- return _context5.abrupt("return", `data:${_this5.mimeType || 'application/octet-stream'};base64,${base64}`);
528
+ return _context9.abrupt("return", `data:${_this6.mimeType || 'application/octet-stream'};base64,${base64}`);
289
529
  case 2:
290
530
  case "end":
291
- return _context5.stop();
531
+ return _context9.stop();
292
532
  }
293
- }, _callee5);
533
+ }, _callee9);
294
534
  }))();
295
535
  }
296
536
  }
@@ -340,6 +340,8 @@ export interface IIframeFileReadableStream extends IIframeReadableStream<Uint8Ar
340
340
  readonly size?: number;
341
341
  /** Read as Blob */
342
342
  readAsBlob(): Promise<Blob>;
343
+ /** Read as UTF-8 text */
344
+ readAsText(): Promise<string>;
343
345
  /** Read as File */
344
346
  readAsFile(fileName?: string): Promise<File>;
345
347
  /** Read as ArrayBuffer */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/stream/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/stream/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"writable-stream.d.ts","sourceRoot":"","sources":["../../src/stream/writable-stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"writable-stream.d.ts","sourceRoot":"","sources":["../../src/stream/writable-stream.ts"],"names":[],"mappings":"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"}
@@ -307,7 +307,24 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
307
307
  creatorId,
308
308
  targetId: this.context.targetId
309
309
  });
310
- var ok = this.context.channel.send(this.context.targetWindow, message, this.context.targetOrigin);
310
+
311
+ /**
312
+ * Transferable optimization:
313
+ * - If payload contains ArrayBuffer/TypedArray, transfer its underlying buffer to avoid copy.
314
+ * - This helps large chunks (e.g. file streams) significantly.
315
+ */
316
+ var payloadData = data === null || data === void 0 ? void 0 : data.data;
317
+ var transfer;
318
+ try {
319
+ if (typeof ArrayBuffer !== 'undefined' && payloadData instanceof ArrayBuffer) {
320
+ transfer = [payloadData];
321
+ } else if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' && payloadData && ArrayBuffer.isView(payloadData) && payloadData.buffer instanceof ArrayBuffer) {
322
+ transfer = [payloadData.buffer];
323
+ }
324
+ } catch (_unused6) {
325
+ /** ignore */
326
+ }
327
+ var ok = this.context.channel.send(this.context.targetWindow, message, this.context.targetOrigin, transfer);
311
328
  if (!ok) {
312
329
  this._state = _constants.StreamState.CANCELLED;
313
330
  this.clearExpireTimer();
@@ -352,7 +369,7 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
352
369
  if ((0, _is.isFunction)(ch.removeReceiver)) {
353
370
  try {
354
371
  ch.removeReceiver(this.ackReceiver);
355
- } catch (_unused6) {
372
+ } catch (_unused7) {
356
373
  /** ignore */
357
374
  }
358
375
  }
@@ -387,7 +404,7 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
387
404
  timeout: expireTimeout
388
405
  });
389
406
  this.error((0, _constants.formatMessage)(_constants.Messages.STREAM_EXPIRED, expireTimeout));
390
- } catch (_unused7) {
407
+ } catch (_unused8) {
391
408
  /** ignore timer-triggered send failures */
392
409
  }
393
410
  }, expireTimeout);
@@ -902,7 +919,7 @@ class IframeWritableStream extends _streamCore.IframeStreamCore {
902
919
  this.sendMessage(_constants.MessageType.STREAM_CANCEL, {
903
920
  reason
904
921
  });
905
- } catch (_unused8) {
922
+ } catch (_unused9) {
906
923
  // ignore send failures on cancel
907
924
  }
908
925
  }