@shopify/react-native-skia 1.7.6 → 1.7.7

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 (364) hide show
  1. package/android/cpp/rnskia-android/OpenGLWindowContext.h +8 -1
  2. package/android/cpp/rnskia-android/RNSkOpenGLCanvasProvider.cpp +4 -4
  3. package/android/cpp/rnskia-android/RNSkOpenGLCanvasProvider.h +2 -2
  4. package/android/src/main/java/com/shopify/reactnative/skia/SkiaBaseView.java +13 -0
  5. package/android/src/main/java/com/shopify/reactnative/skia/SkiaTextureView.java +24 -1
  6. package/cpp/rnskia/RNSkJsiViewApi.h +0 -3
  7. package/cpp/rnskia/RNSkView.h +6 -6
  8. package/ios/RNSkia-iOS/RNSkMetalCanvasProvider.h +2 -2
  9. package/ios/RNSkia-iOS/RNSkMetalCanvasProvider.mm +2 -2
  10. package/lib/commonjs/dom/nodes/JsiSkDOM.js.map +1 -1
  11. package/lib/commonjs/dom/nodes/datatypes/Circle.d.ts +2 -3
  12. package/lib/commonjs/dom/nodes/datatypes/Circle.js +11 -6
  13. package/lib/commonjs/dom/nodes/datatypes/Circle.js.map +1 -1
  14. package/lib/commonjs/dom/nodes/datatypes/Enum.js +1 -0
  15. package/lib/commonjs/dom/nodes/datatypes/Enum.js.map +1 -1
  16. package/lib/commonjs/dom/nodes/datatypes/Fitting.js +1 -10
  17. package/lib/commonjs/dom/nodes/datatypes/Fitting.js.map +1 -1
  18. package/lib/commonjs/dom/nodes/datatypes/Gradient.js +3 -2
  19. package/lib/commonjs/dom/nodes/datatypes/Gradient.js.map +1 -1
  20. package/lib/commonjs/dom/nodes/datatypes/Path.js +4 -1
  21. package/lib/commonjs/dom/nodes/datatypes/Path.js.map +1 -1
  22. package/lib/commonjs/dom/nodes/datatypes/Radius.js +1 -0
  23. package/lib/commonjs/dom/nodes/datatypes/Radius.js.map +1 -1
  24. package/lib/commonjs/dom/nodes/datatypes/Rect.d.ts +3 -1
  25. package/lib/commonjs/dom/nodes/datatypes/Rect.js +17 -7
  26. package/lib/commonjs/dom/nodes/datatypes/Rect.js.map +1 -1
  27. package/lib/commonjs/dom/nodes/datatypes/Transform.d.ts +2 -1
  28. package/lib/commonjs/dom/nodes/datatypes/Transform.js +32 -1
  29. package/lib/commonjs/dom/nodes/datatypes/Transform.js.map +1 -1
  30. package/lib/commonjs/dom/nodes/drawings/Box.js +4 -5
  31. package/lib/commonjs/dom/nodes/drawings/Box.js.map +1 -1
  32. package/lib/commonjs/dom/nodes/drawings/CircleNode.js +1 -1
  33. package/lib/commonjs/dom/nodes/drawings/CircleNode.js.map +1 -1
  34. package/lib/commonjs/dom/types/DeclarationContext.d.ts +4 -4
  35. package/lib/commonjs/dom/types/DeclarationContext.js +8 -2
  36. package/lib/commonjs/dom/types/DeclarationContext.js.map +1 -1
  37. package/lib/commonjs/external/reanimated/renderHelpers.d.ts +2 -0
  38. package/lib/commonjs/external/reanimated/renderHelpers.js +11 -6
  39. package/lib/commonjs/external/reanimated/renderHelpers.js.map +1 -1
  40. package/lib/commonjs/renderer/HostConfig.js +8 -4
  41. package/lib/commonjs/renderer/HostConfig.js.map +1 -1
  42. package/lib/commonjs/renderer/__tests__/setup.d.ts +2 -3
  43. package/lib/commonjs/renderer/processors/Animations/Animations.d.ts +1 -2
  44. package/lib/commonjs/renderer/processors/Animations/Animations.js.map +1 -1
  45. package/lib/commonjs/renderer/typeddash.js +5 -1
  46. package/lib/commonjs/renderer/typeddash.js.map +1 -1
  47. package/lib/commonjs/skia/__tests__/setup.d.ts +0 -3
  48. package/lib/commonjs/skia/types/Path/Path.js +5 -1
  49. package/lib/commonjs/skia/types/Path/Path.js.map +1 -1
  50. package/lib/commonjs/skia/types/Shader/Shader.js +8 -6
  51. package/lib/commonjs/skia/types/Shader/Shader.js.map +1 -1
  52. package/lib/commonjs/sksg/Container.d.ts +19 -0
  53. package/lib/commonjs/sksg/Container.js +102 -0
  54. package/lib/commonjs/sksg/Container.js.map +1 -0
  55. package/lib/commonjs/sksg/DrawingContext.d.ts +16 -0
  56. package/lib/commonjs/sksg/DrawingContext.js +186 -0
  57. package/lib/commonjs/sksg/DrawingContext.js.map +1 -0
  58. package/lib/commonjs/sksg/HostConfig.d.ts +19 -0
  59. package/lib/commonjs/sksg/HostConfig.js +168 -0
  60. package/lib/commonjs/sksg/HostConfig.js.map +1 -0
  61. package/lib/commonjs/sksg/Reconciler.d.ts +17 -0
  62. package/lib/commonjs/sksg/Reconciler.js +54 -0
  63. package/lib/commonjs/sksg/Reconciler.js.map +1 -0
  64. package/lib/commonjs/sksg/__tests__/MockDeclaration.d.ts +57 -0
  65. package/lib/commonjs/sksg/nodes/Node.d.ts +7 -0
  66. package/lib/commonjs/sksg/nodes/Node.js +6 -0
  67. package/lib/commonjs/sksg/nodes/Node.js.map +1 -0
  68. package/lib/commonjs/sksg/nodes/colorFilters.d.ts +7 -0
  69. package/lib/commonjs/sksg/nodes/colorFilters.js +55 -0
  70. package/lib/commonjs/sksg/nodes/colorFilters.js.map +1 -0
  71. package/lib/commonjs/sksg/nodes/context.d.ts +3 -0
  72. package/lib/commonjs/sksg/nodes/context.js +448 -0
  73. package/lib/commonjs/sksg/nodes/context.js.map +1 -0
  74. package/lib/commonjs/sksg/nodes/drawings.d.ts +31 -0
  75. package/lib/commonjs/sksg/nodes/drawings.js +361 -0
  76. package/lib/commonjs/sksg/nodes/drawings.js.map +1 -0
  77. package/lib/commonjs/sksg/nodes/imageFilters.d.ts +14 -0
  78. package/lib/commonjs/sksg/nodes/imageFilters.js +135 -0
  79. package/lib/commonjs/sksg/nodes/imageFilters.js.map +1 -0
  80. package/lib/commonjs/sksg/nodes/index.d.ts +3 -0
  81. package/lib/commonjs/sksg/nodes/index.js +39 -0
  82. package/lib/commonjs/sksg/nodes/index.js.map +1 -0
  83. package/lib/commonjs/sksg/nodes/paint.d.ts +2 -0
  84. package/lib/commonjs/sksg/nodes/paint.js +80 -0
  85. package/lib/commonjs/sksg/nodes/paint.js.map +1 -0
  86. package/lib/commonjs/sksg/nodes/pathEffects.d.ts +8 -0
  87. package/lib/commonjs/sksg/nodes/pathEffects.js +84 -0
  88. package/lib/commonjs/sksg/nodes/pathEffects.js.map +1 -0
  89. package/lib/commonjs/sksg/nodes/shaders.d.ts +10 -0
  90. package/lib/commonjs/sksg/nodes/shaders.js +156 -0
  91. package/lib/commonjs/sksg/nodes/shaders.js.map +1 -0
  92. package/lib/commonjs/sksg/nodes/utils.d.ts +3 -0
  93. package/lib/commonjs/sksg/nodes/utils.js +25 -0
  94. package/lib/commonjs/sksg/nodes/utils.js.map +1 -0
  95. package/lib/commonjs/views/SkiaPictureView.js +0 -2
  96. package/lib/commonjs/views/SkiaPictureView.js.map +1 -1
  97. package/lib/commonjs/views/types.d.ts +2 -2
  98. package/lib/commonjs/views/types.js.map +1 -1
  99. package/lib/module/dom/nodes/JsiSkDOM.js.map +1 -1
  100. package/lib/module/dom/nodes/datatypes/Circle.d.ts +2 -3
  101. package/lib/module/dom/nodes/datatypes/Circle.js +12 -6
  102. package/lib/module/dom/nodes/datatypes/Circle.js.map +1 -1
  103. package/lib/module/dom/nodes/datatypes/Enum.js +2 -0
  104. package/lib/module/dom/nodes/datatypes/Enum.js.map +1 -1
  105. package/lib/module/dom/nodes/datatypes/Fitting.js +2 -10
  106. package/lib/module/dom/nodes/datatypes/Fitting.js.map +1 -1
  107. package/lib/module/dom/nodes/datatypes/Gradient.js +4 -2
  108. package/lib/module/dom/nodes/datatypes/Gradient.js.map +1 -1
  109. package/lib/module/dom/nodes/datatypes/Path.js +5 -1
  110. package/lib/module/dom/nodes/datatypes/Path.js.map +1 -1
  111. package/lib/module/dom/nodes/datatypes/Radius.js +2 -0
  112. package/lib/module/dom/nodes/datatypes/Radius.js.map +1 -1
  113. package/lib/module/dom/nodes/datatypes/Rect.d.ts +3 -1
  114. package/lib/module/dom/nodes/datatypes/Rect.js +14 -5
  115. package/lib/module/dom/nodes/datatypes/Rect.js.map +1 -1
  116. package/lib/module/dom/nodes/datatypes/Transform.d.ts +2 -1
  117. package/lib/module/dom/nodes/datatypes/Transform.js +31 -0
  118. package/lib/module/dom/nodes/datatypes/Transform.js.map +1 -1
  119. package/lib/module/dom/nodes/drawings/Box.js +1 -2
  120. package/lib/module/dom/nodes/drawings/Box.js.map +1 -1
  121. package/lib/module/dom/nodes/drawings/CircleNode.js +1 -1
  122. package/lib/module/dom/nodes/drawings/CircleNode.js.map +1 -1
  123. package/lib/module/dom/types/DeclarationContext.d.ts +4 -4
  124. package/lib/module/dom/types/DeclarationContext.js +9 -2
  125. package/lib/module/dom/types/DeclarationContext.js.map +1 -1
  126. package/lib/module/external/reanimated/renderHelpers.d.ts +2 -0
  127. package/lib/module/external/reanimated/renderHelpers.js +8 -4
  128. package/lib/module/external/reanimated/renderHelpers.js.map +1 -1
  129. package/lib/module/renderer/HostConfig.js +8 -4
  130. package/lib/module/renderer/HostConfig.js.map +1 -1
  131. package/lib/module/renderer/__tests__/setup.d.ts +2 -3
  132. package/lib/module/renderer/processors/Animations/Animations.d.ts +1 -2
  133. package/lib/module/renderer/processors/Animations/Animations.js.map +1 -1
  134. package/lib/module/renderer/typeddash.js +5 -1
  135. package/lib/module/renderer/typeddash.js.map +1 -1
  136. package/lib/module/skia/__tests__/setup.d.ts +0 -3
  137. package/lib/module/skia/types/Path/Path.js +5 -1
  138. package/lib/module/skia/types/Path/Path.js.map +1 -1
  139. package/lib/module/skia/types/Shader/Shader.js +9 -6
  140. package/lib/module/skia/types/Shader/Shader.js.map +1 -1
  141. package/lib/module/sksg/Container.d.ts +19 -0
  142. package/lib/module/sksg/Container.js +94 -0
  143. package/lib/module/sksg/Container.js.map +1 -0
  144. package/lib/module/sksg/DrawingContext.d.ts +16 -0
  145. package/lib/module/sksg/DrawingContext.js +180 -0
  146. package/lib/module/sksg/DrawingContext.js.map +1 -0
  147. package/lib/module/sksg/HostConfig.d.ts +19 -0
  148. package/lib/module/sksg/HostConfig.js +161 -0
  149. package/lib/module/sksg/HostConfig.js.map +1 -0
  150. package/lib/module/sksg/Reconciler.d.ts +17 -0
  151. package/lib/module/sksg/Reconciler.js +46 -0
  152. package/lib/module/sksg/Reconciler.js.map +1 -0
  153. package/lib/module/sksg/__tests__/MockDeclaration.d.ts +57 -0
  154. package/lib/module/sksg/nodes/Node.d.ts +7 -0
  155. package/lib/module/sksg/nodes/Node.js +2 -0
  156. package/lib/module/sksg/nodes/Node.js.map +1 -0
  157. package/lib/module/sksg/nodes/colorFilters.d.ts +7 -0
  158. package/lib/module/sksg/nodes/colorFilters.js +44 -0
  159. package/lib/module/sksg/nodes/colorFilters.js.map +1 -0
  160. package/lib/module/sksg/nodes/context.d.ts +3 -0
  161. package/lib/module/sksg/nodes/context.js +443 -0
  162. package/lib/module/sksg/nodes/context.js.map +1 -0
  163. package/lib/module/sksg/nodes/drawings.d.ts +31 -0
  164. package/lib/module/sksg/nodes/drawings.js +334 -0
  165. package/lib/module/sksg/nodes/drawings.js.map +1 -0
  166. package/lib/module/sksg/nodes/imageFilters.d.ts +14 -0
  167. package/lib/module/sksg/nodes/imageFilters.js +122 -0
  168. package/lib/module/sksg/nodes/imageFilters.js.map +1 -0
  169. package/lib/module/sksg/nodes/index.d.ts +3 -0
  170. package/lib/module/sksg/nodes/index.js +4 -0
  171. package/lib/module/sksg/nodes/index.js.map +1 -0
  172. package/lib/module/sksg/nodes/paint.d.ts +2 -0
  173. package/lib/module/sksg/nodes/paint.js +74 -0
  174. package/lib/module/sksg/nodes/paint.js.map +1 -0
  175. package/lib/module/sksg/nodes/pathEffects.d.ts +8 -0
  176. package/lib/module/sksg/nodes/pathEffects.js +72 -0
  177. package/lib/module/sksg/nodes/pathEffects.js.map +1 -0
  178. package/lib/module/sksg/nodes/shaders.d.ts +10 -0
  179. package/lib/module/sksg/nodes/shaders.js +142 -0
  180. package/lib/module/sksg/nodes/shaders.js.map +1 -0
  181. package/lib/module/sksg/nodes/utils.d.ts +3 -0
  182. package/lib/module/sksg/nodes/utils.js +18 -0
  183. package/lib/module/sksg/nodes/utils.js.map +1 -0
  184. package/lib/module/views/SkiaPictureView.js +0 -2
  185. package/lib/module/views/SkiaPictureView.js.map +1 -1
  186. package/lib/module/views/types.d.ts +2 -2
  187. package/lib/module/views/types.js.map +1 -1
  188. package/lib/typescript/lib/commonjs/dom/nodes/datatypes/Circle.d.ts +1 -1
  189. package/lib/typescript/lib/commonjs/dom/nodes/datatypes/Rect.d.ts +2 -0
  190. package/lib/typescript/lib/commonjs/dom/nodes/datatypes/Transform.d.ts +1 -0
  191. package/lib/typescript/lib/commonjs/external/reanimated/renderHelpers.d.ts +2 -0
  192. package/lib/typescript/lib/commonjs/renderer/HostConfig.d.ts +3 -1
  193. package/lib/typescript/lib/commonjs/sksg/Container.d.ts +16 -0
  194. package/lib/typescript/lib/commonjs/sksg/DrawingContext.d.ts +26 -0
  195. package/lib/typescript/lib/commonjs/sksg/HostConfig.d.ts +50 -0
  196. package/lib/typescript/lib/commonjs/sksg/Reconciler.d.ts +16 -0
  197. package/lib/typescript/lib/commonjs/sksg/nodes/Node.d.ts +1 -0
  198. package/lib/typescript/lib/commonjs/sksg/nodes/colorFilters.d.ts +7 -0
  199. package/lib/typescript/lib/commonjs/sksg/nodes/context.d.ts +2 -0
  200. package/lib/typescript/lib/commonjs/sksg/nodes/drawings.d.ts +23 -0
  201. package/lib/typescript/lib/commonjs/sksg/nodes/imageFilters.d.ts +10 -0
  202. package/lib/typescript/lib/commonjs/sksg/nodes/index.d.ts +1 -0
  203. package/lib/typescript/lib/commonjs/sksg/nodes/paint.d.ts +2 -0
  204. package/lib/typescript/lib/commonjs/sksg/nodes/pathEffects.d.ts +8 -0
  205. package/lib/typescript/lib/commonjs/sksg/nodes/shaders.d.ts +10 -0
  206. package/lib/typescript/lib/commonjs/sksg/nodes/utils.d.ts +3 -0
  207. package/lib/typescript/lib/module/dom/nodes/datatypes/Circle.d.ts +1 -1
  208. package/lib/typescript/lib/module/dom/nodes/datatypes/Rect.d.ts +2 -0
  209. package/lib/typescript/lib/module/dom/nodes/datatypes/Transform.d.ts +1 -0
  210. package/lib/typescript/lib/module/external/reanimated/renderHelpers.d.ts +2 -0
  211. package/lib/typescript/lib/module/mock/index.d.ts +4 -1
  212. package/lib/typescript/lib/module/renderer/HostConfig.d.ts +3 -1
  213. package/lib/typescript/lib/module/sksg/Container.d.ts +15 -0
  214. package/lib/typescript/lib/module/sksg/DrawingContext.d.ts +26 -0
  215. package/lib/typescript/lib/module/sksg/HostConfig.d.ts +49 -0
  216. package/lib/typescript/lib/module/sksg/Reconciler.d.ts +15 -0
  217. package/lib/typescript/lib/module/sksg/nodes/colorFilters.d.ts +6 -0
  218. package/lib/typescript/lib/module/sksg/nodes/context.d.ts +1 -0
  219. package/lib/typescript/lib/module/sksg/nodes/drawings.d.ts +22 -0
  220. package/lib/typescript/lib/module/sksg/nodes/imageFilters.d.ts +9 -0
  221. package/lib/typescript/lib/module/sksg/nodes/index.d.ts +3 -0
  222. package/lib/typescript/lib/module/sksg/nodes/paint.d.ts +1 -0
  223. package/lib/typescript/lib/module/sksg/nodes/pathEffects.d.ts +7 -0
  224. package/lib/typescript/lib/module/sksg/nodes/shaders.d.ts +9 -0
  225. package/lib/typescript/lib/module/sksg/nodes/utils.d.ts +2 -0
  226. package/lib/typescript/src/dom/nodes/datatypes/Circle.d.ts +2 -3
  227. package/lib/typescript/src/dom/nodes/datatypes/Rect.d.ts +3 -1
  228. package/lib/typescript/src/dom/nodes/datatypes/Transform.d.ts +2 -1
  229. package/lib/typescript/src/dom/types/DeclarationContext.d.ts +4 -4
  230. package/lib/typescript/src/external/reanimated/renderHelpers.d.ts +2 -0
  231. package/lib/typescript/src/renderer/__tests__/setup.d.ts +2 -3
  232. package/lib/typescript/src/renderer/processors/Animations/Animations.d.ts +1 -2
  233. package/lib/typescript/src/skia/__tests__/setup.d.ts +0 -3
  234. package/lib/typescript/src/sksg/Container.d.ts +19 -0
  235. package/lib/typescript/src/sksg/DrawingContext.d.ts +16 -0
  236. package/lib/typescript/src/sksg/HostConfig.d.ts +19 -0
  237. package/lib/typescript/src/sksg/Reconciler.d.ts +17 -0
  238. package/lib/typescript/src/sksg/__tests__/MockDeclaration.d.ts +57 -0
  239. package/lib/typescript/src/sksg/nodes/Node.d.ts +7 -0
  240. package/lib/typescript/src/sksg/nodes/colorFilters.d.ts +7 -0
  241. package/lib/typescript/src/sksg/nodes/context.d.ts +3 -0
  242. package/lib/typescript/src/sksg/nodes/drawings.d.ts +31 -0
  243. package/lib/typescript/src/sksg/nodes/imageFilters.d.ts +14 -0
  244. package/lib/typescript/src/sksg/nodes/index.d.ts +3 -0
  245. package/lib/typescript/src/sksg/nodes/paint.d.ts +2 -0
  246. package/lib/typescript/src/sksg/nodes/pathEffects.d.ts +8 -0
  247. package/lib/typescript/src/sksg/nodes/shaders.d.ts +10 -0
  248. package/lib/typescript/src/sksg/nodes/utils.d.ts +3 -0
  249. package/lib/typescript/src/views/types.d.ts +2 -2
  250. package/libs/{ios → apple}/libskia.xcframework/Info.plist +15 -0
  251. package/libs/{ios → apple}/libskia.xcframework/ios-arm64_arm64e/libskia.a +0 -0
  252. package/libs/{ios → apple}/libskia.xcframework/ios-arm64_arm64e_x86_64-simulator/libskia.a +0 -0
  253. package/libs/apple/libskia.xcframework/macos-arm64_x86_64/libskia.a +0 -0
  254. package/libs/{ios → apple}/libskottie.xcframework/Info.plist +20 -5
  255. package/libs/{ios → apple}/libskottie.xcframework/ios-arm64_arm64e/libskottie.a +0 -0
  256. package/libs/{ios → apple}/libskottie.xcframework/ios-arm64_arm64e_x86_64-simulator/libskottie.a +0 -0
  257. package/libs/apple/libskottie.xcframework/macos-arm64_x86_64/libskottie.a +0 -0
  258. package/libs/{ios → apple}/libskparagraph.xcframework/Info.plist +20 -5
  259. package/libs/{ios → apple}/libskparagraph.xcframework/ios-arm64_arm64e/libskparagraph.a +0 -0
  260. package/libs/{ios → apple}/libskparagraph.xcframework/ios-arm64_arm64e_x86_64-simulator/libskparagraph.a +0 -0
  261. package/libs/apple/libskparagraph.xcframework/macos-arm64_x86_64/libskparagraph.a +0 -0
  262. package/libs/{ios → apple}/libsksg.xcframework/Info.plist +15 -0
  263. package/libs/{ios → apple}/libsksg.xcframework/ios-arm64_arm64e/libsksg.a +0 -0
  264. package/libs/{ios → apple}/libsksg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsksg.a +0 -0
  265. package/libs/apple/libsksg.xcframework/macos-arm64_x86_64/libsksg.a +0 -0
  266. package/libs/{ios → apple}/libskshaper.xcframework/Info.plist +20 -5
  267. package/libs/{ios → apple}/libskshaper.xcframework/ios-arm64_arm64e/libskshaper.a +0 -0
  268. package/libs/{ios → apple}/libskshaper.xcframework/ios-arm64_arm64e_x86_64-simulator/libskshaper.a +0 -0
  269. package/libs/apple/libskshaper.xcframework/macos-arm64_x86_64/libskshaper.a +0 -0
  270. package/libs/{ios → apple}/libskunicode_core.xcframework/Info.plist +18 -3
  271. package/libs/{ios → apple}/libskunicode_core.xcframework/ios-arm64_arm64e/libskunicode_core.a +0 -0
  272. package/libs/{ios → apple}/libskunicode_core.xcframework/ios-arm64_arm64e_x86_64-simulator/libskunicode_core.a +0 -0
  273. package/libs/apple/libskunicode_core.xcframework/macos-arm64_x86_64/libskunicode_core.a +0 -0
  274. package/libs/{ios → apple}/libskunicode_libgrapheme.xcframework/Info.plist +15 -0
  275. package/libs/{ios → apple}/libskunicode_libgrapheme.xcframework/ios-arm64_arm64e/libskunicode_libgrapheme.a +0 -0
  276. package/libs/{ios → apple}/libskunicode_libgrapheme.xcframework/ios-arm64_arm64e_x86_64-simulator/libskunicode_libgrapheme.a +0 -0
  277. package/libs/apple/libskunicode_libgrapheme.xcframework/macos-arm64_x86_64/libskunicode_libgrapheme.a +0 -0
  278. package/libs/{ios → apple}/libsvg.xcframework/Info.plist +15 -0
  279. package/libs/{ios → apple}/libsvg.xcframework/ios-arm64_arm64e/libsvg.a +0 -0
  280. package/libs/{ios → apple}/libsvg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsvg.a +0 -0
  281. package/libs/apple/libsvg.xcframework/macos-arm64_x86_64/libsvg.a +0 -0
  282. package/package.json +3 -3
  283. package/react-native-skia.podspec +9 -9
  284. package/src/__tests__/setup.ts +1 -1
  285. package/src/__tests__/snapshots/sksg/breathe-0.png +0 -0
  286. package/src/__tests__/snapshots/sksg/breathe.png +0 -0
  287. package/src/__tests__/snapshots/sksg/simple.png +0 -0
  288. package/src/__tests__/snapshots/sksg/simple2.png +0 -0
  289. package/src/dom/nodes/JsiSkDOM.ts +2 -1
  290. package/src/dom/nodes/datatypes/Circle.ts +7 -5
  291. package/src/dom/nodes/datatypes/Enum.ts +2 -0
  292. package/src/dom/nodes/datatypes/Fitting.ts +2 -5
  293. package/src/dom/nodes/datatypes/Gradient.ts +4 -7
  294. package/src/dom/nodes/datatypes/Path.ts +5 -2
  295. package/src/dom/nodes/datatypes/Radius.ts +2 -0
  296. package/src/dom/nodes/datatypes/Rect.ts +40 -6
  297. package/src/dom/nodes/datatypes/Transform.ts +29 -1
  298. package/src/dom/nodes/drawings/Box.ts +1 -29
  299. package/src/dom/nodes/drawings/CircleNode.ts +1 -1
  300. package/src/dom/types/DeclarationContext.ts +12 -2
  301. package/src/external/reanimated/renderHelpers.ts +8 -4
  302. package/src/renderer/HostConfig.ts +10 -4
  303. package/src/renderer/__tests__/documentation/shapes/Box.spec.tsx +2 -2
  304. package/src/renderer/__tests__/setup.tsx +17 -15
  305. package/src/renderer/processors/Animations/Animations.ts +1 -5
  306. package/src/renderer/typeddash.ts +4 -2
  307. package/src/skia/__tests__/setup.ts +1 -51
  308. package/src/skia/types/Path/Path.ts +4 -2
  309. package/src/skia/types/Shader/Shader.ts +7 -4
  310. package/src/sksg/Container.ts +102 -0
  311. package/src/sksg/DrawingContext.ts +221 -0
  312. package/src/sksg/HostConfig.ts +287 -0
  313. package/src/sksg/Reconciler.ts +59 -0
  314. package/src/sksg/__tests__/Declarations.spec.tsx +235 -0
  315. package/src/sksg/__tests__/MockDeclaration.ts +140 -0
  316. package/src/sksg/__tests__/Simple.spec.tsx +148 -0
  317. package/src/sksg/nodes/Node.ts +8 -0
  318. package/src/sksg/nodes/colorFilters.ts +60 -0
  319. package/src/sksg/nodes/context.ts +489 -0
  320. package/src/sksg/nodes/drawings.ts +393 -0
  321. package/src/sksg/nodes/imageFilters.ts +183 -0
  322. package/src/sksg/nodes/index.ts +3 -0
  323. package/src/sksg/nodes/paint.ts +75 -0
  324. package/src/sksg/nodes/pathEffects.ts +95 -0
  325. package/src/sksg/nodes/shaders.ts +203 -0
  326. package/src/sksg/nodes/utils.ts +23 -0
  327. package/src/views/SkiaPictureView.tsx +0 -2
  328. package/src/views/types.ts +2 -2
  329. package/lib/commonjs/dom/__tests__/Shaders.spec.d.ts +0 -1
  330. package/lib/commonjs/renderer/__tests__/SkiaDOM.spec.d.ts +0 -1
  331. package/lib/module/dom/__tests__/Compose.spec.d.ts +0 -1
  332. package/lib/module/dom/__tests__/Demos.spec.d.ts +0 -1
  333. package/lib/module/dom/__tests__/DrawingContext.spec.d.ts +0 -1
  334. package/lib/module/dom/__tests__/Drawings.spec.d.ts +0 -1
  335. package/lib/module/dom/__tests__/Group.spec.d.ts +0 -1
  336. package/lib/module/dom/__tests__/Paint.spec.d.ts +0 -1
  337. package/lib/module/dom/__tests__/RenderNodes.spec.d.ts +0 -1
  338. package/lib/module/dom/__tests__/Shaders.spec.d.ts +0 -1
  339. package/lib/module/renderer/__tests__/SkiaDOM.spec.d.ts +0 -1
  340. package/lib/typescript/src/dom/__tests__/Compose.spec.d.ts +0 -1
  341. package/lib/typescript/src/dom/__tests__/Demos.spec.d.ts +0 -1
  342. package/lib/typescript/src/dom/__tests__/DrawingContext.spec.d.ts +0 -1
  343. package/lib/typescript/src/dom/__tests__/Drawings.spec.d.ts +0 -1
  344. package/lib/typescript/src/dom/__tests__/Group.spec.d.ts +0 -1
  345. package/lib/typescript/src/dom/__tests__/Paint.spec.d.ts +0 -1
  346. package/lib/typescript/src/dom/__tests__/RenderNodes.spec.d.ts +0 -1
  347. package/lib/typescript/src/dom/__tests__/Shaders.spec.d.ts +0 -1
  348. package/lib/typescript/src/renderer/__tests__/SkiaDOM.spec.d.ts +0 -1
  349. package/src/dom/__tests__/Compose.spec.tsx +0 -42
  350. package/src/dom/__tests__/Demos.spec.tsx +0 -145
  351. package/src/dom/__tests__/DrawingContext.spec.tsx +0 -99
  352. package/src/dom/__tests__/Drawings.spec.tsx +0 -95
  353. package/src/dom/__tests__/Group.spec.tsx +0 -132
  354. package/src/dom/__tests__/Paint.spec.tsx +0 -100
  355. package/src/dom/__tests__/RenderNodes.spec.tsx +0 -44
  356. package/src/dom/__tests__/Shaders.spec.tsx +0 -123
  357. package/src/renderer/__tests__/SkiaDOM.spec.tsx +0 -46
  358. /package/lib/commonjs/{dom/__tests__/Compose.spec.d.ts → sksg/__tests__/Declarations.spec.d.ts} +0 -0
  359. /package/lib/commonjs/{dom/__tests__/Demos.spec.d.ts → sksg/__tests__/Simple.spec.d.ts} +0 -0
  360. /package/lib/{commonjs/dom/__tests__/DrawingContext.spec.d.ts → module/sksg/__tests__/Declarations.spec.d.ts} +0 -0
  361. /package/lib/{commonjs/dom/__tests__/Drawings.spec.d.ts → module/sksg/__tests__/Simple.spec.d.ts} +0 -0
  362. /package/lib/{commonjs/dom/__tests__/Group.spec.d.ts → typescript/lib/module/sksg/nodes/Node.d.ts} +0 -0
  363. /package/lib/{commonjs/dom/__tests__/Paint.spec.d.ts → typescript/src/sksg/__tests__/Declarations.spec.d.ts} +0 -0
  364. /package/lib/{commonjs/dom/__tests__/RenderNodes.spec.d.ts → typescript/src/sksg/__tests__/Simple.spec.d.ts} +0 -0
@@ -1,3 +1,5 @@
1
1
  export function isEdge(pos: any, b: any): boolean;
2
2
  export function processRect(Skia: any, def: any): any;
3
3
  export function processRRect(Skia: any, def: any): any;
4
+ export function inflate(Skia: any, box: any, dx: any, dy: any, tx?: number, ty?: number): any;
5
+ export function deflate(Skia: any, box: any, dx: any, dy: any, tx?: number, ty?: number): any;
@@ -1 +1,2 @@
1
1
  export function processTransformProps(m3: any, props: any): void;
2
+ export function processTransformProps2(Skia: any, props: any): any;
@@ -1,3 +1,5 @@
1
1
  export function extractReanimatedProps(props: any): any[];
2
2
  export function bindReanimatedProps(container: any, node: any, reanimatedProps: any): void;
3
+ export let HAS_REANIMATED: boolean;
4
+ export let HAS_REANIMATED_3: boolean;
3
5
  export function unbindReanimatedNode(node: any): void;
@@ -112,9 +112,11 @@ export function Mock(CanvasKit: any): {
112
112
  isEdge: (pos: any, b: any) => boolean;
113
113
  processRect: (Skia: any, def: any) => any;
114
114
  processRRect: (Skia: any, def: any) => any;
115
+ inflate: (Skia: any, box: any, dx: any, dy: any, tx?: number, ty?: number) => any;
116
+ deflate: (Skia: any, box: any, dx: any, dy: any, tx?: number, ty?: number) => any;
115
117
  processRadius: (Skia: any, radius: any) => any;
116
118
  isCircleScalarDef: (def: any) => boolean;
117
- processCircle: (Skia: any, def: any) => any;
119
+ processCircle: (def: any) => any;
118
120
  transformOrigin: (origin: any, transform: any) => any[];
119
121
  processGradientProps: (Skia: any, { colors, positions, mode, flags, ...transform }: {
120
122
  [x: string]: any;
@@ -131,6 +133,7 @@ export function Mock(CanvasKit: any): {
131
133
  };
132
134
  getRect: (Skia: any, props: any) => any;
133
135
  processTransformProps: (m3: any, props: any) => void;
136
+ processTransformProps2: (Skia: any, props: any) => any;
134
137
  validateInterpolationOptions(type: any): {
135
138
  extrapolateLeft: any;
136
139
  extrapolateRight: any;
@@ -1,6 +1,5 @@
1
1
  export function debug(...args: any[]): void;
2
2
  export namespace skHostConfig {
3
- let now: () => number;
4
3
  let supportsMutation: boolean;
5
4
  let isPrimaryRenderer: boolean;
6
5
  let supportsPersistence: boolean;
@@ -34,4 +33,7 @@ export namespace skHostConfig {
34
33
  function beforeActiveInstanceBlur(): void;
35
34
  function afterActiveInstanceBlur(): void;
36
35
  function detachDeletedInstance(): void;
36
+ function getInstanceFromNode(_node: any): null;
37
+ function prepareScopeUpdate(_scopeInstance: any, _instance: any): void;
38
+ function getInstanceFromScope(_scopeInstance: any): null;
37
39
  }
@@ -0,0 +1,15 @@
1
+ export class Container {
2
+ constructor(Skia: any, nativeId: any);
3
+ Skia: any;
4
+ nativeId: any;
5
+ set root(root: any);
6
+ get root(): any;
7
+ mapperId: any;
8
+ _root: any;
9
+ clear(): void;
10
+ redraw(): void;
11
+ getNativeId(): any;
12
+ unregisterValues(values: any): void;
13
+ registerValues(values: any): void;
14
+ drawOnCanvas(canvas: any): void;
15
+ }
@@ -0,0 +1,26 @@
1
+ export class DrawingContext {
2
+ constructor(Skia: any, canvas: any);
3
+ Skia: any;
4
+ canvas: any;
5
+ paints: any[];
6
+ declCtx: DeclarationContext;
7
+ save(): void;
8
+ restore(): void;
9
+ get paint(): any;
10
+ getLocalPaints(): any[];
11
+ processPaint({ opacity, color, strokeWidth, blendMode, style, strokeJoin, strokeCap, strokeMiter, antiAlias, dither, paint: paintProp }: {
12
+ opacity: any;
13
+ color: any;
14
+ strokeWidth: any;
15
+ blendMode: any;
16
+ style: any;
17
+ strokeJoin: any;
18
+ strokeCap: any;
19
+ strokeMiter: any;
20
+ antiAlias: any;
21
+ dither: any;
22
+ paint: any;
23
+ }): boolean;
24
+ processMatrixAndClipping(props: any, layer: any): boolean;
25
+ }
26
+ import { DeclarationContext } from "../dom/types";
@@ -0,0 +1,49 @@
1
+ export function debug(...args: any[]): void;
2
+ export namespace sksgHostConfig {
3
+ let supportsMutation: boolean;
4
+ let isPrimaryRenderer: boolean;
5
+ let supportsPersistence: boolean;
6
+ let supportsHydration: boolean;
7
+ let scheduleTimeout: typeof setTimeout;
8
+ let cancelTimeout: typeof clearTimeout;
9
+ let noTimeout: number;
10
+ function getRootHostContext(_rootContainerInstance: any): null;
11
+ function getChildHostContext(_parentHostContext: any, _type: any, _rootContainerInstance: any): null;
12
+ function shouldSetTextContent(_type: any, _props: any): boolean;
13
+ function createTextInstance(_text: any, _rootContainerInstance: any, _hostContext: any, _internalInstanceHandle: any): never;
14
+ function createInstance(type: any, props: any, container: any, _hostContext: any, _internalInstanceHandle: any): {
15
+ type: any;
16
+ isDeclaration: boolean;
17
+ props: any;
18
+ children: never[];
19
+ };
20
+ function appendInitialChild(parentInstance: any, child: any): void;
21
+ function finalizeInitialChildren(parentInstance: any, _type: any, _props: any, _rootContainerInstance: any, _hostContext: any): boolean;
22
+ function commitMount(): void;
23
+ function prepareForCommit(_containerInfo: any): null;
24
+ function resetAfterCommit(container: any): void;
25
+ function getPublicInstance(node: any): any;
26
+ function commitTextUpdate(_textInstance: any, _oldText: any, _newText: any): void;
27
+ function clearContainer(container: any): void;
28
+ function prepareUpdate(_instance: any, _type: any, oldProps: any, newProps: any, container: any, _hostContext: any): any;
29
+ function preparePortalMount(): void;
30
+ function cloneInstance(instance: any, _updatePayload: any, _type: any, _oldProps: any, newProps: any, _internalInstanceHandle: any, keepChildren: any, _recyclableInstance: any): {
31
+ type: any;
32
+ props: any;
33
+ children: any[];
34
+ isDeclaration: any;
35
+ };
36
+ function createContainerChildSet(): never[];
37
+ function appendChildToContainerChildSet(childSet: any, child: any): void;
38
+ function finalizeContainerChildren(container: any, newChildren: any): void;
39
+ function replaceContainerChildren(container: any, newChildren: any): void;
40
+ function cloneHiddenInstance(_instance: any, _type: any, _props: any): never;
41
+ function cloneHiddenTextInstance(_instance: any, _text: any): never;
42
+ function getCurrentEventPriority(): number;
43
+ function beforeActiveInstanceBlur(): void;
44
+ function afterActiveInstanceBlur(): void;
45
+ function detachDeletedInstance(): void;
46
+ function getInstanceFromNode(_node: any): never;
47
+ function prepareScopeUpdate(_scopeInstance: any, _instance: any): never;
48
+ function getInstanceFromScope(_scopeInstance: any): never;
49
+ }
@@ -0,0 +1,15 @@
1
+ export class SkiaSGRoot {
2
+ constructor(Skia: any, nativeId?: number);
3
+ container: Container;
4
+ root: any;
5
+ get sg(): {
6
+ type: any;
7
+ props: {};
8
+ children: any;
9
+ isDeclaration: boolean;
10
+ };
11
+ render(element: any): void;
12
+ drawOnCanvas(canvas: any): void;
13
+ unmount(): void;
14
+ }
15
+ import { Container } from "./Container";
@@ -0,0 +1,6 @@
1
+ export function makeBlendColorFilter(ctx: any, props: any): any;
2
+ export function makeSRGBToLinearGammaColorFilter(ctx: any): any;
3
+ export function makeLinearToSRGBGammaColorFilter(ctx: any): any;
4
+ export function declareLerpColorFilter(ctx: any, props: any): void;
5
+ export function makeMatrixColorFilter(ctx: any, props: any): any;
6
+ export function makeLumaColorFilter(ctx: any): any;
@@ -0,0 +1 @@
1
+ export function draw(ctx: any, node: any): void;
@@ -0,0 +1,22 @@
1
+ export function drawLine(ctx: any, props: any): void;
2
+ export function drawOval(ctx: any, props: any): void;
3
+ export function drawBox(ctx: any, props: any, children: any): void;
4
+ export function drawBoxShadow(_ctx: any, _props: any): void;
5
+ export function drawImage(ctx: any, props: any): void;
6
+ export function drawPoints(ctx: any, props: any): void;
7
+ export function drawVertices(ctx: any, props: any): void;
8
+ export function drawDiffRect(ctx: any, props: any): void;
9
+ export function drawTextPath(ctx: any, props: any): void;
10
+ export function drawText(ctx: any, props: any): void;
11
+ export function drawPatch(ctx: any, props: any): void;
12
+ export function drawPath(ctx: any, props: any): void;
13
+ export function drawRect(ctx: any, props: any): void;
14
+ export function drawRRect(ctx: any, props: any): void;
15
+ export function drawTextBlob(ctx: any, props: any): void;
16
+ export function drawGlyphs(ctx: any, props: any): void;
17
+ export function drawImageSVG(ctx: any, props: any): void;
18
+ export function drawParagraph(ctx: any, props: any): void;
19
+ export function drawPicture(ctx: any, props: any): void;
20
+ export function drawAtlas(ctx: any, props: any): void;
21
+ export function drawCircle(ctx: any, props: any): void;
22
+ export function drawFill(ctx: any, _props: any): void;
@@ -0,0 +1,9 @@
1
+ export let MorphologyOperator: {};
2
+ export function makeOffsetImageFilter(ctx: any, props: any): any;
3
+ export function declareDisplacementMapImageFilter(ctx: any, props: any): void;
4
+ export function makeBlurImageFilter(ctx: any, props: any): any;
5
+ export function makeDropShadowImageFilter(ctx: any, props: any): any;
6
+ export function makeMorphologyImageFilter(ctx: any, props: any): any;
7
+ export function makeRuntimeShaderImageFilter(ctx: any, props: any): any;
8
+ export function declareBlendImageFilter(ctx: any, props: any): void;
9
+ export function declareBlurMaskFilter(ctx: any, props: any): void;
@@ -0,0 +1,3 @@
1
+ export * from "./Node";
2
+ export * from "./context";
3
+ export * from "./utils";
@@ -0,0 +1 @@
1
+ export function declarePaint(ctx: any, props: any): void;
@@ -0,0 +1,7 @@
1
+ export function makeDiscretePathEffect(ctx: any, props: any): any;
2
+ export function makePath2DPathEffect(ctx: any, props: any): any;
3
+ export function makeDashPathEffect(ctx: any, props: any): any;
4
+ export function makeCornerPathEffect(ctx: any, props: any): any;
5
+ export function declareSumPathEffect(ctx: any): void;
6
+ export function makeLine2DPathEffect(ctx: any, props: any): any;
7
+ export function makePath1DPathEffect(ctx: any, props: any): any;
@@ -0,0 +1,9 @@
1
+ export function declareShader(ctx: any, props: any): void;
2
+ export function declareColorShader(ctx: any, props: any): void;
3
+ export function declareFractalNoiseShader(ctx: any, props: any): void;
4
+ export function declareTwoPointConicalGradientShader(ctx: any, props: any): void;
5
+ export function declareRadialGradientShader(ctx: any, props: any): void;
6
+ export function declareSweepGradientShader(ctx: any, props: any): void;
7
+ export function declareLinearGradientShader(ctx: any, props: any): void;
8
+ export function declareTurbulenceShader(ctx: any, props: any): void;
9
+ export function declareImageShader(ctx: any, props: any): void;
@@ -0,0 +1,2 @@
1
+ export function isSharedValue(value: any): boolean;
2
+ export function materialize(props: any): any;
@@ -1,7 +1,6 @@
1
- import type { Skia } from "../../../skia/types";
2
1
  import type { CircleDef, ScalarCircleDef } from "../../types";
3
2
  export declare const isCircleScalarDef: (def: CircleDef) => def is ScalarCircleDef;
4
- export declare const processCircle: (Skia: Skia, def: CircleDef) => {
5
- c: import("../../../skia/types").SkPoint;
3
+ export declare const processCircle: (def: CircleDef) => {
4
+ c: import("../../..").SkPoint;
6
5
  r: number;
7
6
  };
@@ -1,5 +1,7 @@
1
- import type { Skia, SkRect, Vector } from "../../../skia/types";
1
+ import type { Skia, SkRect, SkRRect, Vector } from "../../../skia/types";
2
2
  import type { RectDef, RRectDef } from "../../types";
3
3
  export declare const isEdge: (pos: Vector, b: SkRect) => boolean;
4
4
  export declare const processRect: (Skia: Skia, def: RectDef) => SkRect;
5
5
  export declare const processRRect: (Skia: Skia, def: RRectDef) => import("../../../skia/types").InputRRect;
6
+ export declare const inflate: (Skia: Skia, box: SkRRect, dx: number, dy: number, tx?: number, ty?: number) => SkRRect;
7
+ export declare const deflate: (Skia: Skia, box: SkRRect, dx: number, dy: number, tx?: number, ty?: number) => SkRRect;
@@ -1,3 +1,4 @@
1
1
  import type { TransformProps } from "../../types";
2
- import type { SkMatrix } from "../../../skia/types";
2
+ import type { Skia, SkMatrix } from "../../../skia/types";
3
3
  export declare const processTransformProps: (m3: SkMatrix, props: TransformProps) => void;
4
+ export declare const processTransformProps2: (Skia: Skia, props: TransformProps) => SkMatrix | null;
@@ -2,20 +2,20 @@ import type { SkShader, SkPaint, SkImageFilter, SkMaskFilter, SkPathEffect, Skia
2
2
  type Composer<T> = (outer: T, inner: T) => T;
3
3
  export declare const composeDeclarations: <T>(filters: T[], composer: Composer<T>) => T;
4
4
  declare class Declaration<T> {
5
- private composer?;
6
5
  private decls;
7
6
  private indexes;
8
- constructor(composer?: Composer<T> | undefined);
7
+ private composer?;
8
+ constructor(composer?: Composer<T>);
9
9
  private get index();
10
10
  save(): void;
11
11
  restore(): void;
12
12
  pop(): T | undefined;
13
13
  push(decl: T): void;
14
14
  popAll(): T[];
15
- popAllAsOne(): T;
15
+ popAllAsOne(): T | undefined;
16
16
  }
17
17
  export declare class DeclarationContext {
18
- private Skia;
18
+ Skia: Skia;
19
19
  readonly paints: Declaration<SkPaint>;
20
20
  readonly maskFilters: Declaration<SkMaskFilter>;
21
21
  readonly shaders: Declaration<SkShader>;
@@ -1,6 +1,8 @@
1
1
  import type { Container } from "../../renderer/Container";
2
2
  import type { AnimatedProps } from "../../renderer/processors";
3
3
  import type { Node } from "../../dom/types";
4
+ export declare let HAS_REANIMATED: boolean;
5
+ export declare let HAS_REANIMATED_3: boolean;
4
6
  export declare const unbindReanimatedNode: (node: Node<unknown>) => void;
5
7
  export declare function extractReanimatedProps(props: AnimatedProps<any>): AnimatedProps<any, never>[];
6
8
  export declare function bindReanimatedProps(container: Container, node: Node<any>, reanimatedProps: AnimatedProps<any>): void;
@@ -2,7 +2,7 @@ import type { ReactNode } from "react";
2
2
  import type { Server, WebSocket } from "ws";
3
3
  import type * as SkiaExports from "../../index";
4
4
  import type { SkImage, SkFont, Skia, SkCanvas } from "../../skia/types";
5
- import { SkiaRoot } from "../Reconciler";
5
+ import { SkiaSGRoot } from "../../sksg/Reconciler";
6
6
  type TestOS = "ios" | "android" | "web" | "node";
7
7
  declare global {
8
8
  var testServer: Server;
@@ -35,7 +35,6 @@ export declare const BirdGIF: string;
35
35
  export declare const loadImage: (uri: string) => SkiaExports.SkImage;
36
36
  export declare const loadFont: (uri: string, ftSize?: number) => SkiaExports.SkFont;
37
37
  export declare const importSkia: () => typeof SkiaExports;
38
- export declare const getSkDOM: () => SkiaExports.JsiSkDOM;
39
38
  export declare const PIXEL_RATIO = 3;
40
39
  export declare const fontSize: number;
41
40
  export declare const width: number;
@@ -47,7 +46,7 @@ export declare const center: {
47
46
  export declare const drawOnNode: (element: ReactNode) => SkiaExports.SkSurface;
48
47
  export declare const mountCanvas: (element: ReactNode) => {
49
48
  surface: SkiaExports.SkSurface;
50
- root: SkiaRoot;
49
+ root: SkiaSGRoot;
51
50
  draw: () => void;
52
51
  };
53
52
  export declare const serialize: (element: ReactNode) => string;
@@ -1,7 +1,6 @@
1
- export type SharedValueType<T = number> = {
1
+ export type AnimatedProp<T> = T | {
2
2
  value: T;
3
3
  };
4
- export type AnimatedProp<T> = T | SharedValueType<T>;
5
4
  export type AnimatedProps<T, O extends keyof T | never = never> = {
6
5
  [K in keyof T]: K extends "children" ? T[K] : K extends O ? T[K] : AnimatedProp<T[K]>;
7
6
  };
@@ -1,4 +1,3 @@
1
- import type { Node } from "../../dom/types";
2
1
  import { Skia } from "../types";
3
2
  import { JsiSkApi } from "../web";
4
3
  declare let Skia: ReturnType<typeof JsiSkApi>;
@@ -14,6 +13,4 @@ export declare const setupSkia: (width?: number, height?: number) => {
14
13
  Skia: Skia;
15
14
  CanvasKit: import("canvaskit-wasm").CanvasKit;
16
15
  };
17
- export declare const printAsXML: (node: Node<unknown>) => void;
18
- export declare const asXML: (node: Node<unknown>, indent?: number) => string;
19
16
  export {};
@@ -0,0 +1,19 @@
1
+ import type { Skia, SkCanvas } from "../skia/types";
2
+ import type { Node } from "./nodes";
3
+ export declare class Container {
4
+ Skia: Skia;
5
+ private nativeId;
6
+ _root: Node[];
7
+ unmounted: boolean;
8
+ private values;
9
+ private mapperId;
10
+ constructor(Skia: Skia, nativeId: number);
11
+ get root(): Node[];
12
+ set root(root: Node[]);
13
+ clear(): void;
14
+ redraw(): void;
15
+ getNativeId(): number;
16
+ unregisterValues(values: object): void;
17
+ registerValues(values: object): void;
18
+ drawOnCanvas(canvas: SkCanvas): void;
19
+ }
@@ -0,0 +1,16 @@
1
+ import type { DrawingNodeProps, GroupProps } from "../dom/types";
2
+ import { DeclarationContext } from "../dom/types";
3
+ import type { SkCanvas, Skia, SkPaint } from "../skia/types";
4
+ export declare class DrawingContext {
5
+ private paints;
6
+ declCtx: DeclarationContext;
7
+ Skia: Skia;
8
+ canvas: SkCanvas;
9
+ constructor(Skia: Skia, canvas: SkCanvas);
10
+ save(): void;
11
+ restore(): void;
12
+ get paint(): SkPaint;
13
+ getLocalPaints(): SkPaint[];
14
+ processPaint({ opacity, color, strokeWidth, blendMode, style, strokeJoin, strokeCap, strokeMiter, antiAlias, dither, paint: paintProp, }: DrawingNodeProps): boolean;
15
+ processMatrixAndClipping(props: GroupProps, layer?: boolean | SkPaint): boolean;
16
+ }
@@ -0,0 +1,19 @@
1
+ import type { HostConfig } from "react-reconciler";
2
+ import { NodeType } from "../dom/types";
3
+ import type { Node } from "./nodes/Node";
4
+ import type { Container } from "./Container";
5
+ export declare const debug: (message?: any, ...optionalParams: any[]) => void;
6
+ type Instance = Node;
7
+ type Props = object;
8
+ type TextInstance = Node;
9
+ type SuspenseInstance = Instance;
10
+ type HydratableInstance = Instance;
11
+ type PublicInstance = Instance;
12
+ type HostContext = null;
13
+ type UpdatePayload = Container;
14
+ type ChildSet = Node[];
15
+ type TimeoutHandle = NodeJS.Timeout;
16
+ type NoTimeout = -1;
17
+ type SkiaHostConfig = HostConfig<NodeType, Props, Container, Instance, TextInstance, SuspenseInstance, HydratableInstance, PublicInstance, HostContext, UpdatePayload, ChildSet, TimeoutHandle, NoTimeout>;
18
+ export declare const sksgHostConfig: SkiaHostConfig;
19
+ export {};
@@ -0,0 +1,17 @@
1
+ import type { ReactNode } from "react";
2
+ import type { SkCanvas, Skia } from "../skia/types";
3
+ import { NodeType } from "../dom/types";
4
+ export declare class SkiaSGRoot {
5
+ private root;
6
+ private container;
7
+ constructor(Skia: Skia, nativeId?: number);
8
+ get sg(): {
9
+ type: NodeType;
10
+ props: {};
11
+ children: import("./nodes").Node<unknown>[];
12
+ isDeclaration: boolean;
13
+ };
14
+ render(element: ReactNode): void;
15
+ drawOnCanvas(canvas: SkCanvas): void;
16
+ unmount(): void;
17
+ }
@@ -0,0 +1,57 @@
1
+ export declare enum DeclarationType {
2
+ ColorFilter = 0,
3
+ ImageFilter = 1,
4
+ Shader = 2,
5
+ MaskFilter = 3,
6
+ PathEffect = 4,
7
+ Paint = 5
8
+ }
9
+ interface Filter {
10
+ tag: string;
11
+ }
12
+ export interface SkColorFilter extends Filter {
13
+ type: DeclarationType.ColorFilter;
14
+ }
15
+ interface SkImageFilter extends Filter {
16
+ type: DeclarationType.ImageFilter;
17
+ }
18
+ interface SkShader extends Filter {
19
+ type: DeclarationType.Shader;
20
+ }
21
+ interface SkMaskFilter extends Filter {
22
+ type: DeclarationType.MaskFilter;
23
+ }
24
+ interface SkPathEffect extends Filter {
25
+ type: DeclarationType.PathEffect;
26
+ }
27
+ interface SkPaint extends Filter {
28
+ type: DeclarationType.Paint;
29
+ }
30
+ type Composer<T> = (outer: T, inner: T) => T;
31
+ export declare const compose: any;
32
+ export declare const composeDeclarations: <T>(filters: T[], composer: Composer<T>) => T;
33
+ declare class Declaration<T extends Filter> {
34
+ decls: T[];
35
+ indexes: number[];
36
+ composer?: Composer<T>;
37
+ constructor(composer?: Composer<T>);
38
+ private get index();
39
+ save(): void;
40
+ restore(): void;
41
+ pop(): T | undefined;
42
+ push(decl: T): void;
43
+ popAll(): T[];
44
+ popAllAsOne(): T | undefined;
45
+ }
46
+ export declare class DeclarationContext {
47
+ readonly paints: Declaration<SkPaint>;
48
+ readonly maskFilters: Declaration<SkMaskFilter>;
49
+ readonly shaders: Declaration<SkShader>;
50
+ readonly pathEffects: Declaration<SkPathEffect>;
51
+ readonly imageFilters: Declaration<SkImageFilter>;
52
+ readonly colorFilters: Declaration<SkColorFilter>;
53
+ constructor();
54
+ save(): void;
55
+ restore(): void;
56
+ }
57
+ export {};
@@ -0,0 +1,7 @@
1
+ import type { NodeType } from "../../dom/types";
2
+ export interface Node<Props = unknown> {
3
+ type: NodeType;
4
+ isDeclaration: boolean;
5
+ props: Props;
6
+ children: Node[];
7
+ }
@@ -0,0 +1,7 @@
1
+ import type { BlendColorFilterProps, DeclarationContext, LerpColorFilterProps, MatrixColorFilterProps } from "../../dom/types";
2
+ export declare const makeBlendColorFilter: (ctx: DeclarationContext, props: BlendColorFilterProps) => import("../../skia/types").SkColorFilter;
3
+ export declare const makeSRGBToLinearGammaColorFilter: (ctx: DeclarationContext) => import("../../skia/types").SkColorFilter;
4
+ export declare const makeLinearToSRGBGammaColorFilter: (ctx: DeclarationContext) => import("../../skia/types").SkColorFilter;
5
+ export declare const declareLerpColorFilter: (ctx: DeclarationContext, props: LerpColorFilterProps) => void;
6
+ export declare const makeMatrixColorFilter: (ctx: DeclarationContext, props: MatrixColorFilterProps) => import("../../skia/types").SkColorFilter;
7
+ export declare const makeLumaColorFilter: (ctx: DeclarationContext) => import("../../skia/types").SkColorFilter;
@@ -0,0 +1,3 @@
1
+ import type { DrawingContext } from "../DrawingContext";
2
+ import type { Node } from "./Node";
3
+ export declare function draw(ctx: DrawingContext, node: Node<any>): void;
@@ -0,0 +1,31 @@
1
+ import type { AtlasProps, BoxProps, BoxShadowProps, CircleProps, DiffRectProps, DrawingNodeProps, GlyphsProps, ImageProps, ImageSVGProps, LineProps, OvalProps, ParagraphProps, PatchProps, PathProps, PictureProps, PointsProps, RectProps, RoundedRectProps, TextBlobProps, TextPathProps, TextProps, VerticesProps } from "../../dom/types";
2
+ import type { SkCanvas, SkPaint, Skia } from "../../skia/types";
3
+ import type { Node } from "./Node";
4
+ interface LocalDrawingContext {
5
+ Skia: Skia;
6
+ canvas: SkCanvas;
7
+ paint: SkPaint;
8
+ }
9
+ export declare const drawLine: (ctx: LocalDrawingContext, props: LineProps) => void;
10
+ export declare const drawOval: (ctx: LocalDrawingContext, props: OvalProps) => void;
11
+ export declare const drawBox: (ctx: LocalDrawingContext, props: BoxProps, children: Node<any>[]) => void;
12
+ export declare const drawBoxShadow: (_ctx: LocalDrawingContext, _props: BoxShadowProps) => void;
13
+ export declare const drawImage: (ctx: LocalDrawingContext, props: ImageProps) => void;
14
+ export declare const drawPoints: (ctx: LocalDrawingContext, props: PointsProps) => void;
15
+ export declare const drawVertices: (ctx: LocalDrawingContext, props: VerticesProps) => void;
16
+ export declare const drawDiffRect: (ctx: LocalDrawingContext, props: DiffRectProps) => void;
17
+ export declare const drawTextPath: (ctx: LocalDrawingContext, props: TextPathProps) => void;
18
+ export declare const drawText: (ctx: LocalDrawingContext, props: TextProps) => void;
19
+ export declare const drawPatch: (ctx: LocalDrawingContext, props: PatchProps) => void;
20
+ export declare const drawPath: (ctx: LocalDrawingContext, props: PathProps) => void;
21
+ export declare const drawRect: (ctx: LocalDrawingContext, props: RectProps) => void;
22
+ export declare const drawRRect: (ctx: LocalDrawingContext, props: RoundedRectProps) => void;
23
+ export declare const drawTextBlob: (ctx: LocalDrawingContext, props: TextBlobProps) => void;
24
+ export declare const drawGlyphs: (ctx: LocalDrawingContext, props: GlyphsProps) => void;
25
+ export declare const drawImageSVG: (ctx: LocalDrawingContext, props: ImageSVGProps) => void;
26
+ export declare const drawParagraph: (ctx: LocalDrawingContext, props: ParagraphProps) => void;
27
+ export declare const drawPicture: (ctx: LocalDrawingContext, props: PictureProps) => void;
28
+ export declare const drawAtlas: (ctx: LocalDrawingContext, props: AtlasProps) => void;
29
+ export declare const drawCircle: (ctx: LocalDrawingContext, props: CircleProps) => void;
30
+ export declare const drawFill: (ctx: LocalDrawingContext, _props: DrawingNodeProps) => void;
31
+ export {};
@@ -0,0 +1,14 @@
1
+ import type { BlendImageFilterProps, BlurImageFilterProps, BlurMaskFilterProps, DeclarationContext, DisplacementMapImageFilterProps, DropShadowImageFilterProps, MorphologyImageFilterProps, OffsetImageFilterProps, RuntimeShaderImageFilterProps } from "../../dom/types";
2
+ import type { SkImageFilter } from "../../skia/types";
3
+ export declare enum MorphologyOperator {
4
+ Erode = 0,
5
+ Dilate = 1
6
+ }
7
+ export declare const makeOffsetImageFilter: (ctx: DeclarationContext, props: OffsetImageFilterProps) => SkImageFilter;
8
+ export declare const declareDisplacementMapImageFilter: (ctx: DeclarationContext, props: DisplacementMapImageFilterProps) => void;
9
+ export declare const makeBlurImageFilter: (ctx: DeclarationContext, props: BlurImageFilterProps) => SkImageFilter;
10
+ export declare const makeDropShadowImageFilter: (ctx: DeclarationContext, props: DropShadowImageFilterProps) => SkImageFilter;
11
+ export declare const makeMorphologyImageFilter: (ctx: DeclarationContext, props: MorphologyImageFilterProps) => SkImageFilter;
12
+ export declare const makeRuntimeShaderImageFilter: (ctx: DeclarationContext, props: RuntimeShaderImageFilterProps) => SkImageFilter;
13
+ export declare const declareBlendImageFilter: (ctx: DeclarationContext, props: BlendImageFilterProps) => void;
14
+ export declare const declareBlurMaskFilter: (ctx: DeclarationContext, props: BlurMaskFilterProps) => void;
@@ -0,0 +1,3 @@
1
+ export * from "./Node";
2
+ export * from "./context";
3
+ export * from "./utils";
@@ -0,0 +1,2 @@
1
+ import type { DeclarationContext, PaintProps } from "../../dom/types";
2
+ export declare const declarePaint: (ctx: DeclarationContext, props: PaintProps) => void;
@@ -0,0 +1,8 @@
1
+ import type { CornerPathEffectProps, DashPathEffectProps, DeclarationContext, DiscretePathEffectProps, Line2DPathEffectProps, Path1DPathEffectProps, Path2DPathEffectProps } from "../../dom/types";
2
+ export declare const makeDiscretePathEffect: (ctx: DeclarationContext, props: DiscretePathEffectProps) => import("../../skia/types").SkPathEffect;
3
+ export declare const makePath2DPathEffect: (ctx: DeclarationContext, props: Path2DPathEffectProps) => import("../../skia/types").SkPathEffect;
4
+ export declare const makeDashPathEffect: (ctx: DeclarationContext, props: DashPathEffectProps) => import("../../skia/types").SkPathEffect;
5
+ export declare const makeCornerPathEffect: (ctx: DeclarationContext, props: CornerPathEffectProps) => import("../../skia/types").SkPathEffect;
6
+ export declare const declareSumPathEffect: (ctx: DeclarationContext) => void;
7
+ export declare const makeLine2DPathEffect: (ctx: DeclarationContext, props: Line2DPathEffectProps) => import("../../skia/types").SkPathEffect;
8
+ export declare const makePath1DPathEffect: (ctx: DeclarationContext, props: Path1DPathEffectProps) => import("../../skia/types").SkPathEffect;
@@ -0,0 +1,10 @@
1
+ import type { ColorProps, DeclarationContext, FractalNoiseProps, ImageShaderProps, LinearGradientProps, RadialGradientProps, ShaderProps, SweepGradientProps, TurbulenceProps, TwoPointConicalGradientProps } from "../../dom/types";
2
+ export declare const declareShader: (ctx: DeclarationContext, props: ShaderProps) => void;
3
+ export declare const declareColorShader: (ctx: DeclarationContext, props: ColorProps) => void;
4
+ export declare const declareFractalNoiseShader: (ctx: DeclarationContext, props: FractalNoiseProps) => void;
5
+ export declare const declareTwoPointConicalGradientShader: (ctx: DeclarationContext, props: TwoPointConicalGradientProps) => void;
6
+ export declare const declareRadialGradientShader: (ctx: DeclarationContext, props: RadialGradientProps) => void;
7
+ export declare const declareSweepGradientShader: (ctx: DeclarationContext, props: SweepGradientProps) => void;
8
+ export declare const declareLinearGradientShader: (ctx: DeclarationContext, props: LinearGradientProps) => void;
9
+ export declare const declareTurbulenceShader: (ctx: DeclarationContext, props: TurbulenceProps) => void;
10
+ export declare const declareImageShader: (ctx: DeclarationContext, props: ImageShaderProps) => void;
@@ -0,0 +1,3 @@
1
+ import type { SharedValue } from "react-native-reanimated";
2
+ export declare const isSharedValue: <T = unknown>(value: unknown) => value is SharedValue<T>;
3
+ export declare const materialize: <T extends object>(props: T) => T;
@@ -1,7 +1,7 @@
1
1
  import type { ViewProps } from "react-native";
2
+ import type { SharedValue } from "react-native-reanimated";
2
3
  import type { GroupProps, RenderNode } from "../dom/types";
3
4
  import type { SkImage, SkPicture, SkRect, SkSize } from "../skia/types";
4
- import type { SharedValueType } from "../renderer/processors/Animations/Animations";
5
5
  export type NativeSkiaViewProps = ViewProps & {
6
6
  debug?: boolean;
7
7
  opaque?: boolean;
@@ -27,7 +27,7 @@ export interface SkiaBaseViewProps extends ViewProps {
27
27
  * Pass an animated value to the onSize property to get updates when
28
28
  * the Skia view is resized.
29
29
  */
30
- onSize?: SharedValueType<SkSize>;
30
+ onSize?: SharedValue<SkSize>;
31
31
  opaque?: boolean;
32
32
  }
33
33
  export interface SkiaPictureViewNativeProps extends SkiaBaseViewProps {