@nativescript/canvas-polyfill 2.0.0-alpha.5 → 2.0.0-alpha.50

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 (54) hide show
  1. package/DOM/Document.d.ts +3 -2
  2. package/DOM/Element.d.ts +3 -3
  3. package/DOM/Element.js +14 -10
  4. package/DOM/Element.js.map +1 -1
  5. package/DOM/HTMLCanvasElement.d.ts +3 -0
  6. package/DOM/HTMLCanvasElement.js +5 -0
  7. package/DOM/HTMLCanvasElement.js.map +1 -1
  8. package/DOM/HTMLImageElement.js +9 -17
  9. package/DOM/HTMLImageElement.js.map +1 -1
  10. package/DOM/HTMLVideoElement.js +10 -20
  11. package/DOM/HTMLVideoElement.js.map +1 -1
  12. package/DOM/Node.d.ts +2 -0
  13. package/DOM/Node.js +15 -0
  14. package/DOM/Node.js.map +1 -1
  15. package/DOM/XMLDocument.d.ts +4 -0
  16. package/DOM/XMLDocument.js +18 -0
  17. package/DOM/XMLDocument.js.map +1 -1
  18. package/LICENSE +201 -0
  19. package/MutationObserver.d.ts +10 -0
  20. package/MutationObserver.js +22 -0
  21. package/MutationObserver.js.map +1 -0
  22. package/URL.android.d.ts +16 -14
  23. package/URL.android.js +293 -42
  24. package/URL.android.js.map +1 -1
  25. package/URL.ios.d.ts +19 -5
  26. package/URL.ios.js +536 -96
  27. package/URL.ios.js.map +1 -1
  28. package/async/file/file.android.js +2 -3
  29. package/async/file/file.android.js.map +1 -1
  30. package/async/file/file.ios.js +26 -39
  31. package/async/file/file.ios.js.map +1 -1
  32. package/async/http/http.android.js +6 -1
  33. package/async/http/http.android.js.map +1 -1
  34. package/async/http/http.ios.js +9 -4
  35. package/async/http/http.ios.js.map +1 -1
  36. package/async/xhr/TNSXMLHttpRequest.js +175 -41
  37. package/async/xhr/TNSXMLHttpRequest.js.map +1 -1
  38. package/index.d.ts +1 -0
  39. package/index.js +8 -0
  40. package/index.js.map +1 -1
  41. package/localStorage.d.ts +2 -0
  42. package/localStorage.js +150 -0
  43. package/localStorage.js.map +1 -0
  44. package/package.json +5 -5
  45. package/performance.js +11 -11
  46. package/performance.js.map +1 -1
  47. package/platforms/android/async-release.aar +0 -0
  48. package/platforms/android/canvas_polyfill.aar +0 -0
  49. package/platforms/android/java/org/nativescript/canvas/polyfill/Utils.java +33 -7
  50. package/resize.js +15 -10
  51. package/resize.js.map +1 -1
  52. package/url-search.d.ts +0 -0
  53. package/url-search.js +343 -0
  54. package/url-search.js.map +1 -0
@@ -279,7 +279,6 @@ export class TNSXMLHttpRequest {
279
279
  }
280
280
  }
281
281
  send(body = null) {
282
- var _d, _e, _f;
283
282
  if (this._readyState !== this.OPENED) {
284
283
  throw new Error("Failed to execute 'send' on 'XMLHttpRequest': The object's state must be OPENED");
285
284
  }
@@ -288,6 +287,7 @@ export class TNSXMLHttpRequest {
288
287
  }
289
288
  if (typeof this._request.method === 'string' && this._request.method.toLowerCase() === 'get' && typeof this._request.url === 'string' && !this._request.url.startsWith('http')) {
290
289
  let path;
290
+ let isBlob = false;
291
291
  if (this._request.url.startsWith('file://')) {
292
292
  path = this._request.url.replace('file://', '');
293
293
  }
@@ -298,7 +298,101 @@ export class TNSXMLHttpRequest {
298
298
  path = this._request.url;
299
299
  }
300
300
  else if (this._request.url.startsWith('blob:nativescript')) {
301
- path = (_f = (_e = (_d = URL) === null || _d === void 0 ? void 0 : _d.InternalAccessor) === null || _e === void 0 ? void 0 : _e.getPath) === null || _f === void 0 ? void 0 : _f.call(_e, this._request.url);
301
+ //path = (URL as any)?.InternalAccessor?.getPath?.(this._request.url);
302
+ path = URL?.InternalAccessor?.getData?.(this._request.url).blob;
303
+ isBlob = true;
304
+ }
305
+ if (isBlob) {
306
+ const buf = Blob.InternalAccessor.getBuffer(path);
307
+ const responseURL = this._request.url;
308
+ let contentLength = -1;
309
+ this._lastProgress = {
310
+ lengthComputable: contentLength > -1,
311
+ loaded: 0,
312
+ total: contentLength,
313
+ target: this,
314
+ };
315
+ const startEvent = new ProgressEvent('loadstart', this._lastProgress);
316
+ if (this.onloadstart) {
317
+ this.onloadstart(startEvent);
318
+ }
319
+ this.emitEvent('loadstart', startEvent);
320
+ this._updateReadyStateChange(this.LOADING);
321
+ if (!buf) {
322
+ this._status = 404;
323
+ const errorEvent = new ProgressEvent('error', this._lastProgress);
324
+ this._responseText = 'Invalid URL';
325
+ if (this.onerror) {
326
+ this.onerror(errorEvent);
327
+ }
328
+ this.emitEvent('error', errorEvent);
329
+ const loadendEvent = new ProgressEvent('loadend', this._lastProgress);
330
+ if (this.onloadend) {
331
+ this.onloadend(loadendEvent);
332
+ }
333
+ this.emitEvent('loadend', loadendEvent);
334
+ this._updateReadyStateChange(this.DONE);
335
+ }
336
+ else {
337
+ if (!this._didUserSetResponseType) {
338
+ this._setResponseType();
339
+ }
340
+ this._status = 200;
341
+ const data = buf.buffer;
342
+ this._httpContent = data;
343
+ this._responseURL = responseURL;
344
+ if (this.responseType === XMLHttpRequestResponseType.json) {
345
+ try {
346
+ this._responseText = this._toJSString(data);
347
+ this._response = JSON.parse(this._responseText);
348
+ }
349
+ catch (e) {
350
+ console.error('json parse error', e);
351
+ // this should probably be caught before the promise resolves
352
+ }
353
+ }
354
+ else if (this.responseType === XMLHttpRequestResponseType.text) {
355
+ const response = this._toJSString(data);
356
+ this._responseText = this._response = response ? response : '';
357
+ }
358
+ else if (this.responseType === XMLHttpRequestResponseType.document) {
359
+ let response = this._toJSString(data);
360
+ this._responseText = this._response = response ? response : '';
361
+ }
362
+ else if (this.responseType === XMLHttpRequestResponseType.arraybuffer) {
363
+ this._response = data;
364
+ }
365
+ else if (this.responseType === XMLHttpRequestResponseType.blob) {
366
+ let buffer = data;
367
+ this._response = new Blob([buffer]);
368
+ }
369
+ const size = data?.byteLength ?? 0;
370
+ contentLength = size;
371
+ this._lastProgress = {
372
+ lengthComputable: contentLength > -1,
373
+ loaded: size,
374
+ total: contentLength,
375
+ target: this,
376
+ };
377
+ const progressEvent = new ProgressEvent('progress', this._lastProgress);
378
+ if (this.onprogress) {
379
+ this.onprogress(progressEvent);
380
+ }
381
+ this.emitEvent('progress', progressEvent);
382
+ this._addToStringOnResponse();
383
+ const loadEvent = new ProgressEvent('load', this._lastProgress);
384
+ if (this.onload) {
385
+ this.onload(loadEvent);
386
+ }
387
+ this.emitEvent('load', loadEvent);
388
+ const loadendEvent = new ProgressEvent('loadend', this._lastProgress);
389
+ if (this.onloadend) {
390
+ this.onloadend(loadendEvent);
391
+ }
392
+ this.emitEvent('loadend', loadendEvent);
393
+ this._updateReadyStateChange(this.DONE);
394
+ }
395
+ return;
302
396
  }
303
397
  const responseURL = `file://${path}`;
304
398
  let contentLength = -1;
@@ -319,7 +413,6 @@ export class TNSXMLHttpRequest {
319
413
  this.emitEvent('loadstart', startEvent);
320
414
  this._updateReadyStateChange(this.LOADING);
321
415
  FileManager.readFile(path, {}, (error, data) => {
322
- var _d, _e;
323
416
  if (error) {
324
417
  const errorEvent = new ProgressEvent('error', this._lastProgress);
325
418
  this._responseText = error.message;
@@ -341,18 +434,25 @@ export class TNSXMLHttpRequest {
341
434
  this._status = 200;
342
435
  this._httpContent = data;
343
436
  this._responseURL = responseURL;
437
+ const fastRead = FileManager._readFile !== undefined;
344
438
  if (this.responseType === XMLHttpRequestResponseType.json) {
345
439
  try {
346
- if (global.isAndroid) {
440
+ if (fastRead) {
347
441
  this._responseText = this._toJSString(data);
348
442
  this._response = JSON.parse(this._responseText);
349
443
  }
350
444
  else {
351
- this._responseText = NSString.alloc().initWithDataEncoding(data, NSUTF8StringEncoding);
352
- if (!this._responseText) {
353
- this._responseText = NSString.alloc().initWithDataEncoding(data, NSISOLatin1StringEncoding);
445
+ if (global.isAndroid) {
446
+ this._responseText = this._toJSString(data);
447
+ this._response = JSON.parse(this._responseText);
448
+ }
449
+ else {
450
+ this._responseText = NSString.alloc().initWithDataEncoding(data, NSUTF8StringEncoding);
451
+ if (!this._responseText) {
452
+ this._responseText = NSString.alloc().initWithDataEncoding(data, NSISOLatin1StringEncoding);
453
+ }
454
+ this._response = JSON.parse(this._responseText);
354
455
  }
355
- this._response = JSON.parse(this._responseText);
356
456
  }
357
457
  }
358
458
  catch (e) {
@@ -361,59 +461,70 @@ export class TNSXMLHttpRequest {
361
461
  }
362
462
  }
363
463
  else if (this.responseType === XMLHttpRequestResponseType.text) {
364
- if (global.isIOS) {
365
- let code = NSUTF8StringEncoding; // long:4
366
- let encodedString = NSString.alloc().initWithDataEncoding(data, code);
367
- // If UTF8 string encoding fails try with ISO-8859-1
368
- if (!encodedString) {
369
- code = NSISOLatin1StringEncoding; // long:5
370
- encodedString = NSString.alloc().initWithDataEncoding(data, code);
371
- }
372
- this._responseText = this._response = encodedString.toString();
464
+ if (fastRead) {
465
+ const response = this._toJSString(data);
466
+ this._responseText = this._response = response ? response : '';
373
467
  }
374
468
  else {
375
- const response = this._toJSString(data);
376
- this._responseText = this._response = response ? response.toString() : '';
469
+ if (global.isIOS) {
470
+ let code = NSUTF8StringEncoding; // long:4
471
+ let encodedString = NSString.alloc().initWithDataEncoding(data, code);
472
+ // If UTF8 string encoding fails try with ISO-8859-1
473
+ if (!encodedString) {
474
+ code = NSISOLatin1StringEncoding; // long:5
475
+ encodedString = NSString.alloc().initWithDataEncoding(data, code);
476
+ }
477
+ this._responseText = this._response = encodedString.toString();
478
+ }
479
+ else {
480
+ const response = this._toJSString(data);
481
+ this._responseText = this._response = response ? response.toString() : '';
482
+ }
377
483
  }
378
484
  }
379
485
  else if (this.responseType === XMLHttpRequestResponseType.document) {
380
- if (global.isIOS) {
381
- let code = NSUTF8StringEncoding; // long:4
382
- let encodedString = NSString.alloc().initWithDataEncoding(data, code);
383
- // If UTF8 string encoding fails try with ISO-8859-1
384
- if (!encodedString) {
385
- code = NSISOLatin1StringEncoding; // long:5
386
- encodedString = NSString.alloc().initWithDataEncoding(data, code);
387
- }
388
- this._responseText = this._response = encodedString.toString();
389
- }
390
- else {
486
+ if (fastRead) {
391
487
  let response = this._toJSString(data);
392
488
  this._responseText = this._response = response ? response : '';
393
489
  }
490
+ else {
491
+ if (global.isIOS) {
492
+ let code = NSUTF8StringEncoding; // long:4
493
+ let encodedString = NSString.alloc().initWithDataEncoding(data, code);
494
+ // If UTF8 string encoding fails try with ISO-8859-1
495
+ if (!encodedString) {
496
+ code = NSISOLatin1StringEncoding; // long:5
497
+ encodedString = NSString.alloc().initWithDataEncoding(data, code);
498
+ }
499
+ this._responseText = this._response = encodedString.toString();
500
+ }
501
+ else {
502
+ let response = this._toJSString(data);
503
+ this._responseText = this._response = response ? response : '';
504
+ }
505
+ }
394
506
  }
395
507
  else if (this.responseType === XMLHttpRequestResponseType.arraybuffer) {
396
508
  this._response = data;
397
- if (FileManager._readFile === undefined) {
509
+ if (!fastRead) {
398
510
  if (global.isIOS) {
399
511
  this._response = interop.bufferFromData(data);
400
512
  }
401
513
  else {
402
- this._response = ArrayBuffer.from(java.nio.ByteBuffer.wrap(data));
514
+ this._response = ArrayBuffer.from(java.nio.ByteBuffer.wrap(data).rewind());
403
515
  }
404
516
  }
405
517
  }
406
518
  else if (this.responseType === XMLHttpRequestResponseType.blob) {
407
519
  let buffer = data;
408
- if (FileManager._readFile === undefined) {
520
+ if (!fastRead) {
409
521
  if (global.isIOS) {
410
522
  buffer = interop.bufferFromData(data);
411
523
  }
412
524
  else {
413
- buffer = data;
414
- //const buf = java.nio.ByteBuffer.wrap(data);
415
- //buffer = (ArrayBuffer as any).from(buf);
416
- //buf.rewind();
525
+ // buffer = data;
526
+ const buf = java.nio.ByteBuffer.wrap(data).rewind();
527
+ buffer = ArrayBuffer.from(buf);
417
528
  }
418
529
  }
419
530
  this._response = new Blob([buffer]);
@@ -425,7 +536,7 @@ export class TNSXMLHttpRequest {
425
536
  }
426
537
  }
427
538
  else {
428
- size = (_e = (_d = data === null || data === void 0 ? void 0 : data.length) !== null && _d !== void 0 ? _d : data === null || data === void 0 ? void 0 : data.byteLength) !== null && _e !== void 0 ? _e : 0;
539
+ size = data?.length ?? data?.byteLength ?? 0;
429
540
  }
430
541
  this._lastProgress = {
431
542
  lengthComputable: contentLength > -1,
@@ -502,7 +613,10 @@ export class TNSXMLHttpRequest {
502
613
  // just enabling for post and put temporarily
503
614
  if (method === 'post' || method === 'put') {
504
615
  request.onProgress = (event) => {
505
- this._lastProgress = Object.assign(Object.assign({}, (this._lastProgress || {})), event);
616
+ this._lastProgress = {
617
+ ...(this._lastProgress || {}),
618
+ ...event,
619
+ };
506
620
  if (event.loaded > 0) {
507
621
  const progressEvent = new ProgressEvent('progress', this._lastProgress);
508
622
  if (this._upload && (method === 'post' || method === 'put')) {
@@ -621,8 +735,28 @@ export class TNSXMLHttpRequest {
621
735
  }
622
736
  }
623
737
  else if (this.responseType === XMLHttpRequestResponseType.blob) {
624
- const buffer = ArrayBuffer.from(res.content);
625
- this._response = new Blob([buffer]);
738
+ if (global.isIOS) {
739
+ if (typeof res.content === 'string') {
740
+ const encoder = new TextEncoder();
741
+ const buffer = encoder.encode(res.content);
742
+ this._response = new Blob([buffer]);
743
+ }
744
+ else {
745
+ const buffer = interop.bufferFromData(res.content);
746
+ this._response = new Blob([buffer]);
747
+ }
748
+ }
749
+ else {
750
+ if (typeof res.content === 'string') {
751
+ const encoder = new TextEncoder();
752
+ const buffer = encoder.encode(res.content);
753
+ this._response = new Blob([buffer]);
754
+ }
755
+ else {
756
+ const buffer = ArrayBuffer.from(res.content);
757
+ this._response = new Blob([buffer]);
758
+ }
759
+ }
626
760
  }
627
761
  this._addToStringOnResponse();
628
762
  if (this.onload) {
@@ -1 +1 @@
1
- {"version":3,"file":"TNSXMLHttpRequest.js","sourceRoot":"","sources":["../../../../../packages/canvas-polyfill/async/xhr/TNSXMLHttpRequest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TNSXMLHttpRequest.js","sourceRoot":"","sources":["../../../../../packages/canvas-polyfill/async/xhr/TNSXMLHttpRequest.ts"],"names":[],"mappings":"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"}
package/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  import './window';
2
2
  import './resize';
3
3
  import './process';
4
+ import './localStorage';
package/index.js CHANGED
@@ -13,6 +13,7 @@ import { Document } from './DOM/Document';
13
13
  import './window';
14
14
  import './resize';
15
15
  import './process';
16
+ import './localStorage';
16
17
  import { TextDecoder, TextEncoder, ImageBitmap } from '@nativescript/canvas';
17
18
  import { URL } from './URL';
18
19
  global.document = global.window.document = global.document || new Document();
@@ -42,6 +43,13 @@ global.window.createImageBitmap = global.createImageBitmap = (...args) => {
42
43
  return ImageBitmap.createFromRect(image, sx_or_options, sy, sw, sh, args[5]);
43
44
  }
44
45
  };
46
+ global.Intl = global.window.Intl = global.Intl || {}; // pixijs
47
+ import { MutationObserver } from './MutationObserver';
48
+ Object.defineProperty(global, 'MutationObserver', {
49
+ value: MutationObserver,
50
+ configurable: true,
51
+ writable: true,
52
+ });
45
53
  Object.defineProperty(global, 'Element', {
46
54
  value: Element,
47
55
  configurable: true,
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../packages/canvas-polyfill/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../packages/canvas-polyfill/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ declare const _default: globalThis.Storage;
2
+ export default _default;