@nativescript/canvas 2.0.0-alpha.3 → 2.0.0-alpha.5

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 (330) hide show
  1. package/Canvas/common.js +8 -15
  2. package/Canvas/common.js.map +1 -1
  3. package/Canvas/index.android.js +7 -9
  4. package/Canvas/index.android.js.map +1 -1
  5. package/Canvas/index.ios.d.ts +3 -0
  6. package/Canvas/index.ios.js +50 -28
  7. package/Canvas/index.ios.js.map +1 -1
  8. package/Canvas2D/CanvasRenderingContext2D/index.js +20 -1
  9. package/Canvas2D/CanvasRenderingContext2D/index.js.map +1 -1
  10. package/ImageBitmap/index.js +0 -1
  11. package/ImageBitmap/index.js.map +1 -1
  12. package/WebGL/WebGLRenderingContext/index.js +3 -3
  13. package/WebGL/WebGLRenderingContext/index.js.map +1 -1
  14. package/WebGL2/WebGL2RenderingContext/index.js +1 -0
  15. package/WebGL2/WebGL2RenderingContext/index.js.map +1 -1
  16. package/package.json +1 -1
  17. package/platforms/ios/CanvasNative.xcframework/Info.plist +5 -5
  18. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/CanvasNative +0 -0
  19. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/CanvasNative-Swift.h +11 -3
  20. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_native.h +4 -2
  21. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  22. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.abi.json +306 -35
  23. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.private.swiftinterface +11 -3
  24. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftinterface +11 -3
  25. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  26. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/CanvasNative +0 -0
  27. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/CanvasNative-Swift.h +22 -6
  28. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_native.h +4 -2
  29. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
  30. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
  31. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.abi.json +306 -35
  32. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +11 -3
  33. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftinterface +11 -3
  34. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.abi.json +306 -35
  35. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +11 -3
  36. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +11 -3
  37. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/_CodeSignature/CodeResources +24 -24
  38. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  39. package/platforms/ios/src/cpp/Helpers.h +5 -3
  40. package/platforms/ios/src/cpp/VecMutableBuffer.h +10 -15
  41. package/platforms/ios/src/cpp/canvas-cxx/src/lib.rs.cc +14 -1
  42. package/platforms/ios/src/cpp/canvas-cxx/src/lib.rs.h +6 -1
  43. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.h +5 -0
  44. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.mm +22 -1
  45. package/platforms/ios/src/cpp/webgl/WebGLRenderingContext.h +1 -0
  46. package/platforms/ios/src/cpp/webgl/WebGLRenderingContext.mm +121 -42
  47. package/platforms/ios/src/cpp/webgl/WebGLRenderingContextBase.h +28 -1
  48. package/platforms/ios/src/cpp/webgl/WebGLRenderingContextBase.mm +35 -14
  49. package/platforms/ios/src/cpp/webgl/extensions/OES_fbo_render_mipmap.h +30 -0
  50. package/platforms/ios/src/cpp/webgl2/WebGL2RenderingContext.mm +3 -1
  51. package/pods/Headers/include/APIDesign.md +72 -0
  52. package/pods/Headers/include/DEPS +10 -0
  53. package/pods/Headers/include/DIR_METADATA +11 -0
  54. package/pods/Headers/include/OWNERS +23 -0
  55. package/pods/Headers/include/cppgc/DEPS +8 -0
  56. package/pods/Headers/include/cppgc/OWNERS +2 -0
  57. package/pods/Headers/include/cppgc/README.md +133 -0
  58. package/pods/Headers/include/cppgc/allocation.h +310 -0
  59. package/pods/Headers/include/cppgc/common.h +29 -0
  60. package/pods/Headers/include/cppgc/cross-thread-persistent.h +465 -0
  61. package/pods/Headers/include/cppgc/custom-space.h +97 -0
  62. package/pods/Headers/include/cppgc/default-platform.h +67 -0
  63. package/pods/Headers/include/cppgc/ephemeron-pair.h +30 -0
  64. package/pods/Headers/include/cppgc/explicit-management.h +100 -0
  65. package/pods/Headers/include/cppgc/garbage-collected.h +106 -0
  66. package/pods/Headers/include/cppgc/heap-consistency.h +266 -0
  67. package/pods/Headers/include/cppgc/heap-state.h +82 -0
  68. package/pods/Headers/include/cppgc/heap-statistics.h +120 -0
  69. package/pods/Headers/include/cppgc/heap.h +206 -0
  70. package/pods/Headers/include/cppgc/internal/api-constants.h +55 -0
  71. package/pods/Headers/include/cppgc/internal/atomic-entry-flag.h +48 -0
  72. package/pods/Headers/include/cppgc/internal/caged-heap-local-data.h +79 -0
  73. package/pods/Headers/include/cppgc/internal/compiler-specific.h +38 -0
  74. package/pods/Headers/include/cppgc/internal/finalizer-trait.h +93 -0
  75. package/pods/Headers/include/cppgc/internal/gc-info.h +156 -0
  76. package/pods/Headers/include/cppgc/internal/logging.h +50 -0
  77. package/pods/Headers/include/cppgc/internal/name-trait.h +122 -0
  78. package/pods/Headers/include/cppgc/internal/persistent-node.h +216 -0
  79. package/pods/Headers/include/cppgc/internal/pointer-policies.h +186 -0
  80. package/pods/Headers/include/cppgc/internal/write-barrier.h +435 -0
  81. package/pods/Headers/include/cppgc/liveness-broker.h +77 -0
  82. package/pods/Headers/include/cppgc/macros.h +26 -0
  83. package/pods/Headers/include/cppgc/member.h +291 -0
  84. package/pods/Headers/include/cppgc/name-provider.h +65 -0
  85. package/pods/Headers/include/cppgc/object-size-trait.h +58 -0
  86. package/pods/Headers/include/cppgc/persistent.h +370 -0
  87. package/pods/Headers/include/cppgc/platform.h +156 -0
  88. package/pods/Headers/include/cppgc/prefinalizer.h +75 -0
  89. package/pods/Headers/include/cppgc/process-heap-statistics.h +36 -0
  90. package/pods/Headers/include/cppgc/sentinel-pointer.h +32 -0
  91. package/pods/Headers/include/cppgc/source-location.h +92 -0
  92. package/pods/Headers/include/cppgc/testing.h +106 -0
  93. package/pods/Headers/include/cppgc/trace-trait.h +116 -0
  94. package/pods/Headers/include/cppgc/type-traits.h +240 -0
  95. package/pods/Headers/include/cppgc/visitor.h +379 -0
  96. package/pods/Headers/include/js_protocol-1.2.json +936 -0
  97. package/pods/Headers/include/js_protocol-1.3.json +1112 -0
  98. package/pods/Headers/include/js_protocol.pdl +1709 -0
  99. package/pods/Headers/include/libffi/arm64/ffi.h +524 -0
  100. package/pods/Headers/include/libffi/arm64/ffitarget.h +92 -0
  101. package/pods/Headers/include/libffi/x86_64/ffi.h +524 -0
  102. package/pods/Headers/include/libffi/x86_64/ffitarget.h +147 -0
  103. package/pods/Headers/include/libffi.h +12 -0
  104. package/pods/Headers/include/libplatform/DEPS +9 -0
  105. package/pods/Headers/include/libplatform/libplatform-export.h +29 -0
  106. package/pods/Headers/include/libplatform/libplatform.h +106 -0
  107. package/pods/Headers/include/libplatform/v8-tracing.h +333 -0
  108. package/pods/Headers/include/v8-array-buffer.h +433 -0
  109. package/pods/Headers/include/v8-callbacks.h +397 -0
  110. package/pods/Headers/include/v8-container.h +129 -0
  111. package/pods/Headers/include/v8-context.h +407 -0
  112. package/pods/Headers/include/v8-cppgc.h +215 -0
  113. package/pods/Headers/include/v8-data.h +80 -0
  114. package/pods/Headers/include/v8-date.h +43 -0
  115. package/pods/Headers/include/v8-debug.h +168 -0
  116. package/pods/Headers/include/v8-embedder-heap.h +218 -0
  117. package/pods/Headers/include/v8-embedder-state-scope.h +51 -0
  118. package/pods/Headers/include/v8-exception.h +217 -0
  119. package/pods/Headers/include/v8-extension.h +62 -0
  120. package/pods/Headers/include/v8-external.h +37 -0
  121. package/pods/Headers/include/v8-fast-api-calls.h +939 -0
  122. package/pods/Headers/include/v8-forward.h +81 -0
  123. package/pods/Headers/include/v8-function-callback.h +475 -0
  124. package/pods/Headers/include/v8-function.h +125 -0
  125. package/pods/Headers/include/v8-initialization.h +315 -0
  126. package/pods/Headers/include/v8-inspector-protocol.h +13 -0
  127. package/pods/Headers/include/v8-inspector.h +376 -0
  128. package/pods/Headers/include/v8-internal.h +661 -0
  129. package/pods/Headers/include/v8-isolate.h +1709 -0
  130. package/pods/Headers/include/v8-json.h +47 -0
  131. package/pods/Headers/include/v8-local-handle.h +455 -0
  132. package/pods/Headers/include/v8-locker.h +149 -0
  133. package/pods/Headers/include/v8-maybe.h +137 -0
  134. package/pods/Headers/include/v8-memory-span.h +43 -0
  135. package/pods/Headers/include/v8-message.h +216 -0
  136. package/pods/Headers/include/v8-metrics.h +255 -0
  137. package/pods/Headers/include/v8-microtask-queue.h +152 -0
  138. package/pods/Headers/include/v8-microtask.h +28 -0
  139. package/pods/Headers/include/v8-object.h +775 -0
  140. package/pods/Headers/include/v8-persistent-handle.h +590 -0
  141. package/pods/Headers/include/v8-platform.h +1092 -0
  142. package/pods/Headers/include/v8-primitive-object.h +118 -0
  143. package/pods/Headers/include/v8-primitive.h +866 -0
  144. package/pods/Headers/include/v8-profiler.h +1198 -0
  145. package/pods/Headers/include/v8-promise.h +174 -0
  146. package/pods/Headers/include/v8-proxy.h +50 -0
  147. package/pods/Headers/include/v8-regexp.h +105 -0
  148. package/pods/Headers/include/v8-script.h +748 -0
  149. package/pods/Headers/include/v8-snapshot.h +196 -0
  150. package/pods/Headers/include/v8-statistics.h +217 -0
  151. package/pods/Headers/include/v8-template.h +1079 -0
  152. package/pods/Headers/include/v8-traced-handle.h +420 -0
  153. package/pods/Headers/include/v8-typed-array.h +282 -0
  154. package/pods/Headers/include/v8-unwinder-state.h +31 -0
  155. package/pods/Headers/include/v8-unwinder.h +132 -0
  156. package/pods/Headers/include/v8-util.h +658 -0
  157. package/pods/Headers/include/v8-value-serializer-version.h +24 -0
  158. package/pods/Headers/include/v8-value-serializer.h +279 -0
  159. package/pods/Headers/include/v8-value.h +526 -0
  160. package/pods/Headers/include/v8-version-string.h +38 -0
  161. package/pods/Headers/include/v8-version.h +20 -0
  162. package/pods/Headers/include/v8-wasm-trap-handler-posix.h +31 -0
  163. package/pods/Headers/include/v8-wasm-trap-handler-win.h +28 -0
  164. package/pods/Headers/include/v8-wasm.h +257 -0
  165. package/pods/Headers/include/v8-weak-callback-info.h +86 -0
  166. package/pods/Headers/include/v8.h +88 -0
  167. package/pods/Headers/include/v8config.h +605 -0
  168. package/pods/Headers/inspector/InspectorServer.h +20 -0
  169. package/pods/Headers/inspector/JsV8InspectorClient.h +66 -0
  170. package/pods/Headers/inspector/base/trace_event/common/trace_event_common.h +1123 -0
  171. package/pods/Headers/inspector/base64.h +9 -0
  172. package/pods/Headers/inspector/src/base/address-region.h +95 -0
  173. package/pods/Headers/inspector/src/base/atomic-utils.h +219 -0
  174. package/pods/Headers/inspector/src/base/atomicops.h +332 -0
  175. package/pods/Headers/inspector/src/base/atomicops_internals_atomicword_compat.h +89 -0
  176. package/pods/Headers/inspector/src/base/base-export.h +31 -0
  177. package/pods/Headers/inspector/src/base/bits.h +343 -0
  178. package/pods/Headers/inspector/src/base/build_config.h +234 -0
  179. package/pods/Headers/inspector/src/base/compiler-specific.h +136 -0
  180. package/pods/Headers/inspector/src/base/export-template.h +163 -0
  181. package/pods/Headers/inspector/src/base/flags.h +130 -0
  182. package/pods/Headers/inspector/src/base/immediate-crash.h +162 -0
  183. package/pods/Headers/inspector/src/base/lazy-instance.h +258 -0
  184. package/pods/Headers/inspector/src/base/logging.h +417 -0
  185. package/pods/Headers/inspector/src/base/macros.h +423 -0
  186. package/pods/Headers/inspector/src/base/memory.h +89 -0
  187. package/pods/Headers/inspector/src/base/once.h +108 -0
  188. package/pods/Headers/inspector/src/base/optional.h +882 -0
  189. package/pods/Headers/inspector/src/base/platform/mutex.h +370 -0
  190. package/pods/Headers/inspector/src/base/platform/platform.h +476 -0
  191. package/pods/Headers/inspector/src/base/platform/semaphore.h +108 -0
  192. package/pods/Headers/inspector/src/base/platform/v8-time.h +513 -0
  193. package/pods/Headers/inspector/src/base/platform/wrappers.h +73 -0
  194. package/pods/Headers/inspector/src/base/safe_conversions.h +389 -0
  195. package/pods/Headers/inspector/src/base/safe_conversions_impl.h +822 -0
  196. package/pods/Headers/inspector/src/base/template-utils.h +113 -0
  197. package/pods/Headers/inspector/src/base/v8-fallthrough.h +21 -0
  198. package/pods/Headers/inspector/src/common/checks.h +38 -0
  199. package/pods/Headers/inspector/src/common/globals.h +1842 -0
  200. package/pods/Headers/inspector/src/debug/debug-interface.h +667 -0
  201. package/pods/Headers/inspector/src/debug/interface-types.h +175 -0
  202. package/pods/Headers/inspector/src/init/v8.h +52 -0
  203. package/pods/Headers/inspector/src/inspector/custom-preview.h +24 -0
  204. package/pods/Headers/inspector/src/inspector/injected-script.h +251 -0
  205. package/pods/Headers/inspector/src/inspector/inspected-context.h +79 -0
  206. package/pods/Headers/inspector/src/inspector/protocol/CSS.h +2148 -0
  207. package/pods/Headers/inspector/src/inspector/protocol/Console.h +211 -0
  208. package/pods/Headers/inspector/src/inspector/protocol/DOM.h +1008 -0
  209. package/pods/Headers/inspector/src/inspector/protocol/Debugger.h +892 -0
  210. package/pods/Headers/inspector/src/inspector/protocol/Forward.h +75 -0
  211. package/pods/Headers/inspector/src/inspector/protocol/HeapProfiler.h +346 -0
  212. package/pods/Headers/inspector/src/inspector/protocol/Log.h +342 -0
  213. package/pods/Headers/inspector/src/inspector/protocol/Network.h +2528 -0
  214. package/pods/Headers/inspector/src/inspector/protocol/Overlay.h +281 -0
  215. package/pods/Headers/inspector/src/inspector/protocol/Page.h +1189 -0
  216. package/pods/Headers/inspector/src/inspector/protocol/Profiler.h +1001 -0
  217. package/pods/Headers/inspector/src/inspector/protocol/Protocol.h +617 -0
  218. package/pods/Headers/inspector/src/inspector/protocol/Runtime.h +1696 -0
  219. package/pods/Headers/inspector/src/inspector/protocol/Schema.h +146 -0
  220. package/pods/Headers/inspector/src/inspector/protocol/Security.h +793 -0
  221. package/pods/Headers/inspector/src/inspector/remote-object-id.h +54 -0
  222. package/pods/Headers/inspector/src/inspector/search-util.h +26 -0
  223. package/pods/Headers/inspector/src/inspector/string-16.h +180 -0
  224. package/pods/Headers/inspector/src/inspector/string-util.h +128 -0
  225. package/pods/Headers/inspector/src/inspector/v8-console-agent-impl.h +48 -0
  226. package/pods/Headers/inspector/src/inspector/v8-console-message.h +147 -0
  227. package/pods/Headers/inspector/src/inspector/v8-console.h +173 -0
  228. package/pods/Headers/inspector/src/inspector/v8-css-agent-impl.h +62 -0
  229. package/pods/Headers/inspector/src/inspector/v8-debugger-agent-impl.h +248 -0
  230. package/pods/Headers/inspector/src/inspector/v8-debugger-id.h +44 -0
  231. package/pods/Headers/inspector/src/inspector/v8-debugger-script.h +123 -0
  232. package/pods/Headers/inspector/src/inspector/v8-debugger.h +257 -0
  233. package/pods/Headers/inspector/src/inspector/v8-dom-agent-impl.h +91 -0
  234. package/pods/Headers/inspector/src/inspector/v8-heap-profiler-agent-impl.h +80 -0
  235. package/pods/Headers/inspector/src/inspector/v8-inspector-impl.h +191 -0
  236. package/pods/Headers/inspector/src/inspector/v8-inspector-session-impl.h +156 -0
  237. package/pods/Headers/inspector/src/inspector/v8-log-agent-impl.h +34 -0
  238. package/pods/Headers/inspector/src/inspector/v8-network-agent-impl.h +71 -0
  239. package/pods/Headers/inspector/src/inspector/v8-ns-debugger-agent-impl.h +24 -0
  240. package/pods/Headers/inspector/src/inspector/v8-overlay-agent-impl.h +70 -0
  241. package/pods/Headers/inspector/src/inspector/v8-page-agent-impl.h +88 -0
  242. package/pods/Headers/inspector/src/inspector/v8-profiler-agent-impl.h +104 -0
  243. package/pods/Headers/inspector/src/inspector/v8-regex.h +38 -0
  244. package/pods/Headers/inspector/src/inspector/v8-runtime-agent-impl.h +157 -0
  245. package/pods/Headers/inspector/src/inspector/v8-schema-agent-impl.h +38 -0
  246. package/pods/Headers/inspector/src/inspector/v8-stack-trace-impl.h +164 -0
  247. package/pods/Headers/inspector/src/inspector/v8-string-conversions.h +17 -0
  248. package/pods/Headers/inspector/src/inspector/v8-value-utils.h +23 -0
  249. package/pods/Headers/inspector/src/inspector/value-mirror.h +87 -0
  250. package/pods/Headers/inspector/src/libplatform/default-platform.h +92 -0
  251. package/pods/Headers/inspector/src/logging/tracing-flags.h +50 -0
  252. package/pods/Headers/inspector/src/numbers/conversions.h +183 -0
  253. package/pods/Headers/inspector/src/tracing/trace-event.h +664 -0
  254. package/pods/Headers/inspector/src/utils/allocation.h +367 -0
  255. package/pods/Headers/inspector/src/utils/vector.h +324 -0
  256. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/cbor.h +305 -0
  257. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/dispatch.h +314 -0
  258. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/error_support.h +62 -0
  259. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/export.h +6 -0
  260. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/find_by_first.h +58 -0
  261. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/frontend_channel.h +47 -0
  262. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/glue.h +80 -0
  263. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/json.h +52 -0
  264. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/json_platform.h +26 -0
  265. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/maybe.h +104 -0
  266. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/parser_handler.h +39 -0
  267. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/protocol_core.h +406 -0
  268. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/serializable.h +32 -0
  269. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/serializer_traits.h +158 -0
  270. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/span.h +99 -0
  271. package/pods/Headers/inspector/third_party/inspector_protocol/crdtp/status.h +139 -0
  272. package/pods/Headers/inspector/utils.h +32 -0
  273. package/pods/Headers/inspector/v8-inspector-platform.h +44 -0
  274. package/pods/Headers/jsi/decorator.h +770 -0
  275. package/pods/Headers/jsi/instrumentation.h +117 -0
  276. package/pods/Headers/jsi/jsi-inl.h +338 -0
  277. package/pods/Headers/jsi/jsi.h +1571 -0
  278. package/pods/Headers/jsi/jsilib.h +59 -0
  279. package/pods/Headers/jsi/threadsafe.h +79 -0
  280. package/pods/Headers/runtime/ArgConverter.h +61 -0
  281. package/pods/Headers/runtime/ArrayAdapter.h +13 -0
  282. package/pods/Headers/runtime/Caches.h +98 -0
  283. package/pods/Headers/runtime/ClassBuilder.h +61 -0
  284. package/pods/Headers/runtime/Common.h +9 -0
  285. package/pods/Headers/runtime/ConcurrentMap.h +55 -0
  286. package/pods/Headers/runtime/ConcurrentQueue.h +28 -0
  287. package/pods/Headers/runtime/Console.h +27 -0
  288. package/pods/Headers/runtime/Constants.h +15 -0
  289. package/pods/Headers/runtime/DataWrapper.h +671 -0
  290. package/pods/Headers/runtime/DictionaryAdapter.h +13 -0
  291. package/pods/Headers/runtime/ExtVector.h +21 -0
  292. package/pods/Headers/runtime/FFICall.h +105 -0
  293. package/pods/Headers/runtime/FastEnumerationAdapter.h +13 -0
  294. package/pods/Headers/runtime/FunctionReference.h +18 -0
  295. package/pods/Headers/runtime/Helpers.h +84 -0
  296. package/pods/Headers/runtime/InlineFunctions.h +16 -0
  297. package/pods/Headers/runtime/Interop.h +202 -0
  298. package/pods/Headers/runtime/KnownUnknownClassPair.h +35 -0
  299. package/pods/Headers/runtime/Metadata.h +981 -0
  300. package/pods/Headers/runtime/MetadataBuilder.h +72 -0
  301. package/pods/Headers/runtime/MetadataInlines.h +157 -0
  302. package/pods/Headers/runtime/ModuleInternal.h +59 -0
  303. package/pods/Headers/runtime/NSDataAdapter.h +13 -0
  304. package/pods/Headers/runtime/NativeScriptException.h +27 -0
  305. package/pods/Headers/runtime/ObjectManager.h +31 -0
  306. package/pods/Headers/runtime/OneByteStringResource.h +21 -0
  307. package/pods/Headers/runtime/Pointer.h +26 -0
  308. package/pods/Headers/runtime/PromiseProxy.h +15 -0
  309. package/pods/Headers/runtime/Reference.h +38 -0
  310. package/pods/Headers/runtime/Runtime.h +67 -0
  311. package/pods/Headers/runtime/RuntimeConfig.h +17 -0
  312. package/pods/Headers/runtime/SetTimeout.h +34 -0
  313. package/pods/Headers/runtime/SimpleAllocator.h +23 -0
  314. package/pods/Headers/runtime/StringHasher.h +315 -0
  315. package/pods/Headers/runtime/SymbolIterator.h +18 -0
  316. package/pods/Headers/runtime/SymbolLoader.h +27 -0
  317. package/pods/Headers/runtime/TNSDerivedClass.h +8 -0
  318. package/pods/Headers/runtime/TSHelpers.h +15 -0
  319. package/pods/Headers/runtime/Tasks.h +19 -0
  320. package/pods/Headers/runtime/UnmanagedType.h +21 -0
  321. package/pods/Headers/runtime/WeakRef.h +15 -0
  322. package/pods/Headers/runtime/Worker.h +26 -0
  323. package/pods/Headers/runtime/robin_hood.h +2184 -0
  324. package/pods/Headers/v8runtime/HostProxy.h +71 -0
  325. package/pods/Headers/v8runtime/JSIV8ValueConverter.h +74 -0
  326. package/pods/Headers/v8runtime/V8PointerValue.h +44 -0
  327. package/pods/Headers/v8runtime/V8Runtime.h +240 -0
  328. package/pods/Headers/v8runtime/V8RuntimeConfig.h +26 -0
  329. package/pods/Headers/v8runtime/V8RuntimeFactory.h +21 -0
  330. package/pods/NativeScript.podspec +68 -0
@@ -6,7 +6,7 @@
6
6
  <dict>
7
7
  <key>Headers/CanvasNative-Swift.h</key>
8
8
  <data>
9
- ldeV7fidMLgfiiTfxOg9yY9gZHw=
9
+ 1xcu0QfJvhSMlZPKHC+8g+xiiTI=
10
10
  </data>
11
11
  <key>Headers/CanvasNative.h</key>
12
12
  <data>
@@ -14,7 +14,7 @@
14
14
  </data>
15
15
  <key>Headers/canvas_native.h</key>
16
16
  <data>
17
- boGfduuaBuCzW0e5/Lq693uAUaU=
17
+ YKs7Vz8L/YFAfPcVH7I4msG6vAc=
18
18
  </data>
19
19
  <key>Info.plist</key>
20
20
  <data>
@@ -22,19 +22,19 @@
22
22
  </data>
23
23
  <key>Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo</key>
24
24
  <data>
25
- sOighQd72EqDqIK/0TE/+MA/q5I=
25
+ xd8aIqJVVG3AhjoYrD1Q6iUqHqo=
26
26
  </data>
27
27
  <key>Modules/CanvasNative.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo</key>
28
28
  <data>
29
- e4gPywpjjDgNs4gj/MzGwDYR2f8=
29
+ 9f60VRZApzqFkl28T+Do1s0E2xo=
30
30
  </data>
31
31
  <key>Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.abi.json</key>
32
32
  <data>
33
- YjN88+ydu39xFWCZaIjqubuj/LM=
33
+ /gzb2d5yFnC2+973Lqeil9SFLXc=
34
34
  </data>
35
35
  <key>Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface</key>
36
36
  <data>
37
- GtFXL8aMteQWLimAr5fZdbkEeqo=
37
+ YTmXDn+kZ+mB4kamNyc34Ml34No=
38
38
  </data>
39
39
  <key>Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftdoc</key>
40
40
  <data>
@@ -42,19 +42,19 @@
42
42
  </data>
43
43
  <key>Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftinterface</key>
44
44
  <data>
45
- GtFXL8aMteQWLimAr5fZdbkEeqo=
45
+ YTmXDn+kZ+mB4kamNyc34Ml34No=
46
46
  </data>
47
47
  <key>Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftmodule</key>
48
48
  <data>
49
- 3u0EZQ9GI0PPFjfAguRcw5DDuHA=
49
+ J44zEZBXW4NRTa8gxlhh1hwekP0=
50
50
  </data>
51
51
  <key>Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.abi.json</key>
52
52
  <data>
53
- YjN88+ydu39xFWCZaIjqubuj/LM=
53
+ /gzb2d5yFnC2+973Lqeil9SFLXc=
54
54
  </data>
55
55
  <key>Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface</key>
56
56
  <data>
57
- 4RKVRTvfXEmECMmY3Y+pvntAXBM=
57
+ ebxuJEmy/msPYRjl8JtN1zYvhto=
58
58
  </data>
59
59
  <key>Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftdoc</key>
60
60
  <data>
@@ -62,11 +62,11 @@
62
62
  </data>
63
63
  <key>Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftinterface</key>
64
64
  <data>
65
- 4RKVRTvfXEmECMmY3Y+pvntAXBM=
65
+ ebxuJEmy/msPYRjl8JtN1zYvhto=
66
66
  </data>
67
67
  <key>Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftmodule</key>
68
68
  <data>
69
- 7NtElPjsXsOkMmrLy0ie6e4EPDM=
69
+ yQwaVes4xe3d7fPARUKTrSSeyV8=
70
70
  </data>
71
71
  <key>Modules/module.modulemap</key>
72
72
  <data>
@@ -83,7 +83,7 @@
83
83
  <dict>
84
84
  <key>hash2</key>
85
85
  <data>
86
- s4OUEStdftXKWmUY1RlNdzuqnBCeVbWVEEMuOU9MRcc=
86
+ +wK+j0Srf+wn50thR1x95pMf5LDLZHT5NadlTfyx2zY=
87
87
  </data>
88
88
  </dict>
89
89
  <key>Headers/CanvasNative.h</key>
@@ -97,35 +97,35 @@
97
97
  <dict>
98
98
  <key>hash2</key>
99
99
  <data>
100
- 0FyAor54IyOsgQ3FiMZcj+Ekq3Ob+SgMR0Pu8ug3GBE=
100
+ dHuBIcEVrKY3XJBU/w4sOPca16hJ8oeam5FXrPAhp5Y=
101
101
  </data>
102
102
  </dict>
103
103
  <key>Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo</key>
104
104
  <dict>
105
105
  <key>hash2</key>
106
106
  <data>
107
- JiDxA6ihsLqYqnJBwVI5x4wV9YqcDY8eiH6b6iL5reI=
107
+ u7+DnXWrGgVuXt6JFO7pjmXrjYGiTt+JIwUZjYCdxrg=
108
108
  </data>
109
109
  </dict>
110
110
  <key>Modules/CanvasNative.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo</key>
111
111
  <dict>
112
112
  <key>hash2</key>
113
113
  <data>
114
- /ODllxA+Z5Qj8yJdX30SbakAwLR1PpQ7Upos2GOkRBg=
114
+ zkF/+n3739BySDXUu3BWNxA0JZJDs24tcAoCVZXYhLo=
115
115
  </data>
116
116
  </dict>
117
117
  <key>Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.abi.json</key>
118
118
  <dict>
119
119
  <key>hash2</key>
120
120
  <data>
121
- 8puaa/D0NsVbHOew6Mdg8nu234jCGZhJ4OudicHxYGk=
121
+ q75hKo6be84fMVJRlMXdewlfd2rOJXXN77fwk29DlW0=
122
122
  </data>
123
123
  </dict>
124
124
  <key>Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface</key>
125
125
  <dict>
126
126
  <key>hash2</key>
127
127
  <data>
128
- XBS1v/8zzG7N483HRt4wh3O43iqg47uI3nlEJ9UUsRE=
128
+ W3/EclnexJ+4ZQ9VDCm3493YM5iMB0bD8ANSOjBdcaU=
129
129
  </data>
130
130
  </dict>
131
131
  <key>Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftdoc</key>
@@ -139,28 +139,28 @@
139
139
  <dict>
140
140
  <key>hash2</key>
141
141
  <data>
142
- XBS1v/8zzG7N483HRt4wh3O43iqg47uI3nlEJ9UUsRE=
142
+ W3/EclnexJ+4ZQ9VDCm3493YM5iMB0bD8ANSOjBdcaU=
143
143
  </data>
144
144
  </dict>
145
145
  <key>Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftmodule</key>
146
146
  <dict>
147
147
  <key>hash2</key>
148
148
  <data>
149
- rrX9bnieA5a48i9X9mkPzFVmnOpI5gsodbQO58Xanzs=
149
+ E1Gg4k6C2O9gpWDYd7RHX5J+cR8DeTFfFLNqp47hTk4=
150
150
  </data>
151
151
  </dict>
152
152
  <key>Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.abi.json</key>
153
153
  <dict>
154
154
  <key>hash2</key>
155
155
  <data>
156
- 8puaa/D0NsVbHOew6Mdg8nu234jCGZhJ4OudicHxYGk=
156
+ q75hKo6be84fMVJRlMXdewlfd2rOJXXN77fwk29DlW0=
157
157
  </data>
158
158
  </dict>
159
159
  <key>Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface</key>
160
160
  <dict>
161
161
  <key>hash2</key>
162
162
  <data>
163
- qFiH4mFou8D92xNeGzG1YemJYCBGokfPmALSuncAnyQ=
163
+ S9Wn36cp2yT/8vFrU5Nij7uPhLkz6At51vGqA51gWAo=
164
164
  </data>
165
165
  </dict>
166
166
  <key>Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftdoc</key>
@@ -174,14 +174,14 @@
174
174
  <dict>
175
175
  <key>hash2</key>
176
176
  <data>
177
- qFiH4mFou8D92xNeGzG1YemJYCBGokfPmALSuncAnyQ=
177
+ S9Wn36cp2yT/8vFrU5Nij7uPhLkz6At51vGqA51gWAo=
178
178
  </data>
179
179
  </dict>
180
180
  <key>Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftmodule</key>
181
181
  <dict>
182
182
  <key>hash2</key>
183
183
  <data>
184
- AbUA0v8gyVjUMx1swGlGIY/zRw1zkiEUlcgxQsAJGks=
184
+ IyAdC7rSURmfJebT41JVTUcz34rHmgqwyoPHUY0ijJg=
185
185
  </data>
186
186
  </dict>
187
187
  <key>Modules/module.modulemap</key>
@@ -42,9 +42,11 @@ inline static std::shared_ptr<T>
42
42
  getHostObject(jsi::Runtime &runtime, const facebook::jsi::Value &value) {
43
43
  if (value.isObject()) {
44
44
  auto valueObject = value.asObject(runtime);
45
- if (valueObject.template isHostObject(runtime)) {
46
- return valueObject.template asHostObject<T>(runtime);
47
- }
45
+ try {
46
+ if (valueObject.template isHostObject(runtime)) {
47
+ return valueObject.template asHostObject<T>(runtime);
48
+ }
49
+ } catch (...) {}
48
50
  }
49
51
 
50
52
  return nullptr;
@@ -15,36 +15,31 @@ using namespace facebook;
15
15
  template<typename T>
16
16
  struct VecMutableBuffer : jsi::MutableBuffer {
17
17
  public:
18
- VecMutableBuffer(rust::Vec<T> buffer) : vec_(std::move(buffer)) {
19
- this->buf_ = vec_.data();
20
- this->buffer_size_ = vec_.size();
21
- this->size_ = vec_.size() * sizeof(T);
22
- }
18
+ VecMutableBuffer(rust::Vec<T> buffer) : vec_(std::move(buffer)) {}
23
19
 
24
20
  T *buffer_data() {
25
- return this->buf_;
21
+ return this->vec_.data();
26
22
  }
27
23
 
28
24
  size_t buffer_size() const {
29
- return this->buffer_size_;
25
+ return this->vec_.size();
26
+ }
27
+
28
+ size_t buffer_size() {
29
+ return this->vec_.size();
30
30
  }
31
31
 
32
+
32
33
  uint8_t *data() override {
33
- return (uint8_t *) this->buf_;
34
+ return (uint8_t *) this->vec_.data();
34
35
  }
35
36
 
36
37
  size_t size() const override {
37
- return this->size_;
38
+ return this->vec_.size() * sizeof(T);
38
39
  }
39
40
 
40
- ~VecMutableBuffer() override {
41
- this->buf_ = nullptr;
42
- }
43
41
 
44
42
  private:
45
- T *buf_;
46
- size_t size_;
47
- size_t buffer_size_;
48
43
  rust::Vec<T> vec_;
49
44
  };
50
45
 
@@ -1285,7 +1285,8 @@ enum class WebGLExtensionType : ::std::uint8_t {
1285
1285
  ANGLE_instanced_arrays = 21,
1286
1286
  WEBGL_depth_texture = 22,
1287
1287
  WEBGL_draw_buffers = 23,
1288
- None = 24,
1288
+ OES_fbo_render_mipmap = 24,
1289
+ None = 25,
1289
1290
  };
1290
1291
  #endif // CXXBRIDGE1_ENUM_org$nativescript$canvas$WebGLExtensionType
1291
1292
 
@@ -2749,6 +2750,10 @@ void org$nativescript$canvas$cxxbridge1$canvas_native_webgl_tex_parameteri(::std
2749
2750
 
2750
2751
  void org$nativescript$canvas$cxxbridge1$canvas_native_webgl_tex_sub_image2d_asset(::std::uint32_t target, ::std::int32_t level, ::std::int32_t xoffset, ::std::int32_t yoffset, ::std::uint32_t format, ::std::int32_t image_type, ::org::nativescript::canvas::ImageAsset &asset, ::org::nativescript::canvas::WebGLState &state) noexcept;
2751
2752
 
2753
+ void org$nativescript$canvas$cxxbridge1$canvas_native_webgl_tex_sub_image2d_canvas2d(::std::uint32_t target, ::std::int32_t level, ::std::int32_t xoffset, ::std::int32_t yoffset, ::std::uint32_t format, ::std::int32_t image_type, ::org::nativescript::canvas::CanvasRenderingContext2D &canvas, ::org::nativescript::canvas::WebGLState &state) noexcept;
2754
+
2755
+ void org$nativescript$canvas$cxxbridge1$canvas_native_webgl_tex_sub_image2d_webgl(::std::uint32_t target, ::std::int32_t level, ::std::int32_t xoffset, ::std::int32_t yoffset, ::std::uint32_t format, ::std::int32_t image_type, ::org::nativescript::canvas::WebGLState &webgl, ::org::nativescript::canvas::WebGLState &state) noexcept;
2756
+
2752
2757
  void org$nativescript$canvas$cxxbridge1$canvas_native_webgl_tex_sub_image2d(::std::uint32_t target, ::std::int32_t level, ::std::int32_t xoffset, ::std::int32_t yoffset, ::std::int32_t width, ::std::int32_t height, ::std::uint32_t format, ::std::int32_t image_type, ::rust::Slice<::std::uint8_t const> buf, ::org::nativescript::canvas::WebGLState &state) noexcept;
2753
2758
 
2754
2759
  void org$nativescript$canvas$cxxbridge1$canvas_native_webgl_uniform1f(::std::int32_t location, float v0, ::org::nativescript::canvas::WebGLState &state) noexcept;
@@ -5176,6 +5181,14 @@ void canvas_native_webgl_tex_sub_image2d_asset(::std::uint32_t target, ::std::in
5176
5181
  org$nativescript$canvas$cxxbridge1$canvas_native_webgl_tex_sub_image2d_asset(target, level, xoffset, yoffset, format, image_type, asset, state);
5177
5182
  }
5178
5183
 
5184
+ void canvas_native_webgl_tex_sub_image2d_canvas2d(::std::uint32_t target, ::std::int32_t level, ::std::int32_t xoffset, ::std::int32_t yoffset, ::std::uint32_t format, ::std::int32_t image_type, ::org::nativescript::canvas::CanvasRenderingContext2D &canvas, ::org::nativescript::canvas::WebGLState &state) noexcept {
5185
+ org$nativescript$canvas$cxxbridge1$canvas_native_webgl_tex_sub_image2d_canvas2d(target, level, xoffset, yoffset, format, image_type, canvas, state);
5186
+ }
5187
+
5188
+ void canvas_native_webgl_tex_sub_image2d_webgl(::std::uint32_t target, ::std::int32_t level, ::std::int32_t xoffset, ::std::int32_t yoffset, ::std::uint32_t format, ::std::int32_t image_type, ::org::nativescript::canvas::WebGLState &webgl, ::org::nativescript::canvas::WebGLState &state) noexcept {
5189
+ org$nativescript$canvas$cxxbridge1$canvas_native_webgl_tex_sub_image2d_webgl(target, level, xoffset, yoffset, format, image_type, webgl, state);
5190
+ }
5191
+
5179
5192
  void canvas_native_webgl_tex_sub_image2d(::std::uint32_t target, ::std::int32_t level, ::std::int32_t xoffset, ::std::int32_t yoffset, ::std::int32_t width, ::std::int32_t height, ::std::uint32_t format, ::std::int32_t image_type, ::rust::Slice<::std::uint8_t const> buf, ::org::nativescript::canvas::WebGLState &state) noexcept {
5180
5193
  org$nativescript$canvas$cxxbridge1$canvas_native_webgl_tex_sub_image2d(target, level, xoffset, yoffset, width, height, format, image_type, buf, state);
5181
5194
  }
@@ -1232,7 +1232,8 @@ enum class WebGLExtensionType : ::std::uint8_t {
1232
1232
  ANGLE_instanced_arrays = 21,
1233
1233
  WEBGL_depth_texture = 22,
1234
1234
  WEBGL_draw_buffers = 23,
1235
- None = 24,
1235
+ OES_fbo_render_mipmap = 24,
1236
+ None = 25,
1236
1237
  };
1237
1238
  #endif // CXXBRIDGE1_ENUM_org$nativescript$canvas$WebGLExtensionType
1238
1239
 
@@ -2594,6 +2595,10 @@ void canvas_native_webgl_tex_parameteri(::std::uint32_t target, ::std::uint32_t
2594
2595
 
2595
2596
  void canvas_native_webgl_tex_sub_image2d_asset(::std::uint32_t target, ::std::int32_t level, ::std::int32_t xoffset, ::std::int32_t yoffset, ::std::uint32_t format, ::std::int32_t image_type, ::org::nativescript::canvas::ImageAsset &asset, ::org::nativescript::canvas::WebGLState &state) noexcept;
2596
2597
 
2598
+ void canvas_native_webgl_tex_sub_image2d_canvas2d(::std::uint32_t target, ::std::int32_t level, ::std::int32_t xoffset, ::std::int32_t yoffset, ::std::uint32_t format, ::std::int32_t image_type, ::org::nativescript::canvas::CanvasRenderingContext2D &canvas, ::org::nativescript::canvas::WebGLState &state) noexcept;
2599
+
2600
+ void canvas_native_webgl_tex_sub_image2d_webgl(::std::uint32_t target, ::std::int32_t level, ::std::int32_t xoffset, ::std::int32_t yoffset, ::std::uint32_t format, ::std::int32_t image_type, ::org::nativescript::canvas::WebGLState &webgl, ::org::nativescript::canvas::WebGLState &state) noexcept;
2601
+
2597
2602
  void canvas_native_webgl_tex_sub_image2d(::std::uint32_t target, ::std::int32_t level, ::std::int32_t xoffset, ::std::int32_t yoffset, ::std::int32_t width, ::std::int32_t height, ::std::uint32_t format, ::std::int32_t image_type, ::rust::Slice<::std::uint8_t const> buf, ::org::nativescript::canvas::WebGLState &state) noexcept;
2598
2603
 
2599
2604
  void canvas_native_webgl_uniform1f(::std::int32_t location, float v0, ::org::nativescript::canvas::WebGLState &state) noexcept;
@@ -59,6 +59,11 @@ public:
59
59
  RafImpl *GetRaf();
60
60
 
61
61
  CanvasRenderingContext2D &GetContext();
62
+
63
+ void StartRaf();
64
+
65
+ void StopRaf();
66
+
62
67
 
63
68
  private:
64
69
  rust::Box<CanvasRenderingContext2D> context_;
@@ -31,9 +31,28 @@ RafImpl *CanvasRenderingContext2DImpl::GetRaf() {
31
31
  }
32
32
 
33
33
 
34
+ void CanvasRenderingContext2DImpl::StartRaf() {
35
+ auto raf = this->GetRaf();
36
+ if (raf != nullptr) {
37
+ if (!canvas_native_raf_get_started(raf->GetRaf())) {
38
+ canvas_native_raf_start(raf->GetRaf());
39
+ }
40
+ }
41
+ }
42
+
43
+ void CanvasRenderingContext2DImpl::StopRaf() {
44
+ auto raf = this->GetRaf();
45
+ if (raf != nullptr) {
46
+ if (canvas_native_raf_get_started(raf->GetRaf())) {
47
+ canvas_native_raf_stop(raf->GetRaf());
48
+ }
49
+ }
50
+ }
51
+
52
+
34
53
  std::vector<jsi::PropNameID> CanvasRenderingContext2DImpl::getPropertyNames(jsi::Runtime &rt) {
35
54
  std::vector<jsi::PropNameID> ret;
36
- ret.reserve(68);
55
+ ret.reserve(70);
37
56
 
38
57
  /* Non Standard 2D */
39
58
 
@@ -46,6 +65,8 @@ std::vector<jsi::PropNameID> CanvasRenderingContext2DImpl::getPropertyNames(jsi:
46
65
  ret.push_back(jsi::PropNameID::forUtf8(rt, std::string("__makeDirty")));
47
66
  ret.push_back(jsi::PropNameID::forUtf8(rt, std::string("__getPointer")));
48
67
  ret.push_back(jsi::PropNameID::forUtf8(rt, std::string("__resize")));
68
+ ret.push_back(jsi::PropNameID::forUtf8(rt, "__startRaf"));
69
+ ret.push_back(jsi::PropNameID::forUtf8(rt, "__stopRaf"));
49
70
  ret.push_back(jsi::PropNameID::forUtf8(rt, std::string("filter")));
50
71
  ret.push_back(jsi::PropNameID::forUtf8(rt, std::string("font")));
51
72
  ret.push_back(jsi::PropNameID::forUtf8(rt, std::string("globalAlpha")));
@@ -56,6 +56,7 @@
56
56
  #include "extensions/WEBGL_lose_contextImpl.h"
57
57
  #include "extensions/ANGLE_instanced_arraysImpl.h"
58
58
  #include "extensions/WEBGL_draw_buffersImpl.h"
59
+ #include "extensions/OES_fbo_render_mipmap.h"
59
60
  #include "gl.h"
60
61
 
61
62
  using namespace facebook;
@@ -195,9 +195,11 @@ jsi::Value WebGLRenderingContext::GetParameterInternal(jsi::Runtime &runtime,
195
195
 
196
196
  std::vector<jsi::PropNameID> WebGLRenderingContext::getPropertyNames(jsi::Runtime &rt) {
197
197
  std::vector<jsi::PropNameID> ret;
198
- ret.reserve(434);
198
+ ret.reserve(436);
199
199
 
200
200
  ret.push_back(jsi::PropNameID::forUtf8(rt, "__resized"));
201
+ ret.push_back(jsi::PropNameID::forUtf8(rt, "__startRaf"));
202
+ ret.push_back(jsi::PropNameID::forUtf8(rt, "__stopRaf"));
201
203
  ret.push_back(jsi::PropNameID::forUtf8(rt, std::string("activeTexture")));
202
204
  ret.push_back(jsi::PropNameID::forUtf8(rt, std::string("attachShader")));
203
205
  ret.push_back(jsi::PropNameID::forUtf8(rt, std::string("bindAttribLocation")));
@@ -802,13 +804,43 @@ jsi::Value WebGLRenderingContext::get(jsi::Runtime &runtime, const jsi::PropName
802
804
  const jsi::Value *arguments,
803
805
  size_t count) -> jsi::Value {
804
806
 
805
- // auto width = args[0];
806
- // auto height = args[1];
807
- // width->NumberValue(context).FromMaybe(1)
808
- // width->NumberValue(context).FromMaybe(1))
809
807
  canvas_native_webgl_resized(
810
808
  this->GetState());
811
809
 
810
+ this->UpdateBindings();
811
+
812
+ return jsi::Value::undefined();
813
+ }
814
+ );
815
+ }
816
+
817
+ if (methodName == "__startRaf") {
818
+ return jsi::Function::createFromHostFunction(runtime,
819
+ jsi::PropNameID::forAscii(runtime, methodName),
820
+ 0,
821
+ [this](jsi::Runtime &runtime,
822
+ const jsi::Value &thisValue,
823
+ const jsi::Value *arguments,
824
+ size_t count) -> jsi::Value {
825
+
826
+ this->StartRaf();
827
+
828
+ return jsi::Value::undefined();
829
+ }
830
+ );
831
+ }
832
+
833
+ if (methodName == "__stopRaf") {
834
+ return jsi::Function::createFromHostFunction(runtime,
835
+ jsi::PropNameID::forAscii(runtime, methodName),
836
+ 0,
837
+ [this](jsi::Runtime &runtime,
838
+ const jsi::Value &thisValue,
839
+ const jsi::Value *arguments,
840
+ size_t count) -> jsi::Value {
841
+
842
+ this->StartRaf();
843
+
812
844
  return jsi::Value::undefined();
813
845
  }
814
846
  );
@@ -950,21 +982,22 @@ jsi::Value WebGLRenderingContext::get(jsi::Runtime &runtime, const jsi::PropName
950
982
 
951
983
  if (arguments[0].isNumber()) {
952
984
  auto target = (uint32_t) arguments[0].asNumber();
953
- if (arguments[1].isObject()) {
954
- auto framebuffer = arguments[1].asObject(
955
- runtime).asHostObject<WebGLFramebuffer>(
956
- runtime);
985
+
986
+ if(arguments[1].isNull()){
987
+
957
988
  canvas_native_webgl_bind_frame_buffer(
958
989
  target,
959
- framebuffer->GetFrameBuffer(),
990
+ 0,
960
991
  this->GetState()
961
992
  );
962
- } else {
963
- // null value
964
- // unbind
993
+
994
+ return jsi::Value::undefined();
995
+
996
+ }else if (arguments[1].isObject()) {
997
+ auto framebuffer = getHostObject<WebGLFramebuffer>(runtime, arguments[1]);
965
998
  canvas_native_webgl_bind_frame_buffer(
966
999
  target,
967
- 0,
1000
+ framebuffer->GetFrameBuffer(),
968
1001
  this->GetState()
969
1002
  );
970
1003
  }
@@ -986,10 +1019,20 @@ jsi::Value WebGLRenderingContext::get(jsi::Runtime &runtime, const jsi::PropName
986
1019
  if (count > 1) {
987
1020
  if (arguments[0].isNumber()) {
988
1021
  auto target = (uint32_t) arguments[0].asNumber();
989
- if (arguments[1].isObject()) {
990
- auto renderbuffer = arguments[1].asObject(
991
- runtime).asHostObject<WebGLRenderbuffer>(
992
- runtime);
1022
+
1023
+ if(arguments[1].isNull()){
1024
+
1025
+ canvas_native_webgl_bind_render_buffer(
1026
+ target,
1027
+ 0,
1028
+ this->GetState()
1029
+ );
1030
+
1031
+ return jsi::Value::undefined();
1032
+
1033
+ }else if (arguments[1].isObject()) {
1034
+
1035
+ auto renderbuffer = getHostObject<WebGLRenderbuffer>(runtime, arguments[1]);
993
1036
 
994
1037
  if (renderbuffer ==
995
1038
  nullptr) { return jsi::Value::undefined(); }
@@ -1024,9 +1067,8 @@ jsi::Value WebGLRenderingContext::get(jsi::Runtime &runtime, const jsi::PropName
1024
1067
  if (arguments[0].isNumber()) {
1025
1068
  auto target = (uint32_t) arguments[0].asNumber();
1026
1069
  if (arguments[1].isObject()) {
1027
- auto texture = arguments[1].asObject(
1028
- runtime).asHostObject<WebGLTexture>(
1029
- runtime);
1070
+
1071
+ auto texture = getHostObject<WebGLTexture>(runtime, arguments[1]);
1030
1072
  canvas_native_webgl_bind_texture(
1031
1073
  target,
1032
1074
  texture->GetTexture(),
@@ -1496,9 +1538,7 @@ jsi::Value WebGLRenderingContext::get(jsi::Runtime &runtime, const jsi::PropName
1496
1538
  size_t count) -> jsi::Value {
1497
1539
 
1498
1540
  if (count > 0) {
1499
- auto shader = arguments[0].asObject(
1500
- runtime).asHostObject<WebGLShader>(
1501
- runtime);
1541
+ auto shader = getHostObject<WebGLShader>(runtime, arguments[0]);
1502
1542
  if (shader != nullptr) {
1503
1543
  canvas_native_webgl_compile_shader(
1504
1544
  shader->GetShader(),
@@ -1887,9 +1927,8 @@ jsi::Value WebGLRenderingContext::get(jsi::Runtime &runtime, const jsi::PropName
1887
1927
 
1888
1928
  if (count > 0) {
1889
1929
  if (arguments[0].isObject()) {
1890
- auto buffer = arguments[0].asObject(
1891
- runtime).asHostObject<WebGLBuffer>(
1892
- runtime);
1930
+
1931
+ auto buffer = getHostObject<WebGLBuffer>(runtime, arguments[0]);
1893
1932
  if (buffer != nullptr) {
1894
1933
  canvas_native_webgl_delete_buffer(
1895
1934
  buffer->GetBuffer(),
@@ -1913,9 +1952,8 @@ jsi::Value WebGLRenderingContext::get(jsi::Runtime &runtime, const jsi::PropName
1913
1952
 
1914
1953
  if (count > 0) {
1915
1954
  if (arguments[0].isObject()) {
1916
- auto buffer = arguments[0].asObject(
1917
- runtime).asHostObject<WebGLFramebuffer>(
1918
- runtime);
1955
+
1956
+ auto buffer = getHostObject<WebGLFramebuffer>(runtime, arguments[0]);
1919
1957
 
1920
1958
  if (buffer != nullptr) {
1921
1959
  canvas_native_webgl_delete_framebuffer(
@@ -1940,9 +1978,8 @@ jsi::Value WebGLRenderingContext::get(jsi::Runtime &runtime, const jsi::PropName
1940
1978
  if (count > 0) {
1941
1979
 
1942
1980
  if (arguments[0].isObject()) {
1943
- auto program = arguments[0].asObject(
1944
- runtime).asHostObject<WebGLProgram>(
1945
- runtime);
1981
+
1982
+ auto program = getHostObject<WebGLProgram>(runtime, arguments[0]);
1946
1983
  if (program != nullptr) {
1947
1984
  canvas_native_webgl_delete_framebuffer(
1948
1985
  program->GetProgram(),
@@ -1967,9 +2004,7 @@ jsi::Value WebGLRenderingContext::get(jsi::Runtime &runtime, const jsi::PropName
1967
2004
  if (count > 0) {
1968
2005
 
1969
2006
  if (arguments[0].isObject()) {
1970
- auto buffer = arguments[0].asObject(
1971
- runtime).asHostObject<WebGLRenderbuffer>(
1972
- runtime);
2007
+ auto buffer = getHostObject<WebGLRenderbuffer>(runtime, arguments[0]);
1973
2008
  if (buffer != nullptr) {
1974
2009
  canvas_native_webgl_delete_renderbuffer(
1975
2010
  buffer->GetRenderBuffer(),
@@ -1993,9 +2028,8 @@ jsi::Value WebGLRenderingContext::get(jsi::Runtime &runtime, const jsi::PropName
1993
2028
 
1994
2029
  if (count > 0) {
1995
2030
  if (arguments[0].isObject()) {
1996
- auto shader = arguments[0].asObject(
1997
- runtime).asHostObject<WebGLShader>(
1998
- runtime);
2031
+
2032
+ auto shader = getHostObject<WebGLShader>(runtime, arguments[0]);
1999
2033
  if (shader != nullptr) {
2000
2034
  canvas_native_webgl_delete_shader(
2001
2035
  shader->GetShader(),
@@ -2019,9 +2053,7 @@ jsi::Value WebGLRenderingContext::get(jsi::Runtime &runtime, const jsi::PropName
2019
2053
 
2020
2054
  if (count > 0) {
2021
2055
  if (arguments[0].isObject()) {
2022
- auto texture = arguments[0].asObject(
2023
- runtime).asHostObject<WebGLTexture>(
2024
- runtime);
2056
+ auto texture = getHostObject<WebGLTexture>(runtime, arguments[0]);
2025
2057
  if (texture != nullptr) {
2026
2058
  canvas_native_webgl_delete_texture(
2027
2059
  texture->GetTexture(),
@@ -2699,6 +2731,11 @@ jsi::Value WebGLRenderingContext::get(jsi::Runtime &runtime, const jsi::PropName
2699
2731
  auto type = canvas_native_webgl_context_extension_get_type(
2700
2732
  *ext);
2701
2733
  switch (type) {
2734
+ case WebGLExtensionType::OES_fbo_render_mipmap: {
2735
+ auto ret = std::make_shared<OES_fbo_render_mipmapImpl>();
2736
+ return jsi::Object::createFromHostObject(
2737
+ runtime, ret);
2738
+ }
2702
2739
  case WebGLExtensionType::EXT_blend_minmax: {
2703
2740
  auto ret = std::make_shared<EXT_blend_minmaxImpl>();
2704
2741
  return jsi::Object::createFromHostObject(
@@ -4476,6 +4513,48 @@ jsi::Value WebGLRenderingContext::get(jsi::Runtime &runtime, const jsi::PropName
4476
4513
  }
4477
4514
  } catch (...) {}
4478
4515
 
4516
+
4517
+ try {
4518
+ auto canvas2d = pixels.asHostObject<CanvasRenderingContext2DImpl>(
4519
+ runtime);
4520
+
4521
+ if (canvas2d != nullptr) {
4522
+ canvas_native_webgl_tex_sub_image2d_canvas2d(
4523
+ target,
4524
+ level,
4525
+ xoffset,
4526
+ yoffset,
4527
+ format,
4528
+ type,
4529
+ canvas2d->GetContext(),
4530
+ this->GetState()
4531
+ );
4532
+
4533
+ return jsi::Value::undefined();
4534
+ }
4535
+ } catch (...) {}
4536
+
4537
+
4538
+ try {
4539
+ auto webgl = pixels.asHostObject<WebGLRenderingContext>(
4540
+ runtime);
4541
+
4542
+ if (webgl != nullptr) {
4543
+ canvas_native_webgl_tex_sub_image2d_webgl(
4544
+ target,
4545
+ level,
4546
+ xoffset,
4547
+ yoffset,
4548
+ format,
4549
+ type,
4550
+ webgl->GetState(),
4551
+ this->GetState()
4552
+ );
4553
+
4554
+ return jsi::Value::undefined();
4555
+ }
4556
+ } catch (...) {}
4557
+
4479
4558
  }
4480
4559
  }
4481
4560