@shopify/react-native-skia 2.10.0 → 2.10.1

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 (329) 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 +60 -92
  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/JSIConverter.h +0 -31
  56. package/cpp/jsi/NativeObject.h +11 -6
  57. package/cpp/rnskia/RNDawnContext.h +18 -2
  58. package/cpp/rnskia/RNDawnInterop.cpp +19 -0
  59. package/cpp/rnskia/RNDawnUtils.h +18 -1
  60. package/cpp/rnskia/RNSkManager.cpp +5 -162
  61. package/cpp/skia/include/gpu/ganesh/GrDriverBugWorkaroundsAutogen.h +2 -0
  62. package/lib/commonjs/mock/index.js +0 -1
  63. package/lib/commonjs/mock/index.js.map +1 -1
  64. package/lib/commonjs/skia/types/Image/ImageFactory.d.ts +15 -6
  65. package/lib/commonjs/skia/types/Image/ImageFactory.js.map +1 -1
  66. package/lib/commonjs/skia/types/Skia.d.ts +5 -15
  67. package/lib/commonjs/skia/types/Skia.js.map +1 -1
  68. package/lib/commonjs/skia/types/index.d.ts +0 -1
  69. package/lib/commonjs/skia/types/index.js +0 -11
  70. package/lib/commonjs/skia/types/index.js.map +1 -1
  71. package/lib/commonjs/skia/web/JsiSkImageFactory.d.ts +2 -2
  72. package/lib/commonjs/skia/web/JsiSkImageFactory.js +2 -2
  73. package/lib/commonjs/skia/web/JsiSkImageFactory.js.map +1 -1
  74. package/lib/commonjs/skia/web/JsiSkia.js +1 -4
  75. package/lib/commonjs/skia/web/JsiSkia.js.map +1 -1
  76. package/lib/commonjs/views/index.d.ts +0 -1
  77. package/lib/commonjs/views/index.js +0 -11
  78. package/lib/commonjs/views/index.js.map +1 -1
  79. package/lib/module/mock/index.js +0 -1
  80. package/lib/module/mock/index.js.map +1 -1
  81. package/lib/module/skia/types/Image/ImageFactory.d.ts +15 -6
  82. package/lib/module/skia/types/Image/ImageFactory.js.map +1 -1
  83. package/lib/module/skia/types/Skia.d.ts +5 -15
  84. package/lib/module/skia/types/Skia.js.map +1 -1
  85. package/lib/module/skia/types/index.d.ts +0 -1
  86. package/lib/module/skia/types/index.js +0 -1
  87. package/lib/module/skia/types/index.js.map +1 -1
  88. package/lib/module/skia/web/JsiSkImageFactory.d.ts +2 -2
  89. package/lib/module/skia/web/JsiSkImageFactory.js +2 -2
  90. package/lib/module/skia/web/JsiSkImageFactory.js.map +1 -1
  91. package/lib/module/skia/web/JsiSkia.js +1 -4
  92. package/lib/module/skia/web/JsiSkia.js.map +1 -1
  93. package/lib/module/views/index.d.ts +0 -1
  94. package/lib/module/views/index.js +0 -1
  95. package/lib/module/views/index.js.map +1 -1
  96. package/lib/typescript/lib/commonjs/mock/index.d.ts +0 -1
  97. package/lib/typescript/lib/commonjs/skia/web/JsiSkImageFactory.d.ts +2 -2
  98. package/lib/typescript/lib/commonjs/skia/web/JsiSkia.d.ts +1 -2
  99. package/lib/typescript/lib/module/mock/index.d.ts +0 -2
  100. package/lib/typescript/lib/module/skia/Skia.web.d.ts +1 -2
  101. package/lib/typescript/lib/module/skia/types/index.d.ts +0 -1
  102. package/lib/typescript/lib/module/skia/web/JsiSkImageFactory.d.ts +2 -2
  103. package/lib/typescript/lib/module/skia/web/JsiSkia.d.ts +1 -2
  104. package/lib/typescript/lib/module/views/index.d.ts +0 -1
  105. package/lib/typescript/src/skia/types/Image/ImageFactory.d.ts +15 -6
  106. package/lib/typescript/src/skia/types/Skia.d.ts +5 -15
  107. package/lib/typescript/src/skia/types/index.d.ts +0 -1
  108. package/lib/typescript/src/skia/web/JsiSkImageFactory.d.ts +2 -2
  109. package/lib/typescript/src/views/index.d.ts +0 -1
  110. package/package.json +3 -4
  111. package/react-native-skia.podspec +38 -4
  112. package/src/mock/index.ts +0 -1
  113. package/src/skia/types/Image/ImageFactory.ts +15 -6
  114. package/src/skia/types/Skia.ts +5 -15
  115. package/src/skia/types/index.ts +0 -1
  116. package/src/skia/web/JsiSkImageFactory.ts +3 -3
  117. package/src/skia/web/JsiSkia.ts +2 -5
  118. package/src/views/index.ts +0 -1
  119. package/android/cpp/jni/JniWebGPUView.cpp +0 -112
  120. package/android/cpp/rnskia-android/SkiaPlatformContext.h +0 -26
  121. package/android/src/main/java/com/shopify/reactnative/skia/WebGPUSurfaceView.java +0 -43
  122. package/android/src/main/java/com/shopify/reactnative/skia/WebGPUTextureView.java +0 -50
  123. package/android/src/main/java/com/shopify/reactnative/skia/WebGPUView.java +0 -98
  124. package/android/src/main/java/com/shopify/reactnative/skia/WebGPUViewAPI.java +0 -19
  125. package/android/src/main/java/com/shopify/reactnative/skia/WebGPUViewManager.java +0 -58
  126. package/apple/RNWebGPUAppleNativeBuffer.mm +0 -33
  127. package/apple/SkiaPlatformContext.h +0 -20
  128. package/apple/SkiaPlatformContext.mm +0 -21
  129. package/apple/SkiaWebGPUView.mm +0 -81
  130. package/apple/WebGPUMetalView.mm +0 -136
  131. package/cpp/rnwgpu/ArrayBuffer.h +0 -116
  132. package/cpp/rnwgpu/Canvas.h +0 -52
  133. package/cpp/rnwgpu/PlatformContext.h +0 -18
  134. package/cpp/rnwgpu/SurfaceRegistry.h +0 -605
  135. package/cpp/rnwgpu/api/AppleNativeBuffer.h +0 -22
  136. package/cpp/rnwgpu/api/Convertors.h +0 -783
  137. package/cpp/rnwgpu/api/External.h +0 -12
  138. package/cpp/rnwgpu/api/GPU.cpp +0 -162
  139. package/cpp/rnwgpu/api/GPU.h +0 -60
  140. package/cpp/rnwgpu/api/GPUAdapter.cpp +0 -239
  141. package/cpp/rnwgpu/api/GPUAdapter.h +0 -60
  142. package/cpp/rnwgpu/api/GPUAdapterInfo.h +0 -57
  143. package/cpp/rnwgpu/api/GPUBindGroup.cpp +0 -3
  144. package/cpp/rnwgpu/api/GPUBindGroup.h +0 -51
  145. package/cpp/rnwgpu/api/GPUBindGroupLayout.h +0 -52
  146. package/cpp/rnwgpu/api/GPUBuffer.cpp +0 -107
  147. package/cpp/rnwgpu/api/GPUBuffer.h +0 -88
  148. package/cpp/rnwgpu/api/GPUCanvasContext.cpp +0 -75
  149. package/cpp/rnwgpu/api/GPUCanvasContext.h +0 -70
  150. package/cpp/rnwgpu/api/GPUCommandBuffer.h +0 -45
  151. package/cpp/rnwgpu/api/GPUCommandEncoder.cpp +0 -179
  152. package/cpp/rnwgpu/api/GPUCommandEncoder.h +0 -111
  153. package/cpp/rnwgpu/api/GPUCompilationInfo.h +0 -79
  154. package/cpp/rnwgpu/api/GPUCompilationMessage.h +0 -36
  155. package/cpp/rnwgpu/api/GPUComputePassEncoder.cpp +0 -60
  156. package/cpp/rnwgpu/api/GPUComputePassEncoder.h +0 -85
  157. package/cpp/rnwgpu/api/GPUComputePipeline.cpp +0 -12
  158. package/cpp/rnwgpu/api/GPUComputePipeline.h +0 -60
  159. package/cpp/rnwgpu/api/GPUDevice.cpp +0 -613
  160. package/cpp/rnwgpu/api/GPUDevice.h +0 -258
  161. package/cpp/rnwgpu/api/GPUDeviceLostInfo.cpp +0 -7
  162. package/cpp/rnwgpu/api/GPUDeviceLostInfo.h +0 -40
  163. package/cpp/rnwgpu/api/GPUError.h +0 -35
  164. package/cpp/rnwgpu/api/GPUExtent3D.h +0 -66
  165. package/cpp/rnwgpu/api/GPUExternalTexture.cpp +0 -139
  166. package/cpp/rnwgpu/api/GPUExternalTexture.h +0 -95
  167. package/cpp/rnwgpu/api/GPUFeatures.h +0 -203
  168. package/cpp/rnwgpu/api/GPUInternalError.h +0 -31
  169. package/cpp/rnwgpu/api/GPUOrigin2D.h +0 -55
  170. package/cpp/rnwgpu/api/GPUOrigin3D.h +0 -62
  171. package/cpp/rnwgpu/api/GPUOutOfMemoryError.h +0 -33
  172. package/cpp/rnwgpu/api/GPUPipelineLayout.h +0 -45
  173. package/cpp/rnwgpu/api/GPUQuerySet.cpp +0 -11
  174. package/cpp/rnwgpu/api/GPUQuerySet.h +0 -73
  175. package/cpp/rnwgpu/api/GPUQueue.cpp +0 -179
  176. package/cpp/rnwgpu/api/GPUQueue.h +0 -84
  177. package/cpp/rnwgpu/api/GPURenderBundle.h +0 -44
  178. package/cpp/rnwgpu/api/GPURenderBundleEncoder.cpp +0 -131
  179. package/cpp/rnwgpu/api/GPURenderBundleEncoder.h +0 -110
  180. package/cpp/rnwgpu/api/GPURenderPassEncoder.cpp +0 -165
  181. package/cpp/rnwgpu/api/GPURenderPassEncoder.h +0 -130
  182. package/cpp/rnwgpu/api/GPURenderPipeline.cpp +0 -13
  183. package/cpp/rnwgpu/api/GPURenderPipeline.h +0 -61
  184. package/cpp/rnwgpu/api/GPUSampler.h +0 -44
  185. package/cpp/rnwgpu/api/GPUShaderModule.cpp +0 -56
  186. package/cpp/rnwgpu/api/GPUShaderModule.h +0 -66
  187. package/cpp/rnwgpu/api/GPUSharedFence.cpp +0 -80
  188. package/cpp/rnwgpu/api/GPUSharedFence.h +0 -53
  189. package/cpp/rnwgpu/api/GPUSharedTextureMemory.cpp +0 -135
  190. package/cpp/rnwgpu/api/GPUSharedTextureMemory.h +0 -75
  191. package/cpp/rnwgpu/api/GPUSupportedLimits.cpp +0 -129
  192. package/cpp/rnwgpu/api/GPUSupportedLimits.h +0 -131
  193. package/cpp/rnwgpu/api/GPUTexture.cpp +0 -47
  194. package/cpp/rnwgpu/api/GPUTexture.h +0 -162
  195. package/cpp/rnwgpu/api/GPUTextureView.h +0 -44
  196. package/cpp/rnwgpu/api/GPUUncapturedErrorEvent.h +0 -60
  197. package/cpp/rnwgpu/api/GPUValidationError.h +0 -32
  198. package/cpp/rnwgpu/api/ImageBitmap.h +0 -62
  199. package/cpp/rnwgpu/api/NativeBufferUtils.h +0 -87
  200. package/cpp/rnwgpu/api/RNWebGPU.h +0 -82
  201. package/cpp/rnwgpu/api/WebGPUConstants.h +0 -36
  202. package/cpp/rnwgpu/api/descriptors/GPUBindGroupDescriptor.h +0 -64
  203. package/cpp/rnwgpu/api/descriptors/GPUBindGroupEntry.h +0 -78
  204. package/cpp/rnwgpu/api/descriptors/GPUBindGroupLayoutDescriptor.h +0 -56
  205. package/cpp/rnwgpu/api/descriptors/GPUBindGroupLayoutEntry.h +0 -97
  206. package/cpp/rnwgpu/api/descriptors/GPUBlendComponent.h +0 -57
  207. package/cpp/rnwgpu/api/descriptors/GPUBlendState.h +0 -52
  208. package/cpp/rnwgpu/api/descriptors/GPUBufferBinding.h +0 -56
  209. package/cpp/rnwgpu/api/descriptors/GPUBufferBindingLayout.h +0 -56
  210. package/cpp/rnwgpu/api/descriptors/GPUBufferDescriptor.h +0 -59
  211. package/cpp/rnwgpu/api/descriptors/GPUBufferUsage.h +0 -39
  212. package/cpp/rnwgpu/api/descriptors/GPUCanvasConfiguration.h +0 -76
  213. package/cpp/rnwgpu/api/descriptors/GPUColor.h +0 -66
  214. package/cpp/rnwgpu/api/descriptors/GPUColorTargetState.h +0 -58
  215. package/cpp/rnwgpu/api/descriptors/GPUColorWrite.h +0 -29
  216. package/cpp/rnwgpu/api/descriptors/GPUCommandBufferDescriptor.h +0 -45
  217. package/cpp/rnwgpu/api/descriptors/GPUCommandEncoderDescriptor.h +0 -45
  218. package/cpp/rnwgpu/api/descriptors/GPUComputePassDescriptor.h +0 -56
  219. package/cpp/rnwgpu/api/descriptors/GPUComputePassTimestampWrites.h +0 -58
  220. package/cpp/rnwgpu/api/descriptors/GPUComputePipelineDescriptor.h +0 -67
  221. package/cpp/rnwgpu/api/descriptors/GPUDawnTogglesDescriptor.h +0 -56
  222. package/cpp/rnwgpu/api/descriptors/GPUDepthStencilState.h +0 -103
  223. package/cpp/rnwgpu/api/descriptors/GPUDeviceDescriptor.h +0 -109
  224. package/cpp/rnwgpu/api/descriptors/GPUExternalTextureBindingLayout.h +0 -38
  225. package/cpp/rnwgpu/api/descriptors/GPUExternalTextureDescriptor.h +0 -90
  226. package/cpp/rnwgpu/api/descriptors/GPUFragmentState.h +0 -73
  227. package/cpp/rnwgpu/api/descriptors/GPUImageCopyBuffer.h +0 -62
  228. package/cpp/rnwgpu/api/descriptors/GPUImageCopyExternalImage.h +0 -63
  229. package/cpp/rnwgpu/api/descriptors/GPUImageCopyTexture.h +0 -65
  230. package/cpp/rnwgpu/api/descriptors/GPUImageCopyTextureTagged.h +0 -81
  231. package/cpp/rnwgpu/api/descriptors/GPUImageDataLayout.h +0 -54
  232. package/cpp/rnwgpu/api/descriptors/GPUMapMode.h +0 -22
  233. package/cpp/rnwgpu/api/descriptors/GPUMultisampleState.h +0 -54
  234. package/cpp/rnwgpu/api/descriptors/GPUPipelineLayoutDescriptor.h +0 -57
  235. package/cpp/rnwgpu/api/descriptors/GPUPrimitiveState.h +0 -69
  236. package/cpp/rnwgpu/api/descriptors/GPUProgrammableStage.h +0 -61
  237. package/cpp/rnwgpu/api/descriptors/GPUQuerySetDescriptor.h +0 -55
  238. package/cpp/rnwgpu/api/descriptors/GPUQueueDescriptor.h +0 -43
  239. package/cpp/rnwgpu/api/descriptors/GPURenderBundleDescriptor.h +0 -45
  240. package/cpp/rnwgpu/api/descriptors/GPURenderBundleEncoderDescriptor.h +0 -80
  241. package/cpp/rnwgpu/api/descriptors/GPURenderPassColorAttachment.h +0 -81
  242. package/cpp/rnwgpu/api/descriptors/GPURenderPassDepthStencilAttachment.h +0 -101
  243. package/cpp/rnwgpu/api/descriptors/GPURenderPassDescriptor.h +0 -92
  244. package/cpp/rnwgpu/api/descriptors/GPURenderPassTimestampWrites.h +0 -58
  245. package/cpp/rnwgpu/api/descriptors/GPURenderPipelineDescriptor.h +0 -103
  246. package/cpp/rnwgpu/api/descriptors/GPURequestAdapterOptions.h +0 -51
  247. package/cpp/rnwgpu/api/descriptors/GPUSamplerBindingLayout.h +0 -45
  248. package/cpp/rnwgpu/api/descriptors/GPUSamplerDescriptor.h +0 -110
  249. package/cpp/rnwgpu/api/descriptors/GPUShaderModuleCompilationHint.h +0 -60
  250. package/cpp/rnwgpu/api/descriptors/GPUShaderModuleDescriptor.h +0 -62
  251. package/cpp/rnwgpu/api/descriptors/GPUShaderStage.h +0 -25
  252. package/cpp/rnwgpu/api/descriptors/GPUSharedFenceDescriptor.h +0 -58
  253. package/cpp/rnwgpu/api/descriptors/GPUSharedFenceState.h +0 -51
  254. package/cpp/rnwgpu/api/descriptors/GPUSharedTextureMemoryDescriptor.h +0 -73
  255. package/cpp/rnwgpu/api/descriptors/GPUStencilFaceState.h +0 -64
  256. package/cpp/rnwgpu/api/descriptors/GPUStorageTextureBindingLayout.h +0 -59
  257. package/cpp/rnwgpu/api/descriptors/GPUTextureBindingLayout.h +0 -59
  258. package/cpp/rnwgpu/api/descriptors/GPUTextureDescriptor.h +0 -91
  259. package/cpp/rnwgpu/api/descriptors/GPUTextureUsage.h +0 -29
  260. package/cpp/rnwgpu/api/descriptors/GPUTextureViewDescriptor.h +0 -91
  261. package/cpp/rnwgpu/api/descriptors/GPUUncapturedErrorEventInit.h +0 -64
  262. package/cpp/rnwgpu/api/descriptors/GPUVertexAttribute.h +0 -53
  263. package/cpp/rnwgpu/api/descriptors/GPUVertexBufferLayout.h +0 -62
  264. package/cpp/rnwgpu/api/descriptors/GPUVertexState.h +0 -73
  265. package/cpp/rnwgpu/api/descriptors/Unions.h +0 -1969
  266. package/cpp/rnwgpu/async/AsyncTaskHandle.cpp +0 -213
  267. package/cpp/rnwgpu/async/AsyncTaskHandle.h +0 -58
  268. package/cpp/rnwgpu/async/RuntimeContext.cpp +0 -199
  269. package/cpp/rnwgpu/async/RuntimeContext.h +0 -134
  270. package/lib/commonjs/skia/types/WebGPU.d.ts +0 -184
  271. package/lib/commonjs/skia/types/WebGPU.js +0 -105
  272. package/lib/commonjs/skia/types/WebGPU.js.map +0 -1
  273. package/lib/commonjs/specs/WebGPUViewNativeComponent.d.ts +0 -8
  274. package/lib/commonjs/specs/WebGPUViewNativeComponent.js +0 -10
  275. package/lib/commonjs/specs/WebGPUViewNativeComponent.js.map +0 -1
  276. package/lib/commonjs/specs/WebGPUViewNativeComponent.web.d.ts +0 -8
  277. package/lib/commonjs/specs/WebGPUViewNativeComponent.web.js +0 -103
  278. package/lib/commonjs/specs/WebGPUViewNativeComponent.web.js.map +0 -1
  279. package/lib/commonjs/specs/utils.d.ts +0 -1
  280. package/lib/commonjs/specs/utils.js +0 -11
  281. package/lib/commonjs/specs/utils.js.map +0 -1
  282. package/lib/commonjs/views/WebGPUCanvas.d.ts +0 -33
  283. package/lib/commonjs/views/WebGPUCanvas.js +0 -79
  284. package/lib/commonjs/views/WebGPUCanvas.js.map +0 -1
  285. package/lib/commonjs/views/WebGPUCanvas.web.d.ts +0 -23
  286. package/lib/commonjs/views/WebGPUCanvas.web.js +0 -20
  287. package/lib/commonjs/views/WebGPUCanvas.web.js.map +0 -1
  288. package/lib/module/skia/types/WebGPU.d.ts +0 -184
  289. package/lib/module/skia/types/WebGPU.js +0 -99
  290. package/lib/module/skia/types/WebGPU.js.map +0 -1
  291. package/lib/module/specs/WebGPUViewNativeComponent.d.ts +0 -8
  292. package/lib/module/specs/WebGPUViewNativeComponent.js +0 -4
  293. package/lib/module/specs/WebGPUViewNativeComponent.js.map +0 -1
  294. package/lib/module/specs/WebGPUViewNativeComponent.web.d.ts +0 -8
  295. package/lib/module/specs/WebGPUViewNativeComponent.web.js +0 -96
  296. package/lib/module/specs/WebGPUViewNativeComponent.web.js.map +0 -1
  297. package/lib/module/specs/utils.d.ts +0 -1
  298. package/lib/module/specs/utils.js +0 -5
  299. package/lib/module/specs/utils.js.map +0 -1
  300. package/lib/module/views/WebGPUCanvas.d.ts +0 -33
  301. package/lib/module/views/WebGPUCanvas.js +0 -70
  302. package/lib/module/views/WebGPUCanvas.js.map +0 -1
  303. package/lib/module/views/WebGPUCanvas.web.d.ts +0 -23
  304. package/lib/module/views/WebGPUCanvas.web.js +0 -12
  305. package/lib/module/views/WebGPUCanvas.web.js.map +0 -1
  306. package/lib/typescript/lib/commonjs/skia/types/WebGPU.d.ts +0 -2
  307. package/lib/typescript/lib/commonjs/specs/WebGPUViewNativeComponent.d.ts +0 -4
  308. package/lib/typescript/lib/commonjs/specs/WebGPUViewNativeComponent.web.d.ts +0 -3
  309. package/lib/typescript/lib/commonjs/specs/utils.d.ts +0 -2
  310. package/lib/typescript/lib/commonjs/views/WebGPUCanvas.d.ts +0 -6
  311. package/lib/typescript/lib/commonjs/views/WebGPUCanvas.web.d.ts +0 -6
  312. package/lib/typescript/lib/module/skia/types/WebGPU.d.ts +0 -31
  313. package/lib/typescript/lib/module/specs/WebGPUViewNativeComponent.d.ts +0 -2
  314. package/lib/typescript/lib/module/specs/WebGPUViewNativeComponent.web.d.ts +0 -2
  315. package/lib/typescript/lib/module/specs/utils.d.ts +0 -1
  316. package/lib/typescript/lib/module/views/WebGPUCanvas.d.ts +0 -7
  317. package/lib/typescript/lib/module/views/WebGPUCanvas.web.d.ts +0 -8
  318. package/lib/typescript/src/skia/types/WebGPU.d.ts +0 -184
  319. package/lib/typescript/src/specs/WebGPUViewNativeComponent.d.ts +0 -8
  320. package/lib/typescript/src/specs/WebGPUViewNativeComponent.web.d.ts +0 -8
  321. package/lib/typescript/src/specs/utils.d.ts +0 -1
  322. package/lib/typescript/src/views/WebGPUCanvas.d.ts +0 -33
  323. package/lib/typescript/src/views/WebGPUCanvas.web.d.ts +0 -23
  324. package/src/skia/types/WebGPU.ts +0 -226
  325. package/src/specs/WebGPUViewNativeComponent.ts +0 -11
  326. package/src/specs/WebGPUViewNativeComponent.web.ts +0 -110
  327. package/src/specs/utils.ts +0 -4
  328. package/src/views/WebGPUCanvas.tsx +0 -125
  329. 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 "GPUColor.h"
10
- #include "rnwgpu/api/GPUTextureView.h"
11
-
12
- namespace jsi = facebook::jsi;
13
-
14
- namespace rnwgpu {
15
-
16
- struct GPURenderPassColorAttachment {
17
- std::shared_ptr<GPUTextureView> view; // GPUTextureView
18
- std::optional<double> depthSlice; // GPUIntegerCoordinate
19
- std::optional<std::shared_ptr<GPUTextureView>>
20
- resolveTarget; // GPUTextureView
21
- std::optional<std::shared_ptr<GPUColor>> clearValue; // GPUColor
22
- wgpu::LoadOp loadOp; // GPULoadOp
23
- wgpu::StoreOp storeOp; // GPUStoreOp
24
- };
25
-
26
- } // namespace rnwgpu
27
-
28
- namespace rnwgpu {
29
-
30
- template <>
31
- struct JSIConverter<std::shared_ptr<rnwgpu::GPURenderPassColorAttachment>> {
32
- static std::shared_ptr<rnwgpu::GPURenderPassColorAttachment>
33
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
34
- auto result = std::make_unique<rnwgpu::GPURenderPassColorAttachment>();
35
- if (!outOfBounds && arg.isObject()) {
36
- auto value = arg.getObject(runtime);
37
- if (value.hasProperty(runtime, "view")) {
38
- auto prop = value.getProperty(runtime, "view");
39
- result->view = JSIConverter<std::shared_ptr<GPUTextureView>>::fromJSI(
40
- runtime, prop, false);
41
- }
42
- if (value.hasProperty(runtime, "depthSlice")) {
43
- auto prop = value.getProperty(runtime, "depthSlice");
44
- result->depthSlice =
45
- JSIConverter<std::optional<double>>::fromJSI(runtime, prop, false);
46
- }
47
- if (value.hasProperty(runtime, "resolveTarget")) {
48
- auto prop = value.getProperty(runtime, "resolveTarget");
49
- result->resolveTarget = JSIConverter<
50
- std::optional<std::shared_ptr<GPUTextureView>>>::fromJSI(runtime,
51
- prop,
52
- false);
53
- }
54
- if (value.hasProperty(runtime, "clearValue")) {
55
- auto prop = value.getProperty(runtime, "clearValue");
56
- result->clearValue =
57
- JSIConverter<std::optional<std::shared_ptr<GPUColor>>>::fromJSI(
58
- runtime, prop, false);
59
- }
60
- if (value.hasProperty(runtime, "loadOp")) {
61
- auto prop = value.getProperty(runtime, "loadOp");
62
- result->loadOp =
63
- JSIConverter<wgpu::LoadOp>::fromJSI(runtime, prop, false);
64
- }
65
- if (value.hasProperty(runtime, "storeOp")) {
66
- auto prop = value.getProperty(runtime, "storeOp");
67
- result->storeOp =
68
- JSIConverter<wgpu::StoreOp>::fromJSI(runtime, prop, false);
69
- }
70
- }
71
-
72
- return result;
73
- }
74
- static jsi::Value
75
- toJSI(jsi::Runtime &runtime,
76
- std::shared_ptr<rnwgpu::GPURenderPassColorAttachment> arg) {
77
- throw std::runtime_error("Invalid GPURenderPassColorAttachment::toJSI()");
78
- }
79
- };
80
-
81
- } // namespace rnwgpu
@@ -1,101 +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/GPUTextureView.h"
10
-
11
- namespace jsi = facebook::jsi;
12
-
13
- namespace rnwgpu {
14
-
15
- struct GPURenderPassDepthStencilAttachment {
16
- std::shared_ptr<GPUTextureView> view; // GPUTextureView
17
- std::optional<double> depthClearValue; // number
18
- std::optional<wgpu::LoadOp> depthLoadOp; // GPULoadOp
19
- std::optional<wgpu::StoreOp> depthStoreOp; // GPUStoreOp
20
- std::optional<bool> depthReadOnly; // boolean
21
- std::optional<double> stencilClearValue; // GPUStencilValue
22
- std::optional<wgpu::LoadOp> stencilLoadOp; // GPULoadOp
23
- std::optional<wgpu::StoreOp> stencilStoreOp; // GPUStoreOp
24
- std::optional<bool> stencilReadOnly; // boolean
25
- };
26
-
27
- } // namespace rnwgpu
28
-
29
- namespace rnwgpu {
30
-
31
- template <>
32
- struct JSIConverter<
33
- std::shared_ptr<rnwgpu::GPURenderPassDepthStencilAttachment>> {
34
- static std::shared_ptr<rnwgpu::GPURenderPassDepthStencilAttachment>
35
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
36
- auto result =
37
- std::make_unique<rnwgpu::GPURenderPassDepthStencilAttachment>();
38
- if (!outOfBounds && arg.isObject()) {
39
- auto value = arg.getObject(runtime);
40
- if (value.hasProperty(runtime, "view")) {
41
- auto prop = value.getProperty(runtime, "view");
42
- result->view = JSIConverter<std::shared_ptr<GPUTextureView>>::fromJSI(
43
- runtime, prop, false);
44
- }
45
- if (value.hasProperty(runtime, "depthClearValue")) {
46
- auto prop = value.getProperty(runtime, "depthClearValue");
47
- result->depthClearValue =
48
- JSIConverter<std::optional<double>>::fromJSI(runtime, prop, false);
49
- }
50
- if (value.hasProperty(runtime, "depthLoadOp")) {
51
- auto prop = value.getProperty(runtime, "depthLoadOp");
52
- result->depthLoadOp =
53
- JSIConverter<std::optional<wgpu::LoadOp>>::fromJSI(runtime, prop,
54
- false);
55
- }
56
- if (value.hasProperty(runtime, "depthStoreOp")) {
57
- auto prop = value.getProperty(runtime, "depthStoreOp");
58
- result->depthStoreOp =
59
- JSIConverter<std::optional<wgpu::StoreOp>>::fromJSI(runtime, prop,
60
- false);
61
- }
62
- if (value.hasProperty(runtime, "depthReadOnly")) {
63
- auto prop = value.getProperty(runtime, "depthReadOnly");
64
- result->depthReadOnly =
65
- JSIConverter<std::optional<bool>>::fromJSI(runtime, prop, false);
66
- }
67
- if (value.hasProperty(runtime, "stencilClearValue")) {
68
- auto prop = value.getProperty(runtime, "stencilClearValue");
69
- result->stencilClearValue =
70
- JSIConverter<std::optional<double>>::fromJSI(runtime, prop, false);
71
- }
72
- if (value.hasProperty(runtime, "stencilLoadOp")) {
73
- auto prop = value.getProperty(runtime, "stencilLoadOp");
74
- result->stencilLoadOp =
75
- JSIConverter<std::optional<wgpu::LoadOp>>::fromJSI(runtime, prop,
76
- false);
77
- }
78
- if (value.hasProperty(runtime, "stencilStoreOp")) {
79
- auto prop = value.getProperty(runtime, "stencilStoreOp");
80
- result->stencilStoreOp =
81
- JSIConverter<std::optional<wgpu::StoreOp>>::fromJSI(runtime, prop,
82
- false);
83
- }
84
- if (value.hasProperty(runtime, "stencilReadOnly")) {
85
- auto prop = value.getProperty(runtime, "stencilReadOnly");
86
- result->stencilReadOnly =
87
- JSIConverter<std::optional<bool>>::fromJSI(runtime, prop, false);
88
- }
89
- }
90
-
91
- return result;
92
- }
93
- static jsi::Value
94
- toJSI(jsi::Runtime &runtime,
95
- std::shared_ptr<rnwgpu::GPURenderPassDepthStencilAttachment> arg) {
96
- throw std::runtime_error(
97
- "Invalid GPURenderPassDepthStencilAttachment::toJSI()");
98
- }
99
- };
100
-
101
- } // namespace rnwgpu
@@ -1,92 +0,0 @@
1
- #pragma once
2
-
3
- #include <memory>
4
- #include <string>
5
- #include <variant>
6
- #include <vector>
7
-
8
- #include "webgpu/webgpu_cpp.h"
9
-
10
- #include "jsi/JSIConverter.h"
11
-
12
- #include "GPURenderPassColorAttachment.h"
13
- #include "GPURenderPassDepthStencilAttachment.h"
14
- #include "GPURenderPassTimestampWrites.h"
15
- #include "rnwgpu/api/GPUQuerySet.h"
16
-
17
- namespace jsi = facebook::jsi;
18
-
19
- namespace rnwgpu {
20
-
21
- struct GPURenderPassDescriptor {
22
- std::vector<std::variant<std::nullptr_t,
23
- std::shared_ptr<GPURenderPassColorAttachment>>>
24
- colorAttachments; // Iterable<GPURenderPassColorAttachment | null>
25
- std::optional<std::shared_ptr<GPURenderPassDepthStencilAttachment>>
26
- depthStencilAttachment; // GPURenderPassDepthStencilAttachment
27
- std::optional<std::shared_ptr<GPUQuerySet>> occlusionQuerySet; // GPUQuerySet
28
- std::optional<std::shared_ptr<GPURenderPassTimestampWrites>>
29
- timestampWrites; // GPURenderPassTimestampWrites
30
- std::optional<double> maxDrawCount; // GPUSize64
31
- std::optional<std::string> label; // string
32
- };
33
-
34
- } // namespace rnwgpu
35
-
36
- namespace rnwgpu {
37
-
38
- template <>
39
- struct JSIConverter<std::shared_ptr<rnwgpu::GPURenderPassDescriptor>> {
40
- static std::shared_ptr<rnwgpu::GPURenderPassDescriptor>
41
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
42
- auto result = std::make_unique<rnwgpu::GPURenderPassDescriptor>();
43
- if (!outOfBounds && arg.isObject()) {
44
- auto value = arg.getObject(runtime);
45
- if (value.hasProperty(runtime, "colorAttachments")) {
46
- auto prop = value.getProperty(runtime, "colorAttachments");
47
- result->colorAttachments = JSIConverter<std::vector<std::variant<
48
- std::nullptr_t, std::shared_ptr<GPURenderPassColorAttachment>>>>::
49
- fromJSI(runtime, prop, false);
50
- }
51
- if (value.hasProperty(runtime, "depthStencilAttachment")) {
52
- auto prop = value.getProperty(runtime, "depthStencilAttachment");
53
- result->depthStencilAttachment =
54
- JSIConverter<std::optional<std::shared_ptr<
55
- GPURenderPassDepthStencilAttachment>>>::fromJSI(runtime, prop,
56
- false);
57
- }
58
- if (value.hasProperty(runtime, "occlusionQuerySet")) {
59
- auto prop = value.getProperty(runtime, "occlusionQuerySet");
60
- result->occlusionQuerySet =
61
- JSIConverter<std::optional<std::shared_ptr<GPUQuerySet>>>::fromJSI(
62
- runtime, prop, false);
63
- }
64
- if (value.hasProperty(runtime, "timestampWrites")) {
65
- auto prop = value.getProperty(runtime, "timestampWrites");
66
- result->timestampWrites = JSIConverter<std::optional<
67
- std::shared_ptr<GPURenderPassTimestampWrites>>>::fromJSI(runtime,
68
- prop,
69
- false);
70
- }
71
- if (value.hasProperty(runtime, "maxDrawCount")) {
72
- auto prop = value.getProperty(runtime, "maxDrawCount");
73
- result->maxDrawCount =
74
- JSIConverter<std::optional<double>>::fromJSI(runtime, prop, false);
75
- }
76
- if (value.hasProperty(runtime, "label")) {
77
- auto prop = value.getProperty(runtime, "label");
78
- result->label = JSIConverter<std::optional<std::string>>::fromJSI(
79
- runtime, prop, false);
80
- }
81
- }
82
-
83
- return result;
84
- }
85
- static jsi::Value
86
- toJSI(jsi::Runtime &runtime,
87
- std::shared_ptr<rnwgpu::GPURenderPassDescriptor> arg) {
88
- throw std::runtime_error("Invalid GPURenderPassDescriptor::toJSI()");
89
- }
90
- };
91
-
92
- } // namespace rnwgpu
@@ -1,58 +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/GPUQuerySet.h"
10
-
11
- namespace jsi = facebook::jsi;
12
-
13
- namespace rnwgpu {
14
-
15
- struct GPURenderPassTimestampWrites {
16
- std::shared_ptr<GPUQuerySet> querySet; // GPUQuerySet
17
- std::optional<double> beginningOfPassWriteIndex; // GPUSize32
18
- std::optional<double> endOfPassWriteIndex; // GPUSize32
19
- };
20
-
21
- } // namespace rnwgpu
22
-
23
- namespace rnwgpu {
24
-
25
- template <>
26
- struct JSIConverter<std::shared_ptr<rnwgpu::GPURenderPassTimestampWrites>> {
27
- static std::shared_ptr<rnwgpu::GPURenderPassTimestampWrites>
28
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
29
- auto result = std::make_unique<rnwgpu::GPURenderPassTimestampWrites>();
30
- if (!outOfBounds && arg.isObject()) {
31
- auto value = arg.getObject(runtime);
32
- if (value.hasProperty(runtime, "querySet")) {
33
- auto prop = value.getProperty(runtime, "querySet");
34
- result->querySet = JSIConverter<std::shared_ptr<GPUQuerySet>>::fromJSI(
35
- runtime, prop, false);
36
- }
37
- if (value.hasProperty(runtime, "beginningOfPassWriteIndex")) {
38
- auto prop = value.getProperty(runtime, "beginningOfPassWriteIndex");
39
- result->beginningOfPassWriteIndex =
40
- JSIConverter<std::optional<double>>::fromJSI(runtime, prop, false);
41
- }
42
- if (value.hasProperty(runtime, "endOfPassWriteIndex")) {
43
- auto prop = value.getProperty(runtime, "endOfPassWriteIndex");
44
- result->endOfPassWriteIndex =
45
- JSIConverter<std::optional<double>>::fromJSI(runtime, prop, false);
46
- }
47
- }
48
-
49
- return result;
50
- }
51
- static jsi::Value
52
- toJSI(jsi::Runtime &runtime,
53
- std::shared_ptr<rnwgpu::GPURenderPassTimestampWrites> arg) {
54
- throw std::runtime_error("Invalid GPURenderPassTimestampWrites::toJSI()");
55
- }
56
- };
57
-
58
- } // namespace rnwgpu
@@ -1,103 +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
- #include "GPUDepthStencilState.h"
11
- #include "GPUFragmentState.h"
12
- #include "GPUMultisampleState.h"
13
- #include "GPUPrimitiveState.h"
14
- #include "GPUVertexState.h"
15
- #include "rnwgpu/api/GPUPipelineLayout.h"
16
-
17
- namespace jsi = facebook::jsi;
18
-
19
- namespace rnwgpu {
20
-
21
- struct GPURenderPipelineDescriptor {
22
- std::shared_ptr<GPUVertexState> vertex; // GPUVertexState
23
- std::optional<std::shared_ptr<GPUPrimitiveState>>
24
- primitive; // GPUPrimitiveState
25
- std::optional<std::shared_ptr<GPUDepthStencilState>>
26
- depthStencil; // GPUDepthStencilState
27
- std::optional<std::shared_ptr<GPUMultisampleState>>
28
- multisample; // GPUMultisampleState
29
- std::optional<std::shared_ptr<GPUFragmentState>> fragment; // GPUFragmentState
30
- std::variant<std::nullptr_t, std::shared_ptr<GPUPipelineLayout>>
31
- layout; // | GPUPipelineLayout | GPUAutoLayoutMode
32
- std::optional<std::string> label; // string
33
- };
34
-
35
- } // namespace rnwgpu
36
-
37
- namespace rnwgpu {
38
-
39
- template <>
40
- struct JSIConverter<std::shared_ptr<rnwgpu::GPURenderPipelineDescriptor>> {
41
- static std::shared_ptr<rnwgpu::GPURenderPipelineDescriptor>
42
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
43
- auto result = std::make_unique<rnwgpu::GPURenderPipelineDescriptor>();
44
- if (!outOfBounds && arg.isObject()) {
45
- auto value = arg.getObject(runtime);
46
- if (value.hasProperty(runtime, "vertex")) {
47
- auto prop = value.getProperty(runtime, "vertex");
48
- result->vertex = JSIConverter<std::shared_ptr<GPUVertexState>>::fromJSI(
49
- runtime, prop, false);
50
- }
51
- if (value.hasProperty(runtime, "primitive")) {
52
- auto prop = value.getProperty(runtime, "primitive");
53
- result->primitive = JSIConverter<
54
- std::optional<std::shared_ptr<GPUPrimitiveState>>>::fromJSI(runtime,
55
- prop,
56
- false);
57
- }
58
- if (value.hasProperty(runtime, "depthStencil")) {
59
- auto prop = value.getProperty(runtime, "depthStencil");
60
- result->depthStencil =
61
- JSIConverter<std::optional<std::shared_ptr<GPUDepthStencilState>>>::
62
- fromJSI(runtime, prop, false);
63
- }
64
- if (value.hasProperty(runtime, "multisample")) {
65
- auto prop = value.getProperty(runtime, "multisample");
66
- result->multisample =
67
- JSIConverter<std::optional<std::shared_ptr<GPUMultisampleState>>>::
68
- fromJSI(runtime, prop, false);
69
- }
70
- if (value.hasProperty(runtime, "fragment")) {
71
- auto prop = value.getProperty(runtime, "fragment");
72
- result->fragment = JSIConverter<
73
- std::optional<std::shared_ptr<GPUFragmentState>>>::fromJSI(runtime,
74
- prop,
75
- false);
76
- }
77
- if (value.hasProperty(runtime, "layout")) {
78
- auto prop = value.getProperty(runtime, "layout");
79
- if (prop.isNull() || prop.isString()) {
80
- result->layout = nullptr;
81
- } else {
82
- result->layout =
83
- JSIConverter<std::shared_ptr<GPUPipelineLayout>>::fromJSI(
84
- runtime, prop, false);
85
- }
86
- }
87
- if (value.hasProperty(runtime, "label")) {
88
- auto prop = value.getProperty(runtime, "label");
89
- result->label = JSIConverter<std::optional<std::string>>::fromJSI(
90
- runtime, prop, false);
91
- }
92
- }
93
-
94
- return result;
95
- }
96
- static jsi::Value
97
- toJSI(jsi::Runtime &runtime,
98
- std::shared_ptr<rnwgpu::GPURenderPipelineDescriptor> arg) {
99
- throw std::runtime_error("Invalid GPURenderPipelineDescriptor::toJSI()");
100
- }
101
- };
102
-
103
- } // namespace rnwgpu
@@ -1,51 +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 GPURequestAdapterOptions {
14
- std::optional<wgpu::PowerPreference> powerPreference; // GPUPowerPreference
15
- std::optional<bool> forceFallbackAdapter; // boolean
16
- };
17
-
18
- } // namespace rnwgpu
19
-
20
- namespace rnwgpu {
21
-
22
- template <>
23
- struct JSIConverter<std::shared_ptr<rnwgpu::GPURequestAdapterOptions>> {
24
- static std::shared_ptr<rnwgpu::GPURequestAdapterOptions>
25
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
26
- auto result = std::make_unique<rnwgpu::GPURequestAdapterOptions>();
27
- if (!outOfBounds && arg.isObject()) {
28
- auto value = arg.getObject(runtime);
29
- if (value.hasProperty(runtime, "powerPreference")) {
30
- auto prop = value.getProperty(runtime, "powerPreference");
31
- result->powerPreference =
32
- JSIConverter<std::optional<wgpu::PowerPreference>>::fromJSI(
33
- runtime, prop, false);
34
- }
35
- if (value.hasProperty(runtime, "forceFallbackAdapter")) {
36
- auto prop = value.getProperty(runtime, "forceFallbackAdapter");
37
- result->forceFallbackAdapter =
38
- JSIConverter<std::optional<bool>>::fromJSI(runtime, prop, false);
39
- }
40
- }
41
-
42
- return result;
43
- }
44
- static jsi::Value
45
- toJSI(jsi::Runtime &runtime,
46
- std::shared_ptr<rnwgpu::GPURequestAdapterOptions> arg) {
47
- throw std::runtime_error("Invalid GPURequestAdapterOptions::toJSI()");
48
- }
49
- };
50
-
51
- } // namespace rnwgpu
@@ -1,45 +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 GPUSamplerBindingLayout {
14
- std::optional<wgpu::SamplerBindingType> type; // GPUSamplerBindingType
15
- };
16
-
17
- } // namespace rnwgpu
18
-
19
- namespace rnwgpu {
20
-
21
- template <>
22
- struct JSIConverter<std::shared_ptr<rnwgpu::GPUSamplerBindingLayout>> {
23
- static std::shared_ptr<rnwgpu::GPUSamplerBindingLayout>
24
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
25
- auto result = std::make_unique<rnwgpu::GPUSamplerBindingLayout>();
26
- if (!outOfBounds && arg.isObject()) {
27
- auto value = arg.getObject(runtime);
28
- if (value.hasProperty(runtime, "type")) {
29
- auto prop = value.getProperty(runtime, "type");
30
- result->type =
31
- JSIConverter<std::optional<wgpu::SamplerBindingType>>::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::GPUSamplerBindingLayout> arg) {
41
- throw std::runtime_error("Invalid GPUSamplerBindingLayout::toJSI()");
42
- }
43
- };
44
-
45
- } // namespace rnwgpu
@@ -1,110 +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 GPUSamplerDescriptor {
15
- std::optional<wgpu::AddressMode> addressModeU; // GPUAddressMode
16
- std::optional<wgpu::AddressMode> addressModeV; // GPUAddressMode
17
- std::optional<wgpu::AddressMode> addressModeW; // GPUAddressMode
18
- std::optional<wgpu::FilterMode> magFilter; // GPUFilterMode
19
- std::optional<wgpu::FilterMode> minFilter; // GPUFilterMode
20
- std::optional<wgpu::MipmapFilterMode> mipmapFilter; // GPUMipmapFilterMode
21
- std::optional<double> lodMinClamp; // number
22
- std::optional<double> lodMaxClamp; // number
23
- std::optional<wgpu::CompareFunction> compare; // GPUCompareFunction
24
- std::optional<double> maxAnisotropy; // number
25
- std::optional<std::string> label; // string
26
- };
27
-
28
- } // namespace rnwgpu
29
-
30
- namespace rnwgpu {
31
-
32
- template <> struct JSIConverter<std::shared_ptr<rnwgpu::GPUSamplerDescriptor>> {
33
- static std::shared_ptr<rnwgpu::GPUSamplerDescriptor>
34
- fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
35
- auto result = std::make_unique<rnwgpu::GPUSamplerDescriptor>();
36
- if (!outOfBounds && arg.isObject()) {
37
- auto value = arg.getObject(runtime);
38
- if (value.hasProperty(runtime, "addressModeU")) {
39
- auto prop = value.getProperty(runtime, "addressModeU");
40
- result->addressModeU =
41
- JSIConverter<std::optional<wgpu::AddressMode>>::fromJSI(
42
- runtime, prop, false);
43
- }
44
- if (value.hasProperty(runtime, "addressModeV")) {
45
- auto prop = value.getProperty(runtime, "addressModeV");
46
- result->addressModeV =
47
- JSIConverter<std::optional<wgpu::AddressMode>>::fromJSI(
48
- runtime, prop, false);
49
- }
50
- if (value.hasProperty(runtime, "addressModeW")) {
51
- auto prop = value.getProperty(runtime, "addressModeW");
52
- result->addressModeW =
53
- JSIConverter<std::optional<wgpu::AddressMode>>::fromJSI(
54
- runtime, prop, false);
55
- }
56
- if (value.hasProperty(runtime, "magFilter")) {
57
- auto prop = value.getProperty(runtime, "magFilter");
58
- result->magFilter =
59
- JSIConverter<std::optional<wgpu::FilterMode>>::fromJSI(runtime,
60
- prop, false);
61
- }
62
- if (value.hasProperty(runtime, "minFilter")) {
63
- auto prop = value.getProperty(runtime, "minFilter");
64
- result->minFilter =
65
- JSIConverter<std::optional<wgpu::FilterMode>>::fromJSI(runtime,
66
- prop, false);
67
- }
68
- if (value.hasProperty(runtime, "mipmapFilter")) {
69
- auto prop = value.getProperty(runtime, "mipmapFilter");
70
- result->mipmapFilter =
71
- JSIConverter<std::optional<wgpu::MipmapFilterMode>>::fromJSI(
72
- runtime, prop, false);
73
- }
74
- if (value.hasProperty(runtime, "lodMinClamp")) {
75
- auto prop = value.getProperty(runtime, "lodMinClamp");
76
- result->lodMinClamp =
77
- JSIConverter<std::optional<double>>::fromJSI(runtime, prop, false);
78
- }
79
- if (value.hasProperty(runtime, "lodMaxClamp")) {
80
- auto prop = value.getProperty(runtime, "lodMaxClamp");
81
- result->lodMaxClamp =
82
- JSIConverter<std::optional<double>>::fromJSI(runtime, prop, false);
83
- }
84
- if (value.hasProperty(runtime, "compare")) {
85
- auto prop = value.getProperty(runtime, "compare");
86
- result->compare =
87
- JSIConverter<std::optional<wgpu::CompareFunction>>::fromJSI(
88
- runtime, prop, false);
89
- }
90
- if (value.hasProperty(runtime, "maxAnisotropy")) {
91
- auto prop = value.getProperty(runtime, "maxAnisotropy");
92
- result->maxAnisotropy =
93
- JSIConverter<std::optional<double>>::fromJSI(runtime, prop, false);
94
- }
95
- if (value.hasProperty(runtime, "label")) {
96
- auto prop = value.getProperty(runtime, "label");
97
- result->label = JSIConverter<std::optional<std::string>>::fromJSI(
98
- runtime, prop, false);
99
- }
100
- }
101
-
102
- return result;
103
- }
104
- static jsi::Value toJSI(jsi::Runtime &runtime,
105
- std::shared_ptr<rnwgpu::GPUSamplerDescriptor> arg) {
106
- throw std::runtime_error("Invalid GPUSamplerDescriptor::toJSI()");
107
- }
108
- };
109
-
110
- } // namespace rnwgpu