@nativescript/canvas 2.0.0-beta.9 → 2.0.0-rc.0

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 (454) hide show
  1. package/Canvas/common.d.ts +15 -24
  2. package/Canvas/common.js +147 -203
  3. package/Canvas/common.js.map +1 -1
  4. package/Canvas/index.android.d.ts +13 -15
  5. package/Canvas/index.android.js +152 -151
  6. package/Canvas/index.android.js.map +1 -1
  7. package/Canvas/index.d.ts +23 -11
  8. package/Canvas/index.ios.d.ts +14 -6
  9. package/Canvas/index.ios.js +213 -124
  10. package/Canvas/index.ios.js.map +1 -1
  11. package/Canvas/utils.d.ts +3 -0
  12. package/Canvas/utils.js +85 -0
  13. package/Canvas/utils.js.map +1 -0
  14. package/Canvas2D/CanvasRenderingContext2D/index.d.ts +4 -2
  15. package/Canvas2D/CanvasRenderingContext2D/index.js +79 -85
  16. package/Canvas2D/CanvasRenderingContext2D/index.js.map +1 -1
  17. package/Canvas2D/DOMMatrix/index.d.ts +14 -0
  18. package/Canvas2D/DOMMatrix/index.js +62 -0
  19. package/Canvas2D/DOMMatrix/index.js.map +1 -1
  20. package/Canvas2D/ImageData/index.js +4 -6
  21. package/Canvas2D/ImageData/index.js.map +1 -1
  22. package/Canvas2D/Path2D/index.js.map +1 -1
  23. package/Dom/Dom.js +8 -1
  24. package/Dom/Dom.js.map +1 -1
  25. package/Dom/Group.d.ts +1 -2
  26. package/Dom/Group.js.map +1 -1
  27. package/Dom/Image.d.ts +4 -1
  28. package/Dom/Image.js +15 -2
  29. package/Dom/Image.js.map +1 -1
  30. package/Dom/Paint.d.ts +1 -1
  31. package/Dom/Paint.js.map +1 -1
  32. package/Dom/Text.js.map +1 -1
  33. package/Dom/shaders/LinearGradient.js.map +1 -1
  34. package/Dom/shaders/TwoPointConicalGradient.js.map +1 -1
  35. package/Dom/shapes/Atlas.js.map +1 -1
  36. package/Dom/shapes/Circle.js.map +1 -1
  37. package/Dom/shapes/Line.js.map +1 -1
  38. package/Dom/shapes/Oval.js.map +1 -1
  39. package/Dom/shapes/Path.d.ts +1 -1
  40. package/Dom/shapes/Path.js.map +1 -1
  41. package/Dom/shapes/Rect.js.map +1 -1
  42. package/Dom/shapes/RoundedRect.js.map +1 -1
  43. package/Dom/shapes/index.js.map +1 -1
  44. package/Fonts/FontFace.android.d.ts +46 -0
  45. package/Fonts/FontFace.android.js +197 -0
  46. package/Fonts/FontFace.android.js.map +1 -0
  47. package/Fonts/FontFace.ios.d.ts +45 -0
  48. package/Fonts/FontFace.ios.js +169 -0
  49. package/Fonts/FontFace.ios.js.map +1 -0
  50. package/Fonts/FontFaceSet.android.d.ts +31 -0
  51. package/Fonts/FontFaceSet.android.js +119 -0
  52. package/Fonts/FontFaceSet.android.js.map +1 -0
  53. package/Fonts/FontFaceSet.ios.d.ts +31 -0
  54. package/Fonts/FontFaceSet.ios.js +109 -0
  55. package/Fonts/FontFaceSet.ios.js.map +1 -0
  56. package/Fonts/index.d.ts +2 -0
  57. package/Fonts/index.js +3 -0
  58. package/Fonts/index.js.map +1 -0
  59. package/ImageAsset/index.d.ts +8 -3
  60. package/ImageAsset/index.js +206 -11
  61. package/ImageAsset/index.js.map +1 -1
  62. package/ImageBitmap/index.js +110 -23
  63. package/ImageBitmap/index.js.map +1 -1
  64. package/README.md +62 -3
  65. package/TextDecoder/index.js +3 -3
  66. package/TextDecoder/index.js.map +1 -1
  67. package/TextEncoder/index.js +3 -3
  68. package/TextEncoder/index.js.map +1 -1
  69. package/WebGL/WebGLExtensions/index.js +5 -5
  70. package/WebGL/WebGLExtensions/index.js.map +1 -1
  71. package/WebGL/WebGLRenderingContext/common.d.ts +1 -1
  72. package/WebGL/WebGLRenderingContext/common.js.map +1 -1
  73. package/WebGL/WebGLRenderingContext/index.d.ts +1 -0
  74. package/WebGL/WebGLRenderingContext/index.js +144 -46
  75. package/WebGL/WebGLRenderingContext/index.js.map +1 -1
  76. package/WebGL2/WebGL2RenderingContext/index.d.ts +1 -0
  77. package/WebGL2/WebGL2RenderingContext/index.js +7 -8
  78. package/WebGL2/WebGL2RenderingContext/index.js.map +1 -1
  79. package/WebGPU/Constants.d.ts +36 -0
  80. package/WebGPU/Constants.js +42 -0
  81. package/WebGPU/Constants.js.map +1 -0
  82. package/WebGPU/Errors.d.ts +18 -0
  83. package/WebGPU/Errors.js +21 -0
  84. package/WebGPU/Errors.js.map +1 -0
  85. package/WebGPU/GPU.d.ts +13 -0
  86. package/WebGPU/GPU.js +36 -0
  87. package/WebGPU/GPU.js.map +1 -0
  88. package/WebGPU/GPUAdapter.d.ts +26 -0
  89. package/WebGPU/GPUAdapter.js +93 -0
  90. package/WebGPU/GPUAdapter.js.map +1 -0
  91. package/WebGPU/GPUAdapterInfo.d.ts +9 -0
  92. package/WebGPU/GPUAdapterInfo.js +24 -0
  93. package/WebGPU/GPUAdapterInfo.js.map +1 -0
  94. package/WebGPU/GPUBindGroup.d.ts +6 -0
  95. package/WebGPU/GPUBindGroup.js +15 -0
  96. package/WebGPU/GPUBindGroup.js.map +1 -0
  97. package/WebGPU/GPUBindGroupLayout.d.ts +6 -0
  98. package/WebGPU/GPUBindGroupLayout.js +15 -0
  99. package/WebGPU/GPUBindGroupLayout.js.map +1 -0
  100. package/WebGPU/GPUBuffer.d.ts +15 -0
  101. package/WebGPU/GPUBuffer.js +66 -0
  102. package/WebGPU/GPUBuffer.js.map +1 -0
  103. package/WebGPU/GPUCanvasContext.d.ts +42 -0
  104. package/WebGPU/GPUCanvasContext.js +149 -0
  105. package/WebGPU/GPUCanvasContext.js.map +1 -0
  106. package/WebGPU/GPUCommandBuffer.d.ts +6 -0
  107. package/WebGPU/GPUCommandBuffer.js +15 -0
  108. package/WebGPU/GPUCommandBuffer.js.map +1 -0
  109. package/WebGPU/GPUCommandEncoder.d.ts +35 -0
  110. package/WebGPU/GPUCommandEncoder.js +163 -0
  111. package/WebGPU/GPUCommandEncoder.js.map +1 -0
  112. package/WebGPU/GPUComputePassEncoder.d.ts +17 -0
  113. package/WebGPU/GPUComputePassEncoder.js +53 -0
  114. package/WebGPU/GPUComputePassEncoder.js.map +1 -0
  115. package/WebGPU/GPUComputePipeline.d.ts +8 -0
  116. package/WebGPU/GPUComputePipeline.js +19 -0
  117. package/WebGPU/GPUComputePipeline.js.map +1 -0
  118. package/WebGPU/GPUDevice.d.ts +111 -0
  119. package/WebGPU/GPUDevice.js +341 -0
  120. package/WebGPU/GPUDevice.js.map +1 -0
  121. package/WebGPU/GPUDeviceLostInfo.d.ts +1 -0
  122. package/WebGPU/GPUDeviceLostInfo.js +10 -0
  123. package/WebGPU/GPUDeviceLostInfo.js.map +1 -0
  124. package/WebGPU/GPUExternalTexture.d.ts +6 -0
  125. package/WebGPU/GPUExternalTexture.js +15 -0
  126. package/WebGPU/GPUExternalTexture.js.map +1 -0
  127. package/WebGPU/GPUPipelineLayout.d.ts +6 -0
  128. package/WebGPU/GPUPipelineLayout.js +15 -0
  129. package/WebGPU/GPUPipelineLayout.js.map +1 -0
  130. package/WebGPU/GPUQuerySet.d.ts +6 -0
  131. package/WebGPU/GPUQuerySet.js +15 -0
  132. package/WebGPU/GPUQuerySet.js.map +1 -0
  133. package/WebGPU/GPUQueue.d.ts +15 -0
  134. package/WebGPU/GPUQueue.js +128 -0
  135. package/WebGPU/GPUQueue.js.map +1 -0
  136. package/WebGPU/GPURenderBundle.d.ts +6 -0
  137. package/WebGPU/GPURenderBundle.js +15 -0
  138. package/WebGPU/GPURenderBundle.js.map +1 -0
  139. package/WebGPU/GPURenderBundleEncoder.d.ts +22 -0
  140. package/WebGPU/GPURenderBundleEncoder.js +65 -0
  141. package/WebGPU/GPURenderBundleEncoder.js.map +1 -0
  142. package/WebGPU/GPURenderPassEncoder.d.ts +33 -0
  143. package/WebGPU/GPURenderPassEncoder.js +106 -0
  144. package/WebGPU/GPURenderPassEncoder.js.map +1 -0
  145. package/WebGPU/GPURenderPipeline.d.ts +8 -0
  146. package/WebGPU/GPURenderPipeline.js +19 -0
  147. package/WebGPU/GPURenderPipeline.js.map +1 -0
  148. package/WebGPU/GPUSampler.d.ts +6 -0
  149. package/WebGPU/GPUSampler.js +15 -0
  150. package/WebGPU/GPUSampler.js.map +1 -0
  151. package/WebGPU/GPUShaderModule.d.ts +6 -0
  152. package/WebGPU/GPUShaderModule.js +15 -0
  153. package/WebGPU/GPUShaderModule.js.map +1 -0
  154. package/WebGPU/GPUTexture.d.ts +18 -0
  155. package/WebGPU/GPUTexture.js +47 -0
  156. package/WebGPU/GPUTexture.js.map +1 -0
  157. package/WebGPU/GPUTextureView.d.ts +6 -0
  158. package/WebGPU/GPUTextureView.js +15 -0
  159. package/WebGPU/GPUTextureView.js.map +1 -0
  160. package/WebGPU/Interfaces.d.ts +246 -0
  161. package/WebGPU/Interfaces.js +2 -0
  162. package/WebGPU/Interfaces.js.map +1 -0
  163. package/WebGPU/Types.d.ts +47 -0
  164. package/WebGPU/Types.js +2 -0
  165. package/WebGPU/Types.js.map +1 -0
  166. package/WebGPU/Utils.d.ts +7 -0
  167. package/WebGPU/Utils.js +301 -0
  168. package/WebGPU/Utils.js.map +1 -0
  169. package/WebGPU/index.d.ts +28 -0
  170. package/WebGPU/index.js +29 -0
  171. package/WebGPU/index.js.map +1 -0
  172. package/angular/{esm2020 → esm2022}/index.mjs +5 -5
  173. package/angular/{fesm2015 → fesm2022}/nativescript-canvas-angular.mjs +4 -4
  174. package/angular/{fesm2015 → fesm2022}/nativescript-canvas-angular.mjs.map +1 -1
  175. package/angular/package.json +4 -10
  176. package/common.d.ts +0 -3
  177. package/common.js +1 -5
  178. package/common.js.map +1 -1
  179. package/helpers.js.map +1 -1
  180. package/index.d.ts +4 -2
  181. package/index.js +37 -3
  182. package/index.js.map +1 -1
  183. package/package.json +2 -5
  184. package/platforms/android/canvas-release.aar +0 -0
  185. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/CanvasNative +0 -0
  186. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/CanvasNative-Swift.h +194 -56
  187. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/CanvasNative.h +1 -0
  188. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/NSCMTLView.h +32 -0
  189. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_ios.h +152 -151
  190. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_native.h +2901 -411
  191. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Info.plist +0 -0
  192. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  193. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.abi.json +10901 -8099
  194. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.private.swiftinterface +259 -52
  195. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  196. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftinterface +259 -52
  197. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/Noto_Serif_CJK/NotoSerifTC-Black.ttf +0 -0
  198. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/Noto_Serif_CJK/NotoSerifTC-Bold.ttf +0 -0
  199. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/Noto_Serif_CJK/NotoSerifTC-ExtraBold.ttf +0 -0
  200. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/Noto_Serif_CJK/NotoSerifTC-ExtraLight.ttf +0 -0
  201. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/Noto_Serif_CJK/NotoSerifTC-Light.ttf +0 -0
  202. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/Noto_Serif_CJK/NotoSerifTC-Medium.ttf +0 -0
  203. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/Noto_Serif_CJK/NotoSerifTC-Regular.ttf +0 -0
  204. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/Noto_Serif_CJK/NotoSerifTC-SemiBold.ttf +0 -0
  205. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoMath-Regular.ttf +0 -0
  206. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoText-Bold.ttf +0 -0
  207. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoText-BoldItalic.ttf +0 -0
  208. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoText-Italic.ttf +0 -0
  209. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoText-Medium.ttf +0 -0
  210. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoText-MediumItalic.ttf +0 -0
  211. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoText-Regular.ttf +0 -0
  212. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoText-SemiBold.ttf +0 -0
  213. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoText-SemiBoldItalic.ttf +0 -0
  214. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  215. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/aarch64/CanvasNative.yml +994 -663
  216. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/CanvasNative +0 -0
  217. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/CanvasNative-Swift.h +388 -112
  218. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/CanvasNative.h +1 -0
  219. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/NSCMTLView.h +32 -0
  220. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_ios.h +152 -151
  221. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_native.h +2901 -411
  222. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Info.plist +0 -0
  223. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
  224. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
  225. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.abi.json +10901 -8099
  226. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +259 -52
  227. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  228. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftinterface +259 -52
  229. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.abi.json +10901 -8099
  230. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +259 -52
  231. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  232. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +259 -52
  233. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/_CodeSignature/CodeResources +143 -33
  234. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/Noto_Serif_CJK/NotoSerifTC-Black.ttf +0 -0
  235. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/Noto_Serif_CJK/NotoSerifTC-Bold.ttf +0 -0
  236. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/Noto_Serif_CJK/NotoSerifTC-ExtraBold.ttf +0 -0
  237. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/Noto_Serif_CJK/NotoSerifTC-ExtraLight.ttf +0 -0
  238. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/Noto_Serif_CJK/NotoSerifTC-Light.ttf +0 -0
  239. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/Noto_Serif_CJK/NotoSerifTC-Medium.ttf +0 -0
  240. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/Noto_Serif_CJK/NotoSerifTC-Regular.ttf +0 -0
  241. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/Noto_Serif_CJK/NotoSerifTC-SemiBold.ttf +0 -0
  242. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoMath-Regular.ttf +0 -0
  243. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoText-Bold.ttf +0 -0
  244. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoText-BoldItalic.ttf +0 -0
  245. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoText-Italic.ttf +0 -0
  246. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoText-Medium.ttf +0 -0
  247. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoText-MediumItalic.ttf +0 -0
  248. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoText-Regular.ttf +0 -0
  249. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoText-SemiBold.ttf +0 -0
  250. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/fonts/STIXTwoMath/STIXTwoText-SemiBoldItalic.ttf +0 -0
  251. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  252. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/aarch64/CanvasNative.yml +993 -662
  253. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/x86_64/CanvasNative.yml +1037 -641
  254. package/platforms/ios/build.xcconfig +3 -1
  255. package/platforms/ios/src/NSOperationQueueWrapper.h +3 -1
  256. package/platforms/ios/src/NSOperationQueueWrapper.mm +41 -9
  257. package/platforms/ios/src/cpp/AsyncCallback.h +214 -0
  258. package/platforms/ios/src/cpp/Caches.h +69 -1
  259. package/platforms/ios/src/cpp/CanvasJSIModule.cpp +647 -1166
  260. package/platforms/ios/src/cpp/CanvasJSIModule.h +11 -1
  261. package/platforms/ios/src/cpp/Helpers.h +2 -129
  262. package/platforms/ios/src/cpp/ImageAssetImpl.cpp +600 -437
  263. package/platforms/ios/src/cpp/ImageAssetImpl.h +18 -10
  264. package/platforms/ios/src/cpp/ImageBitmapImpl.cpp +63 -6
  265. package/platforms/ios/src/cpp/ImageBitmapImpl.h +12 -4
  266. package/platforms/ios/src/cpp/JSIReadFileCallback.h +4 -4
  267. package/platforms/ios/src/cpp/NativeType.h +87 -0
  268. package/platforms/ios/src/cpp/ObjectWrapperImpl.h +50 -0
  269. package/platforms/ios/src/cpp/OneByteStringResource.cpp +2 -2
  270. package/platforms/ios/src/cpp/PromiseCallback.h +197 -0
  271. package/platforms/ios/src/cpp/RafImpl.h +2 -2
  272. package/platforms/ios/src/cpp/TextDecoderImpl.cpp +0 -6
  273. package/platforms/ios/src/cpp/TextDecoderImpl.h +3 -3
  274. package/platforms/ios/src/cpp/TextEncoderImpl.cpp +1 -1
  275. package/platforms/ios/src/cpp/TextEncoderImpl.h +3 -3
  276. package/platforms/ios/src/cpp/canvas2d/CanvasGradient.h +8 -7
  277. package/platforms/ios/src/cpp/canvas2d/CanvasPattern.cpp +1 -11
  278. package/platforms/ios/src/cpp/canvas2d/CanvasPattern.h +3 -3
  279. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.cpp +193 -90
  280. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.h +77 -23
  281. package/platforms/ios/src/cpp/canvas2d/ImageDataImpl.cpp +5 -6
  282. package/platforms/ios/src/cpp/canvas2d/ImageDataImpl.h +4 -4
  283. package/platforms/ios/src/cpp/canvas2d/MatrixImpl.cpp +409 -3
  284. package/platforms/ios/src/cpp/canvas2d/MatrixImpl.h +29 -2
  285. package/platforms/ios/src/cpp/canvas2d/Path2D.cpp +6 -3
  286. package/platforms/ios/src/cpp/canvas2d/Path2D.h +7 -7
  287. package/platforms/ios/src/cpp/canvas2d/TextMetricsImpl.h +3 -3
  288. package/platforms/ios/src/cpp/webgl/WebGLActiveInfoImpl.h +1 -1
  289. package/platforms/ios/src/cpp/webgl/WebGLBuffer.h +1 -1
  290. package/platforms/ios/src/cpp/webgl/WebGLFramebuffer.h +1 -1
  291. package/platforms/ios/src/cpp/webgl/WebGLProgram.h +3 -3
  292. package/platforms/ios/src/cpp/webgl/WebGLRenderbuffer.h +3 -3
  293. package/platforms/ios/src/cpp/webgl/WebGLRenderingContext.cpp +247 -160
  294. package/platforms/ios/src/cpp/webgl/WebGLRenderingContext.h +1 -1
  295. package/platforms/ios/src/cpp/webgl/WebGLRenderingContextBase.cpp +6 -6
  296. package/platforms/ios/src/cpp/webgl/WebGLShader.h +1 -1
  297. package/platforms/ios/src/cpp/webgl/WebGLShaderPrecisionFormatImpl.h +5 -5
  298. package/platforms/ios/src/cpp/webgl/WebGLTexture.h +3 -2
  299. package/platforms/ios/src/cpp/webgl/WebGLUniformLocation.h +2 -2
  300. package/platforms/ios/src/cpp/webgl/extensions/ANGLE_instanced_arraysImpl.h +1 -1
  301. package/platforms/ios/src/cpp/webgl/extensions/EXT_blend_minmaxImpl.h +1 -1
  302. package/platforms/ios/src/cpp/webgl/extensions/EXT_color_buffer_half_floatImpl.h +1 -1
  303. package/platforms/ios/src/cpp/webgl/extensions/EXT_disjoint_timer_queryImpl.h +1 -1
  304. package/platforms/ios/src/cpp/webgl/extensions/EXT_sRGBImpl.h +1 -1
  305. package/platforms/ios/src/cpp/webgl/extensions/EXT_shader_texture_lodImpl.h +1 -1
  306. package/platforms/ios/src/cpp/webgl/extensions/EXT_texture_filter_anisotropicImpl.h +1 -1
  307. package/platforms/ios/src/cpp/webgl/extensions/OES_element_index_uintImpl.h +2 -2
  308. package/platforms/ios/src/cpp/webgl/extensions/OES_fbo_render_mipmap.h +5 -5
  309. package/platforms/ios/src/cpp/webgl/extensions/OES_standard_derivativesImpl.h +1 -1
  310. package/platforms/ios/src/cpp/webgl/extensions/OES_texture_floatImpl.h +1 -1
  311. package/platforms/ios/src/cpp/webgl/extensions/OES_texture_float_linearImpl.h +1 -1
  312. package/platforms/ios/src/cpp/webgl/extensions/OES_texture_half_floatImpl.h +1 -1
  313. package/platforms/ios/src/cpp/webgl/extensions/OES_texture_half_float_linearImpl.h +1 -1
  314. package/platforms/ios/src/cpp/webgl/extensions/OES_vertex_array_objectImpl.h +1 -1
  315. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_color_buffer_floatImpl.h +1 -1
  316. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_atcImpl.h +1 -1
  317. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_etc1Impl.h +1 -1
  318. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_etcImpl.h +2 -2
  319. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_pvrtcImpl.h +1 -1
  320. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_s3tcImpl.h +1 -1
  321. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_compressed_texture_s3tc_srgbImpl.h +1 -1
  322. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_depth_textureImpl.h +1 -1
  323. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_draw_buffersImpl.h +1 -1
  324. package/platforms/ios/src/cpp/webgl/extensions/WEBGL_lose_contextImpl.h +1 -1
  325. package/platforms/ios/src/cpp/webgl2/WebGL2RenderingContext.cpp +1067 -960
  326. package/platforms/ios/src/cpp/webgl2/WebGL2RenderingContext.h +1 -1
  327. package/platforms/ios/src/cpp/webgl2/WebGLQuery.h +1 -1
  328. package/platforms/ios/src/cpp/webgl2/WebGLSampler.h +1 -1
  329. package/platforms/ios/src/cpp/webgl2/WebGLSyncImpl.h +1 -1
  330. package/platforms/ios/src/cpp/webgl2/WebGLTransformFeedback.h +1 -1
  331. package/platforms/ios/src/cpp/webgl2/WebGLVertexArrayObject.h +2 -2
  332. package/platforms/ios/src/cpp/webgpu/GPUAdapterImpl.cpp +371 -0
  333. package/platforms/ios/src/cpp/webgpu/GPUAdapterImpl.h +63 -0
  334. package/platforms/ios/src/cpp/webgpu/GPUAdapterInfoImpl.cpp +174 -0
  335. package/platforms/ios/src/cpp/webgpu/GPUAdapterInfoImpl.h +58 -0
  336. package/platforms/ios/src/cpp/webgpu/GPUBindGroupImpl.cpp +79 -0
  337. package/platforms/ios/src/cpp/webgpu/GPUBindGroupImpl.h +48 -0
  338. package/platforms/ios/src/cpp/webgpu/GPUBindGroupLayoutImpl.cpp +79 -0
  339. package/platforms/ios/src/cpp/webgpu/GPUBindGroupLayoutImpl.h +48 -0
  340. package/platforms/ios/src/cpp/webgpu/GPUBufferImpl.cpp +277 -0
  341. package/platforms/ios/src/cpp/webgpu/GPUBufferImpl.h +63 -0
  342. package/platforms/ios/src/cpp/webgpu/GPUCanvasContextImpl.cpp +379 -0
  343. package/platforms/ios/src/cpp/webgpu/GPUCanvasContextImpl.h +57 -0
  344. package/platforms/ios/src/cpp/webgpu/GPUCommandBufferImpl.cpp +81 -0
  345. package/platforms/ios/src/cpp/webgpu/GPUCommandBufferImpl.h +48 -0
  346. package/platforms/ios/src/cpp/webgpu/GPUCommandEncoderImpl.cpp +1217 -0
  347. package/platforms/ios/src/cpp/webgpu/GPUCommandEncoderImpl.h +73 -0
  348. package/platforms/ios/src/cpp/webgpu/GPUComputePassEncoderImpl.cpp +293 -0
  349. package/platforms/ios/src/cpp/webgpu/GPUComputePassEncoderImpl.h +65 -0
  350. package/platforms/ios/src/cpp/webgpu/GPUComputePipelineImpl.cpp +109 -0
  351. package/platforms/ios/src/cpp/webgpu/GPUComputePipelineImpl.h +51 -0
  352. package/platforms/ios/src/cpp/webgpu/GPUDeviceImpl.cpp +3701 -0
  353. package/platforms/ios/src/cpp/webgpu/GPUDeviceImpl.h +97 -0
  354. package/platforms/ios/src/cpp/webgpu/GPUImpl.cpp +200 -0
  355. package/platforms/ios/src/cpp/webgpu/GPUImpl.h +55 -0
  356. package/platforms/ios/src/cpp/webgpu/GPULabel.h +33 -0
  357. package/platforms/ios/src/cpp/webgpu/GPUPipelineLayoutImpl.cpp +80 -0
  358. package/platforms/ios/src/cpp/webgpu/GPUPipelineLayoutImpl.h +49 -0
  359. package/platforms/ios/src/cpp/webgpu/GPUQuerySetImpl.cpp +136 -0
  360. package/platforms/ios/src/cpp/webgpu/GPUQuerySetImpl.h +55 -0
  361. package/platforms/ios/src/cpp/webgpu/GPUQueueImpl.cpp +605 -0
  362. package/platforms/ios/src/cpp/webgpu/GPUQueueImpl.h +59 -0
  363. package/platforms/ios/src/cpp/webgpu/GPURenderBundleEncoderImpl.cpp +501 -0
  364. package/platforms/ios/src/cpp/webgpu/GPURenderBundleEncoderImpl.h +74 -0
  365. package/platforms/ios/src/cpp/webgpu/GPURenderBundleImpl.cpp +78 -0
  366. package/platforms/ios/src/cpp/webgpu/GPURenderBundleImpl.h +48 -0
  367. package/platforms/ios/src/cpp/webgpu/GPURenderPassEncoderImpl.cpp +723 -0
  368. package/platforms/ios/src/cpp/webgpu/GPURenderPassEncoderImpl.h +92 -0
  369. package/platforms/ios/src/cpp/webgpu/GPURenderPipelineImpl.cpp +109 -0
  370. package/platforms/ios/src/cpp/webgpu/GPURenderPipelineImpl.h +52 -0
  371. package/platforms/ios/src/cpp/webgpu/GPUSamplerImpl.cpp +79 -0
  372. package/platforms/ios/src/cpp/webgpu/GPUSamplerImpl.h +48 -0
  373. package/platforms/ios/src/cpp/webgpu/GPUShaderModuleImpl.cpp +80 -0
  374. package/platforms/ios/src/cpp/webgpu/GPUShaderModuleImpl.h +48 -0
  375. package/platforms/ios/src/cpp/webgpu/GPUSupportedLimitsImpl.cpp +1304 -0
  376. package/platforms/ios/src/cpp/webgpu/GPUSupportedLimitsImpl.h +288 -0
  377. package/platforms/ios/src/cpp/webgpu/GPUTextureImpl.cpp +386 -0
  378. package/platforms/ios/src/cpp/webgpu/GPUTextureImpl.h +77 -0
  379. package/platforms/ios/src/cpp/webgpu/GPUTextureViewImpl.cpp +79 -0
  380. package/platforms/ios/src/cpp/webgpu/GPUTextureViewImpl.h +48 -0
  381. package/platforms/ios/src/cpp/webgpu/GPUUtils.h +756 -0
  382. package/react/index.d.ts +1 -1
  383. package/utils.d.ts +1 -1
  384. package/utils.js.map +1 -1
  385. package/SVG/Circle.d.ts +0 -11
  386. package/SVG/Circle.js +0 -21
  387. package/SVG/Circle.js.map +0 -1
  388. package/SVG/ClipPath.d.ts +0 -4
  389. package/SVG/ClipPath.js +0 -9
  390. package/SVG/ClipPath.js.map +0 -1
  391. package/SVG/Defs.d.ts +0 -4
  392. package/SVG/Defs.js +0 -9
  393. package/SVG/Defs.js.map +0 -1
  394. package/SVG/Ellipse.d.ts +0 -13
  395. package/SVG/Ellipse.js +0 -26
  396. package/SVG/Ellipse.js.map +0 -1
  397. package/SVG/G.d.ts +0 -7
  398. package/SVG/G.js +0 -9
  399. package/SVG/G.js.map +0 -1
  400. package/SVG/Image.d.ts +0 -11
  401. package/SVG/Image.js +0 -40
  402. package/SVG/Image.js.map +0 -1
  403. package/SVG/Line.d.ts +0 -13
  404. package/SVG/Line.js +0 -26
  405. package/SVG/Line.js.map +0 -1
  406. package/SVG/LinearGradient.d.ts +0 -10
  407. package/SVG/LinearGradient.js +0 -13
  408. package/SVG/LinearGradient.js.map +0 -1
  409. package/SVG/Path.d.ts +0 -7
  410. package/SVG/Path.js +0 -14
  411. package/SVG/Path.js.map +0 -1
  412. package/SVG/Pattern.d.ts +0 -4
  413. package/SVG/Pattern.js +0 -9
  414. package/SVG/Pattern.js.map +0 -1
  415. package/SVG/Polygon.d.ts +0 -7
  416. package/SVG/Polygon.js +0 -14
  417. package/SVG/Polygon.js.map +0 -1
  418. package/SVG/Polyline.d.ts +0 -7
  419. package/SVG/Polyline.js +0 -14
  420. package/SVG/Polyline.js.map +0 -1
  421. package/SVG/Rect.d.ts +0 -8
  422. package/SVG/Rect.js +0 -13
  423. package/SVG/Rect.js.map +0 -1
  424. package/SVG/SVG.d.ts +0 -32
  425. package/SVG/SVG.js +0 -204
  426. package/SVG/SVG.js.map +0 -1
  427. package/SVG/SVGItem.d.ts +0 -5
  428. package/SVG/SVGItem.js +0 -8
  429. package/SVG/SVGItem.js.map +0 -1
  430. package/SVG/Stop.d.ts +0 -5
  431. package/SVG/Stop.js +0 -9
  432. package/SVG/Stop.js.map +0 -1
  433. package/SVG/Symbol.d.ts +0 -4
  434. package/SVG/Symbol.js +0 -9
  435. package/SVG/Symbol.js.map +0 -1
  436. package/SVG/Text.d.ts +0 -14
  437. package/SVG/Text.js +0 -26
  438. package/SVG/Text.js.map +0 -1
  439. package/SVG/Use.d.ts +0 -4
  440. package/SVG/Use.js +0 -9
  441. package/SVG/Use.js.map +0 -1
  442. package/SVG/index.d.ts +0 -18
  443. package/SVG/index.js +0 -19
  444. package/SVG/index.js.map +0 -1
  445. package/angular/fesm2020/nativescript-canvas-angular.mjs +0 -24
  446. package/angular/fesm2020/nativescript-canvas-angular.mjs.map +0 -1
  447. package/platforms/ios/src/cpp/PerIsolateData.cpp +0 -49
  448. package/platforms/ios/src/cpp/PerIsolateData.h +0 -54
  449. package/platforms/ios/src/cpp/URLImpl.cpp +0 -464
  450. package/platforms/ios/src/cpp/URLImpl.h +0 -121
  451. package/typings/objc!CanvasNative.d.ts +0 -2038
  452. package/typings/objc!CanvasNative.js +0 -1
  453. package/typings/objc!CanvasNative.js.map +0 -1
  454. /package/angular/{esm2020 → esm2022}/nativescript-canvas-angular.mjs +0 -0
@@ -1,19 +1,11 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var __metadata = (this && this.__metadata) || function (k, v) {
8
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
- };
10
- import { CanvasBase, doc, ignorePixelScalingProperty, ignoreTouchEventsProperty, DOMRect } from './common';
1
+ import { CanvasBase, doc, ignoreTouchEventsProperty, DOMRect } from './common';
11
2
  import { DOMMatrix } from '../Canvas2D';
12
3
  import { CanvasRenderingContext2D } from '../Canvas2D/CanvasRenderingContext2D';
13
4
  import { WebGLRenderingContext } from '../WebGL/WebGLRenderingContext';
14
5
  import { WebGL2RenderingContext } from '../WebGL2/WebGL2RenderingContext';
15
- import { ImageSource, Utils, profile, Screen } from '@nativescript/core';
16
- export * from './common';
6
+ import { ImageSource, Utils, Screen } from '@nativescript/core';
7
+ import { GPUCanvasContext } from '../WebGPU';
8
+ import { handleContextOptions } from './utils';
17
9
  export function createSVGMatrix() {
18
10
  return new DOMMatrix();
19
11
  }
@@ -35,7 +27,19 @@ var ContextType;
35
27
  ContextType[ContextType["Canvas"] = 1] = "Canvas";
36
28
  ContextType[ContextType["WebGL"] = 2] = "WebGL";
37
29
  ContextType[ContextType["WebGL2"] = 3] = "WebGL2";
30
+ ContextType[ContextType["WebGPU"] = 4] = "WebGPU";
38
31
  })(ContextType || (ContextType = {}));
32
+ const viewRect_ = Symbol('[[viewRect]]');
33
+ function valueToNumber(value) {
34
+ switch (typeof value) {
35
+ case 'string':
36
+ return parseFloat(value);
37
+ case 'number':
38
+ return value;
39
+ default:
40
+ return NaN;
41
+ }
42
+ }
39
43
  export class Canvas extends CanvasBase {
40
44
  constructor(nativeInstance) {
41
45
  super();
@@ -46,6 +50,7 @@ export class Canvas extends CanvasBase {
46
50
  this._isBatch = false;
47
51
  this._didLayout = false;
48
52
  this._iosOverflowSafeArea = false;
53
+ NSCCanvas.forceGL = false;
49
54
  if (nativeInstance) {
50
55
  // allows Worker usage
51
56
  this._canvas = nativeInstance;
@@ -76,6 +81,7 @@ export class Canvas extends CanvasBase {
76
81
  }
77
82
  this.native.__stopRaf();
78
83
  };
84
+ global.__canvasLoaded = true;
79
85
  this._canvas.becomeActiveListener = () => {
80
86
  if (!this.native) {
81
87
  return;
@@ -87,8 +93,11 @@ export class Canvas extends CanvasBase {
87
93
  };
88
94
  }
89
95
  }
90
- [ignorePixelScalingProperty.setNative](value) {
91
- this._canvas.ignorePixelScaling = value;
96
+ static get forceGL() {
97
+ return NSCCanvas.forceGL;
98
+ }
99
+ static set forceGL(value) {
100
+ NSCCanvas.forceGL = value;
92
101
  }
93
102
  [ignoreTouchEventsProperty.setNative](value) {
94
103
  this._canvas.ignoreTouchEvents = value;
@@ -98,42 +107,60 @@ export class Canvas extends CanvasBase {
98
107
  return this._canvas;
99
108
  }
100
109
  get clientWidth() {
101
- return this.width;
110
+ return Math.floor(this.getMeasuredWidth() / Screen.mainScreen.scale);
102
111
  }
103
112
  get clientHeight() {
104
- return this.height;
113
+ return Math.floor(this.getMeasuredHeight() / Screen.mainScreen.scale);
105
114
  }
106
- //@ts-ignore
115
+ get drawingBufferHeight() {
116
+ if (this._canvas === undefined || this._canvas === null) {
117
+ return 0;
118
+ }
119
+ return this._canvas.drawingBufferHeight;
120
+ }
121
+ get drawingBufferWidth() {
122
+ if (this._canvas === undefined || this._canvas === null) {
123
+ return 0;
124
+ }
125
+ return this._canvas.drawingBufferWidth;
126
+ }
127
+ // @ts-ignore
107
128
  get width() {
108
- // const measuredWidth = this.getMeasuredWidth();
109
- // if (measuredWidth !== 0) {
110
- // return measuredWidth / Screen.mainScreen.scale;
111
- // }
112
- return this._realSize.width;
129
+ if (this._canvas === undefined || this._canvas === null) {
130
+ return 0;
131
+ }
132
+ return this._canvas.surfaceWidth;
113
133
  }
114
134
  set width(value) {
115
- if (value === this.style.width) {
135
+ if (this._canvas === undefined || this._canvas === null) {
116
136
  return;
117
137
  }
118
- this.style.width = value;
119
- this._didLayout = false;
120
- this._layoutNative(true);
138
+ value = valueToNumber(value);
139
+ if (!Number.isNaN(value)) {
140
+ const newValue = Math.floor(value);
141
+ this._canvas.surfaceWidth = newValue;
142
+ const { fit, transform } = this._getFit(this._canvas.frame);
143
+ this._updateScale(fit, transform ?? CATransform3DIdentity);
144
+ }
121
145
  }
122
- //@ts-ignore
146
+ // @ts-ignore
123
147
  get height() {
124
- // const measuredHeight = this.getMeasuredHeight();
125
- // if (measuredHeight !== 0) {
126
- // return measuredHeight / Screen.mainScreen.scale;
127
- // }
128
- return this._realSize.height;
148
+ if (this._canvas === undefined || this._canvas === null) {
149
+ return 0;
150
+ }
151
+ return this._canvas.surfaceHeight;
129
152
  }
130
153
  set height(value) {
131
- if (value === this.style.height) {
154
+ if (this._canvas === undefined || this._canvas === null) {
132
155
  return;
133
156
  }
134
- this.style.height = value;
135
- this._didLayout = false;
136
- this._layoutNative(true);
157
+ value = valueToNumber(value);
158
+ if (!Number.isNaN(value)) {
159
+ const newValue = Math.floor(value);
160
+ this._canvas.surfaceHeight = newValue;
161
+ const { fit, transform } = this._getFit(this._canvas.frame);
162
+ this._updateScale(fit, transform ?? CATransform3DIdentity);
163
+ }
137
164
  }
138
165
  //@ts-ignore
139
166
  get iosOverflowSafeArea() {
@@ -152,50 +179,47 @@ export class Canvas extends CanvasBase {
152
179
  }
153
180
  static createCustomView() {
154
181
  const canvas = new Canvas();
155
- canvas._isBatch = true;
156
182
  canvas._isCustom = true;
157
- canvas.style.width = 300;
158
- canvas.style.height = 150;
159
- canvas._isBatch = false;
160
- canvas._layoutNative();
161
183
  return canvas;
162
184
  }
163
185
  onLayout(left, top, right, bottom) {
164
186
  super.onLayout(left, top, right, bottom);
165
- const parent = this.parent;
166
- // TODO change DIPs once implemented
167
- if (parent && parent.clientWidth === undefined && parent.clientHeight === undefined) {
168
- Object.defineProperty(parent, 'clientWidth', {
169
- get: function () {
170
- return parent.getMeasuredWidth() / Screen.mainScreen.scale;
187
+ if (!this.parent) {
188
+ return;
189
+ }
190
+ if (!Object.hasOwn(this.parent, 'clientWidth') && !Object.hasOwn(this.parent, 'clientHeight')) {
191
+ Object.defineProperties(this.parent, {
192
+ clientWidth: {
193
+ get: function () {
194
+ return Math.floor(this.getMeasuredWidth() / Screen.mainScreen.scale);
195
+ },
171
196
  },
172
- });
173
- Object.defineProperty(parent, 'clientHeight', {
174
- get: function () {
175
- return parent.getMeasuredHeight() / Screen.mainScreen.scale;
197
+ clientHeight: {
198
+ get: function () {
199
+ return Math.floor(this.getMeasuredHeight() / Screen.mainScreen.scale);
200
+ },
176
201
  },
177
202
  });
178
203
  }
179
- if (parent && typeof parent.getBoundingClientRect !== 'function') {
180
- parent.getBoundingClientRect = function () {
204
+ if (typeof this.parent.getBoundingClientRect !== 'function') {
205
+ this.parent.getBoundingClientRect = function () {
181
206
  const view = this;
182
- const frame = view.ios.frame;
183
- const width = view.width;
184
- const height = view.height;
185
- return {
186
- bottom: height,
187
- height: height,
188
- left: frame.origin.x,
189
- right: width,
190
- top: frame.origin.y,
191
- width: width,
192
- x: frame.origin.x,
193
- y: frame.origin.y,
194
- };
207
+ if (!view) {
208
+ return new DOMRect(0, 0, 0, 0);
209
+ }
210
+ const nativeView = view?.nativeView;
211
+ if (!view[viewRect_]) {
212
+ view[viewRect_] = new Float32Array(8);
213
+ }
214
+ if (!nativeView) {
215
+ return new DOMRect(0, 0, 0, 0);
216
+ }
217
+ nativeView.getBoundingClientRect(view[viewRect_]);
218
+ return new DOMRect(view[viewRect_][6], view[viewRect_][7], view[viewRect_][4], view[viewRect_][5], view[viewRect_][0], view[viewRect_][1], view[viewRect_][2], view[viewRect_][3]);
195
219
  };
196
220
  }
197
- if (parent && parent.ownerDocument === undefined) {
198
- Object.defineProperty(parent, 'ownerDocument', {
221
+ if (!Object.hasOwn(this.parent, 'ownerDocument')) {
222
+ Object.defineProperty(this.parent, 'ownerDocument', {
199
223
  get: function () {
200
224
  return global?.window?.document ?? doc;
201
225
  },
@@ -203,7 +227,7 @@ export class Canvas extends CanvasBase {
203
227
  }
204
228
  }
205
229
  onMeasure(widthMeasureSpec, heightMeasureSpec) {
206
- const nativeView = this.nativeView;
230
+ const nativeView = this._canvas;
207
231
  if (nativeView) {
208
232
  const width = Utils.layout.getMeasureSpecSize(widthMeasureSpec);
209
233
  const height = Utils.layout.getMeasureSpecSize(heightMeasureSpec);
@@ -213,55 +237,103 @@ export class Canvas extends CanvasBase {
213
237
  createNativeView() {
214
238
  return this._canvas;
215
239
  }
216
- initNativeView() {
217
- super.initNativeView();
218
- this._canvas.ignorePixelScaling = this.ignorePixelScaling;
219
- }
220
- onUnloaded() {
221
- // this.ios.pause();
222
- this._didPause = true;
223
- super.onUnloaded();
224
- }
225
- onLoaded() {
226
- super.onLoaded();
227
- if (this._didPause) {
228
- // this.ios.resume();
229
- this._didPause = false;
230
- }
231
- }
232
240
  disposeNativeView() {
233
241
  this._canvas?.setListener?.(null);
234
242
  this._readyListener = undefined;
235
243
  this._canvas = undefined;
236
244
  super.disposeNativeView();
237
245
  }
238
- _layoutNative(force = false) {
239
- if (this._isBatch) {
240
- return;
241
- }
242
- if (!this._isCustom && !force) {
243
- return;
244
- }
245
- if (this._didLayout && !force) {
246
- return;
247
- }
248
- if (!this.parent || force) {
249
- if (!force || (typeof this.style.width === 'string' && this.style.width.indexOf('%')) || (typeof this.style.height === 'string' && this.style.height.indexOf('%'))) {
250
- return;
246
+ _getFit(frame) {
247
+ const styleWidth = this.style.width;
248
+ const styleHeight = this.style.height;
249
+ let fit = 1;
250
+ let newFrame = frame;
251
+ if (typeof styleWidth === 'object' && typeof styleHeight === 'object') {
252
+ if (styleWidth?.unit === '%' && styleWidth.value >= 1 && styleHeight?.unit === '%' && styleHeight.value >= 1) {
253
+ fit = 1;
254
+ }
255
+ else if ((styleWidth?.unit === 'px' || styleWidth?.unit === 'dip') && (styleHeight?.unit === 'px' || styleHeight?.unit === 'dip')) {
256
+ const width = Math.floor(this._canvas.surfaceWidth / Screen.mainScreen.scale);
257
+ const height = Math.floor(this._canvas.surfaceHeight / Screen.mainScreen.scale);
258
+ if (frame.size.width > width || frame.size.height > height) {
259
+ fit = 4;
260
+ }
261
+ else {
262
+ fit = 1;
263
+ }
251
264
  }
252
- if (this._canvas === undefined || this._canvas === null) {
253
- return;
265
+ else {
266
+ fit = 1;
267
+ }
268
+ }
269
+ else if (typeof styleWidth === 'object' && styleHeight === 'auto') {
270
+ if (styleWidth?.unit === 'px' || styleWidth?.unit === 'dip' || styleWidth?.unit === '%') {
271
+ fit = 2;
254
272
  }
255
- const size = this._realSize;
256
- // todo revisit
257
- const width = Utils.layout.toDevicePixels(size.width || 1);
258
- const height = Utils.layout.toDevicePixels(size.height || 1);
259
- this._canvas.forceLayout(size.width, size.height);
260
- if (this._is2D) {
261
- this._2dContext?.native?.__resize?.(width, height);
273
+ }
274
+ else if (styleWidth === 'auto' && typeof styleHeight === 'object') {
275
+ if (styleHeight?.unit === 'px' || styleHeight?.unit === 'dip' || styleHeight?.unit === '%') {
276
+ fit = 3;
262
277
  }
263
- this._didLayout = true;
264
278
  }
279
+ else if (styleWidth === 'auto' && styleHeight === 'auto') {
280
+ // when auto/auto is set force the frame size to be the same as the canvas
281
+ const width = Math.floor(this._canvas.surfaceWidth / Screen.mainScreen.scale);
282
+ const height = Math.floor(this._canvas.surfaceHeight / Screen.mainScreen.scale);
283
+ newFrame = CGRectMake(frame.origin.x, frame.origin.y, width, height);
284
+ fit = 0;
285
+ }
286
+ else {
287
+ fit = 1;
288
+ }
289
+ let transform;
290
+ const scaledInternalWidth = Math.floor(this._canvas.surfaceWidth / Screen.mainScreen.scale);
291
+ const scaledInternalHeight = Math.floor(this._canvas.surfaceHeight / Screen.mainScreen.scale);
292
+ let scaleX = frame.size.width / scaledInternalWidth;
293
+ let scaleY = frame.size.height / scaledInternalHeight;
294
+ switch (fit) {
295
+ case 0:
296
+ transform = CATransform3DIdentity;
297
+ break;
298
+ case 1:
299
+ transform = CATransform3DMakeScale(scaleX, scaleY, 0);
300
+ break;
301
+ case 2:
302
+ {
303
+ const dx = (frame.size.width - scaledInternalWidth) / 2;
304
+ const dy = (scaledInternalHeight * scaleX - scaledInternalHeight) / 2;
305
+ transform = CATransform3DMakeScale(scaleX, scaleX, 0);
306
+ transform = CATransform3DConcat(transform, CATransform3DMakeTranslation(dx, dy, 0));
307
+ }
308
+ break;
309
+ case 3:
310
+ {
311
+ const dx = (scaledInternalWidth * scaleY - scaledInternalWidth) / 2;
312
+ const dy = (frame.size.height - scaledInternalHeight) / 2;
313
+ transform = CATransform3DMakeScale(scaleY, scaleY, 0);
314
+ transform = CATransform3DConcat(transform, CATransform3DMakeTranslation(dx, dy, 0));
315
+ }
316
+ break;
317
+ case 4:
318
+ {
319
+ const scale = Math.min(Math.min(scaleX, scaleY), 1);
320
+ transform = CATransform3DMakeScale(scale, scale, 1);
321
+ }
322
+ break;
323
+ }
324
+ return { fit, frame: newFrame, transform };
325
+ }
326
+ _updateScale(fit, transform) {
327
+ CATransaction.begin();
328
+ CATransaction.setDisableActions(true);
329
+ this._canvas.subviews.objectAtIndex(0).layer.transform = transform;
330
+ this._canvas.subviews.objectAtIndex(1).layer.transform = transform;
331
+ CATransaction.commit();
332
+ }
333
+ _setNativeViewFrame(nativeView, currentFrame) {
334
+ const { fit, frame, transform } = this._getFit(currentFrame);
335
+ super._setNativeViewFrame(nativeView, frame);
336
+ this._updateScale(fit, transform ?? CATransform3DIdentity);
265
337
  }
266
338
  getContext(type, options) {
267
339
  if (!this._canvas) {
@@ -273,8 +345,7 @@ export class Canvas extends CanvasBase {
273
345
  return null;
274
346
  }
275
347
  if (!this._2dContext) {
276
- this._layoutNative(true);
277
- const opts = { ...defaultOpts, ...this._handleContextOptions(type, options), fontColor: this.parent?.style?.color?.android || -16777216 };
348
+ const opts = { ...defaultOpts, ...handleContextOptions(type, options), fontColor: this.parent?.style?.color?.android || -16777216 };
278
349
  const ctx = this._canvas.create2DContext(opts.alpha, opts.antialias, opts.depth, opts.failIfMajorPerformanceCaveat, opts.powerPreference, opts.premultipliedAlpha, opts.preserveDrawingBuffer, opts.stencil, opts.desynchronized, opts.xrCompatible, opts.fontColor);
279
350
  this._2dContext = new CanvasRenderingContext2D(ctx);
280
351
  // // @ts-ignore
@@ -291,8 +362,7 @@ export class Canvas extends CanvasBase {
291
362
  return null;
292
363
  }
293
364
  if (!this._webglContext) {
294
- this._layoutNative(true);
295
- const opts = { version: 'v1', ...defaultOpts, ...this._handleContextOptions(type, options) };
365
+ const opts = { version: 1, ...defaultOpts, ...handleContextOptions(type, options) };
296
366
  this._canvas.initContext(type, opts.alpha, false, opts.depth, opts.failIfMajorPerformanceCaveat, opts.powerPreference, opts.premultipliedAlpha, opts.preserveDrawingBuffer, opts.stencil, opts.desynchronized, opts.xrCompatible);
297
367
  this._webglContext = new WebGLRenderingContext(this._canvas, opts);
298
368
  this._webglContext._canvas = this;
@@ -301,13 +371,12 @@ export class Canvas extends CanvasBase {
301
371
  }
302
372
  return this._webglContext;
303
373
  }
304
- else if (type === 'webgl2') {
374
+ else if (type === 'webgl2' || type === 'experimental-webgl2') {
305
375
  if (this._2dContext || this._webglContext) {
306
376
  return null;
307
377
  }
308
378
  if (!this._webgl2Context) {
309
- this._layoutNative(true);
310
- const opts = { version: 'v2', ...defaultOpts, ...this._handleContextOptions(type, options) };
379
+ const opts = { version: 2, ...defaultOpts, ...handleContextOptions(type, options) };
311
380
  this._canvas.initContext(type, opts.alpha, false, opts.depth, opts.failIfMajorPerformanceCaveat, opts.powerPreference, opts.premultipliedAlpha, opts.preserveDrawingBuffer, opts.stencil, opts.desynchronized, opts.xrCompatible);
312
381
  this._webgl2Context = new WebGL2RenderingContext(this._canvas, opts);
313
382
  this._webgl2Context._canvas = this;
@@ -316,6 +385,21 @@ export class Canvas extends CanvasBase {
316
385
  }
317
386
  return this._webgl2Context;
318
387
  }
388
+ else if (type === 'webgpu') {
389
+ if (this._2dContext || this._webglContext || this._webgl2Context) {
390
+ return null;
391
+ }
392
+ if (!this._gpuContext) {
393
+ const ptr = navigator.gpu.native.__getPointer();
394
+ const number = NSNumber.numberWithLong(Number(ptr));
395
+ this._canvas.initWebGPUContext(number);
396
+ this._gpuContext = new GPUCanvasContext(this._canvas);
397
+ this._gpuContext._canvas = this;
398
+ this._gpuContext._type = 'webgpu';
399
+ this._contextType = ContextType.WebGPU;
400
+ }
401
+ return this._gpuContext;
402
+ }
319
403
  }
320
404
  return null;
321
405
  }
@@ -325,8 +409,10 @@ export class Canvas extends CanvasBase {
325
409
  return this._2dContext.native;
326
410
  case ContextType.WebGL:
327
411
  return this._webglContext.native;
328
- case ContextType.Canvas:
412
+ case ContextType.WebGL2:
329
413
  return this._webgl2Context.native;
414
+ case ContextType.WebGPU:
415
+ return this._gpuContext.native;
330
416
  default:
331
417
  return null;
332
418
  }
@@ -335,6 +421,15 @@ export class Canvas extends CanvasBase {
335
421
  return this.__native__context;
336
422
  }
337
423
  toDataURL(type = 'image/png', encoderOptions = 0.92) {
424
+ if (this.width === 0 || this.height === 0) {
425
+ return 'data:,';
426
+ }
427
+ if (!this.native) {
428
+ return this._canvas.toDataURL(type, encoderOptions);
429
+ }
430
+ if (this._contextType === ContextType.WebGPU) {
431
+ return this._gpuContext.__toDataURL(type, encoderOptions);
432
+ }
338
433
  return this.native?.__toDataURL?.(type, encoderOptions);
339
434
  }
340
435
  snapshot(flip = false) {
@@ -353,18 +448,12 @@ export class Canvas extends CanvasBase {
353
448
  return this._jsBuffer;
354
449
  }
355
450
  getBoundingClientRect() {
356
- if (!this._canvas) {
451
+ if (!this._canvas || !this.parent) {
357
452
  return new DOMRect(0, 0, 0, 0);
358
453
  }
359
- NSCCanvas.getBoundingClientRect(this._canvas, this._boundingClientRect);
454
+ this._canvas.getBoundingClientRect(this._boundingClientRect);
360
455
  return new DOMRect(this._boundingClientRect[6], this._boundingClientRect[7], this._boundingClientRect[4], this._boundingClientRect[5], this._boundingClientRect[0], this._boundingClientRect[1], this._boundingClientRect[2], this._boundingClientRect[3]);
361
456
  }
362
457
  }
363
458
  Canvas.useSurface = false;
364
- __decorate([
365
- profile,
366
- __metadata("design:type", Function),
367
- __metadata("design:paramtypes", []),
368
- __metadata("design:returntype", void 0)
369
- ], Canvas.prototype, "onLoaded", null);
370
459
  //# sourceMappingURL=index.ios.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.ios.js","sourceRoot":"","sources":["../../../../packages/canvas/Canvas/index.ios.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.ios.js","sourceRoot":"","sources":["../../../../packages/canvas/Canvas/index.ios.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function parsePowerPreference(powerPreference: string): 1 | 2 | 0 | -1;
2
+ export declare function handleContextOptions(type: '2d' | 'webgl' | 'webgl2' | 'experimental-webgl' | 'experimental-webgl2', contextAttributes: any): any;
3
+ export declare function removeItemFromArray(array: any[], item: any): void;
@@ -0,0 +1,85 @@
1
+ const defaultGLOptions = {
2
+ alpha: true,
3
+ antialias: true,
4
+ depth: true,
5
+ failIfMajorPerformanceCaveat: false,
6
+ powerPreference: 'default',
7
+ premultipliedAlpha: true,
8
+ preserveDrawingBuffer: false,
9
+ stencil: false,
10
+ desynchronized: false,
11
+ xrCompatible: false,
12
+ };
13
+ const default2DOptions = {
14
+ alpha: true,
15
+ antialias: true,
16
+ depth: false,
17
+ failIfMajorPerformanceCaveat: false,
18
+ powerPreference: 'default',
19
+ premultipliedAlpha: true,
20
+ preserveDrawingBuffer: false,
21
+ stencil: false,
22
+ desynchronized: false,
23
+ xrCompatible: false,
24
+ };
25
+ export function parsePowerPreference(powerPreference) {
26
+ switch (powerPreference) {
27
+ case 'default':
28
+ return 0;
29
+ case 'high-performance':
30
+ return 1;
31
+ case 'low-power':
32
+ return 2;
33
+ default:
34
+ return -1;
35
+ }
36
+ }
37
+ export function handleContextOptions(type, contextAttributes) {
38
+ if (!contextAttributes) {
39
+ if (type === '2d') {
40
+ return { ...default2DOptions, powerPreference: 0 };
41
+ }
42
+ if (type.indexOf('webgl') > -1) {
43
+ return { ...defaultGLOptions, powerPreference: 0 };
44
+ }
45
+ }
46
+ if (type === '2d') {
47
+ if (contextAttributes.alpha !== undefined && typeof contextAttributes.alpha === 'boolean') {
48
+ return { ...contextAttributes, powerPreference: 0 };
49
+ }
50
+ else {
51
+ return { alpha: true, powerPreference: 0 };
52
+ }
53
+ }
54
+ const glOptions = { ...defaultGLOptions };
55
+ const setIfDefined = (prop, value) => {
56
+ const property = glOptions[prop];
57
+ if (property !== undefined && prop === 'powerPreference') {
58
+ // converts to int
59
+ glOptions[prop] = value;
60
+ }
61
+ if (property !== undefined && typeof value === typeof property) {
62
+ glOptions[prop] = value;
63
+ }
64
+ };
65
+ if (type.indexOf('webgl') > -1) {
66
+ setIfDefined('alpha', contextAttributes.alpha);
67
+ setIfDefined('antialias', contextAttributes.antialias);
68
+ setIfDefined('depth', contextAttributes.depth);
69
+ setIfDefined('failIfMajorPerformanceCaveat', contextAttributes.failIfMajorPerformanceCaveat);
70
+ setIfDefined('powerPreference', parsePowerPreference(contextAttributes.powerPreference ?? 'default'));
71
+ setIfDefined('premultipliedAlpha', contextAttributes.premultipliedAlpha);
72
+ setIfDefined('preserveDrawingBuffer', contextAttributes.preserveDrawingBuffer);
73
+ setIfDefined('stencil', contextAttributes.stencil);
74
+ setIfDefined('desynchronized', contextAttributes.desynchronized);
75
+ return glOptions;
76
+ }
77
+ return null;
78
+ }
79
+ export function removeItemFromArray(array, item) {
80
+ const index = array.indexOf(item);
81
+ if (index !== -1) {
82
+ array.splice(index, 1);
83
+ }
84
+ }
85
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../packages/canvas/Canvas/utils.ts"],"names":[],"mappings":"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"}