@shopify/react-native-skia 1.11.0 → 1.11.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (272) hide show
  1. package/android/CMakeLists.txt +0 -8
  2. package/android/cpp/jni/JniLoad.cpp +0 -2
  3. package/android/src/main/java/com/shopify/reactnative/skia/RNSkiaPackage.java +1 -1
  4. package/android/src/paper/java/com/facebook/react/viewmanagers/SkiaPictureViewManagerDelegate.java +4 -2
  5. package/cpp/api/recorder/Convertor.h +2 -1
  6. package/cpp/api/recorder/DataTypes.h +70 -72
  7. package/cpp/api/recorder/Drawings.h +25 -24
  8. package/cpp/api/recorder/RNRecorder.h +12 -10
  9. package/cpp/api/recorder/Shaders.h +5 -5
  10. package/cpp/jsi/ViewProperty.h +5 -16
  11. package/cpp/rnskia/RNSkManager.cpp +1 -7
  12. package/ios/RNSkia-iOS/SkiaCVPixelBufferUtils.mm +8 -4
  13. package/lib/commonjs/dom/nodes/index.d.ts +0 -1
  14. package/lib/commonjs/dom/nodes/index.js +0 -11
  15. package/lib/commonjs/dom/nodes/index.js.map +1 -1
  16. package/lib/commonjs/external/reanimated/renderHelpers.d.ts +0 -6
  17. package/lib/commonjs/external/reanimated/renderHelpers.js +0 -73
  18. package/lib/commonjs/external/reanimated/renderHelpers.js.map +1 -1
  19. package/lib/commonjs/index.d.ts +0 -1
  20. package/lib/commonjs/index.js +0 -12
  21. package/lib/commonjs/index.js.map +1 -1
  22. package/lib/commonjs/renderer/Canvas.d.ts +10 -1
  23. package/lib/commonjs/renderer/Canvas.js +3 -1
  24. package/lib/commonjs/renderer/Canvas.js.map +1 -1
  25. package/lib/commonjs/sksg/Container.d.ts +2 -0
  26. package/lib/commonjs/sksg/Container.js +10 -0
  27. package/lib/commonjs/sksg/Container.js.map +1 -1
  28. package/lib/commonjs/sksg/Elements.d.ts +65 -0
  29. package/lib/commonjs/sksg/Elements.js +6 -0
  30. package/lib/commonjs/sksg/Elements.js.map +1 -0
  31. package/lib/commonjs/sksg/Reconciler.d.ts +1 -0
  32. package/lib/commonjs/sksg/Reconciler.js +2 -0
  33. package/lib/commonjs/sksg/Reconciler.js.map +1 -1
  34. package/lib/commonjs/views/index.d.ts +0 -1
  35. package/lib/commonjs/views/index.js +0 -11
  36. package/lib/commonjs/views/index.js.map +1 -1
  37. package/lib/module/dom/nodes/index.d.ts +0 -1
  38. package/lib/module/dom/nodes/index.js +0 -1
  39. package/lib/module/dom/nodes/index.js.map +1 -1
  40. package/lib/module/external/reanimated/renderHelpers.d.ts +0 -6
  41. package/lib/module/external/reanimated/renderHelpers.js +0 -68
  42. package/lib/module/external/reanimated/renderHelpers.js.map +1 -1
  43. package/lib/module/index.d.ts +0 -1
  44. package/lib/module/index.js +0 -1
  45. package/lib/module/index.js.map +1 -1
  46. package/lib/module/renderer/Canvas.d.ts +10 -1
  47. package/lib/module/renderer/Canvas.js +1 -0
  48. package/lib/module/renderer/Canvas.js.map +1 -1
  49. package/lib/module/sksg/Container.d.ts +2 -0
  50. package/lib/module/sksg/Container.js +10 -0
  51. package/lib/module/sksg/Container.js.map +1 -1
  52. package/lib/module/sksg/Elements.d.ts +65 -0
  53. package/lib/module/sksg/Elements.js +2 -0
  54. package/lib/module/sksg/Elements.js.map +1 -0
  55. package/lib/module/sksg/Reconciler.d.ts +1 -0
  56. package/lib/module/sksg/Reconciler.js +2 -0
  57. package/lib/module/sksg/Reconciler.js.map +1 -1
  58. package/lib/module/views/index.d.ts +0 -1
  59. package/lib/module/views/index.js +0 -1
  60. package/lib/module/views/index.js.map +1 -1
  61. package/lib/typescript/lib/commonjs/external/reanimated/renderHelpers.d.ts +0 -3
  62. package/lib/typescript/lib/commonjs/renderer/Canvas.d.ts +1 -0
  63. package/lib/typescript/lib/commonjs/sksg/Container.d.ts +2 -0
  64. package/lib/typescript/lib/commonjs/sksg/Elements.d.ts +1 -0
  65. package/lib/typescript/lib/commonjs/sksg/Reconciler.d.ts +6 -0
  66. package/lib/typescript/lib/module/dom/nodes/index.d.ts +0 -1
  67. package/lib/typescript/lib/module/external/reanimated/renderHelpers.d.ts +0 -3
  68. package/lib/typescript/lib/module/index.d.ts +0 -1
  69. package/lib/typescript/lib/module/mock/index.d.ts +0 -1
  70. package/lib/typescript/lib/module/renderer/Canvas.d.ts +1 -0
  71. package/lib/typescript/lib/module/sksg/Container.d.ts +2 -0
  72. package/lib/typescript/lib/module/sksg/Elements.d.ts +1 -0
  73. package/lib/typescript/lib/module/sksg/Reconciler.d.ts +6 -0
  74. package/lib/typescript/lib/module/views/index.d.ts +0 -1
  75. package/lib/typescript/src/dom/nodes/index.d.ts +0 -1
  76. package/lib/typescript/src/external/reanimated/renderHelpers.d.ts +0 -6
  77. package/lib/typescript/src/index.d.ts +0 -1
  78. package/lib/typescript/src/renderer/Canvas.d.ts +10 -1
  79. package/lib/typescript/src/sksg/Container.d.ts +2 -0
  80. package/lib/typescript/src/sksg/Elements.d.ts +65 -0
  81. package/lib/typescript/src/sksg/Reconciler.d.ts +1 -0
  82. package/lib/typescript/src/views/index.d.ts +0 -1
  83. package/package.json +1 -1
  84. package/src/dom/nodes/index.ts +0 -1
  85. package/src/external/reanimated/renderHelpers.ts +1 -78
  86. package/src/index.ts +0 -1
  87. package/src/renderer/Canvas.tsx +11 -1
  88. package/src/sksg/Container.ts +11 -0
  89. package/src/sksg/Elements.tsx +136 -0
  90. package/src/sksg/Reconciler.ts +2 -0
  91. package/src/views/index.ts +0 -1
  92. package/android/cpp/jni/include/JniSkiaDomView.h +0 -82
  93. package/android/src/main/java/com/shopify/reactnative/skia/SkiaDomView.java +0 -41
  94. package/android/src/main/java/com/shopify/reactnative/skia/SkiaDomViewManager.java +0 -32
  95. package/android/src/paper/java/com/facebook/react/viewmanagers/SkiaDomViewManagerDelegate.java +0 -34
  96. package/android/src/paper/java/com/facebook/react/viewmanagers/SkiaDomViewManagerInterface.java +0 -18
  97. package/cpp/rnskia/RNSkDomView.cpp +0 -121
  98. package/cpp/rnskia/RNSkDomView.h +0 -97
  99. package/cpp/rnskia/dom/JsiDomApi.h +0 -165
  100. package/cpp/rnskia/dom/base/BaseNodeProp.h +0 -72
  101. package/cpp/rnskia/dom/base/ConcatablePaint.cpp +0 -117
  102. package/cpp/rnskia/dom/base/ConcatablePaint.h +0 -49
  103. package/cpp/rnskia/dom/base/Declaration.h +0 -86
  104. package/cpp/rnskia/dom/base/DeclarationContext.h +0 -79
  105. package/cpp/rnskia/dom/base/DerivedNodeProp.h +0 -203
  106. package/cpp/rnskia/dom/base/DrawingContext.cpp +0 -55
  107. package/cpp/rnskia/dom/base/DrawingContext.h +0 -104
  108. package/cpp/rnskia/dom/base/JsiDomDeclarationNode.h +0 -119
  109. package/cpp/rnskia/dom/base/JsiDomDrawingNode.h +0 -71
  110. package/cpp/rnskia/dom/base/JsiDomNode.h +0 -572
  111. package/cpp/rnskia/dom/base/JsiDomRenderNode.h +0 -262
  112. package/cpp/rnskia/dom/base/NodeProp.h +0 -139
  113. package/cpp/rnskia/dom/base/NodePropsContainer.h +0 -158
  114. package/cpp/rnskia/dom/nodes/JsiAtlasNode.h +0 -64
  115. package/cpp/rnskia/dom/nodes/JsiBackdropFilterNode.h +0 -49
  116. package/cpp/rnskia/dom/nodes/JsiBlendNode.h +0 -94
  117. package/cpp/rnskia/dom/nodes/JsiBlurMaskNode.h +0 -75
  118. package/cpp/rnskia/dom/nodes/JsiBoxNode.h +0 -94
  119. package/cpp/rnskia/dom/nodes/JsiBoxShadowNode.h +0 -33
  120. package/cpp/rnskia/dom/nodes/JsiCircleNode.h +0 -35
  121. package/cpp/rnskia/dom/nodes/JsiColorFilterNodes.h +0 -164
  122. package/cpp/rnskia/dom/nodes/JsiDiffRectNode.h +0 -37
  123. package/cpp/rnskia/dom/nodes/JsiFillNode.h +0 -22
  124. package/cpp/rnskia/dom/nodes/JsiGlyphsNode.h +0 -53
  125. package/cpp/rnskia/dom/nodes/JsiGroupNode.h +0 -25
  126. package/cpp/rnskia/dom/nodes/JsiImageFilterNodes.h +0 -361
  127. package/cpp/rnskia/dom/nodes/JsiImageNode.h +0 -43
  128. package/cpp/rnskia/dom/nodes/JsiImageSvgNode.h +0 -63
  129. package/cpp/rnskia/dom/nodes/JsiLayerNode.h +0 -74
  130. package/cpp/rnskia/dom/nodes/JsiLineNode.h +0 -38
  131. package/cpp/rnskia/dom/nodes/JsiOvalNode.h +0 -32
  132. package/cpp/rnskia/dom/nodes/JsiPaintNode.h +0 -119
  133. package/cpp/rnskia/dom/nodes/JsiParagraphNode.h +0 -62
  134. package/cpp/rnskia/dom/nodes/JsiPatchNode.h +0 -50
  135. package/cpp/rnskia/dom/nodes/JsiPathEffectNodes.h +0 -268
  136. package/cpp/rnskia/dom/nodes/JsiPathNode.h +0 -181
  137. package/cpp/rnskia/dom/nodes/JsiPictureNode.h +0 -31
  138. package/cpp/rnskia/dom/nodes/JsiPointsNode.h +0 -48
  139. package/cpp/rnskia/dom/nodes/JsiRRectNode.h +0 -33
  140. package/cpp/rnskia/dom/nodes/JsiRectNode.h +0 -33
  141. package/cpp/rnskia/dom/nodes/JsiShaderNodes.h +0 -434
  142. package/cpp/rnskia/dom/nodes/JsiTextBlobNode.h +0 -44
  143. package/cpp/rnskia/dom/nodes/JsiTextNode.h +0 -51
  144. package/cpp/rnskia/dom/nodes/JsiTextPathNode.h +0 -33
  145. package/cpp/rnskia/dom/nodes/JsiVerticesNode.h +0 -41
  146. package/cpp/rnskia/dom/props/BezierProps.h +0 -65
  147. package/cpp/rnskia/dom/props/BlendModeProp.h +0 -103
  148. package/cpp/rnskia/dom/props/BoxShadowProps.h +0 -62
  149. package/cpp/rnskia/dom/props/CircleProp.h +0 -49
  150. package/cpp/rnskia/dom/props/ClipProp.h +0 -57
  151. package/cpp/rnskia/dom/props/ColorProp.h +0 -96
  152. package/cpp/rnskia/dom/props/FontProp.h +0 -42
  153. package/cpp/rnskia/dom/props/GlyphsProp.h +0 -55
  154. package/cpp/rnskia/dom/props/LayerProp.h +0 -52
  155. package/cpp/rnskia/dom/props/MatrixProp.h +0 -54
  156. package/cpp/rnskia/dom/props/NumbersProp.h +0 -67
  157. package/cpp/rnskia/dom/props/PaintProps.h +0 -133
  158. package/cpp/rnskia/dom/props/ParagraphProp.h +0 -45
  159. package/cpp/rnskia/dom/props/PathProp.h +0 -59
  160. package/cpp/rnskia/dom/props/PictureProp.h +0 -40
  161. package/cpp/rnskia/dom/props/PointProp.h +0 -65
  162. package/cpp/rnskia/dom/props/PointsProp.h +0 -81
  163. package/cpp/rnskia/dom/props/RRectProp.h +0 -222
  164. package/cpp/rnskia/dom/props/RSXformProp.h +0 -52
  165. package/cpp/rnskia/dom/props/RadiusProp.h +0 -43
  166. package/cpp/rnskia/dom/props/RectProp.h +0 -164
  167. package/cpp/rnskia/dom/props/SamplingProp.h +0 -54
  168. package/cpp/rnskia/dom/props/SkImageProps.h +0 -196
  169. package/cpp/rnskia/dom/props/StrokeProps.h +0 -79
  170. package/cpp/rnskia/dom/props/SvgProp.h +0 -45
  171. package/cpp/rnskia/dom/props/TextBlobProp.h +0 -133
  172. package/cpp/rnskia/dom/props/TileModeProp.h +0 -52
  173. package/cpp/rnskia/dom/props/TransformProp.h +0 -147
  174. package/cpp/rnskia/dom/props/TransformsProps.h +0 -66
  175. package/cpp/rnskia/dom/props/UniformsProp.h +0 -159
  176. package/cpp/rnskia/dom/props/VertexModeProp.h +0 -49
  177. package/cpp/rnskia/dom/props/VerticesProps.h +0 -63
  178. package/ios/RNSkia-iOS/SkiaDomView.h +0 -7
  179. package/ios/RNSkia-iOS/SkiaDomView.mm +0 -63
  180. package/ios/RNSkia-iOS/SkiaDomViewManager.h +0 -8
  181. package/ios/RNSkia-iOS/SkiaDomViewManager.mm +0 -51
  182. package/lib/commonjs/dom/nodes/JsiSkDOM.d.ts +0 -64
  183. package/lib/commonjs/dom/nodes/JsiSkDOM.js +0 -196
  184. package/lib/commonjs/dom/nodes/JsiSkDOM.js.map +0 -1
  185. package/lib/commonjs/renderer/CanvasOld.d.ts +0 -11
  186. package/lib/commonjs/renderer/CanvasOld.js +0 -96
  187. package/lib/commonjs/renderer/CanvasOld.js.map +0 -1
  188. package/lib/commonjs/renderer/Container.d.ts +0 -10
  189. package/lib/commonjs/renderer/Container.js +0 -26
  190. package/lib/commonjs/renderer/Container.js.map +0 -1
  191. package/lib/commonjs/renderer/HostComponents.d.ts +0 -129
  192. package/lib/commonjs/renderer/HostComponents.js +0 -141
  193. package/lib/commonjs/renderer/HostComponents.js.map +0 -1
  194. package/lib/commonjs/renderer/HostConfig.d.ts +0 -18
  195. package/lib/commonjs/renderer/HostConfig.js +0 -157
  196. package/lib/commonjs/renderer/HostConfig.js.map +0 -1
  197. package/lib/commonjs/renderer/Reconciler.d.ts +0 -9
  198. package/lib/commonjs/renderer/Reconciler.js +0 -44
  199. package/lib/commonjs/renderer/Reconciler.js.map +0 -1
  200. package/lib/commonjs/specs/SkiaDomViewNativeComponent.d.ts +0 -6
  201. package/lib/commonjs/specs/SkiaDomViewNativeComponent.js +0 -11
  202. package/lib/commonjs/specs/SkiaDomViewNativeComponent.js.map +0 -1
  203. package/lib/commonjs/views/SkiaDomView.d.ts +0 -33
  204. package/lib/commonjs/views/SkiaDomView.js +0 -119
  205. package/lib/commonjs/views/SkiaDomView.js.map +0 -1
  206. package/lib/commonjs/views/SkiaDomView.web.d.ts +0 -0
  207. package/lib/commonjs/views/SkiaDomView.web.js +0 -2
  208. package/lib/commonjs/views/SkiaDomView.web.js.map +0 -1
  209. package/lib/module/dom/nodes/JsiSkDOM.d.ts +0 -64
  210. package/lib/module/dom/nodes/JsiSkDOM.js +0 -189
  211. package/lib/module/dom/nodes/JsiSkDOM.js.map +0 -1
  212. package/lib/module/renderer/CanvasOld.d.ts +0 -11
  213. package/lib/module/renderer/CanvasOld.js +0 -87
  214. package/lib/module/renderer/CanvasOld.js.map +0 -1
  215. package/lib/module/renderer/Container.d.ts +0 -10
  216. package/lib/module/renderer/Container.js +0 -19
  217. package/lib/module/renderer/Container.js.map +0 -1
  218. package/lib/module/renderer/HostComponents.d.ts +0 -129
  219. package/lib/module/renderer/HostComponents.js +0 -134
  220. package/lib/module/renderer/HostComponents.js.map +0 -1
  221. package/lib/module/renderer/HostConfig.d.ts +0 -18
  222. package/lib/module/renderer/HostConfig.js +0 -150
  223. package/lib/module/renderer/HostConfig.js.map +0 -1
  224. package/lib/module/renderer/Reconciler.d.ts +0 -9
  225. package/lib/module/renderer/Reconciler.js +0 -36
  226. package/lib/module/renderer/Reconciler.js.map +0 -1
  227. package/lib/module/specs/SkiaDomViewNativeComponent.d.ts +0 -6
  228. package/lib/module/specs/SkiaDomViewNativeComponent.js +0 -4
  229. package/lib/module/specs/SkiaDomViewNativeComponent.js.map +0 -1
  230. package/lib/module/views/SkiaDomView.d.ts +0 -33
  231. package/lib/module/views/SkiaDomView.js +0 -111
  232. package/lib/module/views/SkiaDomView.js.map +0 -1
  233. package/lib/module/views/SkiaDomView.web.d.ts +0 -0
  234. package/lib/module/views/SkiaDomView.web.js +0 -2
  235. package/lib/module/views/SkiaDomView.web.js.map +0 -1
  236. package/lib/typescript/lib/commonjs/dom/nodes/JsiSkDOM.d.ts +0 -60
  237. package/lib/typescript/lib/commonjs/renderer/CanvasOld.d.ts +0 -3
  238. package/lib/typescript/lib/commonjs/renderer/Container.d.ts +0 -9
  239. package/lib/typescript/lib/commonjs/renderer/HostComponents.d.ts +0 -2
  240. package/lib/typescript/lib/commonjs/renderer/HostConfig.d.ts +0 -40
  241. package/lib/typescript/lib/commonjs/renderer/Reconciler.d.ts +0 -10
  242. package/lib/typescript/lib/commonjs/specs/SkiaDomViewNativeComponent.d.ts +0 -3
  243. package/lib/typescript/lib/commonjs/views/SkiaDomView.d.ts +0 -30
  244. package/lib/typescript/lib/commonjs/views/SkiaDomView.web.d.ts +0 -0
  245. package/lib/typescript/lib/module/dom/nodes/JsiSkDOM.d.ts +0 -59
  246. package/lib/typescript/lib/module/renderer/CanvasOld.d.ts +0 -3
  247. package/lib/typescript/lib/module/renderer/Container.d.ts +0 -9
  248. package/lib/typescript/lib/module/renderer/HostComponents.d.ts +0 -1
  249. package/lib/typescript/lib/module/renderer/HostConfig.d.ts +0 -39
  250. package/lib/typescript/lib/module/renderer/Reconciler.d.ts +0 -9
  251. package/lib/typescript/lib/module/specs/SkiaDomViewNativeComponent.d.ts +0 -2
  252. package/lib/typescript/lib/module/views/SkiaDomView.d.ts +0 -27
  253. package/lib/typescript/lib/module/views/SkiaDomView.web.d.ts +0 -0
  254. package/lib/typescript/src/dom/nodes/JsiSkDOM.d.ts +0 -64
  255. package/lib/typescript/src/renderer/CanvasOld.d.ts +0 -11
  256. package/lib/typescript/src/renderer/Container.d.ts +0 -10
  257. package/lib/typescript/src/renderer/HostComponents.d.ts +0 -129
  258. package/lib/typescript/src/renderer/HostConfig.d.ts +0 -18
  259. package/lib/typescript/src/renderer/Reconciler.d.ts +0 -9
  260. package/lib/typescript/src/specs/SkiaDomViewNativeComponent.d.ts +0 -6
  261. package/lib/typescript/src/views/SkiaDomView.d.ts +0 -33
  262. package/lib/typescript/src/views/SkiaDomView.web.d.ts +0 -0
  263. package/src/dom/nodes/JsiSkDOM.ts +0 -298
  264. package/src/renderer/CanvasOld.tsx +0 -126
  265. package/src/renderer/Container.tsx +0 -19
  266. package/src/renderer/HostComponents.ts +0 -399
  267. package/src/renderer/HostConfig.ts +0 -258
  268. package/src/renderer/Reconciler.tsx +0 -54
  269. package/src/specs/SkiaDomViewNativeComponent.ts +0 -9
  270. package/src/views/SkiaDomView.tsx +0 -124
  271. package/src/views/SkiaDomView.web.tsx +0 -0
  272. /package/cpp/api/recorder/{Image.h → ImageFit.h} +0 -0
@@ -0,0 +1,65 @@
1
+ import type { FractalNoiseProps, CircleProps, DrawingNodeProps, ImageProps, PaintProps, PathProps, LineProps, OvalProps, DiffRectProps, PointsProps, RectProps, RoundedRectProps, TextProps, VerticesProps, BlurMaskFilterProps, BlendImageFilterProps, BlurImageFilterProps, DisplacementMapImageFilterProps, DropShadowImageFilterProps, OffsetImageFilterProps, RuntimeShaderImageFilterProps, MatrixColorFilterProps, ShaderProps, ImageShaderProps, LinearGradientProps, GroupProps, PatchProps, BlendColorFilterProps, DashPathEffectProps, DiscretePathEffectProps, CornerPathEffectProps, Line2DPathEffectProps, Path1DPathEffectProps, Path2DPathEffectProps, TextPathProps, TextBlobProps, GlyphsProps, TwoPointConicalGradientProps, TurbulenceProps, SweepGradientProps, RadialGradientProps, ColorProps, PictureProps, ImageSVGProps, LerpColorFilterProps, BoxProps, BoxShadowProps, ParagraphProps, AtlasProps, ChildrenProps, MorphologyImageFilterProps, BlendProps } from "../dom/types";
2
+ import type { SkiaProps } from "../renderer";
3
+ declare global {
4
+ namespace JSX {
5
+ interface IntrinsicElements {
6
+ skGroup: SkiaProps<GroupProps>;
7
+ skLayer: SkiaProps<ChildrenProps>;
8
+ skPaint: SkiaProps<PaintProps>;
9
+ skFill: SkiaProps<DrawingNodeProps>;
10
+ skImage: SkiaProps<ImageProps>;
11
+ skCircle: SkiaProps<CircleProps>;
12
+ skPath: SkiaProps<PathProps>;
13
+ skLine: SkiaProps<LineProps>;
14
+ skOval: SkiaProps<OvalProps>;
15
+ skPatch: SkiaProps<PatchProps>;
16
+ skPoints: SkiaProps<PointsProps>;
17
+ skRect: SkiaProps<RectProps>;
18
+ skRRect: SkiaProps<RoundedRectProps>;
19
+ skAtlas: SkiaProps<AtlasProps>;
20
+ skVertices: SkiaProps<VerticesProps>;
21
+ skText: SkiaProps<TextProps>;
22
+ skTextPath: SkiaProps<TextPathProps>;
23
+ skTextBlob: SkiaProps<TextBlobProps>;
24
+ skGlyphs: SkiaProps<GlyphsProps>;
25
+ skDiffRect: SkiaProps<DiffRectProps>;
26
+ skPicture: SkiaProps<PictureProps>;
27
+ skImageSVG: SkiaProps<ImageSVGProps>;
28
+ skBlurMaskFilter: SkiaProps<BlurMaskFilterProps>;
29
+ skBlendImageFilter: SkiaProps<BlendImageFilterProps>;
30
+ skBlurImageFilter: SkiaProps<BlurImageFilterProps>;
31
+ skOffsetImageFilter: SkiaProps<OffsetImageFilterProps>;
32
+ skDropShadowImageFilter: SkiaProps<DropShadowImageFilterProps>;
33
+ skDisplacementMapImageFilter: SkiaProps<DisplacementMapImageFilterProps>;
34
+ skRuntimeShaderImageFilter: SkiaProps<RuntimeShaderImageFilterProps>;
35
+ skMorphologyImageFilter: SkiaProps<MorphologyImageFilterProps>;
36
+ skMatrixColorFilter: SkiaProps<MatrixColorFilterProps>;
37
+ skBlendColorFilter: SkiaProps<BlendColorFilterProps>;
38
+ skLinearToSRGBGammaColorFilter: SkiaProps<ChildrenProps>;
39
+ skSRGBToLinearGammaColorFilter: SkiaProps<ChildrenProps>;
40
+ skLumaColorFilter: SkiaProps<ChildrenProps>;
41
+ skLerpColorFilter: SkiaProps<LerpColorFilterProps>;
42
+ skShader: SkiaProps<ShaderProps>;
43
+ skImageShader: SkiaProps<ImageShaderProps>;
44
+ skColorShader: SkiaProps<ColorProps>;
45
+ skTurbulence: SkiaProps<TurbulenceProps>;
46
+ skFractalNoise: SkiaProps<FractalNoiseProps>;
47
+ skLinearGradient: SkiaProps<LinearGradientProps>;
48
+ skRadialGradient: SkiaProps<RadialGradientProps>;
49
+ skSweepGradient: SkiaProps<SweepGradientProps>;
50
+ skTwoPointConicalGradient: SkiaProps<TwoPointConicalGradientProps>;
51
+ skDiscretePathEffect: SkiaProps<DiscretePathEffectProps>;
52
+ skDashPathEffect: SkiaProps<DashPathEffectProps>;
53
+ skPath1DPathEffect: SkiaProps<Path1DPathEffectProps>;
54
+ skPath2DPathEffect: SkiaProps<Path2DPathEffectProps>;
55
+ skCornerPathEffect: SkiaProps<CornerPathEffectProps>;
56
+ skSumPathEffect: ChildrenProps;
57
+ skLine2DPathEffect: SkiaProps<Line2DPathEffectProps>;
58
+ skBlend: SkiaProps<BlendProps>;
59
+ skBackdropFilter: SkiaProps<ChildrenProps>;
60
+ skBox: SkiaProps<BoxProps>;
61
+ skBoxShadow: SkiaProps<BoxShadowProps>;
62
+ skParagraph: SkiaProps<ParagraphProps>;
63
+ }
64
+ }
65
+ }
@@ -1,6 +1,7 @@
1
1
  import type { ReactNode } from "react";
2
2
  import type { SkCanvas, Skia } from "../skia/types";
3
3
  import { NodeType } from "../dom/types";
4
+ import "./Elements";
4
5
  export declare class SkiaSGRoot {
5
6
  Skia: Skia;
6
7
  private root;
@@ -1,3 +1,2 @@
1
1
  export * from "./SkiaPictureView";
2
- export * from "./SkiaDomView";
3
2
  export * from "./types";
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "setup-skia-web": "./scripts/setup-canvaskit.js"
9
9
  },
10
10
  "title": "React Native Skia",
11
- "version": "1.11.0",
11
+ "version": "1.11.2",
12
12
  "description": "High-performance React Native Graphics using Skia",
13
13
  "main": "lib/module/index.js",
14
14
  "react-native": "src/index.ts",
@@ -1,3 +1,2 @@
1
1
  export * from "../types";
2
- export * from "./JsiSkDOM";
3
2
  export * from "./datatypes";
@@ -1,12 +1,5 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
-
3
- import type { Container } from "../../renderer/Container";
4
- import type { AnimatedProps } from "../../renderer/processors";
5
- import type { Node } from "../../dom/types";
6
-
7
- import Rea from "./ReanimatedProxy";
8
-
9
1
  export let HAS_REANIMATED_3 = false;
2
+
10
3
  try {
11
4
  // This logic is convoluted but necessary
12
5
  // In most systems, `require("react-native-reanimated")` throws an error, all is well.
@@ -24,73 +17,3 @@ try {
24
17
  } catch (e) {
25
18
  // do nothing
26
19
  }
27
-
28
- const _bindings = new WeakMap<Node<unknown>, unknown>();
29
-
30
- export const unbindReanimatedNode = (node: Node<unknown>) => {
31
- if (!HAS_REANIMATED_3) {
32
- return;
33
- }
34
- const previousMapperId = _bindings.get(node);
35
- if (previousMapperId !== undefined) {
36
- Rea.stopMapper(previousMapperId as number);
37
- }
38
- };
39
-
40
- export function extractReanimatedProps(props: AnimatedProps<any>) {
41
- if (!HAS_REANIMATED_3) {
42
- return [props, {}];
43
- }
44
- const reanimatedProps = {} as AnimatedProps<any>;
45
- const otherProps = {} as AnimatedProps<any>;
46
- for (const propName in props) {
47
- if (propName === "children") {
48
- continue;
49
- }
50
- const propValue = props[propName];
51
- if (Rea.isSharedValue(propValue)) {
52
- reanimatedProps[propName] = propValue;
53
- otherProps[propName] = propValue.value;
54
- } else {
55
- otherProps[propName] = propValue;
56
- }
57
- }
58
- return [otherProps, reanimatedProps];
59
- }
60
-
61
- export function bindReanimatedProps(
62
- container: Container,
63
- node: Node<any>,
64
- reanimatedProps: AnimatedProps<any>
65
- ) {
66
- if (!HAS_REANIMATED_3) {
67
- return;
68
- }
69
- const sharedValues = Object.values(reanimatedProps);
70
- const previousMapperId = _bindings.get(node);
71
- if (previousMapperId !== undefined) {
72
- Rea.stopMapper(previousMapperId as number);
73
- }
74
- if (sharedValues.length > 0) {
75
- const viewId = container.getNativeId();
76
- const { SkiaViewApi } = global;
77
- const mapperId = Rea.startMapper(() => {
78
- "worklet";
79
- if (node) {
80
- for (const propName in reanimatedProps) {
81
- node.setProp(propName, reanimatedProps[propName].value);
82
- }
83
- }
84
- // On React Native we use the SkiaViewApi to redraw because it can
85
- // run on the worklet thread (container.redraw can't)
86
- // if SkiaViewApi is undefined, we are on web and container.redraw()
87
- // can safely be invoked
88
- if (SkiaViewApi) {
89
- SkiaViewApi.requestRedraw(viewId);
90
- } else {
91
- container.redraw();
92
- }
93
- }, sharedValues);
94
- _bindings.set(node, mapperId);
95
- }
96
- }
package/src/index.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  import "./skia/NativeSetup";
2
2
  export { JsiSkImage } from "./skia/web/JsiSkImage";
3
3
  export * from "./renderer";
4
- export * from "./renderer/CanvasOld";
5
4
  export * from "./renderer/Canvas";
6
5
  export * from "./renderer/Offscreen";
7
6
  export * from "./views";
@@ -1,3 +1,4 @@
1
+ import type { FC } from "react";
1
2
  import {
2
3
  forwardRef,
3
4
  useCallback,
@@ -11,11 +12,20 @@ import type { SharedValue } from "react-native-reanimated";
11
12
 
12
13
  import { SkiaViewNativeId } from "../views/SkiaViewNativeId";
13
14
  import SkiaPictureViewNativeComponent from "../specs/SkiaPictureViewNativeComponent";
14
- import type { SkRect, SkSize } from "../skia/types";
15
+ import type { SkImage, SkRect, SkSize } from "../skia/types";
15
16
  import { SkiaSGRoot } from "../sksg/Reconciler";
16
17
  import { Skia } from "../skia";
17
18
  import type { SkiaBaseViewProps } from "../views";
18
19
 
20
+ interface CanvasRef extends FC<CanvasProps> {
21
+ makeImageSnapshot(rect?: SkRect): SkImage;
22
+ makeImageSnapshotAsync(rect?: SkRect): Promise<SkImage>;
23
+ redraw(): void;
24
+ getNativeId(): number;
25
+ }
26
+
27
+ export const useCanvasRef = () => useRef<CanvasRef>(null);
28
+
19
29
  const NativeSkiaPictureView = SkiaPictureViewNativeComponent;
20
30
 
21
31
  // TODO: no need to go through the JS thread for this
@@ -52,9 +52,14 @@ const nativeDrawOnscreen = (
52
52
  export abstract class Container {
53
53
  public root: Node[] = [];
54
54
  protected recording: Recording | null = null;
55
+ protected unmounted = false;
55
56
 
56
57
  constructor(protected Skia: Skia, protected nativeId: number) {}
57
58
 
59
+ unmount() {
60
+ this.unmounted = true;
61
+ }
62
+
58
63
  drawOnCanvas(canvas: SkCanvas) {
59
64
  if (!this.recording) {
60
65
  throw new Error("No recording to draw");
@@ -101,6 +106,9 @@ class ReanimatedContainer extends Container {
101
106
  if (this.mapperId !== null) {
102
107
  Rea.stopMapper(this.mapperId);
103
108
  }
109
+ if (this.unmounted) {
110
+ return;
111
+ }
104
112
  const recorder = new Recorder();
105
113
  visit(recorder, this.root);
106
114
  const record = recorder.getRecording();
@@ -134,6 +142,9 @@ class NativeReanimatedContainer extends Container {
134
142
  if (this.mapperId !== null) {
135
143
  Rea.stopMapper(this.mapperId);
136
144
  }
145
+ if (this.unmounted) {
146
+ return;
147
+ }
137
148
  const { nativeId, Skia } = this;
138
149
  const recorder = new ReanimatedRecorder(Skia);
139
150
  visit(recorder, this.root);
@@ -0,0 +1,136 @@
1
+ import type {
2
+ FractalNoiseProps,
3
+ CircleProps,
4
+ DrawingNodeProps,
5
+ ImageProps,
6
+ PaintProps,
7
+ PathProps,
8
+ LineProps,
9
+ OvalProps,
10
+ DiffRectProps,
11
+ PointsProps,
12
+ RectProps,
13
+ RoundedRectProps,
14
+ TextProps,
15
+ VerticesProps,
16
+ BlurMaskFilterProps,
17
+ BlendImageFilterProps,
18
+ BlurImageFilterProps,
19
+ DisplacementMapImageFilterProps,
20
+ DropShadowImageFilterProps,
21
+ OffsetImageFilterProps,
22
+ RuntimeShaderImageFilterProps,
23
+ MatrixColorFilterProps,
24
+ ShaderProps,
25
+ ImageShaderProps,
26
+ LinearGradientProps,
27
+ GroupProps,
28
+ PatchProps,
29
+ BlendColorFilterProps,
30
+ DashPathEffectProps,
31
+ DiscretePathEffectProps,
32
+ CornerPathEffectProps,
33
+ Line2DPathEffectProps,
34
+ Path1DPathEffectProps,
35
+ Path2DPathEffectProps,
36
+ TextPathProps,
37
+ TextBlobProps,
38
+ GlyphsProps,
39
+ TwoPointConicalGradientProps,
40
+ TurbulenceProps,
41
+ SweepGradientProps,
42
+ RadialGradientProps,
43
+ ColorProps,
44
+ PictureProps,
45
+ ImageSVGProps,
46
+ LerpColorFilterProps,
47
+ BoxProps,
48
+ BoxShadowProps,
49
+ ParagraphProps,
50
+ AtlasProps,
51
+ ChildrenProps,
52
+ MorphologyImageFilterProps,
53
+ BlendProps,
54
+ } from "../dom/types";
55
+ import type { SkiaProps } from "../renderer";
56
+
57
+ declare global {
58
+ // eslint-disable-next-line @typescript-eslint/no-namespace
59
+ namespace JSX {
60
+ interface IntrinsicElements {
61
+ skGroup: SkiaProps<GroupProps>;
62
+ skLayer: SkiaProps<ChildrenProps>;
63
+ skPaint: SkiaProps<PaintProps>;
64
+
65
+ // Drawings
66
+ skFill: SkiaProps<DrawingNodeProps>;
67
+ skImage: SkiaProps<ImageProps>;
68
+ skCircle: SkiaProps<CircleProps>;
69
+ skPath: SkiaProps<PathProps>;
70
+ skLine: SkiaProps<LineProps>;
71
+ skOval: SkiaProps<OvalProps>;
72
+ skPatch: SkiaProps<PatchProps>;
73
+ skPoints: SkiaProps<PointsProps>;
74
+ skRect: SkiaProps<RectProps>;
75
+ skRRect: SkiaProps<RoundedRectProps>;
76
+ skAtlas: SkiaProps<AtlasProps>;
77
+ skVertices: SkiaProps<VerticesProps>;
78
+ skText: SkiaProps<TextProps>;
79
+ skTextPath: SkiaProps<TextPathProps>;
80
+ skTextBlob: SkiaProps<TextBlobProps>;
81
+ skGlyphs: SkiaProps<GlyphsProps>;
82
+ skDiffRect: SkiaProps<DiffRectProps>;
83
+ skPicture: SkiaProps<PictureProps>;
84
+ skImageSVG: SkiaProps<ImageSVGProps>;
85
+
86
+ // BlurMaskFilters
87
+ skBlurMaskFilter: SkiaProps<BlurMaskFilterProps>;
88
+
89
+ // ImageFilters
90
+ skBlendImageFilter: SkiaProps<BlendImageFilterProps>;
91
+ skBlurImageFilter: SkiaProps<BlurImageFilterProps>;
92
+ skOffsetImageFilter: SkiaProps<OffsetImageFilterProps>;
93
+ skDropShadowImageFilter: SkiaProps<DropShadowImageFilterProps>;
94
+ skDisplacementMapImageFilter: SkiaProps<DisplacementMapImageFilterProps>;
95
+ skRuntimeShaderImageFilter: SkiaProps<RuntimeShaderImageFilterProps>;
96
+ skMorphologyImageFilter: SkiaProps<MorphologyImageFilterProps>;
97
+
98
+ // ColorFilters
99
+ skMatrixColorFilter: SkiaProps<MatrixColorFilterProps>;
100
+ skBlendColorFilter: SkiaProps<BlendColorFilterProps>;
101
+ skLinearToSRGBGammaColorFilter: SkiaProps<ChildrenProps>;
102
+ skSRGBToLinearGammaColorFilter: SkiaProps<ChildrenProps>;
103
+ skLumaColorFilter: SkiaProps<ChildrenProps>;
104
+ skLerpColorFilter: SkiaProps<LerpColorFilterProps>;
105
+
106
+ // Shaders
107
+ skShader: SkiaProps<ShaderProps>;
108
+ skImageShader: SkiaProps<ImageShaderProps>;
109
+ skColorShader: SkiaProps<ColorProps>;
110
+ skTurbulence: SkiaProps<TurbulenceProps>;
111
+ skFractalNoise: SkiaProps<FractalNoiseProps>;
112
+ skLinearGradient: SkiaProps<LinearGradientProps>;
113
+ skRadialGradient: SkiaProps<RadialGradientProps>;
114
+ skSweepGradient: SkiaProps<SweepGradientProps>;
115
+ skTwoPointConicalGradient: SkiaProps<TwoPointConicalGradientProps>;
116
+
117
+ // Path Effects
118
+ skDiscretePathEffect: SkiaProps<DiscretePathEffectProps>;
119
+ skDashPathEffect: SkiaProps<DashPathEffectProps>;
120
+ skPath1DPathEffect: SkiaProps<Path1DPathEffectProps>;
121
+ skPath2DPathEffect: SkiaProps<Path2DPathEffectProps>;
122
+ skCornerPathEffect: SkiaProps<CornerPathEffectProps>;
123
+ skSumPathEffect: ChildrenProps;
124
+ skLine2DPathEffect: SkiaProps<Line2DPathEffectProps>;
125
+
126
+ // Mixed declarations/drawings
127
+ skBlend: SkiaProps<BlendProps>;
128
+ skBackdropFilter: SkiaProps<ChildrenProps>;
129
+ skBox: SkiaProps<BoxProps>;
130
+ skBoxShadow: SkiaProps<BoxShadowProps>;
131
+
132
+ // Paragraph
133
+ skParagraph: SkiaProps<ParagraphProps>;
134
+ }
135
+ }
136
+ }
@@ -8,6 +8,7 @@ import { NodeType } from "../dom/types";
8
8
  import { debug, sksgHostConfig } from "./HostConfig";
9
9
  import type { Container } from "./Container";
10
10
  import { createContainer } from "./Container";
11
+ import "./Elements";
11
12
 
12
13
  const skiaReconciler = ReactReconciler(sksgHostConfig);
13
14
 
@@ -59,6 +60,7 @@ export class SkiaSGRoot {
59
60
  }
60
61
 
61
62
  unmount() {
63
+ this.container.unmount();
62
64
  skiaReconciler.updateContainer(null, this.root, null, () => {
63
65
  debug("unmountContainer");
64
66
  });
@@ -1,3 +1,2 @@
1
1
  export * from "./SkiaPictureView";
2
- export * from "./SkiaDomView";
3
2
  export * from "./types";
@@ -1,82 +0,0 @@
1
- #pragma once
2
-
3
- #include <memory>
4
- #include <string>
5
-
6
- #include <fbjni/fbjni.h>
7
- #include <jni.h>
8
- #include <jsi/jsi.h>
9
-
10
- #include "JniSkiaBaseView.h"
11
- #include "JniSkiaManager.h"
12
- #include "RNSkAndroidView.h"
13
- #include "RNSkDomView.h"
14
-
15
- #include <android/native_window.h>
16
- #include <android/native_window_jni.h>
17
- #include <fbjni/detail/Hybrid.h>
18
-
19
- namespace RNSkia {
20
-
21
- namespace jsi = facebook::jsi;
22
- namespace jni = facebook::jni;
23
-
24
- class JniSkiaDomView : public jni::HybridClass<JniSkiaDomView>,
25
- public JniSkiaBaseView {
26
- public:
27
- static auto constexpr kJavaDescriptor =
28
- "Lcom/shopify/reactnative/skia/SkiaDomView;";
29
-
30
- static jni::local_ref<jhybriddata>
31
- initHybrid(jni::alias_ref<jhybridobject> jThis,
32
- jni::alias_ref<JniSkiaManager::javaobject> skiaManager) {
33
- return makeCxxInstance(jThis, skiaManager);
34
- }
35
-
36
- static void registerNatives() {
37
- registerHybrid(
38
- {makeNativeMethod("initHybrid", JniSkiaDomView::initHybrid),
39
- makeNativeMethod("surfaceAvailable", JniSkiaDomView::surfaceAvailable),
40
- makeNativeMethod("surfaceDestroyed", JniSkiaDomView::surfaceDestroyed),
41
- makeNativeMethod("surfaceSizeChanged",
42
- JniSkiaDomView::surfaceSizeChanged),
43
- makeNativeMethod("setDebugMode", JniSkiaDomView::setDebugMode),
44
- makeNativeMethod("registerView", JniSkiaDomView::registerView),
45
- makeNativeMethod("unregisterView", JniSkiaDomView::unregisterView)});
46
- }
47
-
48
- protected:
49
- void surfaceAvailable(jobject surface, int width, int height,
50
- bool opaque) override {
51
- JniSkiaBaseView::surfaceAvailable(surface, width, height, opaque);
52
- }
53
-
54
- void surfaceSizeChanged(jobject surface, int width, int height,
55
- bool opaque) override {
56
- JniSkiaBaseView::surfaceSizeChanged(surface, width, height, opaque);
57
- }
58
-
59
- void surfaceDestroyed() override { JniSkiaBaseView::surfaceDestroyed(); }
60
-
61
- void setDebugMode(bool show) override { JniSkiaBaseView::setDebugMode(show); }
62
-
63
- void registerView(int nativeId) override {
64
- JniSkiaBaseView::registerView(nativeId);
65
- }
66
-
67
- void unregisterView() override { JniSkiaBaseView::unregisterView(); }
68
-
69
- private:
70
- friend HybridBase;
71
-
72
- explicit JniSkiaDomView(
73
- jni::alias_ref<jhybridobject> jThis,
74
- jni::alias_ref<JniSkiaManager::javaobject> skiaManager)
75
- : JniSkiaBaseView(skiaManager,
76
- std::make_shared<RNSkAndroidView<RNSkia::RNSkDomView>>(
77
- skiaManager->cthis()->getPlatformContext())) {}
78
-
79
- jni::global_ref<javaobject> javaPart_;
80
- };
81
-
82
- } // namespace RNSkia
@@ -1,41 +0,0 @@
1
- package com.shopify.reactnative.skia;
2
-
3
- import android.content.Context;
4
-
5
- import com.facebook.jni.HybridData;
6
- import com.facebook.jni.annotations.DoNotStrip;
7
- import com.facebook.react.bridge.ReactContext;
8
- import com.facebook.react.uimanager.ThemedReactContext;
9
-
10
- public class SkiaDomView extends SkiaBaseView {
11
- @DoNotStrip
12
- private HybridData mHybridData;
13
-
14
- public SkiaDomView(ThemedReactContext context) {
15
- super(context);
16
- RNSkiaModule skiaModule = context.getReactApplicationContext().getNativeModule(RNSkiaModule.class);
17
- mHybridData = initHybrid(skiaModule.getSkiaManager());
18
- }
19
-
20
- @Override
21
- protected void finalize() throws Throwable {
22
- super.finalize();
23
- mHybridData.resetNative();
24
- }
25
-
26
- private native HybridData initHybrid(SkiaManager skiaManager);
27
-
28
- protected native void surfaceAvailable(Object surface, int width, int height, boolean opaque);
29
-
30
- protected native void surfaceSizeChanged(Object surface, int width, int height, boolean opaque);
31
-
32
- protected native void surfaceDestroyed();
33
-
34
- protected native void setBgColor(int color);
35
-
36
- protected native void setDebugMode(boolean show);
37
-
38
- protected native void registerView(int nativeId);
39
-
40
- protected native void unregisterView();
41
- }
@@ -1,32 +0,0 @@
1
- package com.shopify.reactnative.skia;
2
-
3
- import com.facebook.react.uimanager.ThemedReactContext;
4
- import com.facebook.react.viewmanagers.SkiaDomViewManagerInterface;
5
- import com.facebook.react.viewmanagers.SkiaDomViewManagerDelegate;
6
-
7
- import androidx.annotation.NonNull;
8
-
9
- public class SkiaDomViewManager extends SkiaBaseViewManager<SkiaDomView> implements SkiaDomViewManagerInterface<SkiaDomView> {
10
-
11
- protected SkiaDomViewManagerDelegate mDelegate;
12
-
13
- SkiaDomViewManager() {
14
- mDelegate = new SkiaDomViewManagerDelegate(this);
15
- }
16
-
17
- protected SkiaDomViewManagerDelegate getDelegate() {
18
- return mDelegate;
19
- }
20
-
21
- @NonNull
22
- @Override
23
- public String getName() {
24
- return "SkiaDomView";
25
- }
26
-
27
- @NonNull
28
- @Override
29
- public SkiaDomView createViewInstance(@NonNull ThemedReactContext reactContext) {
30
- return new SkiaDomView(reactContext);
31
- }
32
- }
@@ -1,34 +0,0 @@
1
- /**
2
- * This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
3
- *
4
- * Do not edit this file as changes may cause incorrect behavior and will be lost
5
- * once the code is regenerated.
6
- *
7
- * @generated by codegen project: GeneratePropsJavaDelegate.js
8
- */
9
-
10
- package com.facebook.react.viewmanagers;
11
-
12
- import android.view.View;
13
- import androidx.annotation.Nullable;
14
- import com.facebook.react.uimanager.BaseViewManagerDelegate;
15
- import com.facebook.react.uimanager.BaseViewManagerInterface;
16
-
17
- public class SkiaDomViewManagerDelegate<T extends View, U extends BaseViewManagerInterface<T> & SkiaDomViewManagerInterface<T>> extends BaseViewManagerDelegate<T, U> {
18
- public SkiaDomViewManagerDelegate(U viewManager) {
19
- super(viewManager);
20
- }
21
- @Override
22
- public void setProperty(T view, String propName, @Nullable Object value) {
23
- switch (propName) {
24
- case "opaque":
25
- mViewManager.setOpaque(view, value != null && (boolean) value);
26
- break;
27
- case "debug":
28
- mViewManager.setDebug(view, value != null && (boolean) value);
29
- break;
30
- default:
31
- super.setProperty(view, propName, value);
32
- }
33
- }
34
- }
@@ -1,18 +0,0 @@
1
- /**
2
- * This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
3
- *
4
- * Do not edit this file as changes may cause incorrect behavior and will be lost
5
- * once the code is regenerated.
6
- *
7
- * @generated by codegen project: GeneratePropsJavaInterface.js
8
- */
9
-
10
- package com.facebook.react.viewmanagers;
11
-
12
- import android.view.View;
13
- import androidx.annotation.Nullable;
14
-
15
- public interface SkiaDomViewManagerInterface<T extends View> {
16
- void setDebug(T view, boolean value);
17
- void setOpaque(T view, boolean value);
18
- }