@shopify/react-native-skia 2.10.0 → 2.10.2

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 (332) hide show
  1. package/android/CMakeLists.txt +7 -41
  2. package/android/build.gradle +33 -0
  3. package/android/src/main/java/com/shopify/reactnative/skia/RNSkiaPackage.java +1 -2
  4. package/cpp/api/JsiNativeBuffer.h +14 -20
  5. package/cpp/api/JsiSkAnimatedImage.h +13 -16
  6. package/cpp/api/JsiSkAnimatedImageFactory.h +9 -7
  7. package/cpp/api/JsiSkApi.h +94 -90
  8. package/cpp/api/JsiSkCanvas.h +108 -251
  9. package/cpp/api/JsiSkColorFilterFactory.h +45 -63
  10. package/cpp/api/JsiSkContourMeasure.h +19 -29
  11. package/cpp/api/JsiSkContourMeasureIter.h +6 -6
  12. package/cpp/api/JsiSkConverters.h +410 -0
  13. package/cpp/api/JsiSkDataFactory.h +9 -15
  14. package/cpp/api/JsiSkFont.h +99 -180
  15. package/cpp/api/JsiSkFontMgr.h +19 -21
  16. package/cpp/api/JsiSkFontMgrFactory.h +4 -5
  17. package/cpp/api/JsiSkImage.h +66 -66
  18. package/cpp/api/JsiSkImageFactory.h +66 -63
  19. package/cpp/api/JsiSkImageFilterFactory.h +354 -608
  20. package/cpp/api/JsiSkImageInfo.h +10 -13
  21. package/cpp/api/JsiSkMaskFilterFactory.h +8 -11
  22. package/cpp/api/JsiSkMatrix.h +36 -73
  23. package/cpp/api/JsiSkNativeObjects.h +64 -96
  24. package/cpp/api/JsiSkPaint.h +73 -131
  25. package/cpp/api/JsiSkParagraph.h +36 -53
  26. package/cpp/api/JsiSkParagraphBuilder.h +36 -64
  27. package/cpp/api/JsiSkParagraphBuilderFactory.h +11 -16
  28. package/cpp/api/JsiSkPath.h +216 -349
  29. package/cpp/api/JsiSkPathBuilder.h +133 -269
  30. package/cpp/api/JsiSkPathBuilderFactory.h +11 -11
  31. package/cpp/api/JsiSkPathEffectFactory.h +52 -72
  32. package/cpp/api/JsiSkPathFactory.h +129 -195
  33. package/cpp/api/JsiSkPicture.h +12 -18
  34. package/cpp/api/JsiSkPictureRecorder.h +14 -15
  35. package/cpp/api/JsiSkPoint.h +4 -4
  36. package/cpp/api/JsiSkRRect.h +7 -8
  37. package/cpp/api/JsiSkRSXform.h +10 -23
  38. package/cpp/api/JsiSkRect.h +23 -31
  39. package/cpp/api/JsiSkRuntimeEffect.h +67 -83
  40. package/cpp/api/JsiSkRuntimeEffectFactory.h +6 -10
  41. package/cpp/api/JsiSkRuntimeShaderBuilder.h +5 -14
  42. package/cpp/api/JsiSkSVG.h +4 -4
  43. package/cpp/api/JsiSkShaderFactory.h +153 -225
  44. package/cpp/api/JsiSkSkottie.h +104 -126
  45. package/cpp/api/JsiSkSurface.h +11 -14
  46. package/cpp/api/JsiSkSurfaceFactory.h +6 -7
  47. package/cpp/api/JsiSkTextBlobFactory.h +31 -54
  48. package/cpp/api/JsiSkTypeface.h +8 -12
  49. package/cpp/api/JsiSkTypefaceFactory.h +9 -7
  50. package/cpp/api/JsiSkTypefaceFontProvider.h +22 -23
  51. package/cpp/api/JsiSkTypefaceFontProviderFactory.h +5 -6
  52. package/cpp/api/JsiSkVertices.h +6 -8
  53. package/cpp/api/JsiSkiaContext.h +10 -11
  54. package/cpp/api/JsiVideo.h +31 -71
  55. package/cpp/jsi/EnumMapper.h +2 -2
  56. package/cpp/jsi/JSIConverter.h +2 -33
  57. package/cpp/jsi/NativeObject.h +24 -19
  58. package/cpp/jsi/Promise.cpp +2 -2
  59. package/cpp/jsi/Promise.h +2 -2
  60. package/cpp/rnskia/RNDawnContext.h +18 -2
  61. package/cpp/rnskia/RNDawnInterop.cpp +19 -0
  62. package/cpp/rnskia/RNDawnUtils.h +18 -1
  63. package/cpp/rnskia/RNSkManager.cpp +5 -162
  64. package/cpp/skia/include/gpu/ganesh/GrDriverBugWorkaroundsAutogen.h +2 -0
  65. package/lib/commonjs/mock/index.js +0 -1
  66. package/lib/commonjs/mock/index.js.map +1 -1
  67. package/lib/commonjs/skia/types/Image/ImageFactory.d.ts +15 -6
  68. package/lib/commonjs/skia/types/Image/ImageFactory.js.map +1 -1
  69. package/lib/commonjs/skia/types/Skia.d.ts +5 -15
  70. package/lib/commonjs/skia/types/Skia.js.map +1 -1
  71. package/lib/commonjs/skia/types/index.d.ts +0 -1
  72. package/lib/commonjs/skia/types/index.js +0 -11
  73. package/lib/commonjs/skia/types/index.js.map +1 -1
  74. package/lib/commonjs/skia/web/JsiSkImageFactory.d.ts +2 -2
  75. package/lib/commonjs/skia/web/JsiSkImageFactory.js +2 -2
  76. package/lib/commonjs/skia/web/JsiSkImageFactory.js.map +1 -1
  77. package/lib/commonjs/skia/web/JsiSkia.js +1 -4
  78. package/lib/commonjs/skia/web/JsiSkia.js.map +1 -1
  79. package/lib/commonjs/views/index.d.ts +0 -1
  80. package/lib/commonjs/views/index.js +0 -11
  81. package/lib/commonjs/views/index.js.map +1 -1
  82. package/lib/module/mock/index.js +0 -1
  83. package/lib/module/mock/index.js.map +1 -1
  84. package/lib/module/skia/types/Image/ImageFactory.d.ts +15 -6
  85. package/lib/module/skia/types/Image/ImageFactory.js.map +1 -1
  86. package/lib/module/skia/types/Skia.d.ts +5 -15
  87. package/lib/module/skia/types/Skia.js.map +1 -1
  88. package/lib/module/skia/types/index.d.ts +0 -1
  89. package/lib/module/skia/types/index.js +0 -1
  90. package/lib/module/skia/types/index.js.map +1 -1
  91. package/lib/module/skia/web/JsiSkImageFactory.d.ts +2 -2
  92. package/lib/module/skia/web/JsiSkImageFactory.js +2 -2
  93. package/lib/module/skia/web/JsiSkImageFactory.js.map +1 -1
  94. package/lib/module/skia/web/JsiSkia.js +1 -4
  95. package/lib/module/skia/web/JsiSkia.js.map +1 -1
  96. package/lib/module/views/index.d.ts +0 -1
  97. package/lib/module/views/index.js +0 -1
  98. package/lib/module/views/index.js.map +1 -1
  99. package/lib/typescript/lib/commonjs/mock/index.d.ts +0 -1
  100. package/lib/typescript/lib/commonjs/skia/web/JsiSkImageFactory.d.ts +2 -2
  101. package/lib/typescript/lib/commonjs/skia/web/JsiSkia.d.ts +1 -2
  102. package/lib/typescript/lib/module/mock/index.d.ts +0 -2
  103. package/lib/typescript/lib/module/skia/Skia.web.d.ts +1 -2
  104. package/lib/typescript/lib/module/skia/types/index.d.ts +0 -1
  105. package/lib/typescript/lib/module/skia/web/JsiSkImageFactory.d.ts +2 -2
  106. package/lib/typescript/lib/module/skia/web/JsiSkia.d.ts +1 -2
  107. package/lib/typescript/lib/module/views/index.d.ts +0 -1
  108. package/lib/typescript/src/skia/types/Image/ImageFactory.d.ts +15 -6
  109. package/lib/typescript/src/skia/types/Skia.d.ts +5 -15
  110. package/lib/typescript/src/skia/types/index.d.ts +0 -1
  111. package/lib/typescript/src/skia/web/JsiSkImageFactory.d.ts +2 -2
  112. package/lib/typescript/src/views/index.d.ts +0 -1
  113. package/package.json +3 -4
  114. package/react-native-skia.podspec +38 -4
  115. package/src/mock/index.ts +0 -1
  116. package/src/skia/types/Image/ImageFactory.ts +15 -6
  117. package/src/skia/types/Skia.ts +5 -15
  118. package/src/skia/types/index.ts +0 -1
  119. package/src/skia/web/JsiSkImageFactory.ts +3 -3
  120. package/src/skia/web/JsiSkia.ts +2 -5
  121. package/src/views/index.ts +0 -1
  122. package/android/cpp/jni/JniWebGPUView.cpp +0 -112
  123. package/android/cpp/rnskia-android/SkiaPlatformContext.h +0 -26
  124. package/android/src/main/java/com/shopify/reactnative/skia/WebGPUSurfaceView.java +0 -43
  125. package/android/src/main/java/com/shopify/reactnative/skia/WebGPUTextureView.java +0 -50
  126. package/android/src/main/java/com/shopify/reactnative/skia/WebGPUView.java +0 -98
  127. package/android/src/main/java/com/shopify/reactnative/skia/WebGPUViewAPI.java +0 -19
  128. package/android/src/main/java/com/shopify/reactnative/skia/WebGPUViewManager.java +0 -58
  129. package/apple/RNWebGPUAppleNativeBuffer.mm +0 -33
  130. package/apple/SkiaPlatformContext.h +0 -20
  131. package/apple/SkiaPlatformContext.mm +0 -21
  132. package/apple/SkiaWebGPUView.mm +0 -81
  133. package/apple/WebGPUMetalView.mm +0 -136
  134. package/cpp/rnwgpu/ArrayBuffer.h +0 -116
  135. package/cpp/rnwgpu/Canvas.h +0 -52
  136. package/cpp/rnwgpu/PlatformContext.h +0 -18
  137. package/cpp/rnwgpu/SurfaceRegistry.h +0 -605
  138. package/cpp/rnwgpu/api/AppleNativeBuffer.h +0 -22
  139. package/cpp/rnwgpu/api/Convertors.h +0 -783
  140. package/cpp/rnwgpu/api/External.h +0 -12
  141. package/cpp/rnwgpu/api/GPU.cpp +0 -162
  142. package/cpp/rnwgpu/api/GPU.h +0 -60
  143. package/cpp/rnwgpu/api/GPUAdapter.cpp +0 -239
  144. package/cpp/rnwgpu/api/GPUAdapter.h +0 -60
  145. package/cpp/rnwgpu/api/GPUAdapterInfo.h +0 -57
  146. package/cpp/rnwgpu/api/GPUBindGroup.cpp +0 -3
  147. package/cpp/rnwgpu/api/GPUBindGroup.h +0 -51
  148. package/cpp/rnwgpu/api/GPUBindGroupLayout.h +0 -52
  149. package/cpp/rnwgpu/api/GPUBuffer.cpp +0 -107
  150. package/cpp/rnwgpu/api/GPUBuffer.h +0 -88
  151. package/cpp/rnwgpu/api/GPUCanvasContext.cpp +0 -75
  152. package/cpp/rnwgpu/api/GPUCanvasContext.h +0 -70
  153. package/cpp/rnwgpu/api/GPUCommandBuffer.h +0 -45
  154. package/cpp/rnwgpu/api/GPUCommandEncoder.cpp +0 -179
  155. package/cpp/rnwgpu/api/GPUCommandEncoder.h +0 -111
  156. package/cpp/rnwgpu/api/GPUCompilationInfo.h +0 -79
  157. package/cpp/rnwgpu/api/GPUCompilationMessage.h +0 -36
  158. package/cpp/rnwgpu/api/GPUComputePassEncoder.cpp +0 -60
  159. package/cpp/rnwgpu/api/GPUComputePassEncoder.h +0 -85
  160. package/cpp/rnwgpu/api/GPUComputePipeline.cpp +0 -12
  161. package/cpp/rnwgpu/api/GPUComputePipeline.h +0 -60
  162. package/cpp/rnwgpu/api/GPUDevice.cpp +0 -613
  163. package/cpp/rnwgpu/api/GPUDevice.h +0 -258
  164. package/cpp/rnwgpu/api/GPUDeviceLostInfo.cpp +0 -7
  165. package/cpp/rnwgpu/api/GPUDeviceLostInfo.h +0 -40
  166. package/cpp/rnwgpu/api/GPUError.h +0 -35
  167. package/cpp/rnwgpu/api/GPUExtent3D.h +0 -66
  168. package/cpp/rnwgpu/api/GPUExternalTexture.cpp +0 -139
  169. package/cpp/rnwgpu/api/GPUExternalTexture.h +0 -95
  170. package/cpp/rnwgpu/api/GPUFeatures.h +0 -203
  171. package/cpp/rnwgpu/api/GPUInternalError.h +0 -31
  172. package/cpp/rnwgpu/api/GPUOrigin2D.h +0 -55
  173. package/cpp/rnwgpu/api/GPUOrigin3D.h +0 -62
  174. package/cpp/rnwgpu/api/GPUOutOfMemoryError.h +0 -33
  175. package/cpp/rnwgpu/api/GPUPipelineLayout.h +0 -45
  176. package/cpp/rnwgpu/api/GPUQuerySet.cpp +0 -11
  177. package/cpp/rnwgpu/api/GPUQuerySet.h +0 -73
  178. package/cpp/rnwgpu/api/GPUQueue.cpp +0 -179
  179. package/cpp/rnwgpu/api/GPUQueue.h +0 -84
  180. package/cpp/rnwgpu/api/GPURenderBundle.h +0 -44
  181. package/cpp/rnwgpu/api/GPURenderBundleEncoder.cpp +0 -131
  182. package/cpp/rnwgpu/api/GPURenderBundleEncoder.h +0 -110
  183. package/cpp/rnwgpu/api/GPURenderPassEncoder.cpp +0 -165
  184. package/cpp/rnwgpu/api/GPURenderPassEncoder.h +0 -130
  185. package/cpp/rnwgpu/api/GPURenderPipeline.cpp +0 -13
  186. package/cpp/rnwgpu/api/GPURenderPipeline.h +0 -61
  187. package/cpp/rnwgpu/api/GPUSampler.h +0 -44
  188. package/cpp/rnwgpu/api/GPUShaderModule.cpp +0 -56
  189. package/cpp/rnwgpu/api/GPUShaderModule.h +0 -66
  190. package/cpp/rnwgpu/api/GPUSharedFence.cpp +0 -80
  191. package/cpp/rnwgpu/api/GPUSharedFence.h +0 -53
  192. package/cpp/rnwgpu/api/GPUSharedTextureMemory.cpp +0 -135
  193. package/cpp/rnwgpu/api/GPUSharedTextureMemory.h +0 -75
  194. package/cpp/rnwgpu/api/GPUSupportedLimits.cpp +0 -129
  195. package/cpp/rnwgpu/api/GPUSupportedLimits.h +0 -131
  196. package/cpp/rnwgpu/api/GPUTexture.cpp +0 -47
  197. package/cpp/rnwgpu/api/GPUTexture.h +0 -162
  198. package/cpp/rnwgpu/api/GPUTextureView.h +0 -44
  199. package/cpp/rnwgpu/api/GPUUncapturedErrorEvent.h +0 -60
  200. package/cpp/rnwgpu/api/GPUValidationError.h +0 -32
  201. package/cpp/rnwgpu/api/ImageBitmap.h +0 -62
  202. package/cpp/rnwgpu/api/NativeBufferUtils.h +0 -87
  203. package/cpp/rnwgpu/api/RNWebGPU.h +0 -82
  204. package/cpp/rnwgpu/api/WebGPUConstants.h +0 -36
  205. package/cpp/rnwgpu/api/descriptors/GPUBindGroupDescriptor.h +0 -64
  206. package/cpp/rnwgpu/api/descriptors/GPUBindGroupEntry.h +0 -78
  207. package/cpp/rnwgpu/api/descriptors/GPUBindGroupLayoutDescriptor.h +0 -56
  208. package/cpp/rnwgpu/api/descriptors/GPUBindGroupLayoutEntry.h +0 -97
  209. package/cpp/rnwgpu/api/descriptors/GPUBlendComponent.h +0 -57
  210. package/cpp/rnwgpu/api/descriptors/GPUBlendState.h +0 -52
  211. package/cpp/rnwgpu/api/descriptors/GPUBufferBinding.h +0 -56
  212. package/cpp/rnwgpu/api/descriptors/GPUBufferBindingLayout.h +0 -56
  213. package/cpp/rnwgpu/api/descriptors/GPUBufferDescriptor.h +0 -59
  214. package/cpp/rnwgpu/api/descriptors/GPUBufferUsage.h +0 -39
  215. package/cpp/rnwgpu/api/descriptors/GPUCanvasConfiguration.h +0 -76
  216. package/cpp/rnwgpu/api/descriptors/GPUColor.h +0 -66
  217. package/cpp/rnwgpu/api/descriptors/GPUColorTargetState.h +0 -58
  218. package/cpp/rnwgpu/api/descriptors/GPUColorWrite.h +0 -29
  219. package/cpp/rnwgpu/api/descriptors/GPUCommandBufferDescriptor.h +0 -45
  220. package/cpp/rnwgpu/api/descriptors/GPUCommandEncoderDescriptor.h +0 -45
  221. package/cpp/rnwgpu/api/descriptors/GPUComputePassDescriptor.h +0 -56
  222. package/cpp/rnwgpu/api/descriptors/GPUComputePassTimestampWrites.h +0 -58
  223. package/cpp/rnwgpu/api/descriptors/GPUComputePipelineDescriptor.h +0 -67
  224. package/cpp/rnwgpu/api/descriptors/GPUDawnTogglesDescriptor.h +0 -56
  225. package/cpp/rnwgpu/api/descriptors/GPUDepthStencilState.h +0 -103
  226. package/cpp/rnwgpu/api/descriptors/GPUDeviceDescriptor.h +0 -109
  227. package/cpp/rnwgpu/api/descriptors/GPUExternalTextureBindingLayout.h +0 -38
  228. package/cpp/rnwgpu/api/descriptors/GPUExternalTextureDescriptor.h +0 -90
  229. package/cpp/rnwgpu/api/descriptors/GPUFragmentState.h +0 -73
  230. package/cpp/rnwgpu/api/descriptors/GPUImageCopyBuffer.h +0 -62
  231. package/cpp/rnwgpu/api/descriptors/GPUImageCopyExternalImage.h +0 -63
  232. package/cpp/rnwgpu/api/descriptors/GPUImageCopyTexture.h +0 -65
  233. package/cpp/rnwgpu/api/descriptors/GPUImageCopyTextureTagged.h +0 -81
  234. package/cpp/rnwgpu/api/descriptors/GPUImageDataLayout.h +0 -54
  235. package/cpp/rnwgpu/api/descriptors/GPUMapMode.h +0 -22
  236. package/cpp/rnwgpu/api/descriptors/GPUMultisampleState.h +0 -54
  237. package/cpp/rnwgpu/api/descriptors/GPUPipelineLayoutDescriptor.h +0 -57
  238. package/cpp/rnwgpu/api/descriptors/GPUPrimitiveState.h +0 -69
  239. package/cpp/rnwgpu/api/descriptors/GPUProgrammableStage.h +0 -61
  240. package/cpp/rnwgpu/api/descriptors/GPUQuerySetDescriptor.h +0 -55
  241. package/cpp/rnwgpu/api/descriptors/GPUQueueDescriptor.h +0 -43
  242. package/cpp/rnwgpu/api/descriptors/GPURenderBundleDescriptor.h +0 -45
  243. package/cpp/rnwgpu/api/descriptors/GPURenderBundleEncoderDescriptor.h +0 -80
  244. package/cpp/rnwgpu/api/descriptors/GPURenderPassColorAttachment.h +0 -81
  245. package/cpp/rnwgpu/api/descriptors/GPURenderPassDepthStencilAttachment.h +0 -101
  246. package/cpp/rnwgpu/api/descriptors/GPURenderPassDescriptor.h +0 -92
  247. package/cpp/rnwgpu/api/descriptors/GPURenderPassTimestampWrites.h +0 -58
  248. package/cpp/rnwgpu/api/descriptors/GPURenderPipelineDescriptor.h +0 -103
  249. package/cpp/rnwgpu/api/descriptors/GPURequestAdapterOptions.h +0 -51
  250. package/cpp/rnwgpu/api/descriptors/GPUSamplerBindingLayout.h +0 -45
  251. package/cpp/rnwgpu/api/descriptors/GPUSamplerDescriptor.h +0 -110
  252. package/cpp/rnwgpu/api/descriptors/GPUShaderModuleCompilationHint.h +0 -60
  253. package/cpp/rnwgpu/api/descriptors/GPUShaderModuleDescriptor.h +0 -62
  254. package/cpp/rnwgpu/api/descriptors/GPUShaderStage.h +0 -25
  255. package/cpp/rnwgpu/api/descriptors/GPUSharedFenceDescriptor.h +0 -58
  256. package/cpp/rnwgpu/api/descriptors/GPUSharedFenceState.h +0 -51
  257. package/cpp/rnwgpu/api/descriptors/GPUSharedTextureMemoryDescriptor.h +0 -73
  258. package/cpp/rnwgpu/api/descriptors/GPUStencilFaceState.h +0 -64
  259. package/cpp/rnwgpu/api/descriptors/GPUStorageTextureBindingLayout.h +0 -59
  260. package/cpp/rnwgpu/api/descriptors/GPUTextureBindingLayout.h +0 -59
  261. package/cpp/rnwgpu/api/descriptors/GPUTextureDescriptor.h +0 -91
  262. package/cpp/rnwgpu/api/descriptors/GPUTextureUsage.h +0 -29
  263. package/cpp/rnwgpu/api/descriptors/GPUTextureViewDescriptor.h +0 -91
  264. package/cpp/rnwgpu/api/descriptors/GPUUncapturedErrorEventInit.h +0 -64
  265. package/cpp/rnwgpu/api/descriptors/GPUVertexAttribute.h +0 -53
  266. package/cpp/rnwgpu/api/descriptors/GPUVertexBufferLayout.h +0 -62
  267. package/cpp/rnwgpu/api/descriptors/GPUVertexState.h +0 -73
  268. package/cpp/rnwgpu/api/descriptors/Unions.h +0 -1969
  269. package/cpp/rnwgpu/async/AsyncTaskHandle.cpp +0 -213
  270. package/cpp/rnwgpu/async/AsyncTaskHandle.h +0 -58
  271. package/cpp/rnwgpu/async/RuntimeContext.cpp +0 -199
  272. package/cpp/rnwgpu/async/RuntimeContext.h +0 -134
  273. package/lib/commonjs/skia/types/WebGPU.d.ts +0 -184
  274. package/lib/commonjs/skia/types/WebGPU.js +0 -105
  275. package/lib/commonjs/skia/types/WebGPU.js.map +0 -1
  276. package/lib/commonjs/specs/WebGPUViewNativeComponent.d.ts +0 -8
  277. package/lib/commonjs/specs/WebGPUViewNativeComponent.js +0 -10
  278. package/lib/commonjs/specs/WebGPUViewNativeComponent.js.map +0 -1
  279. package/lib/commonjs/specs/WebGPUViewNativeComponent.web.d.ts +0 -8
  280. package/lib/commonjs/specs/WebGPUViewNativeComponent.web.js +0 -103
  281. package/lib/commonjs/specs/WebGPUViewNativeComponent.web.js.map +0 -1
  282. package/lib/commonjs/specs/utils.d.ts +0 -1
  283. package/lib/commonjs/specs/utils.js +0 -11
  284. package/lib/commonjs/specs/utils.js.map +0 -1
  285. package/lib/commonjs/views/WebGPUCanvas.d.ts +0 -33
  286. package/lib/commonjs/views/WebGPUCanvas.js +0 -79
  287. package/lib/commonjs/views/WebGPUCanvas.js.map +0 -1
  288. package/lib/commonjs/views/WebGPUCanvas.web.d.ts +0 -23
  289. package/lib/commonjs/views/WebGPUCanvas.web.js +0 -20
  290. package/lib/commonjs/views/WebGPUCanvas.web.js.map +0 -1
  291. package/lib/module/skia/types/WebGPU.d.ts +0 -184
  292. package/lib/module/skia/types/WebGPU.js +0 -99
  293. package/lib/module/skia/types/WebGPU.js.map +0 -1
  294. package/lib/module/specs/WebGPUViewNativeComponent.d.ts +0 -8
  295. package/lib/module/specs/WebGPUViewNativeComponent.js +0 -4
  296. package/lib/module/specs/WebGPUViewNativeComponent.js.map +0 -1
  297. package/lib/module/specs/WebGPUViewNativeComponent.web.d.ts +0 -8
  298. package/lib/module/specs/WebGPUViewNativeComponent.web.js +0 -96
  299. package/lib/module/specs/WebGPUViewNativeComponent.web.js.map +0 -1
  300. package/lib/module/specs/utils.d.ts +0 -1
  301. package/lib/module/specs/utils.js +0 -5
  302. package/lib/module/specs/utils.js.map +0 -1
  303. package/lib/module/views/WebGPUCanvas.d.ts +0 -33
  304. package/lib/module/views/WebGPUCanvas.js +0 -70
  305. package/lib/module/views/WebGPUCanvas.js.map +0 -1
  306. package/lib/module/views/WebGPUCanvas.web.d.ts +0 -23
  307. package/lib/module/views/WebGPUCanvas.web.js +0 -12
  308. package/lib/module/views/WebGPUCanvas.web.js.map +0 -1
  309. package/lib/typescript/lib/commonjs/skia/types/WebGPU.d.ts +0 -2
  310. package/lib/typescript/lib/commonjs/specs/WebGPUViewNativeComponent.d.ts +0 -4
  311. package/lib/typescript/lib/commonjs/specs/WebGPUViewNativeComponent.web.d.ts +0 -3
  312. package/lib/typescript/lib/commonjs/specs/utils.d.ts +0 -2
  313. package/lib/typescript/lib/commonjs/views/WebGPUCanvas.d.ts +0 -6
  314. package/lib/typescript/lib/commonjs/views/WebGPUCanvas.web.d.ts +0 -6
  315. package/lib/typescript/lib/module/skia/types/WebGPU.d.ts +0 -31
  316. package/lib/typescript/lib/module/specs/WebGPUViewNativeComponent.d.ts +0 -2
  317. package/lib/typescript/lib/module/specs/WebGPUViewNativeComponent.web.d.ts +0 -2
  318. package/lib/typescript/lib/module/specs/utils.d.ts +0 -1
  319. package/lib/typescript/lib/module/views/WebGPUCanvas.d.ts +0 -7
  320. package/lib/typescript/lib/module/views/WebGPUCanvas.web.d.ts +0 -8
  321. package/lib/typescript/src/skia/types/WebGPU.d.ts +0 -184
  322. package/lib/typescript/src/specs/WebGPUViewNativeComponent.d.ts +0 -8
  323. package/lib/typescript/src/specs/WebGPUViewNativeComponent.web.d.ts +0 -8
  324. package/lib/typescript/src/specs/utils.d.ts +0 -1
  325. package/lib/typescript/src/views/WebGPUCanvas.d.ts +0 -33
  326. package/lib/typescript/src/views/WebGPUCanvas.web.d.ts +0 -23
  327. package/src/skia/types/WebGPU.ts +0 -226
  328. package/src/specs/WebGPUViewNativeComponent.ts +0 -11
  329. package/src/specs/WebGPUViewNativeComponent.web.ts +0 -110
  330. package/src/specs/utils.ts +0 -4
  331. package/src/views/WebGPUCanvas.tsx +0 -125
  332. package/src/views/WebGPUCanvas.web.tsx +0 -36
@@ -1,81 +0,0 @@
1
- #pragma once
2
-
3
- #include <memory>
4
-
5
- #include "webgpu/webgpu_cpp.h"
6
-
7
- #include "jsi/JSIConverter.h"
8
-
9
- #include "rnwgpu/api/External.h"
10
- #include "rnwgpu/api/GPUOrigin3D.h"
11
- #include "rnwgpu/api/GPUTexture.h"
12
-
13
- namespace jsi = facebook::jsi;
14
-
15
- namespace rnwgpu {
16
-
17
- struct GPUImageCopyTextureTagged {
18
- std::optional<PredefinedColorSpace> colorSpace; // PredefinedColorSpace
19
- std::optional<bool> premultipliedAlpha; // boolean
20
- std::shared_ptr<GPUTexture> texture; // GPUTexture
21
- std::optional<double> mipLevel; // GPUIntegerCoordinate
22
- std::optional<std::shared_ptr<GPUOrigin3D>> origin; // GPUOrigin3D
23
- std::optional<wgpu::TextureAspect> aspect; // GPUTextureAspect
24
- };
25
-
26
- } // namespace rnwgpu
27
-
28
- namespace rnwgpu {
29
-
30
- template <>
31
- struct JSIConverter<std::shared_ptr<rnwgpu::GPUImageCopyTextureTagged>> {
32
- static std::shared_ptr<rnwgpu::GPUImageCopyTextureTagged>
33
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
34
- auto result = std::make_unique<rnwgpu::GPUImageCopyTextureTagged>();
35
- if (!outOfBounds && arg.isObject()) {
36
- auto value = arg.getObject(runtime);
37
- if (value.hasProperty(runtime, "colorSpace")) {
38
- auto prop = value.getProperty(runtime, "colorSpace");
39
- result->colorSpace =
40
- JSIConverter<std::optional<PredefinedColorSpace>>::fromJSI(
41
- runtime, prop, false);
42
- }
43
- if (value.hasProperty(runtime, "premultipliedAlpha")) {
44
- auto prop = value.getProperty(runtime, "premultipliedAlpha");
45
- result->premultipliedAlpha =
46
- JSIConverter<std::optional<bool>>::fromJSI(runtime, prop, false);
47
- }
48
- if (value.hasProperty(runtime, "texture")) {
49
- auto prop = value.getProperty(runtime, "texture");
50
- result->texture = JSIConverter<std::shared_ptr<GPUTexture>>::fromJSI(
51
- runtime, prop, false);
52
- }
53
- if (value.hasProperty(runtime, "mipLevel")) {
54
- auto prop = value.getProperty(runtime, "mipLevel");
55
- result->mipLevel =
56
- JSIConverter<std::optional<double>>::fromJSI(runtime, prop, false);
57
- }
58
- if (value.hasProperty(runtime, "origin")) {
59
- auto prop = value.getProperty(runtime, "origin");
60
- result->origin =
61
- JSIConverter<std::optional<std::shared_ptr<GPUOrigin3D>>>::fromJSI(
62
- runtime, prop, false);
63
- }
64
- if (value.hasProperty(runtime, "aspect")) {
65
- auto prop = value.getProperty(runtime, "aspect");
66
- result->aspect =
67
- JSIConverter<std::optional<wgpu::TextureAspect>>::fromJSI(
68
- runtime, prop, false);
69
- }
70
- }
71
-
72
- return result;
73
- }
74
- static jsi::Value
75
- toJSI(jsi::Runtime &runtime,
76
- std::shared_ptr<rnwgpu::GPUImageCopyTextureTagged> arg) {
77
- throw std::runtime_error("Invalid GPUImageCopyTextureTagged::toJSI()");
78
- }
79
- };
80
-
81
- } // namespace rnwgpu
@@ -1,54 +0,0 @@
1
- #pragma once
2
-
3
- #include <memory>
4
-
5
- #include "webgpu/webgpu_cpp.h"
6
-
7
- #include "jsi/JSIConverter.h"
8
-
9
- namespace jsi = facebook::jsi;
10
-
11
- namespace rnwgpu {
12
-
13
- struct GPUImageDataLayout {
14
- std::optional<double> offset; // GPUSize64
15
- std::optional<double> bytesPerRow; // GPUSize32
16
- std::optional<double> rowsPerImage; // GPUSize32
17
- };
18
-
19
- } // namespace rnwgpu
20
-
21
- namespace rnwgpu {
22
-
23
- template <> struct JSIConverter<std::shared_ptr<rnwgpu::GPUImageDataLayout>> {
24
- static std::shared_ptr<rnwgpu::GPUImageDataLayout>
25
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
26
- auto result = std::make_unique<rnwgpu::GPUImageDataLayout>();
27
- if (!outOfBounds && arg.isObject()) {
28
- auto value = arg.getObject(runtime);
29
- if (value.hasProperty(runtime, "offset")) {
30
- auto prop = value.getProperty(runtime, "offset");
31
- result->offset =
32
- JSIConverter<std::optional<double>>::fromJSI(runtime, prop, false);
33
- }
34
- if (value.hasProperty(runtime, "bytesPerRow")) {
35
- auto prop = value.getProperty(runtime, "bytesPerRow");
36
- result->bytesPerRow =
37
- JSIConverter<std::optional<double>>::fromJSI(runtime, prop, false);
38
- }
39
- if (value.hasProperty(runtime, "rowsPerImage")) {
40
- auto prop = value.getProperty(runtime, "rowsPerImage");
41
- result->rowsPerImage =
42
- JSIConverter<std::optional<double>>::fromJSI(runtime, prop, false);
43
- }
44
- }
45
-
46
- return result;
47
- }
48
- static jsi::Value toJSI(jsi::Runtime &runtime,
49
- std::shared_ptr<rnwgpu::GPUImageDataLayout> arg) {
50
- throw std::runtime_error("Invalid GPUImageDataLayout::toJSI()");
51
- }
52
- };
53
-
54
- } // namespace rnwgpu
@@ -1,22 +0,0 @@
1
- #pragma once
2
-
3
- #include <jsi/jsi.h>
4
-
5
- #include "webgpu/webgpu_cpp.h"
6
-
7
- namespace rnwgpu {
8
-
9
- namespace jsi = facebook::jsi;
10
-
11
- class GPUMapMode {
12
- public:
13
- static jsi::Object create(jsi::Runtime &runtime) {
14
- jsi::Object obj(runtime);
15
- obj.setProperty(runtime, "READ", static_cast<double>(wgpu::MapMode::Read));
16
- obj.setProperty(runtime, "WRITE",
17
- static_cast<double>(wgpu::MapMode::Write));
18
- return obj;
19
- }
20
- };
21
-
22
- } // namespace rnwgpu
@@ -1,54 +0,0 @@
1
- #pragma once
2
-
3
- #include <memory>
4
-
5
- #include "webgpu/webgpu_cpp.h"
6
-
7
- #include "jsi/JSIConverter.h"
8
-
9
- namespace jsi = facebook::jsi;
10
-
11
- namespace rnwgpu {
12
-
13
- struct GPUMultisampleState {
14
- std::optional<double> count; // GPUSize32
15
- std::optional<double> mask; // GPUSampleMask
16
- std::optional<bool> alphaToCoverageEnabled; // boolean
17
- };
18
-
19
- } // namespace rnwgpu
20
-
21
- namespace rnwgpu {
22
-
23
- template <> struct JSIConverter<std::shared_ptr<rnwgpu::GPUMultisampleState>> {
24
- static std::shared_ptr<rnwgpu::GPUMultisampleState>
25
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
26
- auto result = std::make_unique<rnwgpu::GPUMultisampleState>();
27
- if (!outOfBounds && arg.isObject()) {
28
- auto value = arg.getObject(runtime);
29
- if (value.hasProperty(runtime, "count")) {
30
- auto prop = value.getProperty(runtime, "count");
31
- result->count =
32
- JSIConverter<std::optional<double>>::fromJSI(runtime, prop, false);
33
- }
34
- if (value.hasProperty(runtime, "mask")) {
35
- auto prop = value.getProperty(runtime, "mask");
36
- result->mask =
37
- JSIConverter<std::optional<double>>::fromJSI(runtime, prop, false);
38
- }
39
- if (value.hasProperty(runtime, "alphaToCoverageEnabled")) {
40
- auto prop = value.getProperty(runtime, "alphaToCoverageEnabled");
41
- result->alphaToCoverageEnabled =
42
- JSIConverter<std::optional<bool>>::fromJSI(runtime, prop, false);
43
- }
44
- }
45
-
46
- return result;
47
- }
48
- static jsi::Value toJSI(jsi::Runtime &runtime,
49
- std::shared_ptr<rnwgpu::GPUMultisampleState> arg) {
50
- throw std::runtime_error("Invalid GPUMultisampleState::toJSI()");
51
- }
52
- };
53
-
54
- } // namespace rnwgpu
@@ -1,57 +0,0 @@
1
- #pragma once
2
-
3
- #include <memory>
4
- #include <string>
5
- #include <vector>
6
-
7
- #include "webgpu/webgpu_cpp.h"
8
-
9
- #include "jsi/JSIConverter.h"
10
-
11
- #include "rnwgpu/api/GPUBindGroupLayout.h"
12
-
13
- namespace jsi = facebook::jsi;
14
-
15
- namespace rnwgpu {
16
-
17
- struct GPUPipelineLayoutDescriptor {
18
- std::vector<std::shared_ptr<GPUBindGroupLayout>>
19
- bindGroupLayouts; // Iterable<GPUBindGroupLayout>
20
- std::optional<std::string> label; // string
21
- };
22
-
23
- } // namespace rnwgpu
24
-
25
- namespace rnwgpu {
26
-
27
- template <>
28
- struct JSIConverter<std::shared_ptr<rnwgpu::GPUPipelineLayoutDescriptor>> {
29
- static std::shared_ptr<rnwgpu::GPUPipelineLayoutDescriptor>
30
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
31
- auto result = std::make_unique<rnwgpu::GPUPipelineLayoutDescriptor>();
32
- if (!outOfBounds && arg.isObject()) {
33
- auto value = arg.getObject(runtime);
34
- if (value.hasProperty(runtime, "bindGroupLayouts")) {
35
- auto prop = value.getProperty(runtime, "bindGroupLayouts");
36
- result->bindGroupLayouts = JSIConverter<
37
- std::vector<std::shared_ptr<GPUBindGroupLayout>>>::fromJSI(runtime,
38
- prop,
39
- false);
40
- }
41
- if (value.hasProperty(runtime, "label")) {
42
- auto prop = value.getProperty(runtime, "label");
43
- result->label = JSIConverter<std::optional<std::string>>::fromJSI(
44
- runtime, prop, false);
45
- }
46
- }
47
-
48
- return result;
49
- }
50
- static jsi::Value
51
- toJSI(jsi::Runtime &runtime,
52
- std::shared_ptr<rnwgpu::GPUPipelineLayoutDescriptor> arg) {
53
- throw std::runtime_error("Invalid GPUPipelineLayoutDescriptor::toJSI()");
54
- }
55
- };
56
-
57
- } // namespace rnwgpu
@@ -1,69 +0,0 @@
1
- #pragma once
2
-
3
- #include <memory>
4
-
5
- #include "webgpu/webgpu_cpp.h"
6
-
7
- #include "jsi/JSIConverter.h"
8
-
9
- namespace jsi = facebook::jsi;
10
-
11
- namespace rnwgpu {
12
-
13
- struct GPUPrimitiveState {
14
- std::optional<wgpu::PrimitiveTopology> topology; // GPUPrimitiveTopology
15
- std::optional<wgpu::IndexFormat> stripIndexFormat; // GPUIndexFormat
16
- std::optional<wgpu::FrontFace> frontFace; // GPUFrontFace
17
- std::optional<wgpu::CullMode> cullMode; // GPUCullMode
18
- std::optional<bool> unclippedDepth; // boolean
19
- };
20
-
21
- } // namespace rnwgpu
22
-
23
- namespace rnwgpu {
24
-
25
- template <> struct JSIConverter<std::shared_ptr<rnwgpu::GPUPrimitiveState>> {
26
- static std::shared_ptr<rnwgpu::GPUPrimitiveState>
27
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
28
- auto result = std::make_unique<rnwgpu::GPUPrimitiveState>();
29
- if (!outOfBounds && arg.isObject()) {
30
- auto value = arg.getObject(runtime);
31
- if (value.hasProperty(runtime, "topology")) {
32
- auto prop = value.getProperty(runtime, "topology");
33
- result->topology =
34
- JSIConverter<std::optional<wgpu::PrimitiveTopology>>::fromJSI(
35
- runtime, prop, false);
36
- }
37
- if (value.hasProperty(runtime, "stripIndexFormat")) {
38
- auto prop = value.getProperty(runtime, "stripIndexFormat");
39
- result->stripIndexFormat =
40
- JSIConverter<std::optional<wgpu::IndexFormat>>::fromJSI(
41
- runtime, prop, false);
42
- }
43
- if (value.hasProperty(runtime, "frontFace")) {
44
- auto prop = value.getProperty(runtime, "frontFace");
45
- result->frontFace =
46
- JSIConverter<std::optional<wgpu::FrontFace>>::fromJSI(runtime, prop,
47
- false);
48
- }
49
- if (value.hasProperty(runtime, "cullMode")) {
50
- auto prop = value.getProperty(runtime, "cullMode");
51
- result->cullMode = JSIConverter<std::optional<wgpu::CullMode>>::fromJSI(
52
- runtime, prop, false);
53
- }
54
- if (value.hasProperty(runtime, "unclippedDepth")) {
55
- auto prop = value.getProperty(runtime, "unclippedDepth");
56
- result->unclippedDepth =
57
- JSIConverter<std::optional<bool>>::fromJSI(runtime, prop, false);
58
- }
59
- }
60
-
61
- return result;
62
- }
63
- static jsi::Value toJSI(jsi::Runtime &runtime,
64
- std::shared_ptr<rnwgpu::GPUPrimitiveState> arg) {
65
- throw std::runtime_error("Invalid GPUPrimitiveState::toJSI()");
66
- }
67
- };
68
-
69
- } // namespace rnwgpu
@@ -1,61 +0,0 @@
1
- #pragma once
2
-
3
- #include <map>
4
- #include <memory>
5
- #include <string>
6
-
7
- #include "webgpu/webgpu_cpp.h"
8
-
9
- #include "jsi/JSIConverter.h"
10
-
11
- #include "rnwgpu/api/GPUShaderModule.h"
12
-
13
- namespace jsi = facebook::jsi;
14
-
15
- namespace rnwgpu {
16
-
17
- struct GPUProgrammableStage {
18
- std::shared_ptr<GPUShaderModule> module; // GPUShaderModule
19
- std::optional<std::string> entryPoint; // string
20
- std::optional<std::map<std::string, double>>
21
- constants; // Record< string, GPUPipelineConstantValue >
22
- };
23
-
24
- } // namespace rnwgpu
25
-
26
- namespace rnwgpu {
27
-
28
- template <> struct JSIConverter<std::shared_ptr<rnwgpu::GPUProgrammableStage>> {
29
- static std::shared_ptr<rnwgpu::GPUProgrammableStage>
30
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
31
- auto result = std::make_unique<rnwgpu::GPUProgrammableStage>();
32
- if (!outOfBounds && arg.isObject()) {
33
- auto value = arg.getObject(runtime);
34
- if (value.hasProperty(runtime, "module")) {
35
- auto prop = value.getProperty(runtime, "module");
36
- result->module =
37
- JSIConverter<std::shared_ptr<GPUShaderModule>>::fromJSI(
38
- runtime, prop, false);
39
- }
40
- if (value.hasProperty(runtime, "entryPoint")) {
41
- auto prop = value.getProperty(runtime, "entryPoint");
42
- result->entryPoint = JSIConverter<std::optional<std::string>>::fromJSI(
43
- runtime, prop, false);
44
- }
45
- if (value.hasProperty(runtime, "constants")) {
46
- auto prop = value.getProperty(runtime, "constants");
47
- result->constants =
48
- JSIConverter<std::optional<std::map<std::string, double>>>::fromJSI(
49
- runtime, prop, false);
50
- }
51
- }
52
-
53
- return result;
54
- }
55
- static jsi::Value toJSI(jsi::Runtime &runtime,
56
- std::shared_ptr<rnwgpu::GPUProgrammableStage> arg) {
57
- throw std::runtime_error("Invalid GPUProgrammableStage::toJSI()");
58
- }
59
- };
60
-
61
- } // namespace rnwgpu
@@ -1,55 +0,0 @@
1
- #pragma once
2
-
3
- #include <memory>
4
- #include <string>
5
-
6
- #include "webgpu/webgpu_cpp.h"
7
-
8
- #include "jsi/JSIConverter.h"
9
-
10
- namespace jsi = facebook::jsi;
11
-
12
- namespace rnwgpu {
13
-
14
- struct GPUQuerySetDescriptor {
15
- wgpu::QueryType type; // GPUQueryType
16
- double count; // GPUSize32
17
- std::optional<std::string> label; // string
18
- };
19
-
20
- } // namespace rnwgpu
21
-
22
- namespace rnwgpu {
23
-
24
- template <>
25
- struct JSIConverter<std::shared_ptr<rnwgpu::GPUQuerySetDescriptor>> {
26
- static std::shared_ptr<rnwgpu::GPUQuerySetDescriptor>
27
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
28
- auto result = std::make_unique<rnwgpu::GPUQuerySetDescriptor>();
29
- if (!outOfBounds && arg.isObject()) {
30
- auto value = arg.getObject(runtime);
31
- if (value.hasProperty(runtime, "type")) {
32
- auto prop = value.getProperty(runtime, "type");
33
- result->type =
34
- JSIConverter<wgpu::QueryType>::fromJSI(runtime, prop, false);
35
- }
36
- if (value.hasProperty(runtime, "count")) {
37
- auto prop = value.getProperty(runtime, "count");
38
- result->count = JSIConverter<double>::fromJSI(runtime, prop, false);
39
- }
40
- if (value.hasProperty(runtime, "label")) {
41
- auto prop = value.getProperty(runtime, "label");
42
- result->label = JSIConverter<std::optional<std::string>>::fromJSI(
43
- runtime, prop, false);
44
- }
45
- }
46
-
47
- return result;
48
- }
49
- static jsi::Value toJSI(jsi::Runtime &runtime,
50
- std::shared_ptr<rnwgpu::GPUQuerySetDescriptor> arg) {
51
- throw std::runtime_error("Invalid GPUQuerySetDescriptor::toJSI()");
52
- }
53
- };
54
-
55
- } // namespace rnwgpu
@@ -1,43 +0,0 @@
1
- #pragma once
2
-
3
- #include <memory>
4
- #include <string>
5
-
6
- #include "webgpu/webgpu_cpp.h"
7
-
8
- #include "jsi/JSIConverter.h"
9
-
10
- namespace jsi = facebook::jsi;
11
-
12
- namespace rnwgpu {
13
-
14
- struct GPUQueueDescriptor {
15
- std::optional<std::string> label; // string
16
- };
17
-
18
- } // namespace rnwgpu
19
-
20
- namespace rnwgpu {
21
-
22
- template <> struct JSIConverter<std::shared_ptr<rnwgpu::GPUQueueDescriptor>> {
23
- static std::shared_ptr<rnwgpu::GPUQueueDescriptor>
24
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
25
- auto result = std::make_unique<rnwgpu::GPUQueueDescriptor>();
26
- if (!outOfBounds && arg.isObject()) {
27
- auto value = arg.getObject(runtime);
28
- if (value.hasProperty(runtime, "label")) {
29
- auto prop = value.getProperty(runtime, "label");
30
- result->label = JSIConverter<std::optional<std::string>>::fromJSI(
31
- runtime, prop, false);
32
- }
33
- }
34
-
35
- return result;
36
- }
37
- static jsi::Value toJSI(jsi::Runtime &runtime,
38
- std::shared_ptr<rnwgpu::GPUQueueDescriptor> arg) {
39
- throw std::runtime_error("Invalid GPUQueueDescriptor::toJSI()");
40
- }
41
- };
42
-
43
- } // namespace rnwgpu
@@ -1,45 +0,0 @@
1
- #pragma once
2
-
3
- #include <memory>
4
- #include <string>
5
-
6
- #include "webgpu/webgpu_cpp.h"
7
-
8
- #include "jsi/JSIConverter.h"
9
-
10
- namespace jsi = facebook::jsi;
11
-
12
- namespace rnwgpu {
13
-
14
- struct GPURenderBundleDescriptor {
15
- std::optional<std::string> label; // string
16
- };
17
-
18
- } // namespace rnwgpu
19
-
20
- namespace rnwgpu {
21
-
22
- template <>
23
- struct JSIConverter<std::shared_ptr<rnwgpu::GPURenderBundleDescriptor>> {
24
- static std::shared_ptr<rnwgpu::GPURenderBundleDescriptor>
25
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
26
- auto result = std::make_unique<rnwgpu::GPURenderBundleDescriptor>();
27
- if (!outOfBounds && arg.isObject()) {
28
- auto value = arg.getObject(runtime);
29
- if (value.hasProperty(runtime, "label")) {
30
- auto prop = value.getProperty(runtime, "label");
31
- result->label = JSIConverter<std::optional<std::string>>::fromJSI(
32
- runtime, prop, false);
33
- }
34
- }
35
-
36
- return result;
37
- }
38
- static jsi::Value
39
- toJSI(jsi::Runtime &runtime,
40
- std::shared_ptr<rnwgpu::GPURenderBundleDescriptor> arg) {
41
- throw std::runtime_error("Invalid GPURenderBundleDescriptor::toJSI()");
42
- }
43
- };
44
-
45
- } // namespace rnwgpu
@@ -1,80 +0,0 @@
1
- #pragma once
2
-
3
- #include <memory>
4
- #include <string>
5
- #include <vector>
6
-
7
- #include "webgpu/webgpu_cpp.h"
8
-
9
- #include "jsi/JSIConverter.h"
10
-
11
- namespace jsi = facebook::jsi;
12
-
13
- namespace rnwgpu {
14
-
15
- struct GPURenderBundleEncoderDescriptor {
16
- std::optional<bool> depthReadOnly; // boolean
17
- std::optional<bool> stencilReadOnly; // boolean
18
- std::vector<std::variant<std::nullptr_t, wgpu::TextureFormat>>
19
- colorFormats; // Iterable<GPUTextureFormat | null>
20
- std::optional<wgpu::TextureFormat> depthStencilFormat; // GPUTextureFormat
21
- std::optional<double> sampleCount; // GPUSize32
22
- std::optional<std::string> label; // string
23
- };
24
-
25
- } // namespace rnwgpu
26
-
27
- namespace rnwgpu {
28
-
29
- template <>
30
- struct JSIConverter<std::shared_ptr<rnwgpu::GPURenderBundleEncoderDescriptor>> {
31
- static std::shared_ptr<rnwgpu::GPURenderBundleEncoderDescriptor>
32
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
33
- auto result = std::make_unique<rnwgpu::GPURenderBundleEncoderDescriptor>();
34
- if (!outOfBounds && arg.isObject()) {
35
- auto value = arg.getObject(runtime);
36
- if (value.hasProperty(runtime, "depthReadOnly")) {
37
- auto prop = value.getProperty(runtime, "depthReadOnly");
38
- result->depthReadOnly =
39
- JSIConverter<std::optional<bool>>::fromJSI(runtime, prop, false);
40
- }
41
- if (value.hasProperty(runtime, "stencilReadOnly")) {
42
- auto prop = value.getProperty(runtime, "stencilReadOnly");
43
- result->stencilReadOnly =
44
- JSIConverter<std::optional<bool>>::fromJSI(runtime, prop, false);
45
- }
46
- if (value.hasProperty(runtime, "colorFormats")) {
47
- auto prop = value.getProperty(runtime, "colorFormats");
48
- result->colorFormats = JSIConverter<
49
- std::vector<std::variant<std::nullptr_t, wgpu::TextureFormat>>>::
50
- fromJSI(runtime, prop, false);
51
- }
52
- if (value.hasProperty(runtime, "depthStencilFormat")) {
53
- auto prop = value.getProperty(runtime, "depthStencilFormat");
54
- result->depthStencilFormat =
55
- JSIConverter<std::optional<wgpu::TextureFormat>>::fromJSI(
56
- runtime, prop, false);
57
- }
58
- if (value.hasProperty(runtime, "sampleCount")) {
59
- auto prop = value.getProperty(runtime, "sampleCount");
60
- result->sampleCount =
61
- JSIConverter<std::optional<double>>::fromJSI(runtime, prop, false);
62
- }
63
- if (value.hasProperty(runtime, "label")) {
64
- auto prop = value.getProperty(runtime, "label");
65
- result->label = JSIConverter<std::optional<std::string>>::fromJSI(
66
- runtime, prop, false);
67
- }
68
- }
69
-
70
- return result;
71
- }
72
- static jsi::Value
73
- toJSI(jsi::Runtime &runtime,
74
- std::shared_ptr<rnwgpu::GPURenderBundleEncoderDescriptor> arg) {
75
- throw std::runtime_error(
76
- "Invalid GPURenderBundleEncoderDescriptor::toJSI()");
77
- }
78
- };
79
-
80
- } // namespace rnwgpu