@nativescript/canvas 2.0.0-beta.0 → 2.0.0-beta.10

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 (128) hide show
  1. package/Canvas/common.js +3 -0
  2. package/Canvas/common.js.map +1 -1
  3. package/Canvas/index.android.d.ts +1 -0
  4. package/Canvas/index.android.js +8 -2
  5. package/Canvas/index.android.js.map +1 -1
  6. package/Canvas/index.d.ts +2 -0
  7. package/Canvas/index.ios.d.ts +4 -1
  8. package/Canvas/index.ios.js +14 -6
  9. package/Canvas/index.ios.js.map +1 -1
  10. package/Canvas2D/CanvasRenderingContext2D/index.d.ts +16 -0
  11. package/Canvas2D/CanvasRenderingContext2D/index.js +209 -10
  12. package/Canvas2D/CanvasRenderingContext2D/index.js.map +1 -1
  13. package/Canvas2D/DOMMatrix/index.js +5 -3
  14. package/Canvas2D/DOMMatrix/index.js.map +1 -1
  15. package/Canvas2D/Path2D/index.d.ts +2 -1
  16. package/Canvas2D/Path2D/index.js +3 -12
  17. package/Canvas2D/Path2D/index.js.map +1 -1
  18. package/Dom/Dom.d.ts +20 -1
  19. package/Dom/Dom.js +79 -6
  20. package/Dom/Dom.js.map +1 -1
  21. package/Dom/Group.d.ts +12 -7
  22. package/Dom/Group.js +62 -21
  23. package/Dom/Group.js.map +1 -1
  24. package/Dom/Image.d.ts +1 -0
  25. package/Dom/Image.js +22 -3
  26. package/Dom/Image.js.map +1 -1
  27. package/Dom/Paint.d.ts +5 -0
  28. package/Dom/Paint.js +25 -7
  29. package/Dom/Paint.js.map +1 -1
  30. package/Dom/Shadow.js +9 -0
  31. package/Dom/Shadow.js.map +1 -1
  32. package/Dom/Text.js +14 -5
  33. package/Dom/Text.js.map +1 -1
  34. package/Dom/index.d.ts +1 -0
  35. package/Dom/index.js +1 -0
  36. package/Dom/index.js.map +1 -1
  37. package/Dom/shaders/Gradients.d.ts +3 -0
  38. package/Dom/shaders/Gradients.js +4 -0
  39. package/Dom/shaders/Gradients.js.map +1 -0
  40. package/Dom/shaders/LinearGradient.d.ts +14 -0
  41. package/Dom/shaders/LinearGradient.js +44 -0
  42. package/Dom/shaders/LinearGradient.js.map +1 -0
  43. package/Dom/shaders/TwoPointConicalGradient.d.ts +16 -0
  44. package/Dom/shaders/TwoPointConicalGradient.js +60 -0
  45. package/Dom/shaders/TwoPointConicalGradient.js.map +1 -0
  46. package/Dom/shaders/index.d.ts +2 -0
  47. package/Dom/shaders/index.js +3 -0
  48. package/Dom/shaders/index.js.map +1 -0
  49. package/Dom/shapes/Atlas.d.ts +22 -0
  50. package/Dom/shapes/Atlas.js +60 -0
  51. package/Dom/shapes/Atlas.js.map +1 -0
  52. package/Dom/shapes/Circle.js +12 -1
  53. package/Dom/shapes/Circle.js.map +1 -1
  54. package/Dom/shapes/Line.d.ts +16 -4
  55. package/Dom/shapes/Line.js +13 -8
  56. package/Dom/shapes/Line.js.map +1 -1
  57. package/Dom/shapes/Oval.d.ts +12 -0
  58. package/Dom/shapes/Oval.js +87 -0
  59. package/Dom/shapes/Oval.js.map +1 -0
  60. package/Dom/shapes/Path.d.ts +19 -2
  61. package/Dom/shapes/Path.js +68 -3
  62. package/Dom/shapes/Path.js.map +1 -1
  63. package/Dom/shapes/Points.js +9 -1
  64. package/Dom/shapes/Points.js.map +1 -1
  65. package/Dom/shapes/Rect.js +29 -7
  66. package/Dom/shapes/Rect.js.map +1 -1
  67. package/Dom/shapes/RoundedRect.d.ts +2 -1
  68. package/Dom/shapes/RoundedRect.js +21 -11
  69. package/Dom/shapes/RoundedRect.js.map +1 -1
  70. package/Dom/shapes/index.d.ts +17 -0
  71. package/Dom/shapes/index.js +31 -0
  72. package/Dom/shapes/index.js.map +1 -1
  73. package/SVG/SVG.d.ts +2 -1
  74. package/SVG/SVG.js +15 -1
  75. package/SVG/SVG.js.map +1 -1
  76. package/WebGL/WebGLRenderingContext/index.js +37 -1
  77. package/WebGL/WebGLRenderingContext/index.js.map +1 -1
  78. package/package.json +1 -1
  79. package/platforms/android/canvas-release.aar +0 -0
  80. package/platforms/ios/CanvasNative.xcframework/Info.plist +4 -0
  81. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/CanvasNative +0 -0
  82. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/CanvasNative-Swift.h +21 -4
  83. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_ios.h +25 -0
  84. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_native.h +50 -0
  85. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Info.plist +0 -0
  86. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  87. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.abi.json +306 -208
  88. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.private.swiftinterface +2 -1
  89. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  90. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftinterface +2 -1
  91. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/module.modulemap +1 -1
  92. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/NSCCanvas.nib +0 -0
  93. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  94. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/aarch64/CanvasNative.yml +668 -0
  95. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/CanvasNative +0 -0
  96. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/CanvasNative-Swift.h +42 -8
  97. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_ios.h +25 -0
  98. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_native.h +50 -0
  99. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Info.plist +0 -0
  100. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
  101. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
  102. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.abi.json +306 -208
  103. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +2 -1
  104. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  105. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftinterface +2 -1
  106. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.abi.json +306 -208
  107. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +2 -1
  108. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  109. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +2 -1
  110. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/module.modulemap +1 -1
  111. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/NSCCanvas.nib +0 -0
  112. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/_CodeSignature/CodeResources +35 -35
  113. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  114. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/aarch64/CanvasNative.yml +667 -0
  115. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/x86_64/CanvasNative.yml +646 -0
  116. package/platforms/ios/src/cpp/ImageAssetImpl.cpp +22 -3
  117. package/platforms/ios/src/cpp/ImageAssetImpl.h +5 -2
  118. package/platforms/ios/src/cpp/ObjectWrapperImpl.h +8 -6
  119. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.cpp +342 -75
  120. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.h +153 -55
  121. package/platforms/ios/src/cpp/canvas2d/MatrixImpl.h +1 -1
  122. package/platforms/ios/src/cpp/canvas2d/Path2D.cpp +19 -48
  123. package/platforms/ios/src/cpp/canvas2d/Path2D.h +19 -0
  124. package/platforms/ios/src/cpp/webgl/WebGLRenderingContext.cpp +5 -0
  125. package/platforms/ios/src/cpp/webgl/WebGLRenderingContext.h +4 -4
  126. package/platforms/ios/src/cpp/webgl/WebGLRenderingContextBase.cpp +37 -7
  127. package/platforms/ios/src/cpp/webgl/WebGLRenderingContextBase.h +10 -0
  128. package/src-native/ios/NativeScript.podspec +1 -1
@@ -2,16 +2,24 @@ import { Property } from '@nativescript/core';
2
2
  import { Paint } from '../Paint';
3
3
  export const pointsProperty = new Property({
4
4
  name: 'points',
5
+ valueChanged(target, oldValue, newValue) {
6
+ target.invalidate();
7
+ },
5
8
  });
6
9
  export const modeProperty = new Property({
7
10
  name: 'mode',
8
11
  defaultValue: 'points',
12
+ valueChanged(target, oldValue, newValue) {
13
+ target.invalidate();
14
+ },
9
15
  });
10
16
  export class Points extends Paint {
11
17
  draw() {
12
18
  const override_color = this.parent._overrideColor;
13
19
  const context = this._canvas.getContext('2d');
14
- context.strokeStyle = this.color.hex;
20
+ context.lineWidth = this._getStrokeWidth();
21
+ context.lineJoin = this._getStrokeJoin();
22
+ context.strokeStyle = this._getColor();
15
23
  context.drawPoints(this.mode ?? 'points', this.points);
16
24
  }
17
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Points.js","sourceRoot":"","sources":["../../../../../packages/canvas/Dom/shapes/Points.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,QAAQ,EAAoB,MAAM,oBAAoB,CAAC;AAE/E,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,QAAQ,CAAqC;IAC9E,IAAI,EAAE,QAAQ;CACd,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,QAAQ,CAAyC;IAChF,IAAI,EAAE,MAAM;IACZ,YAAY,EAAE,QAAQ;CACtB,CAAC,CAAC;AAEH,MAAM,OAAO,MAAO,SAAQ,KAAK;IAIhC,IAAI;QACH,MAAM,cAAc,GAAI,IAAI,CAAC,MAAc,CAAC,cAAc,CAAC;QAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAoC,CAAC;QACjF,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QACpC,OAAe,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACjE,CAAC;CACD;AAED,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAChC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"Points.js","sourceRoot":"","sources":["../../../../../packages/canvas/Dom/shapes/Points.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,QAAQ,EAAoB,MAAM,oBAAoB,CAAC;AAE/E,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,QAAQ,CAAqC;IAC9E,IAAI,EAAE,QAAQ;IACd,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ;QACtC,MAAM,CAAC,UAAU,EAAE,CAAC;IACrB,CAAC;CACD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,QAAQ,CAAyC;IAChF,IAAI,EAAE,MAAM;IACZ,YAAY,EAAE,QAAQ;IACtB,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ;QACtC,MAAM,CAAC,UAAU,EAAE,CAAC;IACrB,CAAC;CACD,CAAC,CAAC;AAEH,MAAM,OAAO,MAAO,SAAQ,KAAK;IAIhC,IAAI;QACH,MAAM,cAAc,GAAI,IAAI,CAAC,MAAc,CAAC,cAAc,CAAC;QAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAoC,CAAC;QACjF,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3C,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACzC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,OAAe,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACjE,CAAC;CACD;AAED,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAChC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC"}
@@ -5,24 +5,36 @@ export const xProperty = new Property({
5
5
  valueConverter(value) {
6
6
  return parseFloat(value);
7
7
  },
8
+ valueChanged(target, oldValue, newValue) {
9
+ target.invalidate();
10
+ },
8
11
  });
9
12
  export const yProperty = new Property({
10
13
  name: 'y',
11
14
  valueConverter(value) {
12
15
  return parseFloat(value);
13
16
  },
17
+ valueChanged(target, oldValue, newValue) {
18
+ target.invalidate();
19
+ },
14
20
  });
15
21
  export const widthProperty = new Property({
16
22
  name: 'width',
17
23
  valueConverter(value) {
18
24
  return parseFloat(value);
19
25
  },
26
+ valueChanged(target, oldValue, newValue) {
27
+ target.invalidate();
28
+ },
20
29
  });
21
30
  export const heightProperty = new Property({
22
31
  name: 'height',
23
32
  valueConverter(value) {
24
33
  return parseFloat(value);
25
34
  },
35
+ valueChanged(target, oldValue, newValue) {
36
+ target.invalidate();
37
+ },
26
38
  });
27
39
  export class Rect extends Paint {
28
40
  constructor() {
@@ -33,26 +45,34 @@ export class Rect extends Paint {
33
45
  const context = this._canvas.getContext('2d');
34
46
  context.rect(this.x, this.y, this.width, this.height);
35
47
  if (this._children.length > 0) {
36
- this._children.forEach((child) => {
37
- switch (child.paintStyle) {
48
+ for (const child of this._children) {
49
+ const color = child._getColor();
50
+ const style = child._getPaintStyle();
51
+ switch (style) {
38
52
  case 'fill':
39
- context.fillStyle = child.color.hex;
53
+ context.fillStyle = color;
40
54
  context.fill();
41
55
  break;
42
56
  case 'stroke':
43
- context.strokeStyle = child.color.hex;
44
- context.lineWidth = child.strokeWidth;
57
+ context.strokeStyle = color;
58
+ context.lineWidth = child._getStrokeWidth();
59
+ context.lineJoin = child._getStrokeJoin();
45
60
  context.stroke();
46
61
  break;
47
62
  }
48
- });
63
+ }
49
64
  }
50
65
  else {
51
66
  super.draw();
52
67
  }
53
68
  }
54
69
  _addViewToNativeVisualTree(view, atIndex) {
55
- if (view instanceof Paint) {
70
+ if (view === this._canvas) {
71
+ this.nativeView.addView(this._canvas.nativeView);
72
+ return true;
73
+ }
74
+ else if (view instanceof Paint) {
75
+ view._canvas = this._canvas;
56
76
  this._children.push(view);
57
77
  }
58
78
  return false;
@@ -60,4 +80,6 @@ export class Rect extends Paint {
60
80
  }
61
81
  xProperty.register(Rect);
62
82
  yProperty.register(Rect);
83
+ widthProperty.register(Rect);
84
+ heightProperty.register(Rect);
63
85
  //# sourceMappingURL=Rect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Rect.js","sourceRoot":"","sources":["../../../../../packages/canvas/Dom/shapes/Rect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,QAAQ,EAA8B,MAAM,oBAAoB,CAAC;AAEzF,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,QAAQ,CAAe;IACnD,IAAI,EAAE,GAAG;IACT,cAAc,CAAC,KAAK;QACnB,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;CACD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,QAAQ,CAAe;IACnD,IAAI,EAAE,GAAG;IACT,cAAc,CAAC,KAAK;QACnB,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;CACD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,QAAQ,CAAe;IACvD,IAAI,EAAE,OAAO;IACb,cAAc,CAAC,KAAK;QACnB,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;CACD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,QAAQ,CAAe;IACxD,IAAI,EAAE,QAAQ;IACd,cAAc,CAAC,KAAK;QACnB,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;CACD,CAAC,CAAC;AAEH,MAAM,OAAO,IAAK,SAAQ,KAAK;IAA/B;;QAMC,cAAS,GAAY,EAAE,CAAC;IA+BzB,CAAC;IA7BA,IAAI;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAoC,CAAC;QACjF,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAEtD,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAChC,QAAQ,KAAK,CAAC,UAAU,EAAE;oBACzB,KAAK,MAAM;wBACV,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;wBACpC,OAAO,CAAC,IAAI,EAAE,CAAC;wBACf,MAAM;oBACP,KAAK,QAAQ;wBACZ,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;wBACtC,OAAO,CAAC,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC;wBACtC,OAAO,CAAC,MAAM,EAAE,CAAC;wBACjB,MAAM;iBACP;YACF,CAAC,CAAC,CAAC;SACH;aAAM;YACN,KAAK,CAAC,IAAI,EAAE,CAAC;SACb;IACF,CAAC;IAED,0BAA0B,CAAC,IAAc,EAAE,OAAgB;QAC1D,IAAI,IAAI,YAAY,KAAK,EAAE;YAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC1B;QACD,OAAO,KAAK,CAAC;IACd,CAAC;CACD;AAED,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACzB,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"Rect.js","sourceRoot":"","sources":["../../../../../packages/canvas/Dom/shapes/Rect.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { ViewBase } from '@nativescript/core';
2
2
  import { Paint } from '../Paint';
3
- export declare class RoundedRect extends Paint {
3
+ import { Rect } from './Rect';
4
+ export declare class RoundedRect extends Rect {
4
5
  x: number;
5
6
  y: number;
6
7
  width: number;
@@ -1,34 +1,43 @@
1
- import { Property, Screen } from '@nativescript/core';
1
+ import { Property } from '@nativescript/core';
2
2
  import { Paint } from '../Paint';
3
3
  import { Shadow } from '../Shadow';
4
+ import { Rect } from './Rect';
4
5
  const xProperty = new Property({
5
6
  name: 'x',
6
7
  valueConverter(value) {
7
8
  return parseFloat(value);
8
9
  },
10
+ valueChanged(target, oldValue, newValue) {
11
+ target.invalidate();
12
+ },
9
13
  });
10
14
  const yProperty = new Property({
11
15
  name: 'y',
12
16
  valueConverter(value) {
13
17
  return parseFloat(value);
14
18
  },
19
+ valueChanged(target, oldValue, newValue) {
20
+ target.invalidate();
21
+ },
15
22
  });
16
23
  const rProperty = new Property({
17
24
  name: 'r',
18
25
  valueConverter(value) {
19
26
  return parseFloat(value);
20
27
  },
28
+ valueChanged(target, oldValue, newValue) {
29
+ target.invalidate();
30
+ },
21
31
  });
22
- export class RoundedRect extends Paint {
32
+ export class RoundedRect extends Rect {
23
33
  constructor() {
24
34
  super(...arguments);
25
35
  this._children = [];
26
36
  }
27
37
  draw() {
28
- const scale = Screen.mainScreen.scale;
29
38
  const context = this._canvas.getContext('2d');
30
39
  const color = this._getColor();
31
- context.roundRect(this.x * scale, this.y * scale, this.width * scale, this.height * scale, this.r * scale);
40
+ context.roundRect(this.x, this.y, this.width, this.height, this.r);
32
41
  if (this._children.length > 0) {
33
42
  this._children.forEach((child) => {
34
43
  const child_color = child._getColor();
@@ -40,9 +49,9 @@ export class RoundedRect extends Paint {
40
49
  const dy = context.shadowOffsetY;
41
50
  const blur = context.shadowBlur;
42
51
  const shadowColor = context.shadowColor;
43
- context.shadowOffsetX = child.dx * scale;
44
- context.shadowOffsetY = child.dy * scale;
45
- context.shadowBlur = child.blur * scale;
52
+ context.shadowOffsetX = child.dx;
53
+ context.shadowOffsetY = child.dy;
54
+ context.shadowBlur = child.blur;
46
55
  context.shadowColor = child_color;
47
56
  context.fill();
48
57
  context.shadowOffsetX = dx;
@@ -56,15 +65,16 @@ export class RoundedRect extends Paint {
56
65
  break;
57
66
  case 'stroke':
58
67
  context.strokeStyle = color;
59
- context.lineWidth = child.strokeWidth;
68
+ context.lineWidth = child._getStrokeWidth();
69
+ context.lineJoin = child._getStrokeJoin();
60
70
  if (child instanceof Shadow) {
61
71
  const dx = context.shadowOffsetX;
62
72
  const dy = context.shadowOffsetY;
63
73
  const blur = context.shadowBlur;
64
74
  const shadowColor = context.shadowColor;
65
- context.shadowOffsetX = child.dx * scale;
66
- context.shadowOffsetY = child.dy * scale;
67
- context.shadowBlur = child.blur * scale;
75
+ context.shadowOffsetX = child.dx;
76
+ context.shadowOffsetY = child.dy;
77
+ context.shadowBlur = child.blur;
68
78
  context.shadowColor = child_color;
69
79
  context.stroke();
70
80
  context.shadowOffsetX = dx;
@@ -1 +1 @@
1
- {"version":3,"file":"RoundedRect.js","sourceRoot":"","sources":["../../../../../packages/canvas/Dom/shapes/RoundedRect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RoundedRect.js","sourceRoot":"","sources":["../../../../../packages/canvas/Dom/shapes/RoundedRect.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,23 @@
1
+ import { Paint } from '../Paint';
1
2
  export * from './Rect';
2
3
  export * from './Path';
3
4
  export * from './Circle';
4
5
  export * from './RoundedRect';
5
6
  export * from './Line';
6
7
  export * from './Points';
8
+ export * from './Oval';
9
+ export * from './Atlas';
10
+ export declare function vec(x: number, y: number): {
11
+ x: number;
12
+ y: number;
13
+ };
14
+ export declare function rect(x: number, y: number, width: number, height: number): {
15
+ x: number;
16
+ y: number;
17
+ width: number;
18
+ height: number;
19
+ };
20
+ export declare function drawAsImage(elements: Paint[], size?: {
21
+ width: number;
22
+ height: number;
23
+ }): any;
@@ -1,7 +1,38 @@
1
+ import { Canvas } from '../../Canvas';
1
2
  export * from './Rect';
2
3
  export * from './Path';
3
4
  export * from './Circle';
4
5
  export * from './RoundedRect';
5
6
  export * from './Line';
6
7
  export * from './Points';
8
+ export * from './Oval';
9
+ export * from './Atlas';
10
+ export function vec(x, y) {
11
+ return { x, y };
12
+ }
13
+ export function rect(x, y, width, height) {
14
+ return { x, y, width, height };
15
+ }
16
+ export function drawAsImage(elements, size = { width: 300, height: 150 }) {
17
+ const canvas = Canvas.createCustomView();
18
+ if (size.width !== 300 && size.height !== 150) {
19
+ canvas._isBatch = true;
20
+ canvas.width = size.width;
21
+ canvas.height = size.height;
22
+ canvas._isBatch = false;
23
+ canvas._layoutNative();
24
+ }
25
+ for (const element of elements) {
26
+ element._addCanvas(canvas);
27
+ element.draw();
28
+ }
29
+ // const asset = new ImageAsset() as any;
30
+ const snapshot = canvas.snapshot();
31
+ // if (global.isAndroid) {
32
+ // const value = new java.lang.Long(asset.native.__addr);
33
+ // console.log(value);
34
+ // (org as any).nativescript.canvas.NSCImageAsset.loadImageFromBitmap(new java.lang.Long(asset.native.__addr), snapshot.android);
35
+ // }
36
+ return snapshot;
37
+ }
7
38
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/canvas/Dom/shapes/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/canvas/Dom/shapes/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AAExB,MAAM,UAAU,GAAG,CAAC,CAAS,EAAE,CAAS;IACvC,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,IAAI,CAAC,CAAS,EAAE,CAAS,EAAE,KAAa,EAAE,MAAc;IACvE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,QAAiB,EAAE,OAA0C,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;IACnH,MAAM,MAAM,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAC;IAEzC,IAAI,IAAI,CAAC,KAAK,KAAK,GAAG,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE;QAC7C,MAAc,CAAC,QAAQ,GAAG,IAAI,CAAC;QAChC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAc,CAAC,QAAQ,GAAG,KAAK,CAAC;QAChC,MAAc,CAAC,aAAa,EAAE,CAAC;KAChC;IAED,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;QAC/B,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,CAAC,IAAI,EAAE,CAAC;KACf;IACD,yCAAyC;IAEzC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAEnC,0BAA0B;IAC1B,0DAA0D;IAC1D,uBAAuB;IACvB,kIAAkI;IAClI,IAAI;IAEJ,OAAO,QAAQ,CAAC;AACjB,CAAC"}
package/SVG/SVG.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { View, Style, CssProperty } from '@nativescript/core';
1
+ import { View, Style, CssProperty, Property } from '@nativescript/core';
2
2
  export declare const strokeProperty: CssProperty<Style, any>;
3
3
  export declare const strokeWidthProperty: CssProperty<Style, number>;
4
4
  export declare const fillProperty: CssProperty<Style, any>;
@@ -9,6 +9,7 @@ export declare const strokeLinecapProperty: CssProperty<Style, any>;
9
9
  export declare const strokeLinejoinProperty: CssProperty<Style, any>;
10
10
  export declare const strokeMiterlimitProperty: CssProperty<Style, any>;
11
11
  export declare const srcProperty: any;
12
+ export declare const syncProperty: Property<Svg, boolean>;
12
13
  import { SVGItem } from './SVGItem';
13
14
  export declare class Svg extends View {
14
15
  static readyEvent: string;
package/SVG/SVG.js CHANGED
@@ -7,7 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
- import { Http, View, Style, CssProperty, Property, path, knownFolders, CSSType, Application, Utils } from '@nativescript/core';
10
+ import { Http, View, Style, CssProperty, Property, path, knownFolders, CSSType, Application, Utils, booleanConverter } from '@nativescript/core';
11
11
  export const strokeProperty = new CssProperty({
12
12
  name: 'stroke',
13
13
  cssName: 'stroke',
@@ -53,6 +53,11 @@ export const strokeMiterlimitProperty = new CssProperty({
53
53
  export const srcProperty = new Property({
54
54
  name: 'src',
55
55
  });
56
+ export const syncProperty = new Property({
57
+ name: 'sync',
58
+ defaultValue: false,
59
+ valueConverter: booleanConverter,
60
+ });
56
61
  import { DOMParser, XMLSerializer } from 'xmldom';
57
62
  const initialSVG = '<svg width="auto" height="auto" xmlns="http://www.w3.org/2000/svg"></svg>';
58
63
  let Svg = class Svg extends View {
@@ -115,6 +120,14 @@ let Svg = class Svg extends View {
115
120
  }
116
121
  }
117
122
  }
123
+ [syncProperty.setNative](value) {
124
+ if (global.isAndroid) {
125
+ this._svg.setSync(value);
126
+ }
127
+ else if (global.isIOS) {
128
+ this._svg.sync = value;
129
+ }
130
+ }
118
131
  onLayout(left, top, right, bottom) {
119
132
  super.onLayout(left, top, right, bottom);
120
133
  this.__redraw();
@@ -177,6 +190,7 @@ Svg = __decorate([
177
190
  __metadata("design:paramtypes", [])
178
191
  ], Svg);
179
192
  export { Svg };
193
+ syncProperty.register(Svg);
180
194
  srcProperty.register(Svg);
181
195
  stopColorProperty.register(Style);
182
196
  strokeWidthProperty.register(Style);
package/SVG/SVG.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"SVG.js","sourceRoot":"","sources":["../../../../packages/canvas/SVG/SVG.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SVG.js","sourceRoot":"","sources":["../../../../packages/canvas/SVG/SVG.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAA8B,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE7K,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,WAAW,CAAa;IACzD,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,QAAQ;IACjB,YAAY,EAAE,SAAS;CACvB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,WAAW,CAAgB;IACjE,IAAI,EAAE,aAAa;IACnB,OAAO,EAAE,cAAc;IACvB,YAAY,EAAE,CAAC;CACf,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,WAAW,CAAa;IACvD,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,MAAM;IACf,YAAY,EAAE,SAAS;CACvB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,WAAW,CAAa;IAC3D,IAAI,EAAE,UAAU;IAChB,OAAO,EAAE,WAAW;IACpB,YAAY,EAAE,SAAS;CACvB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,WAAW,CAAa;IAC9D,IAAI,EAAE,aAAa;IACnB,OAAO,EAAE,cAAc;IACvB,YAAY,EAAE,SAAS;CACvB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,WAAW,CAAa;IAC5D,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,YAAY;IACrB,YAAY,EAAE,SAAS;CACvB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,WAAW,CAAa;IAChE,IAAI,EAAE,eAAe;IACrB,OAAO,EAAE,gBAAgB;CACzB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,WAAW,CAAa;IACjE,IAAI,EAAE,gBAAgB;IACtB,OAAO,EAAE,iBAAiB;CAC1B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,WAAW,CAAa;IACnE,IAAI,EAAE,kBAAkB;IACxB,OAAO,EAAE,mBAAmB;CAC5B,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,QAAQ,CAAc;IACpD,IAAI,EAAE,KAAK;CACX,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,QAAQ,CAAe;IACtD,IAAI,EAAE,MAAM;IACZ,YAAY,EAAE,KAAK;IACnB,cAAc,EAAE,gBAAgB;CAChC,CAAC,CAAC;AAIH,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAClD,MAAM,UAAU,GAAG,2EAA2E,CAAC;AAExF,IAAM,GAAG,GAAT,MAAM,GAAI,SAAQ,IAAI;IAQ5B;QACC,KAAK,EAAE,CAAC;QAHT,eAAU,GAAG,EAAE,CAAC;QAChB,oBAAe,GAAG,KAAK,CAAC;QAGvB,IAAI,MAAM,CAAC,SAAS,EAAE;YACrB,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,kBAAkB,IAAI,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC;YAC7F,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;SACzD;aAAM,IAAI,MAAM,CAAC,KAAK,EAAE;YACxB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YACrD,IAAI,CAAC,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC;SAC/C;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,SAAS,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QACxD,IAAI,CAAC,WAAW,GAAG,IAAI,aAAa,EAAE,CAAC;IACxC,CAAC;IAED,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,KAAa;QACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE;gBAC/B,IAAI,MAAM,CAAC,SAAS,EAAE;oBACrB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;iBACxB;qBAAM,IAAI,MAAM,CAAC,KAAK,EAAE;oBACxB,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC;iBACtB;aACD;iBAAM;gBACN,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;oBAC1B,IAAI,MAAM,CAAC,SAAS,EAAE;wBACrB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;qBACxF;yBAAM,IAAI,MAAM,CAAC,KAAK,EAAE;wBACxB,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;qBACtF;iBACD;qBAAM,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;oBACjC,IAAI,MAAM,CAAC,SAAS,EAAE;wBACrB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;qBAC5B;yBAAM,IAAI,MAAM,CAAC,KAAK,EAAE;wBACxB,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;qBAC1B;iBACD;qBAAM,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;oBACpC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;yBACnB,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;wBACb,IAAI,MAAM,CAAC,SAAS,EAAE;4BACrB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;yBACtB;6BAAM,IAAI,MAAM,CAAC,KAAK,EAAE;4BACxB,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;yBACpB;oBACF,CAAC,CAAC;yBACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;wBACZ,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBAChB,CAAC,CAAC,CAAC;iBACJ;aACD;SACD;IACF,CAAC;IAED,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,KAAc;QACtC,IAAI,MAAM,CAAC,SAAS,EAAE;YACrB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SACzB;aAAM,IAAI,MAAM,CAAC,KAAK,EAAE;YACxB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;SACvB;IACF,CAAC;IACM,QAAQ,CAAC,IAAY,EAAE,GAAW,EAAE,KAAa,EAAE,MAAc;QACvE,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,QAAQ,EAAE,CAAC;IACjB,CAAC;IAEM,SAAS,CAAC,gBAAwB,EAAE,iBAAyB;QACnE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,IAAI,UAAU,EAAE;YACf,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;YAChE,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;YAClE,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;SACzC;IACF,CAAC;IAED,QAAQ;QACP,IAAI,IAAI,CAAC,eAAe,EAAE;YACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACpC,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAC/D,MAAM,KAAK,GAAG,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC9D,IAAI,KAAK,KAAK,MAAM,EAAE;gBACrB,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;aAC9E;YACD,IAAI,MAAM,KAAK,MAAM,EAAE;gBACtB,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;aAChF;YACD,IAAI,UAAU,KAAK,UAAU,EAAE;gBAC9B,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC;aACtB;SACD;IACF,CAAC;IAED,QAAQ;QACP,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;IAC7B,CAAC;IAED,UAAU;QACT,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,KAAK,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED,gBAAgB;QACf,OAAO,IAAI,CAAC,IAAI,CAAC;IAClB,CAAC;IAED,cAAc;QACb,KAAK,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,QAAQ,CAAC,IAAa;QACrB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,WAAW,CAAC,IAAa;QACxB,IAAI,IAAI,CAAC,UAAU,EAAE;YACpB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACvB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;SAClE;IACF,CAAC;;AA/Ha,cAAU,GAAG,OAAO,CAAC;AADvB,GAAG;IADf,OAAO,CAAC,KAAK,CAAC;;GACF,GAAG,CAiIf;SAjIY,GAAG;AAmIhB,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC3B,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC1B,iBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAClC,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACpC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC/B,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAC7B,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACpC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACjC,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACtC,sBAAsB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACvC,wBAAwB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC"}
@@ -23,6 +23,13 @@ import { ImageAsset } from '../../ImageAsset';
23
23
  import { Canvas } from '../../Canvas';
24
24
  import { ImageBitmap } from '../../ImageBitmap';
25
25
  import { Helpers } from '../../helpers';
26
+ var ContextType;
27
+ (function (ContextType) {
28
+ ContextType[ContextType["None"] = 0] = "None";
29
+ ContextType[ContextType["Canvas"] = 1] = "Canvas";
30
+ ContextType[ContextType["WebGL"] = 2] = "WebGL";
31
+ ContextType[ContextType["WebGL2"] = 3] = "WebGL2";
32
+ })(ContextType || (ContextType = {}));
26
33
  let ctor;
27
34
  export class WebGLRenderingContextBase extends WebGLRenderingCommon {
28
35
  constructor(context, contextOptions) {
@@ -593,6 +600,21 @@ export class WebGLRenderingContextBase extends WebGLRenderingCommon {
593
600
  }
594
601
  else if (border instanceof Canvas) {
595
602
  this.native.texImage2D(target, level, internalformat, width, height, border.native);
603
+ if (global.isAndroid) {
604
+ this.native.texImage2D(target, level, internalformat, width, height, border.native);
605
+ }
606
+ else {
607
+ if (border._contextType === ContextType.Canvas) {
608
+ if (!border._renderer) {
609
+ border._renderer = Utils.setupRender();
610
+ border._renderer.createSurface();
611
+ }
612
+ border._renderer.texImage2D(target, level, internalformat, width, height, border._canvas, this.canvas._canvas, this.native.__flipY);
613
+ }
614
+ else {
615
+ this.native.texImage2D(target, level, internalformat, width, height, border.native);
616
+ }
617
+ }
596
618
  }
597
619
  else if (global.isAndroid && border instanceof android.graphics.Bitmap) {
598
620
  // todo ios
@@ -621,7 +643,21 @@ export class WebGLRenderingContextBase extends WebGLRenderingCommon {
621
643
  }
622
644
  }
623
645
  else if (border && typeof border.tagName === 'string' && border.tagName === 'CANVAS' && border._canvas instanceof Canvas) {
624
- this.native.texImage2D(target, level, internalformat, width, height, border._canvas.native);
646
+ if (global.isAndroid) {
647
+ this.native.texImage2D(target, level, internalformat, width, height, border._canvas.native);
648
+ }
649
+ else {
650
+ if (border._canvas._contextType === ContextType.Canvas) {
651
+ if (!border._canvas._renderer) {
652
+ border._canvas._renderer = Utils.setupRender();
653
+ border._canvas._renderer.createSurface();
654
+ }
655
+ border._canvas._renderer.texImage2D(target, level, internalformat, width, height, border._canvas._canvas, this.canvas._canvas, this.native.__flipY);
656
+ }
657
+ else {
658
+ this.native.texImage2D(target, level, internalformat, width, height, border._canvas.native);
659
+ }
660
+ }
625
661
  }
626
662
  }
627
663
  }