@nativescript/canvas 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 (542) hide show
  1. package/Canvas/common.d.ts +213 -25
  2. package/Canvas/common.js +702 -452
  3. package/Canvas/common.js.map +1 -1
  4. package/Canvas/index.android.d.ts +12 -1
  5. package/Canvas/index.android.js +162 -49
  6. package/Canvas/index.android.js.map +1 -1
  7. package/Canvas/index.d.ts +13 -0
  8. package/Canvas/index.ios.d.ts +9 -4
  9. package/Canvas/index.ios.js +166 -103
  10. package/Canvas/index.ios.js.map +1 -1
  11. package/Canvas2D/CanvasGradient/index.d.ts +1 -3
  12. package/Canvas2D/CanvasGradient/index.js +1 -10
  13. package/Canvas2D/CanvasGradient/index.js.map +1 -1
  14. package/Canvas2D/CanvasPattern/index.d.ts +1 -3
  15. package/Canvas2D/CanvasPattern/index.js +1 -10
  16. package/Canvas2D/CanvasPattern/index.js.map +1 -1
  17. package/Canvas2D/CanvasRenderingContext2D/index.d.ts +7 -3
  18. package/Canvas2D/CanvasRenderingContext2D/index.js +132 -233
  19. package/Canvas2D/CanvasRenderingContext2D/index.js.map +1 -1
  20. package/Canvas2D/DOMMatrix/index.js +3 -3
  21. package/Canvas2D/DOMMatrix/index.js.map +1 -1
  22. package/Canvas2D/ImageData/index.js +6 -6
  23. package/Canvas2D/ImageData/index.js.map +1 -1
  24. package/Canvas2D/Path2D/index.d.ts +0 -2
  25. package/Canvas2D/Path2D/index.js +32 -42
  26. package/Canvas2D/Path2D/index.js.map +1 -1
  27. package/Dom/Paint.js +2 -3
  28. package/Dom/Paint.js.map +1 -1
  29. package/Dom/shapes/Circle.js +1 -2
  30. package/Dom/shapes/Circle.js.map +1 -1
  31. package/Dom/shapes/Points.js +1 -2
  32. package/Dom/shapes/Points.js.map +1 -1
  33. package/ImageAsset/index.d.ts +2 -2
  34. package/ImageAsset/index.js +33 -37
  35. package/ImageAsset/index.js.map +1 -1
  36. package/ImageBitmap/index.d.ts +0 -2
  37. package/ImageBitmap/index.js +47 -33
  38. package/ImageBitmap/index.js.map +1 -1
  39. package/LICENSE +201 -0
  40. package/SVG/SVG.js +1 -1
  41. package/SVG/SVG.js.map +1 -1
  42. package/TextDecoder/index.d.ts +0 -2
  43. package/TextDecoder/index.js +3 -12
  44. package/TextDecoder/index.js.map +1 -1
  45. package/TextEncoder/index.d.ts +0 -2
  46. package/TextEncoder/index.js +4 -13
  47. package/TextEncoder/index.js.map +1 -1
  48. package/WebGL/WebGLExtensions/index.d.ts +4 -12
  49. package/WebGL/WebGLExtensions/index.js +27 -77
  50. package/WebGL/WebGLExtensions/index.js.map +1 -1
  51. package/WebGL/WebGLProgram.d.ts +0 -1
  52. package/WebGL/WebGLProgram.js +0 -3
  53. package/WebGL/WebGLProgram.js.map +1 -1
  54. package/WebGL/WebGLRenderingContext/common.d.ts +1 -3
  55. package/WebGL/WebGLRenderingContext/common.js +3 -13
  56. package/WebGL/WebGLRenderingContext/common.js.map +1 -1
  57. package/WebGL/WebGLRenderingContext/index.d.ts +19 -17
  58. package/WebGL/WebGLRenderingContext/index.js +354 -728
  59. package/WebGL/WebGLRenderingContext/index.js.map +1 -1
  60. package/WebGL2/WebGL2RenderingContext/common.d.ts +2 -2
  61. package/WebGL2/WebGL2RenderingContext/common.js +2 -2
  62. package/WebGL2/WebGL2RenderingContext/common.js.map +1 -1
  63. package/WebGL2/WebGL2RenderingContext/index.d.ts +1 -1
  64. package/WebGL2/WebGL2RenderingContext/index.js +116 -285
  65. package/WebGL2/WebGL2RenderingContext/index.js.map +1 -1
  66. package/angular/esm2020/index.mjs +4 -4
  67. package/angular/fesm2015/nativescript-canvas-angular.mjs +4 -4
  68. package/angular/fesm2020/nativescript-canvas-angular.mjs +4 -4
  69. package/angular/package.json +2 -2
  70. package/index.js.map +1 -1
  71. package/package.json +3 -2
  72. package/platforms/android/canvas-release.aar +0 -0
  73. package/platforms/android/include.gradle +15 -0
  74. package/platforms/ios/CanvasNative.xcframework/Info.plist +5 -5
  75. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/CanvasNative +0 -0
  76. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/CanvasNative-Swift.h +135 -68
  77. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/CanvasNative.h +10 -0
  78. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_ios.h +144 -0
  79. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_native.h +2774 -70
  80. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Info.plist +0 -0
  81. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  82. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.abi.json +5851 -2555
  83. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.private.swiftinterface +44 -24
  84. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  85. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftinterface +44 -24
  86. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  87. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/CanvasNative +0 -0
  88. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/CanvasNative-Swift.h +270 -136
  89. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/CanvasNative.h +10 -0
  90. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_ios.h +144 -0
  91. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_native.h +2774 -70
  92. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Info.plist +0 -0
  93. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
  94. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
  95. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.abi.json +5851 -2555
  96. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +44 -24
  97. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  98. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftinterface +44 -24
  99. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.abi.json +5851 -2555
  100. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +44 -24
  101. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  102. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +44 -24
  103. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/_CodeSignature/CodeResources +42 -31
  104. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  105. package/platforms/ios/Podfile +5 -2
  106. package/platforms/ios/build.xcconfig +3 -3
  107. package/platforms/ios/src/CanvasModule.h +0 -2
  108. package/platforms/ios/src/CanvasModule.mm +4 -4
  109. package/platforms/ios/src/NSOperationQueueWrapper.h +11 -0
  110. package/platforms/ios/src/NSOperationQueueWrapper.mm +74 -0
  111. package/platforms/ios/src/cpp/Caches.cpp +35 -0
  112. package/platforms/ios/src/cpp/Caches.h +190 -0
  113. package/platforms/ios/src/cpp/CanvasJSIModule.cpp +1593 -0
  114. package/platforms/ios/src/cpp/CanvasJSIModule.h +16 -34
  115. package/platforms/ios/src/cpp/Common.h +30 -0
  116. package/platforms/ios/src/cpp/ConcurrentMap.h +54 -0
  117. package/platforms/ios/src/cpp/Helpers.h +336 -38
  118. package/platforms/ios/src/cpp/ImageAssetImpl.cpp +802 -0
  119. package/platforms/ios/src/cpp/ImageAssetImpl.h +46 -12
  120. package/platforms/ios/src/cpp/ImageBitmapImpl.cpp +189 -0
  121. package/platforms/ios/src/cpp/ImageBitmapImpl.h +42 -16
  122. package/platforms/ios/src/cpp/JSICallback.h +83 -5
  123. package/platforms/ios/src/cpp/JSIReadFileCallback.h +86 -6
  124. package/platforms/ios/src/cpp/JSIRuntime.cpp +21 -0
  125. package/platforms/ios/src/cpp/JSIRuntime.h +7 -0
  126. package/platforms/ios/src/cpp/ObjectWrapperImpl.h +31 -0
  127. package/platforms/ios/src/cpp/OneByteStringResource.cpp +55 -0
  128. package/platforms/ios/src/cpp/OneByteStringResource.h +36 -0
  129. package/platforms/ios/src/cpp/PerIsolateData.cpp +49 -0
  130. package/platforms/ios/src/cpp/PerIsolateData.h +54 -0
  131. package/platforms/ios/src/cpp/RafImpl.cpp +8 -0
  132. package/platforms/ios/src/cpp/RafImpl.h +11 -8
  133. package/platforms/ios/src/cpp/TextDecoderImpl.cpp +193 -0
  134. package/platforms/ios/src/cpp/TextDecoderImpl.h +23 -13
  135. package/platforms/ios/src/cpp/TextEncoderImpl.cpp +139 -0
  136. package/platforms/ios/src/cpp/TextEncoderImpl.h +21 -12
  137. package/platforms/ios/src/cpp/URLImpl.cpp +464 -0
  138. package/platforms/ios/src/cpp/URLImpl.h +121 -0
  139. package/platforms/ios/src/cpp/canvas2d/CanvasGradient.cpp +71 -0
  140. package/platforms/ios/src/cpp/canvas2d/CanvasGradient.h +29 -13
  141. package/platforms/ios/src/cpp/canvas2d/CanvasPattern.cpp +89 -0
  142. package/platforms/ios/src/cpp/canvas2d/CanvasPattern.h +49 -12
  143. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.cpp +2841 -0
  144. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.h +1331 -21
  145. package/platforms/ios/src/cpp/canvas2d/ImageDataImpl.cpp +207 -0
  146. package/platforms/ios/src/cpp/canvas2d/ImageDataImpl.h +27 -13
  147. package/platforms/ios/src/cpp/canvas2d/MatrixImpl.cpp +807 -0
  148. package/platforms/ios/src/cpp/canvas2d/MatrixImpl.h +173 -13
  149. package/platforms/ios/src/cpp/canvas2d/Path2D.cpp +499 -0
  150. package/platforms/ios/src/cpp/canvas2d/Path2D.h +422 -12
  151. package/platforms/ios/src/cpp/canvas2d/TextMetricsImpl.cpp +253 -0
  152. package/platforms/ios/src/cpp/canvas2d/TextMetricsImpl.h +51 -12
  153. package/platforms/ios/src/cpp/gl.h +57 -7
  154. package/platforms/ios/src/cpp/gl3stub.c +425 -0
  155. package/platforms/ios/src/cpp/gl3stub.h +665 -0
  156. package/platforms/ios/src/cpp/gles3jni.h +37 -0
  157. package/platforms/ios/src/cpp/include/robin_hood.h +2544 -0
  158. package/platforms/ios/src/cpp/webgl/WebGLActiveInfoImpl.cpp +91 -0
  159. package/platforms/ios/src/cpp/webgl/WebGLActiveInfoImpl.h +33 -13
  160. package/platforms/ios/src/cpp/webgl/WebGLBuffer.h +42 -7
  161. package/platforms/ios/src/cpp/webgl/WebGLFramebuffer.h +47 -11
  162. package/platforms/ios/src/cpp/webgl/WebGLProgram.h +41 -6
  163. package/platforms/ios/src/cpp/webgl/WebGLRenderbuffer.h +41 -7
  164. package/platforms/ios/src/cpp/webgl/WebGLRenderingContext.cpp +6845 -0
  165. package/platforms/ios/src/cpp/webgl/WebGLRenderingContext.h +3217 -388
  166. package/platforms/ios/src/cpp/webgl/{WebGLRenderingContextBase.mm → WebGLRenderingContextBase.cpp} +18 -17
  167. package/platforms/ios/src/cpp/webgl/WebGLRenderingContextBase.h +16 -36
  168. package/platforms/ios/src/cpp/webgl/WebGLShader.h +41 -7
  169. package/platforms/ios/src/cpp/webgl/WebGLShaderPrecisionFormatImpl.cpp +50 -0
  170. package/platforms/ios/src/cpp/webgl/WebGLShaderPrecisionFormatImpl.h +67 -12
  171. package/platforms/ios/src/cpp/webgl/WebGLTexture.h +41 -7
  172. package/platforms/ios/src/cpp/webgl/WebGLUniformLocation.h +45 -9
  173. package/platforms/ios/src/cpp/webgl/extensions/ANGLE_instanced_arraysImpl.cpp +126 -0
  174. package/platforms/ios/src/cpp/webgl/extensions/ANGLE_instanced_arraysImpl.h +26 -12
  175. package/platforms/ios/src/cpp/webgl/extensions/EXT_blend_minmaxImpl.cpp +35 -0
  176. package/platforms/ios/src/cpp/webgl/extensions/EXT_blend_minmaxImpl.h +26 -6
  177. package/platforms/ios/src/cpp/webgl/extensions/EXT_color_buffer_half_floatImpl.cpp +41 -0
  178. package/platforms/ios/src/cpp/webgl/extensions/EXT_color_buffer_half_floatImpl.h +26 -6
  179. package/platforms/ios/src/cpp/webgl/extensions/EXT_disjoint_timer_queryImpl.cpp +306 -0
  180. package/platforms/ios/src/cpp/webgl/extensions/EXT_disjoint_timer_queryImpl.h +47 -13
  181. package/platforms/ios/src/cpp/webgl/extensions/EXT_sRGBImpl.h +49 -6
  182. package/platforms/ios/src/cpp/webgl/extensions/EXT_shader_texture_lodImpl.h +37 -15
  183. package/platforms/ios/src/cpp/webgl/extensions/EXT_texture_filter_anisotropicImpl.h +47 -6
  184. package/platforms/ios/src/cpp/webgl/extensions/OES_element_index_uintImpl.h +49 -6
  185. package/platforms/ios/src/cpp/webgl/extensions/OES_fbo_render_mipmap.h +41 -16
  186. package/platforms/ios/src/cpp/webgl/extensions/OES_standard_derivativesImpl.h +44 -6
  187. package/platforms/ios/src/cpp/webgl/extensions/OES_texture_floatImpl.h +39 -16
  188. package/platforms/ios/src/cpp/webgl/extensions/OES_texture_float_linearImpl.h +37 -16
  189. package/platforms/ios/src/cpp/webgl/extensions/OES_texture_half_floatImpl.h +42 -6
  190. package/platforms/ios/src/cpp/webgl/extensions/OES_texture_half_float_linearImpl.h +40 -16
  191. package/platforms/ios/src/cpp/webgl/extensions/OES_vertex_array_objectImpl.cpp +102 -0
  192. package/platforms/ios/src/cpp/webgl/extensions/OES_vertex_array_objectImpl.h +69 -14
  193. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_color_buffer_floatImpl.h +51 -8
  194. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_atcImpl.h +49 -6
  195. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_etc1Impl.h +49 -8
  196. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_etcImpl.h +76 -6
  197. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_pvrtcImpl.h +57 -6
  198. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_s3tcImpl.h +53 -6
  199. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_s3tc_srgbImpl.h +59 -6
  200. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_depth_textureImpl.h +46 -6
  201. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_draw_buffersImpl.cpp +35 -0
  202. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_draw_buffersImpl.h +131 -14
  203. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_lose_contextImpl.cpp +32 -0
  204. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_lose_contextImpl.h +61 -13
  205. package/platforms/ios/src/cpp/webgl2/WebGL2RenderingContext.cpp +4533 -0
  206. package/platforms/ios/src/cpp/webgl2/WebGL2RenderingContext.h +1427 -342
  207. package/platforms/ios/src/cpp/webgl2/WebGLQuery.h +41 -4
  208. package/platforms/ios/src/cpp/webgl2/WebGLSampler.h +42 -3
  209. package/platforms/ios/src/cpp/webgl2/WebGLSyncImpl.h +45 -11
  210. package/platforms/ios/src/cpp/webgl2/WebGLTransformFeedback.h +43 -4
  211. package/platforms/ios/src/cpp/webgl2/WebGLVertexArrayObject.h +44 -4
  212. package/platforms/ios/src/module.modulemap +1 -0
  213. package/{pods → src-native/ios}/NativeScript.podspec +12 -25
  214. package/typings/objc!CanvasNative.d.ts +2038 -0
  215. package/typings/objc!CanvasNative.js +1 -0
  216. package/typings/objc!CanvasNative.js.map +1 -0
  217. package/utils.d.ts +3 -1
  218. package/utils.js +7 -20
  219. package/utils.js.map +1 -1
  220. package/angular/nativescript-canvas-angular.d.ts +0 -5
  221. package/platforms/ios/src/cpp/CanvasJSIModule.mm +0 -1105
  222. package/platforms/ios/src/cpp/ImageAssetImpl.mm +0 -417
  223. package/platforms/ios/src/cpp/ImageBitmapImpl.mm +0 -126
  224. package/platforms/ios/src/cpp/RafImpl.mm +0 -10
  225. package/platforms/ios/src/cpp/TextDecoderImpl.mm +0 -97
  226. package/platforms/ios/src/cpp/TextEncoderImpl.mm +0 -60
  227. package/platforms/ios/src/cpp/VecMutableBuffer.h +0 -46
  228. package/platforms/ios/src/cpp/canvas-cxx/src/lib.rs.cc +0 -6132
  229. package/platforms/ios/src/cpp/canvas-cxx/src/lib.rs.h +0 -2859
  230. package/platforms/ios/src/cpp/canvas2d/CanvasGradient.mm +0 -42
  231. package/platforms/ios/src/cpp/canvas2d/CanvasPattern.mm +0 -49
  232. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.mm +0 -1975
  233. package/platforms/ios/src/cpp/canvas2d/ImageDataImpl.mm +0 -68
  234. package/platforms/ios/src/cpp/canvas2d/MatrixImpl.mm +0 -149
  235. package/platforms/ios/src/cpp/canvas2d/Path2D.mm +0 -335
  236. package/platforms/ios/src/cpp/canvas2d/TextMetricsImpl.mm +0 -68
  237. package/platforms/ios/src/cpp/rust/cxx.cc +0 -793
  238. package/platforms/ios/src/cpp/rust/cxx.h +0 -1111
  239. package/platforms/ios/src/cpp/webgl/WebGLActiveInfoImpl.mm +0 -39
  240. package/platforms/ios/src/cpp/webgl/WebGLRenderingContext.mm +0 -5958
  241. package/platforms/ios/src/cpp/webgl/WebGLShaderPrecisionFormatImpl.mm +0 -40
  242. package/platforms/ios/src/cpp/webgl/extensions/ANGLE_instanced_arraysImpl.mm +0 -108
  243. package/platforms/ios/src/cpp/webgl/extensions/EXT_blend_minmaxImpl.mm +0 -28
  244. package/platforms/ios/src/cpp/webgl/extensions/EXT_color_buffer_half_floatImpl.mm +0 -42
  245. package/platforms/ios/src/cpp/webgl/extensions/EXT_disjoint_timer_queryImpl.mm +0 -295
  246. package/platforms/ios/src/cpp/webgl/extensions/EXT_sRGBImpl.mm +0 -40
  247. package/platforms/ios/src/cpp/webgl/extensions/EXT_texture_filter_anisotropicImpl.mm +0 -37
  248. package/platforms/ios/src/cpp/webgl/extensions/OES_element_index_uintImpl.mm +0 -28
  249. package/platforms/ios/src/cpp/webgl/extensions/OES_standard_derivativesImpl.mm +0 -31
  250. package/platforms/ios/src/cpp/webgl/extensions/OES_texture_half_floatImpl.mm +0 -28
  251. package/platforms/ios/src/cpp/webgl/extensions/OES_vertex_array_objectImpl.mm +0 -127
  252. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_color_buffer_floatImpl.mm +0 -45
  253. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_atcImpl.mm +0 -45
  254. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_etc1Impl.mm +0 -31
  255. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_etcImpl.mm +0 -70
  256. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_pvrtcImpl.mm +0 -47
  257. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_s3tcImpl.mm +0 -46
  258. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_s3tc_srgbImpl.mm +0 -49
  259. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_depth_textureImpl.mm +0 -30
  260. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_draw_buffersImpl.mm +0 -177
  261. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_lose_contextImpl.mm +0 -64
  262. package/platforms/ios/src/cpp/webgl2/WebGL2RenderingContext.mm +0 -4556
  263. package/pods/Headers/jsi/decorator.h +0 -770
  264. package/pods/Headers/jsi/instrumentation.h +0 -117
  265. package/pods/Headers/jsi/jsi-inl.h +0 -338
  266. package/pods/Headers/jsi/jsi.h +0 -1571
  267. package/pods/Headers/jsi/jsilib.h +0 -59
  268. package/pods/Headers/jsi/threadsafe.h +0 -79
  269. package/pods/Headers/v8runtime/HostProxy.h +0 -71
  270. package/pods/Headers/v8runtime/JSIV8ValueConverter.h +0 -74
  271. package/pods/Headers/v8runtime/V8PointerValue.h +0 -44
  272. package/pods/Headers/v8runtime/V8Runtime.h +0 -240
  273. package/pods/Headers/v8runtime/V8RuntimeConfig.h +0 -26
  274. package/pods/Headers/v8runtime/V8RuntimeFactory.h +0 -21
  275. /package/platforms/ios/src/cpp/{OnRafCallback.mm → OnRafCallback.cpp} +0 -0
  276. /package/{pods → src-native/ios}/Headers/include/APIDesign.md +0 -0
  277. /package/{pods → src-native/ios}/Headers/include/DEPS +0 -0
  278. /package/{pods → src-native/ios}/Headers/include/DIR_METADATA +0 -0
  279. /package/{pods → src-native/ios}/Headers/include/OWNERS +0 -0
  280. /package/{pods → src-native/ios}/Headers/include/cppgc/DEPS +0 -0
  281. /package/{pods → src-native/ios}/Headers/include/cppgc/OWNERS +0 -0
  282. /package/{pods → src-native/ios}/Headers/include/cppgc/README.md +0 -0
  283. /package/{pods → src-native/ios}/Headers/include/cppgc/allocation.h +0 -0
  284. /package/{pods → src-native/ios}/Headers/include/cppgc/common.h +0 -0
  285. /package/{pods → src-native/ios}/Headers/include/cppgc/cross-thread-persistent.h +0 -0
  286. /package/{pods → src-native/ios}/Headers/include/cppgc/custom-space.h +0 -0
  287. /package/{pods → src-native/ios}/Headers/include/cppgc/default-platform.h +0 -0
  288. /package/{pods → src-native/ios}/Headers/include/cppgc/ephemeron-pair.h +0 -0
  289. /package/{pods → src-native/ios}/Headers/include/cppgc/explicit-management.h +0 -0
  290. /package/{pods → src-native/ios}/Headers/include/cppgc/garbage-collected.h +0 -0
  291. /package/{pods → src-native/ios}/Headers/include/cppgc/heap-consistency.h +0 -0
  292. /package/{pods → src-native/ios}/Headers/include/cppgc/heap-state.h +0 -0
  293. /package/{pods → src-native/ios}/Headers/include/cppgc/heap-statistics.h +0 -0
  294. /package/{pods → src-native/ios}/Headers/include/cppgc/heap.h +0 -0
  295. /package/{pods → src-native/ios}/Headers/include/cppgc/internal/api-constants.h +0 -0
  296. /package/{pods → src-native/ios}/Headers/include/cppgc/internal/atomic-entry-flag.h +0 -0
  297. /package/{pods → src-native/ios}/Headers/include/cppgc/internal/caged-heap-local-data.h +0 -0
  298. /package/{pods → src-native/ios}/Headers/include/cppgc/internal/compiler-specific.h +0 -0
  299. /package/{pods → src-native/ios}/Headers/include/cppgc/internal/finalizer-trait.h +0 -0
  300. /package/{pods → src-native/ios}/Headers/include/cppgc/internal/gc-info.h +0 -0
  301. /package/{pods → src-native/ios}/Headers/include/cppgc/internal/logging.h +0 -0
  302. /package/{pods → src-native/ios}/Headers/include/cppgc/internal/name-trait.h +0 -0
  303. /package/{pods → src-native/ios}/Headers/include/cppgc/internal/persistent-node.h +0 -0
  304. /package/{pods → src-native/ios}/Headers/include/cppgc/internal/pointer-policies.h +0 -0
  305. /package/{pods → src-native/ios}/Headers/include/cppgc/internal/write-barrier.h +0 -0
  306. /package/{pods → src-native/ios}/Headers/include/cppgc/liveness-broker.h +0 -0
  307. /package/{pods → src-native/ios}/Headers/include/cppgc/macros.h +0 -0
  308. /package/{pods → src-native/ios}/Headers/include/cppgc/member.h +0 -0
  309. /package/{pods → src-native/ios}/Headers/include/cppgc/name-provider.h +0 -0
  310. /package/{pods → src-native/ios}/Headers/include/cppgc/object-size-trait.h +0 -0
  311. /package/{pods → src-native/ios}/Headers/include/cppgc/persistent.h +0 -0
  312. /package/{pods → src-native/ios}/Headers/include/cppgc/platform.h +0 -0
  313. /package/{pods → src-native/ios}/Headers/include/cppgc/prefinalizer.h +0 -0
  314. /package/{pods → src-native/ios}/Headers/include/cppgc/process-heap-statistics.h +0 -0
  315. /package/{pods → src-native/ios}/Headers/include/cppgc/sentinel-pointer.h +0 -0
  316. /package/{pods → src-native/ios}/Headers/include/cppgc/source-location.h +0 -0
  317. /package/{pods → src-native/ios}/Headers/include/cppgc/testing.h +0 -0
  318. /package/{pods → src-native/ios}/Headers/include/cppgc/trace-trait.h +0 -0
  319. /package/{pods → src-native/ios}/Headers/include/cppgc/type-traits.h +0 -0
  320. /package/{pods → src-native/ios}/Headers/include/cppgc/visitor.h +0 -0
  321. /package/{pods → src-native/ios}/Headers/include/js_protocol-1.2.json +0 -0
  322. /package/{pods → src-native/ios}/Headers/include/js_protocol-1.3.json +0 -0
  323. /package/{pods → src-native/ios}/Headers/include/js_protocol.pdl +0 -0
  324. /package/{pods → src-native/ios}/Headers/include/libffi/arm64/ffi.h +0 -0
  325. /package/{pods → src-native/ios}/Headers/include/libffi/arm64/ffitarget.h +0 -0
  326. /package/{pods → src-native/ios}/Headers/include/libffi/x86_64/ffi.h +0 -0
  327. /package/{pods → src-native/ios}/Headers/include/libffi/x86_64/ffitarget.h +0 -0
  328. /package/{pods → src-native/ios}/Headers/include/libffi.h +0 -0
  329. /package/{pods → src-native/ios}/Headers/include/libplatform/DEPS +0 -0
  330. /package/{pods → src-native/ios}/Headers/include/libplatform/libplatform-export.h +0 -0
  331. /package/{pods → src-native/ios}/Headers/include/libplatform/libplatform.h +0 -0
  332. /package/{pods → src-native/ios}/Headers/include/libplatform/v8-tracing.h +0 -0
  333. /package/{pods → src-native/ios}/Headers/include/v8-array-buffer.h +0 -0
  334. /package/{pods → src-native/ios}/Headers/include/v8-callbacks.h +0 -0
  335. /package/{pods → src-native/ios}/Headers/include/v8-container.h +0 -0
  336. /package/{pods → src-native/ios}/Headers/include/v8-context.h +0 -0
  337. /package/{pods → src-native/ios}/Headers/include/v8-cppgc.h +0 -0
  338. /package/{pods → src-native/ios}/Headers/include/v8-data.h +0 -0
  339. /package/{pods → src-native/ios}/Headers/include/v8-date.h +0 -0
  340. /package/{pods → src-native/ios}/Headers/include/v8-debug.h +0 -0
  341. /package/{pods → src-native/ios}/Headers/include/v8-embedder-heap.h +0 -0
  342. /package/{pods → src-native/ios}/Headers/include/v8-embedder-state-scope.h +0 -0
  343. /package/{pods → src-native/ios}/Headers/include/v8-exception.h +0 -0
  344. /package/{pods → src-native/ios}/Headers/include/v8-extension.h +0 -0
  345. /package/{pods → src-native/ios}/Headers/include/v8-external.h +0 -0
  346. /package/{pods → src-native/ios}/Headers/include/v8-fast-api-calls.h +0 -0
  347. /package/{pods → src-native/ios}/Headers/include/v8-forward.h +0 -0
  348. /package/{pods → src-native/ios}/Headers/include/v8-function-callback.h +0 -0
  349. /package/{pods → src-native/ios}/Headers/include/v8-function.h +0 -0
  350. /package/{pods → src-native/ios}/Headers/include/v8-initialization.h +0 -0
  351. /package/{pods → src-native/ios}/Headers/include/v8-inspector-protocol.h +0 -0
  352. /package/{pods → src-native/ios}/Headers/include/v8-inspector.h +0 -0
  353. /package/{pods → src-native/ios}/Headers/include/v8-internal.h +0 -0
  354. /package/{pods → src-native/ios}/Headers/include/v8-isolate.h +0 -0
  355. /package/{pods → src-native/ios}/Headers/include/v8-json.h +0 -0
  356. /package/{pods → src-native/ios}/Headers/include/v8-local-handle.h +0 -0
  357. /package/{pods → src-native/ios}/Headers/include/v8-locker.h +0 -0
  358. /package/{pods → src-native/ios}/Headers/include/v8-maybe.h +0 -0
  359. /package/{pods → src-native/ios}/Headers/include/v8-memory-span.h +0 -0
  360. /package/{pods → src-native/ios}/Headers/include/v8-message.h +0 -0
  361. /package/{pods → src-native/ios}/Headers/include/v8-metrics.h +0 -0
  362. /package/{pods → src-native/ios}/Headers/include/v8-microtask-queue.h +0 -0
  363. /package/{pods → src-native/ios}/Headers/include/v8-microtask.h +0 -0
  364. /package/{pods → src-native/ios}/Headers/include/v8-object.h +0 -0
  365. /package/{pods → src-native/ios}/Headers/include/v8-persistent-handle.h +0 -0
  366. /package/{pods → src-native/ios}/Headers/include/v8-platform.h +0 -0
  367. /package/{pods → src-native/ios}/Headers/include/v8-primitive-object.h +0 -0
  368. /package/{pods → src-native/ios}/Headers/include/v8-primitive.h +0 -0
  369. /package/{pods → src-native/ios}/Headers/include/v8-profiler.h +0 -0
  370. /package/{pods → src-native/ios}/Headers/include/v8-promise.h +0 -0
  371. /package/{pods → src-native/ios}/Headers/include/v8-proxy.h +0 -0
  372. /package/{pods → src-native/ios}/Headers/include/v8-regexp.h +0 -0
  373. /package/{pods → src-native/ios}/Headers/include/v8-script.h +0 -0
  374. /package/{pods → src-native/ios}/Headers/include/v8-snapshot.h +0 -0
  375. /package/{pods → src-native/ios}/Headers/include/v8-statistics.h +0 -0
  376. /package/{pods → src-native/ios}/Headers/include/v8-template.h +0 -0
  377. /package/{pods → src-native/ios}/Headers/include/v8-traced-handle.h +0 -0
  378. /package/{pods → src-native/ios}/Headers/include/v8-typed-array.h +0 -0
  379. /package/{pods → src-native/ios}/Headers/include/v8-unwinder-state.h +0 -0
  380. /package/{pods → src-native/ios}/Headers/include/v8-unwinder.h +0 -0
  381. /package/{pods → src-native/ios}/Headers/include/v8-util.h +0 -0
  382. /package/{pods → src-native/ios}/Headers/include/v8-value-serializer-version.h +0 -0
  383. /package/{pods → src-native/ios}/Headers/include/v8-value-serializer.h +0 -0
  384. /package/{pods → src-native/ios}/Headers/include/v8-value.h +0 -0
  385. /package/{pods → src-native/ios}/Headers/include/v8-version-string.h +0 -0
  386. /package/{pods → src-native/ios}/Headers/include/v8-version.h +0 -0
  387. /package/{pods → src-native/ios}/Headers/include/v8-wasm-trap-handler-posix.h +0 -0
  388. /package/{pods → src-native/ios}/Headers/include/v8-wasm-trap-handler-win.h +0 -0
  389. /package/{pods → src-native/ios}/Headers/include/v8-wasm.h +0 -0
  390. /package/{pods → src-native/ios}/Headers/include/v8-weak-callback-info.h +0 -0
  391. /package/{pods → src-native/ios}/Headers/include/v8.h +0 -0
  392. /package/{pods → src-native/ios}/Headers/include/v8config.h +0 -0
  393. /package/{pods → src-native/ios}/Headers/inspector/InspectorServer.h +0 -0
  394. /package/{pods → src-native/ios}/Headers/inspector/JsV8InspectorClient.h +0 -0
  395. /package/{pods → src-native/ios}/Headers/inspector/base/trace_event/common/trace_event_common.h +0 -0
  396. /package/{pods → src-native/ios}/Headers/inspector/base64.h +0 -0
  397. /package/{pods → src-native/ios}/Headers/inspector/src/base/address-region.h +0 -0
  398. /package/{pods → src-native/ios}/Headers/inspector/src/base/atomic-utils.h +0 -0
  399. /package/{pods → src-native/ios}/Headers/inspector/src/base/atomicops.h +0 -0
  400. /package/{pods → src-native/ios}/Headers/inspector/src/base/atomicops_internals_atomicword_compat.h +0 -0
  401. /package/{pods → src-native/ios}/Headers/inspector/src/base/base-export.h +0 -0
  402. /package/{pods → src-native/ios}/Headers/inspector/src/base/bits.h +0 -0
  403. /package/{pods → src-native/ios}/Headers/inspector/src/base/build_config.h +0 -0
  404. /package/{pods → src-native/ios}/Headers/inspector/src/base/compiler-specific.h +0 -0
  405. /package/{pods → src-native/ios}/Headers/inspector/src/base/export-template.h +0 -0
  406. /package/{pods → src-native/ios}/Headers/inspector/src/base/flags.h +0 -0
  407. /package/{pods → src-native/ios}/Headers/inspector/src/base/immediate-crash.h +0 -0
  408. /package/{pods → src-native/ios}/Headers/inspector/src/base/lazy-instance.h +0 -0
  409. /package/{pods → src-native/ios}/Headers/inspector/src/base/logging.h +0 -0
  410. /package/{pods → src-native/ios}/Headers/inspector/src/base/macros.h +0 -0
  411. /package/{pods → src-native/ios}/Headers/inspector/src/base/memory.h +0 -0
  412. /package/{pods → src-native/ios}/Headers/inspector/src/base/once.h +0 -0
  413. /package/{pods → src-native/ios}/Headers/inspector/src/base/optional.h +0 -0
  414. /package/{pods → src-native/ios}/Headers/inspector/src/base/platform/mutex.h +0 -0
  415. /package/{pods → src-native/ios}/Headers/inspector/src/base/platform/platform.h +0 -0
  416. /package/{pods → src-native/ios}/Headers/inspector/src/base/platform/semaphore.h +0 -0
  417. /package/{pods → src-native/ios}/Headers/inspector/src/base/platform/v8-time.h +0 -0
  418. /package/{pods → src-native/ios}/Headers/inspector/src/base/platform/wrappers.h +0 -0
  419. /package/{pods → src-native/ios}/Headers/inspector/src/base/safe_conversions.h +0 -0
  420. /package/{pods → src-native/ios}/Headers/inspector/src/base/safe_conversions_impl.h +0 -0
  421. /package/{pods → src-native/ios}/Headers/inspector/src/base/template-utils.h +0 -0
  422. /package/{pods → src-native/ios}/Headers/inspector/src/base/v8-fallthrough.h +0 -0
  423. /package/{pods → src-native/ios}/Headers/inspector/src/common/checks.h +0 -0
  424. /package/{pods → src-native/ios}/Headers/inspector/src/common/globals.h +0 -0
  425. /package/{pods → src-native/ios}/Headers/inspector/src/debug/debug-interface.h +0 -0
  426. /package/{pods → src-native/ios}/Headers/inspector/src/debug/interface-types.h +0 -0
  427. /package/{pods → src-native/ios}/Headers/inspector/src/init/v8.h +0 -0
  428. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/custom-preview.h +0 -0
  429. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/injected-script.h +0 -0
  430. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/inspected-context.h +0 -0
  431. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/protocol/CSS.h +0 -0
  432. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/protocol/Console.h +0 -0
  433. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/protocol/DOM.h +0 -0
  434. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/protocol/Debugger.h +0 -0
  435. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/protocol/Forward.h +0 -0
  436. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/protocol/HeapProfiler.h +0 -0
  437. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/protocol/Log.h +0 -0
  438. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/protocol/Network.h +0 -0
  439. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/protocol/Overlay.h +0 -0
  440. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/protocol/Page.h +0 -0
  441. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/protocol/Profiler.h +0 -0
  442. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/protocol/Protocol.h +0 -0
  443. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/protocol/Runtime.h +0 -0
  444. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/protocol/Schema.h +0 -0
  445. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/protocol/Security.h +0 -0
  446. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/remote-object-id.h +0 -0
  447. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/search-util.h +0 -0
  448. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/string-16.h +0 -0
  449. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/string-util.h +0 -0
  450. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-console-agent-impl.h +0 -0
  451. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-console-message.h +0 -0
  452. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-console.h +0 -0
  453. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-css-agent-impl.h +0 -0
  454. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-debugger-agent-impl.h +0 -0
  455. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-debugger-id.h +0 -0
  456. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-debugger-script.h +0 -0
  457. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-debugger.h +0 -0
  458. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-dom-agent-impl.h +0 -0
  459. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-heap-profiler-agent-impl.h +0 -0
  460. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-inspector-impl.h +0 -0
  461. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-inspector-session-impl.h +0 -0
  462. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-log-agent-impl.h +0 -0
  463. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-network-agent-impl.h +0 -0
  464. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-ns-debugger-agent-impl.h +0 -0
  465. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-overlay-agent-impl.h +0 -0
  466. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-page-agent-impl.h +0 -0
  467. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-profiler-agent-impl.h +0 -0
  468. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-regex.h +0 -0
  469. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-runtime-agent-impl.h +0 -0
  470. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-schema-agent-impl.h +0 -0
  471. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-stack-trace-impl.h +0 -0
  472. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-string-conversions.h +0 -0
  473. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/v8-value-utils.h +0 -0
  474. /package/{pods → src-native/ios}/Headers/inspector/src/inspector/value-mirror.h +0 -0
  475. /package/{pods → src-native/ios}/Headers/inspector/src/libplatform/default-platform.h +0 -0
  476. /package/{pods → src-native/ios}/Headers/inspector/src/logging/tracing-flags.h +0 -0
  477. /package/{pods → src-native/ios}/Headers/inspector/src/numbers/conversions.h +0 -0
  478. /package/{pods → src-native/ios}/Headers/inspector/src/tracing/trace-event.h +0 -0
  479. /package/{pods → src-native/ios}/Headers/inspector/src/utils/allocation.h +0 -0
  480. /package/{pods → src-native/ios}/Headers/inspector/src/utils/vector.h +0 -0
  481. /package/{pods → src-native/ios}/Headers/inspector/third_party/inspector_protocol/crdtp/cbor.h +0 -0
  482. /package/{pods → src-native/ios}/Headers/inspector/third_party/inspector_protocol/crdtp/dispatch.h +0 -0
  483. /package/{pods → src-native/ios}/Headers/inspector/third_party/inspector_protocol/crdtp/error_support.h +0 -0
  484. /package/{pods → src-native/ios}/Headers/inspector/third_party/inspector_protocol/crdtp/export.h +0 -0
  485. /package/{pods → src-native/ios}/Headers/inspector/third_party/inspector_protocol/crdtp/find_by_first.h +0 -0
  486. /package/{pods → src-native/ios}/Headers/inspector/third_party/inspector_protocol/crdtp/frontend_channel.h +0 -0
  487. /package/{pods → src-native/ios}/Headers/inspector/third_party/inspector_protocol/crdtp/glue.h +0 -0
  488. /package/{pods → src-native/ios}/Headers/inspector/third_party/inspector_protocol/crdtp/json.h +0 -0
  489. /package/{pods → src-native/ios}/Headers/inspector/third_party/inspector_protocol/crdtp/json_platform.h +0 -0
  490. /package/{pods → src-native/ios}/Headers/inspector/third_party/inspector_protocol/crdtp/maybe.h +0 -0
  491. /package/{pods → src-native/ios}/Headers/inspector/third_party/inspector_protocol/crdtp/parser_handler.h +0 -0
  492. /package/{pods → src-native/ios}/Headers/inspector/third_party/inspector_protocol/crdtp/protocol_core.h +0 -0
  493. /package/{pods → src-native/ios}/Headers/inspector/third_party/inspector_protocol/crdtp/serializable.h +0 -0
  494. /package/{pods → src-native/ios}/Headers/inspector/third_party/inspector_protocol/crdtp/serializer_traits.h +0 -0
  495. /package/{pods → src-native/ios}/Headers/inspector/third_party/inspector_protocol/crdtp/span.h +0 -0
  496. /package/{pods → src-native/ios}/Headers/inspector/third_party/inspector_protocol/crdtp/status.h +0 -0
  497. /package/{pods → src-native/ios}/Headers/inspector/utils.h +0 -0
  498. /package/{pods → src-native/ios}/Headers/inspector/v8-inspector-platform.h +0 -0
  499. /package/{pods → src-native/ios}/Headers/runtime/ArgConverter.h +0 -0
  500. /package/{pods → src-native/ios}/Headers/runtime/ArrayAdapter.h +0 -0
  501. /package/{pods → src-native/ios}/Headers/runtime/Caches.h +0 -0
  502. /package/{pods → src-native/ios}/Headers/runtime/ClassBuilder.h +0 -0
  503. /package/{pods → src-native/ios}/Headers/runtime/Common.h +0 -0
  504. /package/{pods → src-native/ios}/Headers/runtime/ConcurrentMap.h +0 -0
  505. /package/{pods → src-native/ios}/Headers/runtime/ConcurrentQueue.h +0 -0
  506. /package/{pods → src-native/ios}/Headers/runtime/Console.h +0 -0
  507. /package/{pods → src-native/ios}/Headers/runtime/Constants.h +0 -0
  508. /package/{pods → src-native/ios}/Headers/runtime/DataWrapper.h +0 -0
  509. /package/{pods → src-native/ios}/Headers/runtime/DictionaryAdapter.h +0 -0
  510. /package/{pods → src-native/ios}/Headers/runtime/ExtVector.h +0 -0
  511. /package/{pods → src-native/ios}/Headers/runtime/FFICall.h +0 -0
  512. /package/{pods → src-native/ios}/Headers/runtime/FastEnumerationAdapter.h +0 -0
  513. /package/{pods → src-native/ios}/Headers/runtime/FunctionReference.h +0 -0
  514. /package/{pods → src-native/ios}/Headers/runtime/Helpers.h +0 -0
  515. /package/{pods → src-native/ios}/Headers/runtime/InlineFunctions.h +0 -0
  516. /package/{pods → src-native/ios}/Headers/runtime/Interop.h +0 -0
  517. /package/{pods → src-native/ios}/Headers/runtime/KnownUnknownClassPair.h +0 -0
  518. /package/{pods → src-native/ios}/Headers/runtime/Metadata.h +0 -0
  519. /package/{pods → src-native/ios}/Headers/runtime/MetadataBuilder.h +0 -0
  520. /package/{pods → src-native/ios}/Headers/runtime/MetadataInlines.h +0 -0
  521. /package/{pods → src-native/ios}/Headers/runtime/ModuleInternal.h +0 -0
  522. /package/{pods → src-native/ios}/Headers/runtime/NSDataAdapter.h +0 -0
  523. /package/{pods → src-native/ios}/Headers/runtime/NativeScriptException.h +0 -0
  524. /package/{pods → src-native/ios}/Headers/runtime/ObjectManager.h +0 -0
  525. /package/{pods → src-native/ios}/Headers/runtime/OneByteStringResource.h +0 -0
  526. /package/{pods → src-native/ios}/Headers/runtime/Pointer.h +0 -0
  527. /package/{pods → src-native/ios}/Headers/runtime/PromiseProxy.h +0 -0
  528. /package/{pods → src-native/ios}/Headers/runtime/Reference.h +0 -0
  529. /package/{pods → src-native/ios}/Headers/runtime/Runtime.h +0 -0
  530. /package/{pods → src-native/ios}/Headers/runtime/RuntimeConfig.h +0 -0
  531. /package/{pods → src-native/ios}/Headers/runtime/SetTimeout.h +0 -0
  532. /package/{pods → src-native/ios}/Headers/runtime/SimpleAllocator.h +0 -0
  533. /package/{pods → src-native/ios}/Headers/runtime/StringHasher.h +0 -0
  534. /package/{pods → src-native/ios}/Headers/runtime/SymbolIterator.h +0 -0
  535. /package/{pods → src-native/ios}/Headers/runtime/SymbolLoader.h +0 -0
  536. /package/{pods → src-native/ios}/Headers/runtime/TNSDerivedClass.h +0 -0
  537. /package/{pods → src-native/ios}/Headers/runtime/TSHelpers.h +0 -0
  538. /package/{pods → src-native/ios}/Headers/runtime/Tasks.h +0 -0
  539. /package/{pods → src-native/ios}/Headers/runtime/UnmanagedType.h +0 -0
  540. /package/{pods → src-native/ios}/Headers/runtime/WeakRef.h +0 -0
  541. /package/{pods → src-native/ios}/Headers/runtime/Worker.h +0 -0
  542. /package/{pods → src-native/ios}/Headers/runtime/robin_hood.h +0 -0
@@ -5,8 +5,6 @@
5
5
  #pragma once
6
6
  #pragma process_pending_includes
7
7
 
8
- #import "NativeScript/JSIRuntime.h"
9
- #include "rust/cxx.h"
10
8
  #include <vector>
11
9
  #include <cstdint>
12
10
  #include <memory>
@@ -14,7 +12,6 @@
14
12
  #include "RafImpl.h"
15
13
  #include "OnRafCallback.h"
16
14
 
17
- #include "canvas-cxx/src/lib.rs.h"
18
15
  #include "Helpers.h"
19
16
 
20
17
  #include "CanvasGradient.h"
@@ -24,23 +21,1341 @@
24
21
  #include "ImageAssetImpl.h"
25
22
  #include "ImageBitmapImpl.h"
26
23
  #include "Path2D.h"
27
- #include "webgl/WebGLRenderingContextBase.h"
24
+ #include "WebGLRenderingContextBase.h"
25
+ #include "Helpers.h"
26
+ #include "ObjectWrapperImpl.h"
28
27
 
28
+ class CanvasRenderingContext2DImpl : ObjectWrapperImpl {
29
+ public:
29
30
 
30
- using namespace facebook;
31
- using namespace org::nativescript::canvas;
31
+ static v8::CFunction fast_arc_;
32
32
 
33
- class JSI_EXPORT CanvasRenderingContext2DImpl : public facebook::jsi::HostObject {
34
- public:
35
- CanvasRenderingContext2DImpl(rust::Box<CanvasRenderingContext2D> context);
33
+ static v8::CFunction fast_arc_to_;
36
34
 
37
- ~CanvasRenderingContext2DImpl();
35
+ static v8::CFunction fast_begin_path_;
36
+
37
+ static v8::CFunction fast_bezier_curve_to_;
38
+
39
+ static v8::CFunction fast_clear_rect_;
40
+
41
+ static v8::CFunction fast_clip_rule_;
42
+
43
+ static v8::CFunction fast_clip_path_;
44
+
45
+ static v8::CFunction fast_clip_;
46
+
47
+ static v8::CFunction fast_close_path_;
48
+
49
+ static v8::CFunction fast_draw_image_dx_dy_;
50
+
51
+ static v8::CFunction fast_draw_image_dx_dy_dw_dh_;
52
+
53
+ static v8::CFunction fast_draw_image_;
54
+
55
+ static v8::CFunction fast_ellipse_;
56
+
57
+ static v8::CFunction fast_fill_;
58
+
59
+ static v8::CFunction fast_fill_path_;
60
+
61
+ static v8::CFunction fast_fill_rule_;
62
+
63
+ static v8::CFunction fast_is_point_in_path_xy_;
64
+
65
+ static v8::CFunction fast_is_point_in_path_xy_rule_;
66
+
67
+ static v8::CFunction fast_is_point_in_path_;
68
+
69
+ static v8::CFunction fast_is_point_in_stroke_xy_;
70
+
71
+ static v8::CFunction fast_is_point_in_stroke_;
72
+
73
+ static v8::CFunction fast_line_to_;
74
+
75
+ static v8::CFunction fast_move_to_;
76
+
77
+ static v8::CFunction fast_put_image_data_dx_dy_;
78
+
79
+ static v8::CFunction fast_put_image_data_;
80
+
81
+ static v8::CFunction fast_quadratic_curve_to_;
82
+
83
+ static v8::CFunction fast_round_rect_array_;
84
+
85
+ static v8::CFunction fast_round_rect_;
86
+
87
+ static v8::CFunction fast_rect_;
88
+
89
+ static v8::CFunction fast_scale_;
90
+
91
+ static v8::CFunction fast_set_line_dash_;
92
+
93
+ static v8::CFunction fast_set_transform_;
94
+
95
+ static v8::CFunction fast_set_transform_abcdef_;
96
+
97
+ static v8::CFunction fast_transform_;
98
+
99
+ static v8::CFunction fast_fill_path_rule_;
100
+
101
+ static v8::CFunction fast_fill_rect_;
102
+
103
+ static v8::CFunction fast_stroke_;
104
+
105
+ static v8::CFunction fast_stroke_path_;
106
+
107
+ static v8::CFunction fast_stroke_rect_;
108
+
109
+ static v8::CFunction fast_rotate_;
110
+
111
+ static v8::CFunction fast_reset_transform_;
112
+
113
+ static v8::CFunction fast_restore_;
114
+
115
+ static v8::CFunction fast_save_;
116
+
117
+ static v8::CFunction fast_translate_;
118
+
119
+
120
+ CanvasRenderingContext2DImpl(CanvasRenderingContext2D *context);
121
+
122
+ static void Init(v8::Local<v8::Object> canvasModule, v8::Isolate *isolate);
123
+
124
+ static CanvasRenderingContext2DImpl *GetPointer(const v8::Local<v8::Object> &object);
125
+
126
+ static v8::Local<v8::FunctionTemplate> GetCtor(v8::Isolate *isolate);
127
+
128
+ static v8::Local<v8::Object>
129
+ NewInstance(v8::Isolate *isolate, CanvasRenderingContext2DImpl *renderingContext) {
130
+ auto context = isolate->GetCurrentContext();
131
+ v8::EscapableHandleScope scope(isolate);
132
+ auto object = CanvasRenderingContext2DImpl::GetCtor(isolate)->GetFunction(
133
+ context).ToLocalChecked()->NewInstance(context).ToLocalChecked();
134
+ SetNativeType(object, NativeType::CanvasRenderingContext2D);
135
+ object->SetAlignedPointerInInternalField(0, renderingContext);
136
+ renderingContext->BindFinalizer(isolate, object);
137
+ return scope.Escape(object);
138
+ }
139
+
140
+ static void DrawPoint(const v8::FunctionCallbackInfo<v8::Value> &args);
141
+
142
+ static void DrawPoints(const v8::FunctionCallbackInfo<v8::Value> &args);
143
+
144
+ static void DrawPaint(const v8::FunctionCallbackInfo<v8::Value> &args);
145
+
146
+ static void __MakeDirty(const v8::FunctionCallbackInfo<v8::Value> &args);
147
+
148
+ static void __GetPointer(const v8::FunctionCallbackInfo<v8::Value> &args);
149
+
150
+ static void __Resize(const v8::FunctionCallbackInfo<v8::Value> &args);
151
+
152
+ static void GetFilter(v8::Local<v8::String> property,
153
+ const v8::PropertyCallbackInfo<v8::Value> &info);
154
+
155
+ static void SetFilter(v8::Local<v8::String> property,
156
+ v8::Local<v8::Value> value,
157
+ const v8::PropertyCallbackInfo<void> &info);
158
+
159
+ static void GetFont(v8::Local<v8::String> property,
160
+ const v8::PropertyCallbackInfo<v8::Value> &info);
161
+
162
+ static void SetFont(v8::Local<v8::String> property,
163
+ v8::Local<v8::Value> value,
164
+ const v8::PropertyCallbackInfo<void> &info);
165
+
166
+
167
+ static void GetLetterSpacing(v8::Local<v8::String> property,
168
+ const v8::PropertyCallbackInfo<v8::Value> &info);
169
+
170
+ static void SetLetterSpacing(v8::Local<v8::String> property,
171
+ v8::Local<v8::Value> value,
172
+ const v8::PropertyCallbackInfo<void> &info);
173
+
174
+ static void GetWordSpacing(v8::Local<v8::String> property,
175
+ const v8::PropertyCallbackInfo<v8::Value> &info);
176
+
177
+ static void SetWordSpacing(v8::Local<v8::String> property,
178
+ v8::Local<v8::Value> value,
179
+ const v8::PropertyCallbackInfo<void> &info);
180
+
181
+ static void SetGlobalAlpha(v8::Local<v8::String> property,
182
+ v8::Local<v8::Value> value,
183
+ const v8::PropertyCallbackInfo<void> &info);
184
+
185
+ static void GetGlobalAlpha(v8::Local<v8::String> property,
186
+ const v8::PropertyCallbackInfo<v8::Value> &info);
187
+
188
+
189
+ static void SetImageSmoothingEnabled(v8::Local<v8::String> property,
190
+ v8::Local<v8::Value> value,
191
+ const v8::PropertyCallbackInfo<void> &info);
192
+
193
+ static void GetImageSmoothingEnabled(v8::Local<v8::String> property,
194
+ const v8::PropertyCallbackInfo<v8::Value> &info);
195
+
196
+ static void SetImageSmoothingQuality(v8::Local<v8::String> property,
197
+ v8::Local<v8::Value> value,
198
+ const v8::PropertyCallbackInfo<void> &info);
199
+
200
+ static void GetImageSmoothingQuality(v8::Local<v8::String> property,
201
+ const v8::PropertyCallbackInfo<v8::Value> &info);
202
+
203
+ static void SetLineDashOffset(v8::Local<v8::String> property,
204
+ v8::Local<v8::Value> value,
205
+ const v8::PropertyCallbackInfo<void> &info);
206
+
207
+ static void GetLineDashOffset(v8::Local<v8::String> property,
208
+ const v8::PropertyCallbackInfo<v8::Value> &info);
209
+
210
+ static void GetLineJoin(v8::Local<v8::String> property,
211
+ const v8::PropertyCallbackInfo<v8::Value> &info);
212
+
213
+ static void SetLineJoin(v8::Local<v8::String> property,
214
+ v8::Local<v8::Value> value,
215
+ const v8::PropertyCallbackInfo<void> &info);
216
+
217
+ static void GetLineCap(v8::Local<v8::String> property,
218
+ const v8::PropertyCallbackInfo<v8::Value> &info);
219
+
220
+ static void SetLineCap(v8::Local<v8::String> property,
221
+ v8::Local<v8::Value> value,
222
+ const v8::PropertyCallbackInfo<void> &info);
223
+
224
+ static void GetMiterLimit(v8::Local<v8::String> property,
225
+ const v8::PropertyCallbackInfo<v8::Value> &info);
226
+
227
+ static void SetMiterLimit(v8::Local<v8::String> property,
228
+ v8::Local<v8::Value> value,
229
+ const v8::PropertyCallbackInfo<void> &info);
230
+
231
+ static void GetShadowColor(v8::Local<v8::String> property,
232
+ const v8::PropertyCallbackInfo<v8::Value> &info);
233
+
234
+ static void SetShadowColor(v8::Local<v8::String> property,
235
+ v8::Local<v8::Value> value,
236
+ const v8::PropertyCallbackInfo<void> &info);
237
+
238
+ static void GetShadowBlur(v8::Local<v8::String> property,
239
+ const v8::PropertyCallbackInfo<v8::Value> &info);
240
+
241
+ static void SetShadowBlur(v8::Local<v8::String> property,
242
+ v8::Local<v8::Value> value,
243
+ const v8::PropertyCallbackInfo<void> &info);
244
+
245
+ static void GetShadowOffsetX(v8::Local<v8::String> property,
246
+ const v8::PropertyCallbackInfo<v8::Value> &info);
247
+
248
+ static void SetShadowOffsetX(v8::Local<v8::String> property,
249
+ v8::Local<v8::Value> value,
250
+ const v8::PropertyCallbackInfo<void> &info);
251
+
252
+ static void GetShadowOffsetY(v8::Local<v8::String> property,
253
+ const v8::PropertyCallbackInfo<v8::Value> &info);
254
+
255
+ static void SetShadowOffsetY(v8::Local<v8::String> property,
256
+ v8::Local<v8::Value> value,
257
+ const v8::PropertyCallbackInfo<void> &info);
258
+
259
+ static void GetTextAlign(v8::Local<v8::String> property,
260
+ const v8::PropertyCallbackInfo<v8::Value> &info);
261
+
262
+ static void SetTextAlign(v8::Local<v8::String> property,
263
+ v8::Local<v8::Value> value,
264
+ const v8::PropertyCallbackInfo<void> &info);
265
+
266
+ static void GetTextBaseline(v8::Local<v8::String> property,
267
+ const v8::PropertyCallbackInfo<v8::Value> &info);
268
+
269
+ static void SetTextBaseline(v8::Local<v8::String> property,
270
+ v8::Local<v8::Value> value,
271
+ const v8::PropertyCallbackInfo<void> &info);
272
+
273
+ static void GetGlobalCompositeOperation(v8::Local<v8::String> property,
274
+ const v8::PropertyCallbackInfo<v8::Value> &info);
275
+
276
+ static void SetGlobalCompositeOperation(v8::Local<v8::String> property,
277
+ v8::Local<v8::Value> value,
278
+ const v8::PropertyCallbackInfo<void> &info);
279
+
280
+ static void GetFillStyle(v8::Local<v8::String> property,
281
+ const v8::PropertyCallbackInfo<v8::Value> &info);
282
+
283
+ static void SetFillStyle(v8::Local<v8::String> property,
284
+ v8::Local<v8::Value> value,
285
+ const v8::PropertyCallbackInfo<void> &info);
286
+
287
+ static void GetStrokeStyle(v8::Local<v8::String> property,
288
+ const v8::PropertyCallbackInfo<v8::Value> &info);
289
+
290
+ static void SetStrokeStyle(v8::Local<v8::String> property,
291
+ v8::Local<v8::Value> value,
292
+ const v8::PropertyCallbackInfo<void> &info);
293
+
294
+ static void GetLineWidth(v8::Local<v8::String> property,
295
+ const v8::PropertyCallbackInfo<v8::Value> &info);
296
+
297
+ static void SetLineWidth(v8::Local<v8::String> property,
298
+ v8::Local<v8::Value> value,
299
+ const v8::PropertyCallbackInfo<void> &info);
300
+
301
+ static void GetLineDash(v8::Local<v8::String> property,
302
+ const v8::PropertyCallbackInfo<v8::Value> &info);
303
+
304
+ static void SetLineDash(v8::Local<v8::String> property,
305
+ v8::Local<v8::Value> value,
306
+ const v8::PropertyCallbackInfo<void> &info);
307
+
308
+
309
+ static void AddHitRegion(const v8::FunctionCallbackInfo<v8::Value> &args);
310
+
311
+ static void Arc(const v8::FunctionCallbackInfo<v8::Value> &args);
312
+
313
+
314
+ static void
315
+ ArcImpl(CanvasRenderingContext2D *receiver_obj, double x, double y, double radius,
316
+ double startAngle,
317
+ double endAngle, bool anti_clockwise) {
318
+
319
+ canvas_native_context_arc(
320
+ receiver_obj,
321
+ static_cast<float>(x),
322
+ static_cast<float>(y),
323
+ static_cast<float>(radius),
324
+ static_cast<float>(startAngle),
325
+ static_cast<float>(endAngle),
326
+ anti_clockwise
327
+ );
328
+ }
329
+
330
+
331
+ static void
332
+ FastArc(v8::Local<v8::Object> receiver_obj, double x, double y, double radius,
333
+ double startAngle,
334
+ double endAngle, bool anti_clockwise) {
335
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
336
+ if (ptr == nullptr) {
337
+ return;
338
+ }
339
+
340
+ ArcImpl(
341
+ ptr->GetContext(),
342
+ x,
343
+ y,
344
+ radius,
345
+ startAngle,
346
+ endAngle,
347
+ anti_clockwise
348
+ );
349
+ }
350
+
351
+
352
+ static void ArcTo(const v8::FunctionCallbackInfo<v8::Value> &args);
353
+
354
+ static void FastArcTo(v8::Local<v8::Object> receiver_obj, double x1,
355
+ double y1,
356
+ double x2,
357
+ double y2,
358
+ double radius) {
359
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
360
+ if (ptr == nullptr) {
361
+ return;
362
+ }
363
+
364
+ canvas_native_context_arc_to(
365
+ ptr->GetContext(), static_cast<float>(x1),
366
+ static_cast<float>(y1),
367
+ static_cast<float>(x2),
368
+ static_cast<float>(y2),
369
+ static_cast<float>(radius)
370
+ );
371
+ }
372
+
373
+ static void BeginPath(const v8::FunctionCallbackInfo<v8::Value> &args);
374
+
375
+ static void BeginPathImpl(CanvasRenderingContext2D *receiver_obj) {
376
+ canvas_native_context_begin_path(receiver_obj);
377
+ }
378
+
379
+ static void FastBeginPath(v8::Local<v8::Object> receiver_obj) {
380
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
381
+ if (ptr == nullptr) {
382
+ return;
383
+ }
384
+
385
+ BeginPathImpl(ptr->GetContext());
386
+ }
387
+
388
+ static void BezierCurveTo(const v8::FunctionCallbackInfo<v8::Value> &args);
389
+
390
+
391
+ static void FastBezierCurveTo(v8::Local<v8::Object> receiver_obj, double cp1x,
392
+ double cp1y,
393
+ double cp2x,
394
+ double cp2y,
395
+ double x,
396
+ double y) {
397
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
398
+ if (ptr == nullptr) {
399
+ return;
400
+ }
401
+
402
+ canvas_native_context_bezier_curve_to(
403
+ ptr->GetContext(),
404
+ static_cast<float>(cp1x),
405
+ static_cast<float>(cp1y),
406
+ static_cast<float>(cp2x),
407
+ static_cast<float>(cp2y),
408
+ static_cast<float>(x),
409
+ static_cast<float>(y)
410
+ );
411
+ }
412
+
413
+ static void ClearHitRegions(const v8::FunctionCallbackInfo<v8::Value> &args);
414
+
415
+ static void ClearRect(const v8::FunctionCallbackInfo<v8::Value> &args);
416
+
417
+
418
+ static void FastClearRect(v8::Local<v8::Object> receiver_obj, double x, double y, double width,
419
+ double height) {
420
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
421
+ if (ptr == nullptr) {
422
+ return;
423
+ }
424
+
425
+ canvas_native_context_clear_rect(
426
+ ptr->GetContext(),
427
+ static_cast<float>(x),
428
+ static_cast<float>(y),
429
+ static_cast<float>(width),
430
+ static_cast<float>(height)
431
+ );
432
+ ptr->UpdateInvalidateState();
433
+ }
434
+
435
+ static void Clip(const v8::FunctionCallbackInfo<v8::Value> &args);
436
+
437
+ static void FastClipRule(v8::Local<v8::Object> receiver_obj, int32_t rule) {
438
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
439
+ if (ptr == nullptr) {
440
+ return;
441
+ }
442
+
443
+ switch (rule) {
444
+ case 0:
445
+ canvas_native_context_clip_rule(
446
+ ptr->GetContext(), "nonzero");
447
+ break;
448
+ case 1:
449
+ canvas_native_context_clip_rule(
450
+ ptr->GetContext(), "evenodd");
451
+ break;
452
+ }
453
+ }
454
+
455
+ static void FastClipPath(v8::Local<v8::Object> receiver_obj, v8::Local<v8::Object> path_obj) {
456
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
457
+ if (ptr == nullptr) {
458
+ return;
459
+ }
460
+
461
+ if (GetNativeType(path_obj) == NativeType::Path2D) {
462
+ auto path = Path2D::GetPointer(path_obj);
463
+ canvas_native_context_clip(
464
+ ptr->GetContext(), path->GetPath(), "nonzero");
465
+ }
466
+
467
+
468
+ }
469
+
470
+ static void
471
+ FastClip(v8::Local<v8::Object> receiver_obj, v8::Local<v8::Object> path_obj, int32_t rule) {
472
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
473
+ if (ptr == nullptr) {
474
+ return;
475
+ }
476
+
477
+ if (GetNativeType(path_obj) == NativeType::Path2D) {
478
+ auto path = Path2D::GetPointer(path_obj);
479
+ switch (rule) {
480
+ case 0:
481
+ canvas_native_context_clip(
482
+ ptr->GetContext(), path->GetPath(), "nonzero");
483
+ break;
484
+ case 1:
485
+ canvas_native_context_clip(
486
+ ptr->GetContext(), path->GetPath(), "evenodd");
487
+ break;
488
+ }
489
+ }
490
+
491
+
492
+ }
493
+
494
+ static void ClosePath(const v8::FunctionCallbackInfo<v8::Value> &args);
495
+
496
+ static void ClosePathImpl(CanvasRenderingContext2D *receiver_obj) {
497
+ canvas_native_context_close_path(receiver_obj);
498
+ }
499
+
500
+ static void FastClosePath(v8::Local<v8::Object> receiver_obj) {
501
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
502
+ if (ptr == nullptr) {
503
+ return;
504
+ }
505
+
506
+ ClosePathImpl(ptr->GetContext());
507
+ }
508
+
509
+ static void CreateImageData(const v8::FunctionCallbackInfo<v8::Value> &args);
510
+
511
+ static void CreatePattern(const v8::FunctionCallbackInfo<v8::Value> &args);
512
+
513
+ static void CreateLinearGradient(
514
+ const v8::FunctionCallbackInfo<v8::Value> &args);
515
+
516
+ static void CreateConicGradient(
517
+ const v8::FunctionCallbackInfo<v8::Value> &args);
518
+
519
+ static void __CreatePatternWithNative(
520
+ const v8::FunctionCallbackInfo<v8::Value> &args);
521
+
522
+ static void CreateRadialGradient(
523
+ const v8::FunctionCallbackInfo<v8::Value> &args);
524
+
525
+ static void DrawFocusIfNeeded(const v8::FunctionCallbackInfo<v8::Value> &args);
526
+
527
+ static void DrawImage(const v8::FunctionCallbackInfo<v8::Value> &args);
528
+
529
+ static void
530
+ DrawImageDxDyAssetImpl(CanvasRenderingContext2DImpl *ptr, ImageAsset *asset, double dx,
531
+ double dy) {
532
+ if (asset != nullptr) {
533
+ canvas_native_context_draw_image_dx_dy_asset(
534
+ ptr->GetContext(),
535
+ asset,
536
+ static_cast<float>(dx), static_cast<float>(dy));
537
+ ptr->UpdateInvalidateState();
538
+ }
539
+ }
540
+
541
+ static void
542
+ DrawImageDxDyContext2DImpl(CanvasRenderingContext2DImpl *ptr,
543
+ CanvasRenderingContext2D *source, double dx, double dy) {
544
+ if (source != nullptr) {
545
+ canvas_native_context_draw_image_dx_dy_context(
546
+ ptr->GetContext(),
547
+ source,
548
+ static_cast<float>(dx), static_cast<float>(dy));
549
+ ptr->UpdateInvalidateState();
550
+ }
551
+ }
552
+
553
+
554
+ static void
555
+ FastDrawImageDxDy(v8::Local<v8::Object> receiver_obj, v8::Local<v8::Object> image_obj,
556
+ double dx, double dy) {
557
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
558
+ if (ptr == nullptr) {
559
+ return;
560
+ }
561
+
562
+ auto imageType = GetNativeType(image_obj);
563
+ switch (imageType) {
564
+ case NativeType::ImageAsset: {
565
+ auto asset = ImageAssetImpl::GetPointer(image_obj);
566
+ DrawImageDxDyAssetImpl(ptr, asset->GetImageAsset(), dx, dy);
567
+ }
568
+ break;
569
+ case NativeType::ImageBitmap: {
570
+ auto asset = ImageBitmapImpl::GetPointer(image_obj);
571
+ DrawImageDxDyAssetImpl(ptr, asset->GetImageAsset(), dx, dy);
572
+ }
573
+ break;
574
+ case NativeType::CanvasRenderingContext2D: {
575
+ auto context = CanvasRenderingContext2DImpl::GetPointer(image_obj);
576
+ DrawImageDxDyContext2DImpl(ptr, context->GetContext(), dx, dy);
577
+ }
578
+ break;
579
+ default:
580
+ break;
581
+ }
582
+ }
583
+
584
+ static void DrawImageDxDyDwDhAssetImpl(CanvasRenderingContext2DImpl *ptr, ImageAsset *asset,
585
+ double dx, double dy, double dw, double dh) {
586
+
587
+
588
+ if (asset != nullptr) {
589
+ canvas_native_context_draw_image_dx_dy_dw_dh_asset(
590
+ ptr->GetContext(),
591
+ asset,
592
+ static_cast<float>(dx), static_cast<float>(dy),
593
+ static_cast<float>(dw),
594
+ static_cast<float>(dh));
595
+ ptr->UpdateInvalidateState();
596
+ }
597
+ }
598
+
599
+
600
+ static void DrawImageDxDyDwDhContextImpl(CanvasRenderingContext2DImpl *ptr,
601
+ CanvasRenderingContext2D *source,
602
+ double dx, double dy, double dw, double dh) {
603
+
604
+ if (source != nullptr) {
605
+ canvas_native_context_draw_image_dx_dy_dw_dh_context(
606
+ ptr->GetContext(),
607
+ source,
608
+ static_cast<float>(dx), static_cast<float>(dy),
609
+ static_cast<float>(dw),
610
+ static_cast<float>(dh));
611
+ ptr->UpdateInvalidateState();
612
+ }
613
+ }
614
+
615
+
616
+ static void
617
+ FastDrawImageDxDyDwDh(v8::Local<v8::Object> receiver_obj, v8::Local<v8::Object> image_obj,
618
+ double dx, double dy, double dw, double dh) {
619
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
620
+ if (ptr == nullptr) {
621
+ return;
622
+ }
623
+
624
+
625
+ auto imageType = GetNativeType(image_obj);
38
626
 
39
- jsi::Value get(jsi::Runtime &, const jsi::PropNameID &name) override;
627
+ switch (imageType) {
628
+ case NativeType::ImageAsset: {
629
+ auto image_asset = ImageAssetImpl::GetPointer(image_obj);
40
630
 
41
- void set(jsi::Runtime &, const jsi::PropNameID &name, const jsi::Value &value) override;
631
+ if (image_asset != nullptr) {
632
+ DrawImageDxDyDwDhAssetImpl(
633
+ ptr,
634
+ image_asset->GetImageAsset(),
635
+ dx, dy,
636
+ dw,
637
+ dh);
638
+ ptr->UpdateInvalidateState();
639
+ }
640
+ }
641
+ break;
642
+ case NativeType::ImageBitmap: {
643
+ auto image_asset = ImageBitmapImpl::GetPointer(image_obj);
42
644
 
43
- std::vector<jsi::PropNameID> getPropertyNames(jsi::Runtime &rt) override;
645
+ if (image_asset != nullptr) {
646
+ DrawImageDxDyDwDhAssetImpl(
647
+ ptr,
648
+ image_asset->GetImageAsset(),
649
+ dx, dy,
650
+ dw,
651
+ dh);
652
+ ptr->UpdateInvalidateState();
653
+ }
654
+ }
655
+ break;
656
+ case NativeType::CanvasRenderingContext2D: {
657
+ auto context = CanvasRenderingContext2DImpl::GetPointer(image_obj);
658
+
659
+ if (context != nullptr) {
660
+ DrawImageDxDyDwDhContextImpl(
661
+ ptr,
662
+ context->GetContext(),
663
+ dx, dy,
664
+ dw,
665
+ dh);
666
+ ptr->UpdateInvalidateState();
667
+ }
668
+ }
669
+ break;
670
+ default:
671
+ break;
672
+ }
673
+ }
674
+
675
+ static void
676
+ DrawImageAssetImpl(CanvasRenderingContext2DImpl *ptr,
677
+ ImageAsset *asset, double sx,
678
+ double sy, double sw, double sh, double dx, double dy, double dw,
679
+ double dh) {
680
+
681
+ canvas_native_context_draw_image_asset(
682
+ ptr->GetContext(),
683
+ asset,
684
+ static_cast<float>(sx),
685
+ static_cast<float>(sy), static_cast<float>(sw), static_cast<float>(sh),
686
+ static_cast<float>(dx),
687
+ static_cast<float>(dy), static_cast<float>(dw), static_cast<float>(dh));
688
+
689
+ ptr->UpdateInvalidateState();
690
+ }
691
+
692
+
693
+ static void
694
+ DrawImageContextImpl(CanvasRenderingContext2DImpl *ptr,
695
+ CanvasRenderingContext2D *source, double sx,
696
+ double sy, double sw, double sh, double dx, double dy, double dw,
697
+ double dh) {
698
+ canvas_native_context_draw_image_context(
699
+ ptr->GetContext(),
700
+ source,
701
+ static_cast<float>(sx),
702
+ static_cast<float>(sy), static_cast<float>(sw), static_cast<float>(sh),
703
+ static_cast<float>(dx),
704
+ static_cast<float>(dy), static_cast<float>(dw), static_cast<float>(dh));
705
+ ptr->UpdateInvalidateState();
706
+ }
707
+
708
+ static void
709
+ FastDrawImage(v8::Local<v8::Object> receiver_obj, v8::Local<v8::Object> image_obj, double sx,
710
+ double sy, double sw, double sh, double dx, double dy, double dw,
711
+ double dh) {
712
+
713
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
714
+ if (ptr == nullptr) {
715
+ return;
716
+ }
717
+
718
+ auto imageType = GetNativeType(image_obj);
719
+
720
+ switch (imageType) {
721
+ case NativeType::ImageAsset: {
722
+ auto image_asset = ImageAssetImpl::GetPointer(image_obj);
723
+
724
+ if (image_asset != nullptr) {
725
+ DrawImageAssetImpl(ptr, image_asset->GetImageAsset(), sx, sy, sw, sh, dx, dy,
726
+ dw, dh);
727
+ }
728
+ }
729
+ break;
730
+ case NativeType::ImageBitmap: {
731
+ auto image_bitmap = ImageBitmapImpl::GetPointer(image_obj);
732
+ if (image_bitmap != nullptr) {
733
+ DrawImageAssetImpl(ptr, image_bitmap->GetImageAsset(), sx, sy, sw, sh, dx, dy,
734
+ dw, dh);
735
+ }
736
+ }
737
+ break;
738
+ case NativeType::CanvasRenderingContext2D: {
739
+ auto image_canvas = CanvasRenderingContext2DImpl::GetPointer(image_obj);
740
+ if (image_canvas != nullptr) {
741
+ DrawImageContextImpl(ptr, image_canvas->GetContext(), sx, sy, sw, sh, dx, dy,
742
+ dw, dh);
743
+ }
744
+ }
745
+ break;
746
+ default:
747
+ break;
748
+ }
749
+
750
+ }
751
+
752
+
753
+ static void Ellipse(const v8::FunctionCallbackInfo<v8::Value> &args);
754
+
755
+ static void FastEllipse(v8::Local<v8::Object> receiver_obj, double x,
756
+ double y,
757
+ double radius_x,
758
+ double radius_y,
759
+ double rotation,
760
+ double start_angle,
761
+ double end_angle,
762
+ bool anticlockwise) {
763
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
764
+ if (ptr == nullptr) {
765
+ return;
766
+ }
767
+
768
+ canvas_native_context_ellipse(
769
+ ptr->GetContext(), x, y,
770
+ radius_x,
771
+ radius_y, rotation,
772
+ start_angle, end_angle,
773
+ anticlockwise);
774
+ }
775
+
776
+
777
+ static void Fill(const v8::FunctionCallbackInfo<v8::Value> &args);
778
+
779
+ static void
780
+ FastFillPathRule(v8::Local<v8::Object> receiver_obj, v8::Local<v8::Object> path, int32_t rule) {
781
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
782
+ if (ptr == nullptr) {
783
+ return;
784
+ }
785
+
786
+
787
+ auto object = Path2D::GetPointer(path);
788
+
789
+ if (object != nullptr) {
790
+ switch (rule) {
791
+ case 0:
792
+ canvas_native_context_fill_with_path(
793
+ ptr->GetContext(),
794
+ object->GetPath(),
795
+ "nonzero");
796
+ break;
797
+ case 1:
798
+ canvas_native_context_fill_with_path(
799
+ ptr->GetContext(),
800
+ object->GetPath(),
801
+ "evenodd");
802
+ break;
803
+ default:
804
+ break;
805
+ }
806
+
807
+ ptr->UpdateInvalidateState();
808
+ }
809
+ }
810
+
811
+
812
+ static void FastFillPath(v8::Local<v8::Object> receiver_obj, v8::Local<v8::Object> path) {
813
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
814
+ if (ptr == nullptr) {
815
+ return;
816
+ }
817
+
818
+ auto object = Path2D::GetPointer(path);
819
+
820
+ canvas_native_context_fill_with_path(
821
+ ptr->GetContext(),
822
+ object->GetPath(), "nonzero");
823
+ ptr->UpdateInvalidateState();
824
+ }
825
+
826
+ static void FastFillRule(v8::Local<v8::Object> receiver_obj, int32_t rule) {
827
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
828
+ if (ptr == nullptr) {
829
+ return;
830
+ }
831
+
832
+ switch (rule) {
833
+ case 0:
834
+ canvas_native_context_fill(
835
+ ptr->GetContext(), "nonzero");
836
+ ptr->UpdateInvalidateState();
837
+ break;
838
+ case 1:
839
+ canvas_native_context_fill(
840
+ ptr->GetContext(), "evenodd");
841
+ ptr->UpdateInvalidateState();
842
+ break;
843
+ default:
844
+ break;
845
+ }
846
+ }
847
+
848
+ static void FastFill(v8::Local<v8::Object> receiver_obj) {
849
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
850
+ if (ptr == nullptr) {
851
+ return;
852
+ }
853
+
854
+ canvas_native_context_fill(
855
+ ptr->GetContext(), "nonzero");
856
+ ptr->UpdateInvalidateState();
857
+ }
858
+
859
+ static void FillRect(const v8::FunctionCallbackInfo<v8::Value> &args);
860
+
861
+
862
+ static void FastFillRect(v8::Local<v8::Object> receiver_obj, double x, double y, double width,
863
+ double height) {
864
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
865
+ if (ptr == nullptr) {
866
+ return;
867
+ }
868
+
869
+ canvas_native_context_fill_rect(
870
+ ptr->GetContext(),
871
+ static_cast<float>(x),
872
+ static_cast<float>(y),
873
+ static_cast<float>(width),
874
+ static_cast<float>(height)
875
+ );
876
+ ptr->UpdateInvalidateState();
877
+ }
878
+
879
+ static void FillText(const v8::FunctionCallbackInfo<v8::Value> &args);
880
+
881
+ static void GetImageData(const v8::FunctionCallbackInfo<v8::Value> &args);
882
+
883
+ static void GetLineDash(const v8::FunctionCallbackInfo<v8::Value> &args);
884
+
885
+ static void IsPointInPath(const v8::FunctionCallbackInfo<v8::Value> &args);
886
+
887
+ static bool FastIsPointInPathXY(v8::Local<v8::Object> receiver_obj, double x, double y) {
888
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
889
+
890
+ if (ptr == nullptr) {
891
+ return false;
892
+ }
893
+
894
+ return canvas_native_context_is_point_in_path(
895
+ ptr->GetContext(), static_cast<float>(x), static_cast<float>(y), "nonzero");
896
+ }
897
+
898
+ static bool
899
+ FastIsPointInPathXYRule(v8::Local<v8::Object> receiver_obj, double x, double y, int32_t rule) {
900
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
901
+
902
+ if (ptr == nullptr) {
903
+ return false;
904
+ }
905
+
906
+ bool ret = false;
907
+ switch (rule) {
908
+ case 0:
909
+ ret = canvas_native_context_is_point_in_path(
910
+ ptr->GetContext(), static_cast<float>(x), static_cast<float>(y), "nonzero");
911
+ break;
912
+ case 1:
913
+ ret = canvas_native_context_is_point_in_path(
914
+ ptr->GetContext(), static_cast<float>(x), static_cast<float>(y), "evenodd");
915
+ break;
916
+ default:
917
+ break;
918
+ }
919
+
920
+ return ret;
921
+ }
922
+
923
+ static bool
924
+ FastIsPointInPath(v8::Local<v8::Object> receiver_obj, v8::Local<v8::Object> path_obj, double x,
925
+ double y, int32_t rule) {
926
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
927
+
928
+ if (ptr == nullptr) {
929
+ return false;
930
+ }
931
+
932
+
933
+ bool ret = false;
934
+
935
+ auto type = GetNativeType(path_obj);
936
+
937
+ if (type == NativeType::Path2D) {
938
+ auto path = Path2D::GetPointer(path_obj);
939
+
940
+
941
+ switch (rule) {
942
+ case 0:
943
+ ret = canvas_native_context_is_point_in_path_with_path(
944
+ ptr->GetContext(),
945
+ path->GetPath(), x, y, "nonzero");
946
+ break;
947
+ case 1:
948
+ ret = canvas_native_context_is_point_in_path_with_path(
949
+ ptr->GetContext(),
950
+ path->GetPath(), x, y, "evenodd");
951
+ break;
952
+ }
953
+
954
+ }
955
+ return ret;
956
+ }
957
+
958
+
959
+ static void IsPointInStroke(const v8::FunctionCallbackInfo<v8::Value> &args);
960
+
961
+
962
+ static bool FastIsPointInStrokeXY(v8::Local<v8::Object> receiver_obj, double x, double y) {
963
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
964
+
965
+ if (ptr == nullptr) {
966
+ return false;
967
+ }
968
+
969
+
970
+ return canvas_native_context_is_point_in_stroke(
971
+ ptr->GetContext(), static_cast<float>(x), static_cast<float>(y));
972
+ }
973
+
974
+ static bool
975
+ FastIsPointInStroke(v8::Local<v8::Object> receiver_obj, v8::Local<v8::Object> path_obj,
976
+ double x, double y) {
977
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
978
+
979
+ if (ptr == nullptr) {
980
+ return false;
981
+ }
982
+
983
+ auto type = GetNativeType(path_obj);
984
+
985
+ if (type == NativeType::Path2D) {
986
+ auto path = Path2D::GetPointer(path_obj);
987
+
988
+ return canvas_native_context_is_point_in_stroke_with_path(
989
+ ptr->GetContext(),
990
+ path->GetPath(), static_cast<float>(x), static_cast<float>(y));
991
+ }
992
+
993
+ return false;
994
+ }
995
+
996
+ static void LineTo(const v8::FunctionCallbackInfo<v8::Value> &args);
997
+
998
+
999
+ static void FastLineTo(v8::Local<v8::Object> receiver_obj, float x, float y) {
1000
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1001
+ if (ptr == nullptr) {
1002
+ return;
1003
+ }
1004
+
1005
+ canvas_native_context_line_to(
1006
+ ptr->GetContext(), x, y);
1007
+ }
1008
+
1009
+
1010
+ static void MeasureText(const v8::FunctionCallbackInfo<v8::Value> &args);
1011
+
1012
+ static void MoveTo(const v8::FunctionCallbackInfo<v8::Value> &args);
1013
+
1014
+ static void FastMoveTo(v8::Local<v8::Object> receiver_obj, float x, float y) {
1015
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1016
+ if (ptr == nullptr) {
1017
+ return;
1018
+ }
1019
+
1020
+ canvas_native_context_move_to(
1021
+ ptr->GetContext(), x, y);
1022
+ }
1023
+
1024
+ static void PutImageData(const v8::FunctionCallbackInfo<v8::Value> &args);
1025
+
1026
+ static void
1027
+ FastPutImageDataDxDy(v8::Local<v8::Object> receiver_obj, v8::Local<v8::Object> image_data_obj,
1028
+ float dx, float dy) {
1029
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1030
+ if (ptr == nullptr) {
1031
+ return;
1032
+ }
1033
+
1034
+
1035
+ auto type = GetNativeType(image_data_obj);
1036
+ if (type == NativeType::ImageData) {
1037
+ auto imageData = ImageDataImpl::GetPointer(image_data_obj);
1038
+ auto dirtyWidth = (float) canvas_native_image_data_get_width(
1039
+ imageData->GetImageData());
1040
+ auto dirtyHeight = (float) canvas_native_image_data_get_height(
1041
+ imageData->GetImageData());
1042
+ canvas_native_context_put_image_data(
1043
+ ptr->GetContext(),
1044
+ imageData->GetImageData(), dx,
1045
+ dy, 0, 0,
1046
+ dirtyWidth, dirtyHeight);
1047
+ ptr->UpdateInvalidateState();
1048
+ }
1049
+
1050
+ }
1051
+
1052
+ static void
1053
+ FastPutImageData(v8::Local<v8::Object> receiver_obj, v8::Local<v8::Object> image_data_obj,
1054
+ float dx, float dy, float dirtyX, float dirtyY, float dirtyWidth,
1055
+ float dirtyHeight) {
1056
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1057
+ if (ptr == nullptr) {
1058
+ return;
1059
+ }
1060
+
1061
+ auto type = GetNativeType(image_data_obj);
1062
+ if (type == NativeType::ImageData) {
1063
+
1064
+ auto imageData = ImageDataImpl::GetPointer(image_data_obj);
1065
+ canvas_native_context_put_image_data(
1066
+ ptr->GetContext(),
1067
+ imageData->GetImageData(), dx,
1068
+ dy, dirtyX, dirtyY,
1069
+ dirtyWidth, dirtyHeight);
1070
+ ptr->UpdateInvalidateState();
1071
+ }
1072
+
1073
+ }
1074
+
1075
+ static void QuadraticCurveTo(const v8::FunctionCallbackInfo<v8::Value> &args);
1076
+
1077
+
1078
+ static void FastQuadraticCurveTo(v8::Local<v8::Object> receiver_obj, float cpx,
1079
+ float cpy,
1080
+ float x,
1081
+ float y) {
1082
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1083
+
1084
+ if (ptr == nullptr) {
1085
+ return;
1086
+ }
1087
+
1088
+ canvas_native_context_quadratic_curve_to(
1089
+ ptr->GetContext(), cpx, cpy,
1090
+ x, y);
1091
+
1092
+ }
1093
+
1094
+
1095
+ static void RoundRect(const v8::FunctionCallbackInfo<v8::Value> &args);
1096
+
1097
+
1098
+ static void FastRoundRectArray(v8::Local<v8::Object> receiver_obj, float x,
1099
+ float y,
1100
+ float width,
1101
+ float height, v8::Local<v8::Array> array) {
1102
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1103
+
1104
+ if (ptr == nullptr) { return; }
1105
+
1106
+
1107
+ auto len = array->Length();
1108
+ std::vector<float> buf;
1109
+ buf.reserve(len);
1110
+
1111
+ auto copied = v8::TryToCopyAndConvertArrayToCppBuffer<v8::CTypeInfoBuilder<float>::Build().GetId(), float>(
1112
+ array, buf.data(), len);
1113
+
1114
+ if (copied) {
1115
+ canvas_native_context_round_rect(
1116
+ ptr->GetContext(),
1117
+ x, y,
1118
+ width,
1119
+ height, buf.data(), buf.size());
1120
+ }
1121
+ }
1122
+
1123
+ static void FastRoundRect(v8::Local<v8::Object> receiver_obj, float x,
1124
+ float y,
1125
+ float width,
1126
+ float height, float radii) {
1127
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1128
+
1129
+ if (ptr == nullptr) { return; }
1130
+
1131
+
1132
+ canvas_native_context_round_rect_tl_tr_br_bl(
1133
+ ptr->GetContext(), x, y,
1134
+ width,
1135
+ height, radii, radii,
1136
+ radii, radii);
1137
+
1138
+ }
1139
+
1140
+ static void Rect(const v8::FunctionCallbackInfo<v8::Value> &args);
1141
+
1142
+
1143
+ static void FastRect(v8::Local<v8::Object> receiver_obj, float x,
1144
+ float y,
1145
+ float width,
1146
+ float height) {
1147
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1148
+
1149
+ if (ptr == nullptr) { return; }
1150
+
1151
+ canvas_native_context_rect(
1152
+ ptr->GetContext(), x, y,
1153
+ width,
1154
+ height);
1155
+
1156
+ }
1157
+
1158
+ static void RemoveHitRegion(const v8::FunctionCallbackInfo<v8::Value> &args);
1159
+
1160
+ static void ResetTransform(const v8::FunctionCallbackInfo<v8::Value> &args);
1161
+
1162
+ static void FastResetTransform(v8::Local<v8::Object> receiver_obj) {
1163
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1164
+ if (ptr == nullptr) {
1165
+ return;
1166
+ }
1167
+
1168
+ canvas_native_context_reset_transform(
1169
+ ptr->GetContext());
1170
+ }
1171
+
1172
+ static void Restore(const v8::FunctionCallbackInfo<v8::Value> &args);
1173
+
1174
+ static void FastRestore(v8::Local<v8::Object> receiver_obj) {
1175
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1176
+ if (ptr == nullptr) {
1177
+ return;
1178
+ }
1179
+
1180
+ canvas_native_context_restore(
1181
+ ptr->GetContext());
1182
+ }
1183
+
1184
+ static void Rotate(const v8::FunctionCallbackInfo<v8::Value> &args);
1185
+
1186
+ static void FastRotate(v8::Local<v8::Object> receiver_obj, float angle) {
1187
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1188
+ if (ptr == nullptr) {
1189
+ return;
1190
+ }
1191
+ canvas_native_context_rotate(
1192
+ ptr->GetContext(), angle);
1193
+ }
1194
+
1195
+
1196
+ static void Save(const v8::FunctionCallbackInfo<v8::Value> &args);
1197
+
1198
+ static void FastSave(v8::Local<v8::Object> receiver_obj) {
1199
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1200
+ if (ptr == nullptr) {
1201
+ return;
1202
+ }
1203
+
1204
+ canvas_native_context_save(
1205
+ ptr->GetContext());
1206
+ }
1207
+
1208
+ static void Scale(const v8::FunctionCallbackInfo<v8::Value> &args);
1209
+
1210
+ static void FastScale(v8::Local<v8::Object> receiver_obj, float x, float y) {
1211
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1212
+ if (ptr == nullptr) {
1213
+ return;
1214
+ }
1215
+
1216
+ canvas_native_context_scale(
1217
+ ptr->GetContext(), x, y);
1218
+ }
1219
+
1220
+ static void ScrollPathIntoView(const v8::FunctionCallbackInfo<v8::Value> &args);
1221
+
1222
+ static void SetLineDash(const v8::FunctionCallbackInfo<v8::Value> &args);
1223
+
1224
+
1225
+ static void FastSetLineDash(v8::Local<v8::Object> receiver_obj, v8::Local<v8::Array> array) {
1226
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1227
+ if (ptr == nullptr) {
1228
+ return;
1229
+ }
1230
+
1231
+
1232
+ auto len = array->Length();
1233
+ std::vector<float> buf;
1234
+ buf.reserve(len);
1235
+
1236
+ auto copied = v8::TryToCopyAndConvertArrayToCppBuffer<v8::CTypeInfoBuilder<float>::Build().GetId(), float>(
1237
+ array, buf.data(), len);
1238
+
1239
+ if (copied) {
1240
+ canvas_native_context_set_line_dash(
1241
+ ptr->GetContext(), buf.data(), buf.size());
1242
+ }
1243
+ }
1244
+
1245
+
1246
+ static void SetTransform(const v8::FunctionCallbackInfo<v8::Value> &args);
1247
+
1248
+ static void
1249
+ FastSetTransform(v8::Local<v8::Object> receiver_obj, v8::Local<v8::Object> matrix_obj) {
1250
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1251
+ if (ptr == nullptr) {
1252
+ return;
1253
+ }
1254
+
1255
+ auto type = GetNativeType(matrix_obj);
1256
+
1257
+ if (type == NativeType::Matrix) {
1258
+ auto matrix = MatrixImpl::GetPointer(matrix_obj);
1259
+ if (matrix != nullptr) {
1260
+ canvas_native_context_set_transform_matrix(
1261
+ ptr->GetContext(),
1262
+ matrix->GetMatrix());
1263
+ }
1264
+ }
1265
+ }
1266
+
1267
+
1268
+ static void
1269
+ FastSetTransformABCDEF(v8::Local<v8::Object> receiver_obj, float a, float b, float c, float d,
1270
+ float e, float f) {
1271
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1272
+ if (ptr == nullptr) {
1273
+ return;
1274
+ }
1275
+
1276
+ canvas_native_context_set_transform(
1277
+ ptr->GetContext(), a, b, c, d,
1278
+ e,
1279
+ f);
1280
+ }
1281
+
1282
+ static void Stroke(const v8::FunctionCallbackInfo<v8::Value> &args);
1283
+
1284
+ static void FastStroke(v8::Local<v8::Object> receiver_obj) {
1285
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1286
+
1287
+ canvas_native_context_stroke(
1288
+ ptr->GetContext());
1289
+ ptr->UpdateInvalidateState();
1290
+ }
1291
+
1292
+ static void FastStrokePath(v8::Local<v8::Object> receiver_obj, v8::Local<v8::Object> path_obj) {
1293
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1294
+
1295
+ auto path = Path2D::GetPointer(path_obj);
1296
+ if (path != nullptr) {
1297
+ canvas_native_context_stroke_with_path(
1298
+ ptr->GetContext(),
1299
+ path->GetPath());
1300
+ ptr->UpdateInvalidateState();
1301
+ }
1302
+ }
1303
+
1304
+ static void StrokeRect(const v8::FunctionCallbackInfo<v8::Value> &args);
1305
+
1306
+
1307
+ static void FastStrokeRect(v8::Local<v8::Object> receiver_obj, double x, double y, double width,
1308
+ double height) {
1309
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1310
+ if (ptr == nullptr) {
1311
+ return;
1312
+ }
1313
+
1314
+ canvas_native_context_stroke_rect(
1315
+ ptr->GetContext(), static_cast<float>(x),
1316
+ static_cast<float>(y),
1317
+ static_cast<float>(width),
1318
+ static_cast<float>(height));
1319
+ ptr->UpdateInvalidateState();
1320
+ }
1321
+
1322
+
1323
+ static void StrokeText(const v8::FunctionCallbackInfo<v8::Value> &args);
1324
+
1325
+ static void Transform(const v8::FunctionCallbackInfo<v8::Value> &args);
1326
+
1327
+ static void
1328
+ FastTransform(v8::Local<v8::Object> receiver_obj, float a, float b, float c, float d,
1329
+ float e, float f) {
1330
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1331
+ if (ptr == nullptr) {
1332
+ return;
1333
+ }
1334
+
1335
+
1336
+ canvas_native_context_transform(
1337
+ ptr->GetContext(), a, b, c, d,
1338
+ e,
1339
+ f);
1340
+ }
1341
+
1342
+ static void Translate(const v8::FunctionCallbackInfo<v8::Value> &args);
1343
+
1344
+
1345
+ static void FastTranslate(v8::Local<v8::Object> receiver_obj, float x, float y) {
1346
+ CanvasRenderingContext2DImpl *ptr = GetPointer(receiver_obj);
1347
+ if (ptr == nullptr) {
1348
+ return;
1349
+ }
1350
+
1351
+ canvas_native_context_translate(
1352
+ ptr->GetContext(), x, y);
1353
+ }
1354
+
1355
+
1356
+ static void __ToDataURL(const v8::FunctionCallbackInfo<v8::Value> &args);
1357
+
1358
+ ~CanvasRenderingContext2DImpl();
44
1359
 
45
1360
  void UpdateInvalidateState();
46
1361
 
@@ -58,17 +1373,12 @@ public:
58
1373
 
59
1374
  RafImpl *GetRaf();
60
1375
 
61
- CanvasRenderingContext2D &GetContext();
62
-
63
- void StartRaf();
64
-
65
- void StopRaf();
66
-
1376
+ CanvasRenderingContext2D *GetContext();
67
1377
 
68
1378
  private:
69
- rust::Box<CanvasRenderingContext2D> context_;
1379
+ CanvasRenderingContext2D *context_;
70
1380
 
71
- int invalidateState_ = static_cast<int>(InvalidateState::NONE);
1381
+ int invalidateState_ = static_cast<int>(InvalidateState::InvalidateStateNone);
72
1382
 
73
1383
  std::shared_ptr<RafImpl> raf_;
74
1384