@nativescript/canvas 2.0.0-beta.2 → 2.0.0-beta.21

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 (201) hide show
  1. package/Canvas/common.d.ts +23 -15
  2. package/Canvas/common.js +127 -55
  3. package/Canvas/common.js.map +1 -1
  4. package/Canvas/index.android.d.ts +1 -0
  5. package/Canvas/index.android.js +53 -88
  6. package/Canvas/index.android.js.map +1 -1
  7. package/Canvas/index.d.ts +2 -0
  8. package/Canvas/index.ios.d.ts +4 -1
  9. package/Canvas/index.ios.js +58 -52
  10. package/Canvas/index.ios.js.map +1 -1
  11. package/Canvas2D/CanvasRenderingContext2D/index.d.ts +14 -0
  12. package/Canvas2D/CanvasRenderingContext2D/index.js +207 -19
  13. package/Canvas2D/CanvasRenderingContext2D/index.js.map +1 -1
  14. package/Canvas2D/DOMMatrix/index.d.ts +14 -0
  15. package/Canvas2D/DOMMatrix/index.js +62 -0
  16. package/Canvas2D/DOMMatrix/index.js.map +1 -1
  17. package/Canvas2D/ImageData/index.js +4 -6
  18. package/Canvas2D/ImageData/index.js.map +1 -1
  19. package/Canvas2D/Path2D/index.d.ts +2 -1
  20. package/Canvas2D/Path2D/index.js +3 -12
  21. package/Canvas2D/Path2D/index.js.map +1 -1
  22. package/Dom/Dom.d.ts +20 -1
  23. package/Dom/Dom.js +78 -10
  24. package/Dom/Dom.js.map +1 -1
  25. package/Dom/Group.d.ts +5 -0
  26. package/Dom/Group.js +15 -0
  27. package/Dom/Group.js.map +1 -1
  28. package/Dom/Image.d.ts +1 -0
  29. package/Dom/Image.js +20 -0
  30. package/Dom/Image.js.map +1 -1
  31. package/Dom/Paint.d.ts +4 -0
  32. package/Dom/Paint.js +19 -7
  33. package/Dom/Paint.js.map +1 -1
  34. package/Dom/Shadow.js +9 -0
  35. package/Dom/Shadow.js.map +1 -1
  36. package/Dom/Text.js +11 -1
  37. package/Dom/Text.js.map +1 -1
  38. package/Dom/index.d.ts +1 -0
  39. package/Dom/index.js +1 -0
  40. package/Dom/index.js.map +1 -1
  41. package/Dom/shaders/Gradients.d.ts +3 -0
  42. package/Dom/shaders/Gradients.js +4 -0
  43. package/Dom/shaders/Gradients.js.map +1 -0
  44. package/Dom/shaders/LinearGradient.d.ts +14 -0
  45. package/Dom/shaders/LinearGradient.js +44 -0
  46. package/Dom/shaders/LinearGradient.js.map +1 -0
  47. package/Dom/shaders/TwoPointConicalGradient.d.ts +16 -0
  48. package/Dom/shaders/TwoPointConicalGradient.js +60 -0
  49. package/Dom/shaders/TwoPointConicalGradient.js.map +1 -0
  50. package/Dom/shaders/index.d.ts +2 -0
  51. package/Dom/shaders/index.js +3 -0
  52. package/Dom/shaders/index.js.map +1 -0
  53. package/Dom/shapes/Atlas.d.ts +22 -0
  54. package/Dom/shapes/Atlas.js +60 -0
  55. package/Dom/shapes/Atlas.js.map +1 -0
  56. package/Dom/shapes/Circle.js +11 -0
  57. package/Dom/shapes/Circle.js.map +1 -1
  58. package/Dom/shapes/Line.d.ts +16 -4
  59. package/Dom/shapes/Line.js +13 -8
  60. package/Dom/shapes/Line.js.map +1 -1
  61. package/Dom/shapes/Oval.d.ts +12 -0
  62. package/Dom/shapes/Oval.js +87 -0
  63. package/Dom/shapes/Oval.js.map +1 -0
  64. package/Dom/shapes/Path.d.ts +19 -2
  65. package/Dom/shapes/Path.js +68 -4
  66. package/Dom/shapes/Path.js.map +1 -1
  67. package/Dom/shapes/Points.js +9 -1
  68. package/Dom/shapes/Points.js.map +1 -1
  69. package/Dom/shapes/Rect.js +27 -5
  70. package/Dom/shapes/Rect.js.map +1 -1
  71. package/Dom/shapes/RoundedRect.d.ts +2 -1
  72. package/Dom/shapes/RoundedRect.js +13 -2
  73. package/Dom/shapes/RoundedRect.js.map +1 -1
  74. package/Dom/shapes/index.d.ts +17 -0
  75. package/Dom/shapes/index.js +31 -0
  76. package/Dom/shapes/index.js.map +1 -1
  77. package/WebGL/WebGLRenderingContext/index.d.ts +1 -0
  78. package/WebGL/WebGLRenderingContext/index.js +104 -14
  79. package/WebGL/WebGLRenderingContext/index.js.map +1 -1
  80. package/WebGL2/WebGL2RenderingContext/index.d.ts +1 -0
  81. package/WebGL2/WebGL2RenderingContext/index.js +2 -3
  82. package/WebGL2/WebGL2RenderingContext/index.js.map +1 -1
  83. package/index.d.ts +0 -1
  84. package/index.js +14 -15
  85. package/index.js.map +1 -1
  86. package/package.json +1 -4
  87. package/platforms/android/canvas-release.aar +0 -0
  88. package/platforms/ios/CanvasNative.xcframework/Info.plist +4 -0
  89. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/CanvasNative +0 -0
  90. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/CanvasNative-Swift.h +35 -25
  91. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_ios.h +50 -4
  92. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_native.h +139 -16
  93. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Info.plist +0 -0
  94. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  95. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.abi.json +982 -3319
  96. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.private.swiftinterface +18 -33
  97. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  98. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftinterface +18 -33
  99. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/module.modulemap +1 -1
  100. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/NSCCanvas.nib +0 -0
  101. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  102. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/aarch64/CanvasNative.yml +622 -0
  103. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/CanvasNative +0 -0
  104. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/CanvasNative-Swift.h +70 -50
  105. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_ios.h +50 -4
  106. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_native.h +139 -16
  107. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Info.plist +0 -0
  108. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
  109. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
  110. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.abi.json +982 -3319
  111. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +18 -33
  112. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  113. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftinterface +18 -33
  114. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.abi.json +982 -3319
  115. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +18 -33
  116. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  117. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +18 -33
  118. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/module.modulemap +1 -1
  119. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/NSCCanvas.nib +0 -0
  120. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/_CodeSignature/CodeResources +35 -35
  121. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  122. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/aarch64/CanvasNative.yml +624 -0
  123. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/x86_64/CanvasNative.yml +624 -0
  124. package/platforms/ios/src/cpp/CanvasJSIModule.cpp +297 -397
  125. package/platforms/ios/src/cpp/Helpers.h +3 -4
  126. package/platforms/ios/src/cpp/ImageAssetImpl.cpp +30 -30
  127. package/platforms/ios/src/cpp/ImageAssetImpl.h +8 -5
  128. package/platforms/ios/src/cpp/URLImpl.cpp +73 -0
  129. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.cpp +339 -33
  130. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.h +150 -55
  131. package/platforms/ios/src/cpp/canvas2d/MatrixImpl.cpp +409 -3
  132. package/platforms/ios/src/cpp/canvas2d/MatrixImpl.h +27 -0
  133. package/platforms/ios/src/cpp/canvas2d/Path2D.cpp +19 -48
  134. package/platforms/ios/src/cpp/canvas2d/Path2D.h +19 -0
  135. package/platforms/ios/src/cpp/webgl/WebGLRenderingContext.cpp +105 -119
  136. package/platforms/ios/src/cpp/webgl/WebGLRenderingContextBase.cpp +37 -7
  137. package/platforms/ios/src/cpp/webgl/WebGLRenderingContextBase.h +10 -0
  138. package/platforms/ios/src/cpp/webgl2/WebGL2RenderingContext.cpp +1766 -1659
  139. package/src-native/ios/NativeScript.podspec +1 -1
  140. package/SVG/Circle.d.ts +0 -11
  141. package/SVG/Circle.js +0 -21
  142. package/SVG/Circle.js.map +0 -1
  143. package/SVG/ClipPath.d.ts +0 -4
  144. package/SVG/ClipPath.js +0 -9
  145. package/SVG/ClipPath.js.map +0 -1
  146. package/SVG/Defs.d.ts +0 -4
  147. package/SVG/Defs.js +0 -9
  148. package/SVG/Defs.js.map +0 -1
  149. package/SVG/Ellipse.d.ts +0 -13
  150. package/SVG/Ellipse.js +0 -26
  151. package/SVG/Ellipse.js.map +0 -1
  152. package/SVG/G.d.ts +0 -7
  153. package/SVG/G.js +0 -9
  154. package/SVG/G.js.map +0 -1
  155. package/SVG/Image.d.ts +0 -11
  156. package/SVG/Image.js +0 -40
  157. package/SVG/Image.js.map +0 -1
  158. package/SVG/Line.d.ts +0 -13
  159. package/SVG/Line.js +0 -26
  160. package/SVG/Line.js.map +0 -1
  161. package/SVG/LinearGradient.d.ts +0 -10
  162. package/SVG/LinearGradient.js +0 -13
  163. package/SVG/LinearGradient.js.map +0 -1
  164. package/SVG/Path.d.ts +0 -7
  165. package/SVG/Path.js +0 -14
  166. package/SVG/Path.js.map +0 -1
  167. package/SVG/Pattern.d.ts +0 -4
  168. package/SVG/Pattern.js +0 -9
  169. package/SVG/Pattern.js.map +0 -1
  170. package/SVG/Polygon.d.ts +0 -7
  171. package/SVG/Polygon.js +0 -14
  172. package/SVG/Polygon.js.map +0 -1
  173. package/SVG/Polyline.d.ts +0 -7
  174. package/SVG/Polyline.js +0 -14
  175. package/SVG/Polyline.js.map +0 -1
  176. package/SVG/Rect.d.ts +0 -8
  177. package/SVG/Rect.js +0 -13
  178. package/SVG/Rect.js.map +0 -1
  179. package/SVG/SVG.d.ts +0 -31
  180. package/SVG/SVG.js +0 -190
  181. package/SVG/SVG.js.map +0 -1
  182. package/SVG/SVGItem.d.ts +0 -5
  183. package/SVG/SVGItem.js +0 -8
  184. package/SVG/SVGItem.js.map +0 -1
  185. package/SVG/Stop.d.ts +0 -5
  186. package/SVG/Stop.js +0 -9
  187. package/SVG/Stop.js.map +0 -1
  188. package/SVG/Symbol.d.ts +0 -4
  189. package/SVG/Symbol.js +0 -9
  190. package/SVG/Symbol.js.map +0 -1
  191. package/SVG/Text.d.ts +0 -14
  192. package/SVG/Text.js +0 -26
  193. package/SVG/Text.js.map +0 -1
  194. package/SVG/Use.d.ts +0 -4
  195. package/SVG/Use.js +0 -9
  196. package/SVG/Use.js.map +0 -1
  197. package/SVG/index.d.ts +0 -18
  198. package/SVG/index.js +0 -19
  199. package/SVG/index.js.map +0 -1
  200. package/platforms/ios/src/cpp/PerIsolateData.cpp +0 -49
  201. package/platforms/ios/src/cpp/PerIsolateData.h +0 -54
@@ -6,6 +6,7 @@ import { CanvasPattern } from '../CanvasPattern';
6
6
  export declare class CanvasRenderingContext2D {
7
7
  static isDebug: boolean;
8
8
  private context;
9
+ private contextPtr;
9
10
  constructor(context: any, contextOptions: any);
10
11
  _type: string;
11
12
  get type(): string;
@@ -85,12 +86,24 @@ export declare class CanvasRenderingContext2D {
85
86
  drawImage(image: any, dx: number, dy: number): void;
86
87
  drawImage(image: any, dx: number, dy: number, dWidth: number, dHeight: number): void;
87
88
  drawImage(image: any, sx: number, sy: number, sWidth: number, sHeight: number, dx: number, dy: number, dWidth: number, dHeight: number): void;
89
+ drawAtlas(image: any, xform: {
90
+ scos: number;
91
+ ssin: number;
92
+ tx: number;
93
+ ty: number;
94
+ }[], tex: {
95
+ x: number;
96
+ y: number;
97
+ width: number;
98
+ height: number;
99
+ }[], colors?: string[], blendMode?: GlobalCompositeOperation): void;
88
100
  ellipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, anticlockwise?: boolean): void;
89
101
  fill(): void;
90
102
  fill(fillRule: string): void;
91
103
  fill(path: Path2D, fillRule: string): void;
92
104
  fillRect(x: number, y: number, width: number, height: number): void;
93
105
  fillText(text: string, x: number, y: number, maxWidth: number): void;
106
+ fillOval(x: number, y: number, width: number, height: number): void;
94
107
  getImageData(sx: number, sy: number, sw: number, sh: number): ImageData;
95
108
  getLineDash(): number[];
96
109
  getTransform(): DOMMatrix;
@@ -122,6 +135,7 @@ export declare class CanvasRenderingContext2D {
122
135
  stroke(): void;
123
136
  strokeRect(x: number, y: number, width: number, height: number): void;
124
137
  strokeText(text: string, x: number, y: number, maxWidth?: number): void;
138
+ strokeOval(x: number, y: number, width: number, height: number): void;
125
139
  transform(a: number, b: number, c: number, d: number, e: number, f: number): void;
126
140
  translate(x: number, y: number): void;
127
141
  }
@@ -2,7 +2,7 @@ import { CanvasGradient } from '../CanvasGradient';
2
2
  import { Path2D } from '../Path2D';
3
3
  import { ImageData } from '../ImageData';
4
4
  import { TextMetrics } from '../TextMetrics';
5
- import { ImageSource } from '@nativescript/core';
5
+ import { ImageSource, Color } from '@nativescript/core';
6
6
  import { ImageAsset } from '../../ImageAsset';
7
7
  import { CanvasPattern } from '../CanvasPattern';
8
8
  import { Canvas } from '../../Canvas';
@@ -54,21 +54,71 @@ function fromBaseLine(value) {
54
54
  return null;
55
55
  }
56
56
  }
57
+ function toBlendMode(value) {
58
+ switch (value) {
59
+ case 'source-over':
60
+ return 0;
61
+ case 'source-in':
62
+ return 1;
63
+ case 'source-out':
64
+ return 2;
65
+ case 'source-atop':
66
+ return 3;
67
+ case 'destination-over':
68
+ return 4;
69
+ case 'destination-in':
70
+ return 5;
71
+ case 'destination-out':
72
+ return 6;
73
+ case 'destination-atop':
74
+ return 7;
75
+ case 'lighter':
76
+ return 8;
77
+ case 'copy':
78
+ return 9;
79
+ case 'xor':
80
+ return 10;
81
+ case 'multiply':
82
+ return 11;
83
+ case 'screen':
84
+ return 12;
85
+ case 'overlay':
86
+ return 13;
87
+ case 'darken':
88
+ return 14;
89
+ case 'lighten':
90
+ return 15;
91
+ case 'color-dodge':
92
+ return 16;
93
+ case 'color-burn':
94
+ return 17;
95
+ case 'hard-light':
96
+ return 18;
97
+ case 'soft-light':
98
+ return 19;
99
+ case 'difference':
100
+ return 20;
101
+ case 'exclusion':
102
+ return 21;
103
+ case 'hue':
104
+ return 22;
105
+ case 'saturation':
106
+ return 23;
107
+ case 'color':
108
+ return 24;
109
+ case 'luminosity':
110
+ return 25;
111
+ default:
112
+ null;
113
+ }
114
+ }
57
115
  export class CanvasRenderingContext2D {
58
116
  constructor(context, contextOptions) {
59
117
  this._type = 'none';
60
- /*const width = context.getDrawingBufferWidth(); // can use getMeasuredWidth / getMeasuredHeight
61
- const height = context.getDrawingBufferHeight();
62
-
63
- const ctxPtr = BigInt(context.getNativeContext().toString());
64
- let direction = 0;
65
- if (androidx.core.text.TextUtilsCompat.getLayoutDirectionFromLocale(java.util.Locale.getDefault()) === androidx.core.view.ViewCompat.LAYOUT_DIRECTION_RTL) {
66
- direction = 1;
67
- }
68
- this.context = ctor(ctxPtr, width, height, Screen.mainScreen.scale, contextOptions.antialias ? 4 : 0, contextOptions.alpha, contextOptions.fontColor, 1, direction);
69
- */
118
+ this.contextPtr = context;
70
119
  const ctxPtr = BigInt(context.toString());
71
120
  this.context = ctor(ctxPtr);
121
+ this._type = '2d';
72
122
  }
73
123
  get type() {
74
124
  return this._type;
@@ -363,7 +413,19 @@ export class CanvasRenderingContext2D {
363
413
  this.context.drawPoint(x, y);
364
414
  }
365
415
  drawPoints(mode, points) {
366
- this.context.drawPoints(mode, points);
416
+ let modeValue = -1;
417
+ switch (mode) {
418
+ case 'points':
419
+ modeValue = 0;
420
+ break;
421
+ case 'lines':
422
+ modeValue = 1;
423
+ break;
424
+ case 'polygon':
425
+ modeValue = 2;
426
+ break;
427
+ }
428
+ this.context.drawPoints(modeValue, points);
367
429
  }
368
430
  drawFocusIfNeeded(...args) { }
369
431
  drawImage(...args) {
@@ -441,6 +503,13 @@ export class CanvasRenderingContext2D {
441
503
  drawNativeImage(args, image._image);
442
504
  return;
443
505
  }
506
+ else if (global.isAndroid && image._svg) {
507
+ const bitmap = image._svg?._svg?.getBitmap?.();
508
+ if (bitmap) {
509
+ drawNativeImage(args, bitmap);
510
+ }
511
+ return;
512
+ }
444
513
  else if (global.isIOS && image._image instanceof UIImage) {
445
514
  drawNativeImage(args, image._image);
446
515
  return;
@@ -475,6 +544,116 @@ export class CanvasRenderingContext2D {
475
544
  this.context.drawImage(image, args[1], args[2], args[3], args[4], args[5], args[6], args[7], args[8]);
476
545
  }
477
546
  }
547
+ drawAtlas(image, xform, tex, colors, blendMode = 'destination-over') {
548
+ let isNativeSource = false;
549
+ if (image?._type === '2d' || image?._type?.indexOf('webgl') > -1) {
550
+ image = image.native;
551
+ }
552
+ else if (image instanceof ImageAsset) {
553
+ image = image.native;
554
+ }
555
+ else if (image instanceof ImageSource) {
556
+ if (global.isAndroid) {
557
+ isNativeSource = true;
558
+ image = image.android;
559
+ }
560
+ if (global.isIOS) {
561
+ isNativeSource = true;
562
+ image = image.ios;
563
+ }
564
+ }
565
+ else if (global.isAndroid && image instanceof android.graphics.Bitmap) {
566
+ isNativeSource = true;
567
+ }
568
+ else if (global.isIOS && image instanceof UIImage) {
569
+ isNativeSource = true;
570
+ }
571
+ else if (image instanceof Canvas) {
572
+ image = image.native;
573
+ }
574
+ else if (image && typeof image.tagName === 'string' && (image.tagName === 'IMG' || image.tagName === 'IMAGE')) {
575
+ if (image._imageSource instanceof ImageSource) {
576
+ if (global.isAndroid) {
577
+ isNativeSource = true;
578
+ image = image._imageSource.android;
579
+ }
580
+ if (global.isIOS) {
581
+ isNativeSource = true;
582
+ image = image._imageSource.ios;
583
+ }
584
+ return;
585
+ }
586
+ else if (global.isAndroid && image._image instanceof android.graphics.Bitmap) {
587
+ image = image._image;
588
+ isNativeSource = true;
589
+ }
590
+ else if (global.isIOS && image._image instanceof UIImage) {
591
+ image = image._image;
592
+ isNativeSource = true;
593
+ }
594
+ else if (image._asset instanceof ImageAsset) {
595
+ image = image._asset.native;
596
+ }
597
+ else if (typeof image.src === 'string') {
598
+ image = new ImageAsset();
599
+ image.fromFileSync(image.src);
600
+ }
601
+ }
602
+ else if (image && typeof image.tagName === 'string' && image.tagName === 'CANVAS' && image._canvas instanceof Canvas) {
603
+ image = image._canvas.native;
604
+ }
605
+ else if (image instanceof ImageBitmap) {
606
+ image = image.native;
607
+ }
608
+ if (isNativeSource) {
609
+ if (global.isIOS) {
610
+ return;
611
+ }
612
+ if (global.isAndroid) {
613
+ const x = Array.create('float', xform.length * 4);
614
+ let next = 0;
615
+ for (let i = 0; i < xform.length; i++) {
616
+ const item = xform[i];
617
+ x[next] = item.scos;
618
+ x[next + 1] = item.ssin;
619
+ x[next + 1] = item.tx;
620
+ x[next + 1] = item.ty;
621
+ next += 3;
622
+ }
623
+ const t = Array.create('float', tex.length * 4);
624
+ let tnext = 0;
625
+ for (let i = 0; i < tex.length; i++) {
626
+ const item = tex[i];
627
+ t[tnext] = item.x;
628
+ t[tnext + 1] = item.y;
629
+ t[tnext + 1] = item.width;
630
+ t[tnext + 1] = item.height;
631
+ tnext += 3;
632
+ }
633
+ const c = Array.create('int', colors?.length ?? 0);
634
+ if (colors?.length) {
635
+ for (let i = 0; i < colors.length; i++) {
636
+ const item = colors[i];
637
+ c[i] = new Color(item).argb;
638
+ }
639
+ }
640
+ org.nativescript.canvas.NSCCanvasRenderingContext2D.drawAtlas(this.contextPtr, image, x, t, c, toBlendMode(blendMode ?? 'destination-over') ?? 4);
641
+ }
642
+ }
643
+ else {
644
+ if (image) {
645
+ const x = xform.reduce((accumulator, currentValue) => {
646
+ accumulator.push(currentValue.scos, currentValue.ssin, currentValue.tx, currentValue.ty);
647
+ return accumulator;
648
+ }, []);
649
+ const t = tex.reduce((accumulator, currentValue) => {
650
+ accumulator.push(currentValue.x, currentValue.y, currentValue.width, currentValue.height);
651
+ return accumulator;
652
+ }, []);
653
+ this.context.drawAtlas(image, x, t, colors ?? null, toBlendMode(blendMode ?? 'destination-over') ?? 4);
654
+ }
655
+ }
656
+ }
478
657
  ellipse(x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise = false) {
479
658
  this.context.ellipse(x, y, radiusX, radiusY, rotation, startAngle, endAngle, anticlockwise ?? false);
480
659
  }
@@ -503,6 +682,9 @@ export class CanvasRenderingContext2D {
503
682
  this.context.fillText(text + '', x, y);
504
683
  }
505
684
  }
685
+ fillOval(x, y, width, height) {
686
+ this.context.fillOval(x, y, width, height);
687
+ }
506
688
  getImageData(sx, sy, sw, sh) {
507
689
  return ImageData.fromNative(this.context.getImageData(sx, sy, sw, sh));
508
690
  }
@@ -513,22 +695,24 @@ export class CanvasRenderingContext2D {
513
695
  return new DOMMatrix(this.context.getTransform());
514
696
  }
515
697
  isPointInPath(...args) {
516
- if (args.length === 2) {
698
+ const length = args.length;
699
+ if (length === 2) {
517
700
  return this.context.isPointInPath(args[0], args[1]);
518
701
  }
519
- else if (args.length === 3) {
702
+ else if (length === 3) {
520
703
  return this.context.isPointInPath(args[0], args[1], ruleToEnum(args[2]));
521
704
  }
522
- else if (args.length === 4 && args[0] instanceof Path2D) {
705
+ else if (length === 4 && args[0] instanceof Path2D) {
523
706
  return this.context.isPointInPath(args[0].native, args[1], args[2], ruleToEnum(args[3]));
524
707
  }
525
708
  return false;
526
709
  }
527
710
  isPointInStroke(...args) {
528
- if (args.length === 2) {
711
+ const length = args.length;
712
+ if (length === 2) {
529
713
  return this.context.isPointInStroke(args[0], args[1]);
530
714
  }
531
- else if (args.length === 3 && args[0] instanceof Path2D) {
715
+ else if (length === 3 && args[0] instanceof Path2D) {
532
716
  return this.context.isPointInStroke(args[0].native, args[1], args[2]);
533
717
  }
534
718
  return false;
@@ -547,10 +731,11 @@ export class CanvasRenderingContext2D {
547
731
  return;
548
732
  }
549
733
  const data = args[0];
550
- if (args.length === 3) {
734
+ const length = args.length;
735
+ if (length === 3) {
551
736
  this.context.putImageData(data.native, args[1], args[2]);
552
737
  }
553
- else if (args.length === 7) {
738
+ else if (length === 7) {
554
739
  this.context.putImageData(data.native, args[1], args[2], args[3], args[4], args[5], args[6]);
555
740
  }
556
741
  }
@@ -611,6 +796,9 @@ export class CanvasRenderingContext2D {
611
796
  this.context.strokeText(text + '', x, y);
612
797
  }
613
798
  }
799
+ strokeOval(x, y, width, height) {
800
+ this.context.strokeOval(x, y, width, height);
801
+ }
614
802
  transform(a, b, c, d, e, f) {
615
803
  this.context.transform(a, b, c, d, e, f);
616
804
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/canvas/Canvas2D/CanvasRenderingContext2D/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/canvas/Canvas2D/CanvasRenderingContext2D/index.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,20 @@ export declare class DOMMatrix {
47
47
  set m43(value: number);
48
48
  get m44(): number;
49
49
  set m44(value: number);
50
+ translate(x: number, y: number): DOMMatrix;
51
+ translateSelf(x: number, y: number): void;
52
+ multiplySelf(matrix: DOMMatrix): void;
53
+ preMultiplySelf(matrix: DOMMatrix): void;
54
+ scaleNonUniform(x: number, y: number): DOMMatrix;
55
+ scale(x: number, y: number): DOMMatrix;
56
+ scaleNonUniformSelf(x: number, y: number): void;
57
+ scaleSelf(x: number, y: number): void;
58
+ rotate(angle: number, cx: number, cy: number): DOMMatrix;
59
+ rotateSelf(angle: number, cx: number, cy: number): void;
60
+ skewX(angle: number): DOMMatrix;
61
+ skewXSelf(angle: number): void;
62
+ skewY(angle: number): DOMMatrix;
63
+ skewYSelf(angle: number): void;
50
64
  toJSON(): {
51
65
  a: number;
52
66
  b: number;
@@ -150,6 +150,68 @@ export class DOMMatrix {
150
150
  set m44(value) {
151
151
  this.nativeInstance.m44 = value;
152
152
  }
153
+ translate(x, y) {
154
+ const val = this.native.translate(x, y, this.native);
155
+ if (val) {
156
+ return new DOMMatrix(val);
157
+ }
158
+ return null;
159
+ }
160
+ translateSelf(x, y) {
161
+ this.native.translateSelf(x, y);
162
+ }
163
+ multiplySelf(matrix) {
164
+ this.native.multiplySelf(matrix);
165
+ }
166
+ preMultiplySelf(matrix) {
167
+ this.native.premultiplySelf(matrix);
168
+ }
169
+ scaleNonUniform(x, y) {
170
+ const val = this.native.scaleNonUniform(x, y, this.native);
171
+ if (val) {
172
+ return new DOMMatrix(val);
173
+ }
174
+ return null;
175
+ }
176
+ scale(x, y) {
177
+ return this.scaleNonUniform(x, y);
178
+ }
179
+ scaleNonUniformSelf(x, y) {
180
+ this.native.scaleNonUniformSelf(x, y);
181
+ }
182
+ scaleSelf(x, y) {
183
+ this.scaleNonUniformSelf(x, y);
184
+ }
185
+ rotate(angle, cx, cy) {
186
+ const val = this.native.rotate(angle, cx, cy, this.native);
187
+ if (val) {
188
+ return new DOMMatrix(val);
189
+ }
190
+ return null;
191
+ }
192
+ rotateSelf(angle, cx, cy) {
193
+ this.native.rotateSelf(angle, cx, cy);
194
+ }
195
+ skewX(angle) {
196
+ const val = this.native.skewX(angle, this.native);
197
+ if (val) {
198
+ return new DOMMatrix(val);
199
+ }
200
+ return null;
201
+ }
202
+ skewXSelf(angle) {
203
+ this.native.skewXSelf(angle);
204
+ }
205
+ skewY(angle) {
206
+ const val = this.native.skewY(angle, this.native);
207
+ if (val) {
208
+ return new DOMMatrix(val);
209
+ }
210
+ return null;
211
+ }
212
+ skewYSelf(angle) {
213
+ this.native.skewYSelf(angle);
214
+ }
153
215
  toJSON() {
154
216
  return {
155
217
  a: this.a,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/canvas/Canvas2D/DOMMatrix/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/canvas/Canvas2D/DOMMatrix/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import { Helpers } from '../../helpers';
2
- let ctor;
3
2
  export class ImageData {
4
3
  constructor(param0, param1, param2, param3) {
5
4
  if (typeof param0?.height === 'number') {
@@ -21,22 +20,22 @@ export class ImageData {
21
20
  throw Error("Failed to construct 'ImageData': The input data length is not a multiple of (4 * width");
22
21
  }
23
22
  if (length == 2) {
24
- this._native = new ctor(data, width, data.length / row);
23
+ this._native = new global.CanvasModule.ImageData(data, width, data.length / row);
25
24
  }
26
25
  else if (length > 2) {
27
26
  // TODO support colorSpace
28
- this._native = new ctor(data, width, arguments[2]);
27
+ this._native = new global.CanvasModule.ImageData(data, width, arguments[2]);
29
28
  }
30
29
  }
31
30
  else if (typeof arguments[0] === 'number') {
32
31
  const width = arguments[0];
33
32
  const height = arguments[1];
34
33
  if (length == 2) {
35
- this._native = new ctor(width, height);
34
+ this._native = new global.CanvasModule.ImageData(width, height);
36
35
  }
37
36
  else if (length > 2) {
38
37
  // TODO support colorSpace
39
- this._native = new ctor(width, height);
38
+ this._native = new global.CanvasModule.ImageData(width, height);
40
39
  }
41
40
  }
42
41
  // todo throw error
@@ -62,6 +61,5 @@ export class ImageData {
62
61
  }
63
62
  (() => {
64
63
  Helpers.initialize();
65
- ctor = global.CanvasModule.ImageData;
66
64
  })();
67
65
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/canvas/Canvas2D/ImageData/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,IAAI,IAAI,CAAC;AACT,MAAM,OAAO,SAAS;IAYrB,YAAY,MAAM,EAAE,MAAM,EAAE,MAAO,EAAE,MAAO;QAC3C,IAAI,OAAO,MAAM,EAAE,MAAM,KAAK,QAAQ,EAAE;YACvC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;YACtB,OAAO,IAAI,CAAC;SACZ;QAED,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QAEhC,IAAI,MAAM,KAAK,CAAC,EAAE;YACjB,MAAM,IAAI,SAAS,CAAC,4EAA4E,CAAC,CAAC;SAClG;aAAM,IAAI,MAAM,KAAK,CAAC,EAAE;YACxB,MAAM,IAAI,SAAS,CAAC,4EAA4E,CAAC,CAAC;SAClG;QAED,IAAI,SAAS,CAAC,CAAC,CAAC,YAAY,iBAAiB,EAAE;YAC9C,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC3B,MAAM,GAAG,GAAG,KAAK,GAAG,CAAC,CAAC;YACtB,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE;gBACtB,MAAM,KAAK,CAAC,wFAAwF,CAAC,CAAC;aACtG;YACD,IAAI,MAAM,IAAI,CAAC,EAAE;gBAChB,IAAI,CAAC,OAAO,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;aACxD;iBAAM,IAAI,MAAM,GAAG,CAAC,EAAE;gBACtB,0BAA0B;gBAC1B,IAAI,CAAC,OAAO,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;aACnD;SACD;aAAM,IAAI,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;YAC5C,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC3B,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,MAAM,IAAI,CAAC,EAAE;gBAChB,IAAI,CAAC,OAAO,GAAG,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;aACvC;iBAAM,IAAI,MAAM,GAAG,CAAC,EAAE;gBACtB,0BAA0B;gBAC1B,IAAI,CAAC,OAAO,GAAG,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;aACvC;SACD;QAED,mBAAmB;IACpB,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,IAAI,IAAI;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IACzB,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC3B,CAAC;IAED,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;IAC1B,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,cAAc;QAC/B,OAAO,IAAI,SAAS,CAAC,cAAc,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,QAAmB;QAC9B,OAAO,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;CACD;AA3EA;IACC,OAAO,CAAC,UAAU,EAAE,CAAC;IACrB,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC;AACtC,CAAC,GAAA,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/canvas/Canvas2D/ImageData/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,MAAM,OAAO,SAAS;IAWrB,YAAY,MAAM,EAAE,MAAM,EAAE,MAAO,EAAE,MAAO;QAC3C,IAAI,OAAO,MAAM,EAAE,MAAM,KAAK,QAAQ,EAAE;YACvC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;YACtB,OAAO,IAAI,CAAC;SACZ;QAED,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QAEhC,IAAI,MAAM,KAAK,CAAC,EAAE;YACjB,MAAM,IAAI,SAAS,CAAC,4EAA4E,CAAC,CAAC;SAClG;aAAM,IAAI,MAAM,KAAK,CAAC,EAAE;YACxB,MAAM,IAAI,SAAS,CAAC,4EAA4E,CAAC,CAAC;SAClG;QAED,IAAI,SAAS,CAAC,CAAC,CAAC,YAAY,iBAAiB,EAAE;YAC9C,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC3B,MAAM,GAAG,GAAG,KAAK,GAAG,CAAC,CAAC;YACtB,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE;gBACtB,MAAM,KAAK,CAAC,wFAAwF,CAAC,CAAC;aACtG;YACD,IAAI,MAAM,IAAI,CAAC,EAAE;gBAChB,IAAI,CAAC,OAAO,GAAG,IAAI,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;aACjF;iBAAM,IAAI,MAAM,GAAG,CAAC,EAAE;gBACtB,0BAA0B;gBAC1B,IAAI,CAAC,OAAO,GAAG,IAAI,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;aAC5E;SACD;aAAM,IAAI,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;YAC5C,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC3B,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,MAAM,IAAI,CAAC,EAAE;gBAChB,IAAI,CAAC,OAAO,GAAG,IAAI,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;aAChE;iBAAM,IAAI,MAAM,GAAG,CAAC,EAAE;gBACtB,0BAA0B;gBAC1B,IAAI,CAAC,OAAO,GAAG,IAAI,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;aAChE;SACD;QAED,mBAAmB;IACpB,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,IAAI,IAAI;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IACzB,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC3B,CAAC;IAED,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;IAC1B,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,cAAc;QAC/B,OAAO,IAAI,SAAS,CAAC,cAAc,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,QAAmB;QAC9B,OAAO,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC;CACD;AA1EA;IACC,OAAO,CAAC,UAAU,EAAE,CAAC;AACtB,CAAC,GAAA,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { DOMMatrix } from '../DOMMatrix';
2
2
  export declare class Path2D {
3
- _native: any;
3
+ private _native;
4
4
  constructor(instance?: any);
5
5
  get native(): any;
6
6
  addPath(path: Path2D, transform?: DOMMatrix): void;
@@ -15,5 +15,6 @@ export declare class Path2D {
15
15
  rect(x: number, y: number, width: number, height: number): void;
16
16
  roundRect(x: number, y: number, width: number, height: number, radii: number): void;
17
17
  roundRect(x: number, y: number, width: number, height: number, radii: number[]): void;
18
+ trim(start: number, end: number): void;
18
19
  __toSVG(): any;
19
20
  }