@shopify/react-native-skia 2.0.6 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (287) hide show
  1. package/android/CMakeLists.txt +20 -1
  2. package/cpp/api/JsiSkApi.h +3 -0
  3. package/cpp/api/JsiSkImageFilterFactory.h +478 -39
  4. package/cpp/api/JsiSkPath.h +2 -1
  5. package/cpp/api/JsiSkPathFactory.h +1 -1
  6. package/cpp/api/JsiSkSkottie.h +590 -0
  7. package/cpp/api/JsiSkottieFactory.h +65 -0
  8. package/cpp/api/recorder/Command.h +1 -0
  9. package/cpp/api/recorder/Convertor.h +16 -0
  10. package/cpp/api/recorder/Drawings.h +23 -0
  11. package/cpp/api/recorder/JsiRecorder.h +6 -0
  12. package/cpp/api/recorder/RNRecorder.h +9 -0
  13. package/cpp/api/third_party/SkottieUtils.cpp +333 -0
  14. package/cpp/api/third_party/SkottieUtils.h +172 -0
  15. package/cpp/skia/modules/jsonreader/SkJSONReader.cpp +980 -0
  16. package/cpp/skia/modules/jsonreader/SkJSONReader.h +389 -0
  17. package/cpp/skia/modules/skottie/include/ExternalLayer.h +56 -0
  18. package/cpp/skia/modules/skottie/include/Skottie.h +313 -0
  19. package/cpp/skia/modules/skottie/include/SkottieProperty.h +190 -0
  20. package/cpp/skia/modules/skottie/include/SlotManager.h +113 -0
  21. package/cpp/skia/modules/skottie/include/TextShaper.h +200 -0
  22. package/cpp/skia/modules/skottie/src/SkottieValue.h +56 -0
  23. package/cpp/skia/modules/skottie/src/animator/Animator.h +89 -0
  24. package/cpp/skia/modules/skottie/src/text/Font.h +82 -0
  25. package/cpp/skia/modules/skottie/src/text/TextAdapter.h +155 -0
  26. package/cpp/skia/modules/skottie/src/text/TextAnimator.h +121 -0
  27. package/cpp/skia/modules/skottie/src/text/TextValue.h +28 -0
  28. package/cpp/skia/modules/sksg/include/SkSGClipEffect.h +61 -0
  29. package/cpp/skia/modules/sksg/include/SkSGColorFilter.h +135 -0
  30. package/cpp/skia/modules/sksg/include/SkSGDraw.h +57 -0
  31. package/cpp/skia/modules/sksg/include/SkSGEffectNode.h +50 -0
  32. package/cpp/skia/modules/sksg/include/SkSGGeometryEffect.h +181 -0
  33. package/cpp/skia/modules/sksg/include/SkSGGeometryNode.h +54 -0
  34. package/cpp/skia/modules/sksg/include/SkSGGradient.h +108 -0
  35. package/cpp/skia/modules/sksg/include/SkSGGroup.h +65 -0
  36. package/cpp/skia/modules/sksg/include/SkSGImage.h +59 -0
  37. package/cpp/skia/modules/sksg/include/SkSGInvalidationController.h +46 -0
  38. package/cpp/skia/modules/sksg/include/SkSGMaskEffect.h +65 -0
  39. package/cpp/skia/modules/sksg/include/SkSGMerge.h +74 -0
  40. package/cpp/skia/modules/sksg/include/SkSGNode.h +128 -0
  41. package/cpp/skia/modules/sksg/include/SkSGOpacityEffect.h +54 -0
  42. package/cpp/skia/modules/sksg/include/SkSGPaint.h +112 -0
  43. package/cpp/skia/modules/sksg/include/SkSGPath.h +68 -0
  44. package/cpp/skia/modules/sksg/include/SkSGPlane.h +47 -0
  45. package/cpp/skia/modules/sksg/include/SkSGRect.h +122 -0
  46. package/cpp/skia/modules/sksg/include/SkSGRenderEffect.h +283 -0
  47. package/cpp/skia/modules/sksg/include/SkSGRenderNode.h +157 -0
  48. package/cpp/skia/modules/sksg/include/SkSGScene.h +47 -0
  49. package/cpp/skia/modules/sksg/include/SkSGText.h +82 -0
  50. package/cpp/skia/modules/sksg/include/SkSGTransform.h +127 -0
  51. package/cpp/skia/src/base/SkArenaAlloc.h +371 -0
  52. package/lib/commonjs/dom/nodes/datatypes/Gradient.d.ts +15 -15
  53. package/lib/commonjs/dom/types/Drawings.d.ts +5 -1
  54. package/lib/commonjs/dom/types/Drawings.js.map +1 -1
  55. package/lib/commonjs/dom/types/NodeType.d.ts +2 -1
  56. package/lib/commonjs/dom/types/NodeType.js +2 -0
  57. package/lib/commonjs/dom/types/NodeType.js.map +1 -1
  58. package/lib/commonjs/renderer/__tests__/e2e/AdvancedImageFilters.spec.d.ts +1 -0
  59. package/lib/commonjs/renderer/__tests__/e2e/Camera.spec.d.ts +21 -0
  60. package/lib/commonjs/renderer/__tests__/e2e/LightingImageFilters.spec.d.ts +1 -0
  61. package/lib/commonjs/renderer/__tests__/e2e/Skottie.spec.d.ts +1 -0
  62. package/lib/commonjs/renderer/__tests__/setup.d.ts +5 -0
  63. package/lib/commonjs/renderer/components/Skottie.d.ts +4 -0
  64. package/lib/commonjs/renderer/components/Skottie.js +13 -0
  65. package/lib/commonjs/renderer/components/Skottie.js.map +1 -0
  66. package/lib/commonjs/renderer/components/index.d.ts +1 -0
  67. package/lib/commonjs/renderer/components/index.js +11 -0
  68. package/lib/commonjs/renderer/components/index.js.map +1 -1
  69. package/lib/commonjs/skia/types/ImageFilter/ImageFilterFactory.d.ts +252 -15
  70. package/lib/commonjs/skia/types/ImageFilter/ImageFilterFactory.js.map +1 -1
  71. package/lib/commonjs/skia/types/Matrix4.d.ts +11 -2
  72. package/lib/commonjs/skia/types/Matrix4.js +42 -1
  73. package/lib/commonjs/skia/types/Matrix4.js.map +1 -1
  74. package/lib/commonjs/skia/types/Recorder.d.ts +2 -1
  75. package/lib/commonjs/skia/types/Recorder.js.map +1 -1
  76. package/lib/commonjs/skia/types/Skia.d.ts +2 -0
  77. package/lib/commonjs/skia/types/Skia.js.map +1 -1
  78. package/lib/commonjs/skia/types/Skottie.d.ts +223 -0
  79. package/lib/commonjs/skia/types/Skottie.js +73 -0
  80. package/lib/commonjs/skia/types/Skottie.js.map +1 -0
  81. package/lib/commonjs/skia/types/index.d.ts +1 -0
  82. package/lib/commonjs/skia/types/index.js +11 -0
  83. package/lib/commonjs/skia/types/index.js.map +1 -1
  84. package/lib/commonjs/skia/web/JsiSkImageFilterFactory.d.ts +29 -12
  85. package/lib/commonjs/skia/web/JsiSkImageFilterFactory.js +88 -19
  86. package/lib/commonjs/skia/web/JsiSkImageFilterFactory.js.map +1 -1
  87. package/lib/commonjs/skia/web/JsiSkia.js +2 -0
  88. package/lib/commonjs/skia/web/JsiSkia.js.map +1 -1
  89. package/lib/commonjs/skia/web/JsiSkottieAnimation.d.ts +59 -0
  90. package/lib/commonjs/skia/web/JsiSkottieAnimation.js +243 -0
  91. package/lib/commonjs/skia/web/JsiSkottieAnimation.js.map +1 -0
  92. package/lib/commonjs/skia/web/JsiSkottieFactory.d.ts +9 -0
  93. package/lib/commonjs/skia/web/JsiSkottieFactory.js +26 -0
  94. package/lib/commonjs/skia/web/JsiSkottieFactory.js.map +1 -0
  95. package/lib/commonjs/sksg/Elements.d.ts +2 -1
  96. package/lib/commonjs/sksg/Elements.js.map +1 -1
  97. package/lib/commonjs/sksg/Recorder/Core.d.ts +4 -2
  98. package/lib/commonjs/sksg/Recorder/Core.js +1 -0
  99. package/lib/commonjs/sksg/Recorder/Core.js.map +1 -1
  100. package/lib/commonjs/sksg/Recorder/Player.js +2 -0
  101. package/lib/commonjs/sksg/Recorder/Player.js.map +1 -1
  102. package/lib/commonjs/sksg/Recorder/ReanimatedRecorder.d.ts +2 -1
  103. package/lib/commonjs/sksg/Recorder/ReanimatedRecorder.js +4 -0
  104. package/lib/commonjs/sksg/Recorder/ReanimatedRecorder.js.map +1 -1
  105. package/lib/commonjs/sksg/Recorder/Recorder.d.ts +2 -1
  106. package/lib/commonjs/sksg/Recorder/Recorder.js +6 -0
  107. package/lib/commonjs/sksg/Recorder/Recorder.js.map +1 -1
  108. package/lib/commonjs/sksg/Recorder/Visitor.js +3 -0
  109. package/lib/commonjs/sksg/Recorder/Visitor.js.map +1 -1
  110. package/lib/commonjs/sksg/Recorder/commands/Drawing.d.ts +2 -2
  111. package/lib/commonjs/sksg/Recorder/commands/Drawing.js +11 -4
  112. package/lib/commonjs/sksg/Recorder/commands/Drawing.js.map +1 -1
  113. package/lib/commonjs/sksg/Recorder/commands/ImageFilters.js +1 -1
  114. package/lib/commonjs/sksg/Recorder/commands/ImageFilters.js.map +1 -1
  115. package/lib/module/dom/nodes/datatypes/Gradient.d.ts +15 -15
  116. package/lib/module/dom/types/Drawings.d.ts +5 -1
  117. package/lib/module/dom/types/Drawings.js.map +1 -1
  118. package/lib/module/dom/types/NodeType.d.ts +2 -1
  119. package/lib/module/dom/types/NodeType.js +2 -0
  120. package/lib/module/dom/types/NodeType.js.map +1 -1
  121. package/lib/module/renderer/__tests__/e2e/AdvancedImageFilters.spec.d.ts +1 -0
  122. package/lib/module/renderer/__tests__/e2e/Camera.spec.d.ts +21 -0
  123. package/lib/module/renderer/__tests__/e2e/LightingImageFilters.spec.d.ts +1 -0
  124. package/lib/module/renderer/__tests__/e2e/Skottie.spec.d.ts +1 -0
  125. package/lib/module/renderer/__tests__/setup.d.ts +5 -0
  126. package/lib/module/renderer/components/Skottie.d.ts +4 -0
  127. package/lib/module/renderer/components/Skottie.js +5 -0
  128. package/lib/module/renderer/components/Skottie.js.map +1 -0
  129. package/lib/module/renderer/components/index.d.ts +1 -0
  130. package/lib/module/renderer/components/index.js +1 -0
  131. package/lib/module/renderer/components/index.js.map +1 -1
  132. package/lib/module/skia/types/ImageFilter/ImageFilterFactory.d.ts +252 -15
  133. package/lib/module/skia/types/ImageFilter/ImageFilterFactory.js.map +1 -1
  134. package/lib/module/skia/types/Matrix4.d.ts +11 -2
  135. package/lib/module/skia/types/Matrix4.js +40 -0
  136. package/lib/module/skia/types/Matrix4.js.map +1 -1
  137. package/lib/module/skia/types/Recorder.d.ts +2 -1
  138. package/lib/module/skia/types/Recorder.js.map +1 -1
  139. package/lib/module/skia/types/Skia.d.ts +2 -0
  140. package/lib/module/skia/types/Skia.js.map +1 -1
  141. package/lib/module/skia/types/Skottie.d.ts +223 -0
  142. package/lib/module/skia/types/Skottie.js +74 -0
  143. package/lib/module/skia/types/Skottie.js.map +1 -0
  144. package/lib/module/skia/types/index.d.ts +1 -0
  145. package/lib/module/skia/types/index.js +1 -0
  146. package/lib/module/skia/types/index.js.map +1 -1
  147. package/lib/module/skia/web/JsiSkImageFilterFactory.d.ts +29 -12
  148. package/lib/module/skia/web/JsiSkImageFilterFactory.js +88 -19
  149. package/lib/module/skia/web/JsiSkImageFilterFactory.js.map +1 -1
  150. package/lib/module/skia/web/JsiSkia.js +2 -0
  151. package/lib/module/skia/web/JsiSkia.js.map +1 -1
  152. package/lib/module/skia/web/JsiSkottieAnimation.d.ts +59 -0
  153. package/lib/module/skia/web/JsiSkottieAnimation.js +236 -0
  154. package/lib/module/skia/web/JsiSkottieAnimation.js.map +1 -0
  155. package/lib/module/skia/web/JsiSkottieFactory.d.ts +9 -0
  156. package/lib/module/skia/web/JsiSkottieFactory.js +19 -0
  157. package/lib/module/skia/web/JsiSkottieFactory.js.map +1 -0
  158. package/lib/module/sksg/Elements.d.ts +2 -1
  159. package/lib/module/sksg/Elements.js.map +1 -1
  160. package/lib/module/sksg/Recorder/Core.d.ts +4 -2
  161. package/lib/module/sksg/Recorder/Core.js +1 -0
  162. package/lib/module/sksg/Recorder/Core.js.map +1 -1
  163. package/lib/module/sksg/Recorder/Player.js +3 -1
  164. package/lib/module/sksg/Recorder/Player.js.map +1 -1
  165. package/lib/module/sksg/Recorder/ReanimatedRecorder.d.ts +2 -1
  166. package/lib/module/sksg/Recorder/ReanimatedRecorder.js +4 -0
  167. package/lib/module/sksg/Recorder/ReanimatedRecorder.js.map +1 -1
  168. package/lib/module/sksg/Recorder/Recorder.d.ts +2 -1
  169. package/lib/module/sksg/Recorder/Recorder.js +6 -0
  170. package/lib/module/sksg/Recorder/Recorder.js.map +1 -1
  171. package/lib/module/sksg/Recorder/Visitor.js +3 -0
  172. package/lib/module/sksg/Recorder/Visitor.js.map +1 -1
  173. package/lib/module/sksg/Recorder/commands/Drawing.d.ts +2 -2
  174. package/lib/module/sksg/Recorder/commands/Drawing.js +9 -2
  175. package/lib/module/sksg/Recorder/commands/Drawing.js.map +1 -1
  176. package/lib/module/sksg/Recorder/commands/ImageFilters.js +1 -1
  177. package/lib/module/sksg/Recorder/commands/ImageFilters.js.map +1 -1
  178. package/lib/typescript/lib/commonjs/renderer/components/Skottie.d.ts +2 -0
  179. package/lib/typescript/lib/commonjs/skia/types/Matrix4.d.ts +1 -0
  180. package/lib/typescript/lib/commonjs/skia/types/Skottie.d.ts +6 -0
  181. package/lib/typescript/lib/commonjs/skia/web/JsiSkImageFilterFactory.d.ts +22 -5
  182. package/lib/typescript/lib/commonjs/skia/web/JsiSkia.d.ts +2 -0
  183. package/lib/typescript/lib/commonjs/skia/web/JsiSkottieAnimation.d.ts +48 -0
  184. package/lib/typescript/lib/commonjs/skia/web/JsiSkottieFactory.d.ts +6 -0
  185. package/lib/typescript/lib/commonjs/sksg/Recorder/ReanimatedRecorder.d.ts +1 -0
  186. package/lib/typescript/lib/commonjs/sksg/Recorder/Recorder.d.ts +1 -0
  187. package/lib/typescript/lib/commonjs/sksg/Recorder/commands/Drawing.d.ts +1 -1
  188. package/lib/typescript/lib/module/mock/index.d.ts +7 -0
  189. package/lib/typescript/lib/module/renderer/components/Skottie.d.ts +2 -0
  190. package/lib/typescript/lib/module/renderer/components/index.d.ts +1 -0
  191. package/lib/typescript/lib/module/skia/Skia.web.d.ts +1 -0
  192. package/lib/typescript/lib/module/skia/types/Matrix4.d.ts +1 -0
  193. package/lib/typescript/lib/module/skia/types/Skottie.d.ts +5 -0
  194. package/lib/typescript/lib/module/skia/types/index.d.ts +1 -0
  195. package/lib/typescript/lib/module/skia/web/JsiSkImageFilterFactory.d.ts +22 -5
  196. package/lib/typescript/lib/module/skia/web/JsiSkia.d.ts +2 -0
  197. package/lib/typescript/lib/module/skia/web/JsiSkottieAnimation.d.ts +47 -0
  198. package/lib/typescript/lib/module/skia/web/JsiSkottieFactory.d.ts +5 -0
  199. package/lib/typescript/lib/module/sksg/Recorder/ReanimatedRecorder.d.ts +1 -0
  200. package/lib/typescript/lib/module/sksg/Recorder/Recorder.d.ts +1 -0
  201. package/lib/typescript/lib/module/sksg/Recorder/commands/Drawing.d.ts +1 -1
  202. package/lib/typescript/src/dom/nodes/datatypes/Gradient.d.ts +15 -15
  203. package/lib/typescript/src/dom/types/Drawings.d.ts +5 -1
  204. package/lib/typescript/src/dom/types/NodeType.d.ts +2 -1
  205. package/lib/typescript/src/renderer/__tests__/e2e/AdvancedImageFilters.spec.d.ts +1 -0
  206. package/lib/typescript/src/renderer/__tests__/e2e/Camera.spec.d.ts +21 -0
  207. package/lib/typescript/src/renderer/__tests__/e2e/LightingImageFilters.spec.d.ts +1 -0
  208. package/lib/typescript/src/renderer/__tests__/e2e/Skottie.spec.d.ts +1 -0
  209. package/lib/typescript/src/renderer/__tests__/setup.d.ts +5 -0
  210. package/lib/typescript/src/renderer/components/Skottie.d.ts +4 -0
  211. package/lib/typescript/src/renderer/components/index.d.ts +1 -0
  212. package/lib/typescript/src/skia/types/ImageFilter/ImageFilterFactory.d.ts +252 -15
  213. package/lib/typescript/src/skia/types/Matrix4.d.ts +11 -2
  214. package/lib/typescript/src/skia/types/Recorder.d.ts +2 -1
  215. package/lib/typescript/src/skia/types/Skia.d.ts +2 -0
  216. package/lib/typescript/src/skia/types/Skottie.d.ts +223 -0
  217. package/lib/typescript/src/skia/types/index.d.ts +1 -0
  218. package/lib/typescript/src/skia/web/JsiSkImageFilterFactory.d.ts +29 -12
  219. package/lib/typescript/src/skia/web/JsiSkottieAnimation.d.ts +59 -0
  220. package/lib/typescript/src/skia/web/JsiSkottieFactory.d.ts +9 -0
  221. package/lib/typescript/src/sksg/Elements.d.ts +2 -1
  222. package/lib/typescript/src/sksg/Recorder/Core.d.ts +4 -2
  223. package/lib/typescript/src/sksg/Recorder/ReanimatedRecorder.d.ts +2 -1
  224. package/lib/typescript/src/sksg/Recorder/Recorder.d.ts +2 -1
  225. package/lib/typescript/src/sksg/Recorder/commands/Drawing.d.ts +2 -2
  226. package/libs/android/arm64-v8a/libjsonreader.a +0 -0
  227. package/libs/android/armeabi-v7a/libjsonreader.a +0 -0
  228. package/libs/android/x86/libjsonreader.a +0 -0
  229. package/libs/android/x86_64/libjsonreader.a +0 -0
  230. package/libs/apple/libpathops.xcframework/Info.plist +9 -9
  231. package/libs/apple/libskia.xcframework/Info.plist +14 -14
  232. package/libs/apple/libskottie.xcframework/Info.plist +13 -13
  233. package/libs/apple/libskparagraph.xcframework/Info.plist +15 -15
  234. package/libs/apple/libsksg.xcframework/Info.plist +13 -13
  235. package/libs/apple/libskshaper.xcframework/Info.plist +15 -15
  236. package/libs/apple/libskunicode_core.xcframework/Info.plist +9 -9
  237. package/libs/apple/libskunicode_libgrapheme.xcframework/Info.plist +13 -13
  238. package/libs/apple/libsvg.xcframework/Info.plist +15 -15
  239. package/package.json +1 -1
  240. package/react-native-skia.podspec +4 -2
  241. package/src/__tests__/snapshots/matrix4/camera-corner.png +0 -0
  242. package/src/__tests__/snapshots/matrix4/camera-offset.png +0 -0
  243. package/src/__tests__/snapshots/matrix4/camera-top-left-center.png +0 -0
  244. package/src/__tests__/snapshots/matrix4/camera-zoom-out.png +0 -0
  245. package/src/__tests__/snapshots/matrix4/full-rect.png +0 -0
  246. package/src/__tests__/snapshots/matrix4/rect.png +0 -0
  247. package/src/__tests__/snapshots/matrix4/scaled-rect.png +0 -0
  248. package/src/__tests__/snapshots/matrix4/test-perspective.png +0 -0
  249. package/src/__tests__/snapshots/matrix4/test-perspective2.png +0 -0
  250. package/src/dom/types/Drawings.ts +6 -0
  251. package/src/dom/types/NodeType.ts +2 -0
  252. package/src/renderer/__tests__/e2e/AdvancedImageFilters.spec.tsx +492 -0
  253. package/src/renderer/__tests__/e2e/Camera.spec.tsx +475 -0
  254. package/src/renderer/__tests__/e2e/LightingImageFilters.spec.tsx +1478 -0
  255. package/src/renderer/__tests__/e2e/Skottie.spec.tsx +440 -0
  256. package/src/renderer/__tests__/e2e/setup/skottie/basic_slots.json +1118 -0
  257. package/src/renderer/__tests__/e2e/setup/skottie/color-props.json +1 -0
  258. package/src/renderer/__tests__/e2e/setup/skottie/confetti.json +5899 -0
  259. package/src/renderer/__tests__/e2e/setup/skottie/drinks.json +43857 -0
  260. package/src/renderer/__tests__/e2e/setup/skottie/fingerprint.json +1 -0
  261. package/src/renderer/__tests__/e2e/setup/skottie/lego_loader.json +29540 -0
  262. package/src/renderer/__tests__/e2e/setup/skottie/new-drop.json +1 -0
  263. package/src/renderer/__tests__/e2e/setup/skottie/onboarding.json +1 -0
  264. package/src/renderer/__tests__/e2e/setup/skottie/text-layer.json +1 -0
  265. package/src/renderer/__tests__/setup.tsx +23 -0
  266. package/src/renderer/components/Skottie.tsx +8 -0
  267. package/src/renderer/components/index.ts +1 -0
  268. package/src/skia/__tests__/assets/Avenir-Heavy.ttf +0 -0
  269. package/src/skia/types/ImageFilter/ImageFilterFactory.ts +391 -21
  270. package/src/skia/types/Matrix4.ts +108 -2
  271. package/src/skia/types/Recorder.ts +2 -0
  272. package/src/skia/types/Skia.ts +2 -0
  273. package/src/skia/types/Skottie.ts +266 -0
  274. package/src/skia/types/index.ts +1 -0
  275. package/src/skia/web/JsiSkImageFilterFactory.ts +266 -31
  276. package/src/skia/web/JsiSkia.ts +2 -0
  277. package/src/skia/web/JsiSkottieAnimation.ts +259 -0
  278. package/src/skia/web/JsiSkottieFactory.ts +25 -0
  279. package/src/sksg/Elements.tsx +2 -0
  280. package/src/sksg/Recorder/Core.ts +3 -0
  281. package/src/sksg/Recorder/Player.ts +3 -0
  282. package/src/sksg/Recorder/ReanimatedRecorder.ts +6 -0
  283. package/src/sksg/Recorder/Recorder.ts +5 -0
  284. package/src/sksg/Recorder/Visitor.ts +3 -0
  285. package/src/sksg/Recorder/commands/Drawing.ts +7 -3
  286. package/src/sksg/Recorder/commands/ImageFilters.ts +1 -1
  287. package/cpp/skia/include/pathops/SkPathOps.h +0 -17
@@ -18,4 +18,4 @@ export function drawParagraph(ctx: any, props: any): void;
18
18
  export function drawPicture(ctx: any, props: any): void;
19
19
  export function drawAtlas(ctx: any, props: any): void;
20
20
  export function drawCircle(ctx: any, props: any): void;
21
- export function drawFill(ctx: any, _props: any): void;
21
+ export function drawSkottie(ctx: any, props: any): void;
@@ -275,10 +275,16 @@ export function Mock(CanvasKit: any): {
275
275
  convertToColumnMajor: (rowMajorMatrix: any) => any[];
276
276
  convertToAffineMatrix: (m4: any) => any[];
277
277
  invert4: (m: any) => number[];
278
+ setupCamera: (area: any, zscale: any, cam: any) => any[];
278
279
  CanvasKitWebGLBuffer: typeof import("../skia").CanvasKitWebGLBuffer;
279
280
  isNativeBufferAddr: (buffer: any) => buffer is BigInt;
280
281
  isNativeBufferWeb: (buffer: any) => boolean;
281
282
  isNativeBufferNode: (buffer: any) => buffer is ArrayBuffer;
283
+ LineBreakType: {};
284
+ VerticalTextAlign: {};
285
+ ResizePolicy: {};
286
+ InputState: {};
287
+ ModifierKey: {};
282
288
  Circle: (props: any) => import("react").DOMElement<any, Element>;
283
289
  Rect: (props: any) => import("react").DOMElement<any, Element>;
284
290
  RoundedRect: (props: any) => import("react").DOMElement<any, Element>;
@@ -499,5 +505,6 @@ export function Mock(CanvasKit: any): {
499
505
  }>;
500
506
  Paint: (props: any) => import("react").DOMElement<any, Element>;
501
507
  Blend: (props: any) => import("react").DOMElement<any, Element>;
508
+ Skottie: (props: any) => import("react").DOMElement<any, Element>;
502
509
  Paragraph: (props: any) => import("react").DOMElement<any, Element>;
503
510
  };
@@ -0,0 +1,2 @@
1
+ export function Skottie(props: any): React.DOMElement<any, Element>;
2
+ import React from "react";
@@ -13,4 +13,5 @@ export * from "./Group";
13
13
  export * from "./Mask";
14
14
  export * from "./Paint";
15
15
  export * from "./Blend";
16
+ export * from "./Skottie";
16
17
  export * from "./paragraph";
@@ -31,6 +31,7 @@ export const Skia: {
31
31
  FontMgr: import("./web/JsiSkFontMgrFactory").JsiSkFontMgrFactory;
32
32
  ParagraphBuilder: import("./web/JsiSkParagraphBuilderFactory").JsiSkParagraphBuilderFactory;
33
33
  NativeBuffer: import("./web/JsiSkNativeBufferFactory").JsiSkNativeBufferFactory;
34
+ Skottie: import("./web/JsiSkottieFactory").JsiSkottieFactory;
34
35
  Video: (url?: any) => Promise<any>;
35
36
  Context: (_surface: any, _width: any, _height: any) => jest.Mock<any, any, any>;
36
37
  Recorder: () => jest.Mock<any, any, any>;
@@ -14,3 +14,4 @@ export function processTransform3d(transforms: any): any;
14
14
  export function convertToColumnMajor(rowMajorMatrix: any): any[];
15
15
  export function convertToAffineMatrix(m4: any): any[];
16
16
  export function invert4(m: any): number[];
17
+ export function setupCamera(area: any, zscale: any, cam: any): any[];
@@ -0,0 +1,5 @@
1
+ export let LineBreakType: {};
2
+ export let VerticalTextAlign: {};
3
+ export let ResizePolicy: {};
4
+ export let InputState: {};
5
+ export let ModifierKey: {};
@@ -29,3 +29,4 @@ export * from "./Matrix4";
29
29
  export * from "./NativeBuffer";
30
30
  export * from "./Recorder";
31
31
  export * from "./Video";
32
+ export * from "./Skottie";
@@ -1,9 +1,26 @@
1
1
  export class JsiSkImageFilterFactory extends Host {
2
- MakeOffset(dx: any, dy: any, input: any): JsiSkImageFilter;
3
- MakeDisplacementMap(channelX: any, channelY: any, scale: any, in1: any, input: any): JsiSkImageFilter;
4
- MakeShader(shader: any, _input: any): JsiSkImageFilter;
5
- MakeBlur(sigmaX: any, sigmaY: any, mode: any, input: any): JsiSkImageFilter;
6
- MakeColorFilter(cf: any, input: any): JsiSkImageFilter;
2
+ MakeRuntimeShaderWithChildren(_builder: any, _sampleRadius: any, _childShaderNames: any, _inputs: any): void;
3
+ MakeArithmetic(_k1: any, _k2: any, _k3: any, _k4: any, _enforcePMColor: any, _background: any, _foreground: any, _cropRect: any): void;
4
+ MakeCrop(_rect: any, _tileMode: any, _input: any): void;
5
+ MakeEmpty(): void;
6
+ MakeImage(_image: any, _srcRect: any, _dstRect: any, _filterMode: any, _mipmap: any): void;
7
+ MakeMagnifier(_lensBounds: any, _zoomAmount: any, _inset: any, _filterMode: any, _mipmap: any, _input: any, _cropRect: any): void;
8
+ MakeMatrixConvolution(_kernelSizeX: any, _kernelSizeY: any, _kernel: any, _gain: any, _bias: any, _kernelOffsetX: any, _kernelOffsetY: any, _tileMode: any, _convolveAlpha: any, _input: any, _cropRect: any): void;
9
+ MakeMatrixTransform(_matrix: any, _filterMode: any, _mipmap: any, _input: any): void;
10
+ MakeMerge(_filters: any, _cropRect: any): void;
11
+ MakePicture(_picture: any, _targetRect: any): void;
12
+ MakeTile(_src: any, _dst: any, _input: any): void;
13
+ MakeDistantLitDiffuse(_direction: any, _lightColor: any, _surfaceScale: any, _kd: any, _input: any, _cropRect: any): void;
14
+ MakePointLitDiffuse(_location: any, _lightColor: any, _surfaceScale: any, _kd: any, _input: any, _cropRect: any): void;
15
+ MakeSpotLitDiffuse(_location: any, _target: any, _falloffExponent: any, _cutoffAngle: any, _lightColor: any, _surfaceScale: any, _kd: any, _input: any, _cropRect: any): void;
16
+ MakeDistantLitSpecular(_direction: any, _lightColor: any, _surfaceScale: any, _ks: any, _shininess: any, _input: any, _cropRect: any): void;
17
+ MakePointLitSpecular(_location: any, _lightColor: any, _surfaceScale: any, _ks: any, _shininess: any, _input: any, _cropRect: any): void;
18
+ MakeSpotLitSpecular(_location: any, _target: any, _falloffExponent: any, _cutoffAngle: any, _lightColor: any, _surfaceScale: any, _ks: any, _shininess: any, _input: any, _cropRect: any): void;
19
+ MakeOffset(dx: any, dy: any, input: any, cropRect: any): JsiSkImageFilter;
20
+ MakeDisplacementMap(channelX: any, channelY: any, scale: any, in1: any, input: any, cropRect: any): JsiSkImageFilter;
21
+ MakeShader(shader: any, dither: any, cropRect: any): JsiSkImageFilter;
22
+ MakeBlur(sigmaX: any, sigmaY: any, mode: any, input: any, cropRect: any): JsiSkImageFilter;
23
+ MakeColorFilter(colorFilter: any, input: any, cropRect: any): JsiSkImageFilter;
7
24
  MakeCompose(outer: any, inner: any): JsiSkImageFilter;
8
25
  MakeDropShadow(dx: any, dy: any, sigmaX: any, sigmaY: any, color: any, input: any, cropRect: any): JsiSkImageFilter;
9
26
  MakeDropShadowOnly(dx: any, dy: any, sigmaX: any, sigmaY: any, color: any, input: any, cropRect: any): JsiSkImageFilter;
@@ -31,6 +31,7 @@ export function JsiSkApi(CanvasKit: any): {
31
31
  FontMgr: JsiSkFontMgrFactory;
32
32
  ParagraphBuilder: JsiSkParagraphBuilderFactory;
33
33
  NativeBuffer: JsiSkNativeBufferFactory;
34
+ Skottie: JsiSkottieFactory;
34
35
  Video: (url?: any) => Promise<any>;
35
36
  Context: (_surface: any, _width: any, _height: any) => jest.Mock<any, any, any>;
36
37
  Recorder: () => jest.Mock<any, any, any>;
@@ -63,3 +64,4 @@ import { JsiSkTypefaceFontProviderFactory } from "./JsiSkTypefaceFontProviderFac
63
64
  import { JsiSkFontMgrFactory } from "./JsiSkFontMgrFactory";
64
65
  import { JsiSkParagraphBuilderFactory } from "./JsiSkParagraphBuilderFactory";
65
66
  import { JsiSkNativeBufferFactory } from "./JsiSkNativeBufferFactory";
67
+ import { JsiSkottieFactory } from "./JsiSkottieFactory";
@@ -0,0 +1,47 @@
1
+ export class JsiSkottieAnimation extends HostObject {
2
+ constructor(CanvasKit: any, ref: any);
3
+ getOpacityProps(): any;
4
+ getTextProps(): any;
5
+ getColorProps(): any;
6
+ getTransformProps(): any;
7
+ setColor(key: any, color: any): any;
8
+ setText(key: any, text: any, size: any): any;
9
+ setOpacity(key: any, opacity: any): any;
10
+ setTransform(key: any, anchor: any, position: any, scale: any, rotation: any, skew: any, skewAxis: any): any;
11
+ getSlotInfo(): any;
12
+ setColorSlot(key: any, color: any): any;
13
+ setScalarSlot(key: any, scalar: any): any;
14
+ setVec2Slot(key: any, vec2: any): any;
15
+ setTextSlot(key: any, text: any): any;
16
+ setImageSlot(key: any, assetName: any): any;
17
+ getColorSlot(key: any): any;
18
+ getScalarSlot(key: any): any;
19
+ getVec2Slot(key: any): {
20
+ x: any;
21
+ y: any;
22
+ } | null;
23
+ getTextSlot(key: any): {
24
+ typeface: JsiSkTypeface;
25
+ text: any;
26
+ textSize: any;
27
+ minTextSize: any;
28
+ maxTextSize: any;
29
+ strokeWidth: any;
30
+ lineHeight: any;
31
+ lineShift: any;
32
+ ascent: any;
33
+ maxLines: any;
34
+ };
35
+ duration(): any;
36
+ fps(): any;
37
+ render(canvas: any, dstRect: any): void;
38
+ seekFrame(frame: any, damageRect: any): void;
39
+ size(): {
40
+ width: any;
41
+ height: any;
42
+ };
43
+ version(): any;
44
+ dispose(): void;
45
+ }
46
+ import { HostObject } from "./Host";
47
+ import { JsiSkTypeface } from "./JsiSkTypeface";
@@ -0,0 +1,5 @@
1
+ export class JsiSkottieFactory extends Host {
2
+ Make(json: any, assets: any): JsiSkottieAnimation;
3
+ }
4
+ import { Host } from "./Host";
5
+ import { JsiSkottieAnimation } from "./JsiSkottieAnimation";
@@ -43,4 +43,5 @@ export class ReanimatedRecorder {
43
43
  drawImageSVG(props: any): void;
44
44
  drawParagraph(props: any): void;
45
45
  drawAtlas(props: any): void;
46
+ drawSkottie(props: any): void;
46
47
  }
@@ -48,4 +48,5 @@ export class Recorder {
48
48
  drawImageSVG(props: any): void;
49
49
  drawParagraph(props: any): void;
50
50
  drawAtlas(props: any): void;
51
+ drawSkottie(props: any): void;
51
52
  }
@@ -17,4 +17,4 @@ export function drawParagraph(ctx: any, props: any): void;
17
17
  export function drawPicture(ctx: any, props: any): void;
18
18
  export function drawAtlas(ctx: any, props: any): void;
19
19
  export function drawCircle(ctx: any, props: any): void;
20
- export function drawFill(ctx: any, _props: any): void;
20
+ export function drawSkottie(ctx: any, props: any): void;
@@ -5,7 +5,7 @@ export declare const transformOrigin: (origin: Vector, transform: Transforms3d)
5
5
  translateX: number;
6
6
  translateY: number;
7
7
  translateZ: number;
8
- translate: readonly [number, number] | readonly [number, number, number];
8
+ translate: readonly [number, number] | import("../../../skia/types").Vec3;
9
9
  scale: number;
10
10
  scaleX: number;
11
11
  scaleY: number;
@@ -21,7 +21,7 @@ export declare const transformOrigin: (origin: Vector, transform: Transforms3d)
21
21
  translateX: number;
22
22
  translateY: number;
23
23
  translateZ: number;
24
- translate: readonly [number, number] | readonly [number, number, number];
24
+ translate: readonly [number, number] | import("../../../skia/types").Vec3;
25
25
  scale: number;
26
26
  scaleX: number;
27
27
  scaleY: number;
@@ -37,7 +37,7 @@ export declare const transformOrigin: (origin: Vector, transform: Transforms3d)
37
37
  translateX: number;
38
38
  translateY: number;
39
39
  translateZ: number;
40
- translate: readonly [number, number] | readonly [number, number, number];
40
+ translate: readonly [number, number] | import("../../../skia/types").Vec3;
41
41
  scale: number;
42
42
  scaleX: number;
43
43
  scaleY: number;
@@ -53,7 +53,7 @@ export declare const transformOrigin: (origin: Vector, transform: Transforms3d)
53
53
  translateX: number;
54
54
  translateY: number;
55
55
  translateZ: number;
56
- translate: readonly [number, number] | readonly [number, number, number];
56
+ translate: readonly [number, number] | import("../../../skia/types").Vec3;
57
57
  scale: number;
58
58
  scaleX: number;
59
59
  scaleY: number;
@@ -69,7 +69,7 @@ export declare const transformOrigin: (origin: Vector, transform: Transforms3d)
69
69
  translateX: number;
70
70
  translateY: number;
71
71
  translateZ: number;
72
- translate: readonly [number, number] | readonly [number, number, number];
72
+ translate: readonly [number, number] | import("../../../skia/types").Vec3;
73
73
  scale: number;
74
74
  scaleX: number;
75
75
  scaleY: number;
@@ -85,7 +85,7 @@ export declare const transformOrigin: (origin: Vector, transform: Transforms3d)
85
85
  translateX: number;
86
86
  translateY: number;
87
87
  translateZ: number;
88
- translate: readonly [number, number] | readonly [number, number, number];
88
+ translate: readonly [number, number] | import("../../../skia/types").Vec3;
89
89
  scale: number;
90
90
  scaleX: number;
91
91
  scaleY: number;
@@ -101,7 +101,7 @@ export declare const transformOrigin: (origin: Vector, transform: Transforms3d)
101
101
  translateX: number;
102
102
  translateY: number;
103
103
  translateZ: number;
104
- translate: readonly [number, number] | readonly [number, number, number];
104
+ translate: readonly [number, number] | import("../../../skia/types").Vec3;
105
105
  scale: number;
106
106
  scaleX: number;
107
107
  scaleY: number;
@@ -117,7 +117,7 @@ export declare const transformOrigin: (origin: Vector, transform: Transforms3d)
117
117
  translateX: number;
118
118
  translateY: number;
119
119
  translateZ: number;
120
- translate: readonly [number, number] | readonly [number, number, number];
120
+ translate: readonly [number, number] | import("../../../skia/types").Vec3;
121
121
  scale: number;
122
122
  scaleX: number;
123
123
  scaleY: number;
@@ -133,7 +133,7 @@ export declare const transformOrigin: (origin: Vector, transform: Transforms3d)
133
133
  translateX: number;
134
134
  translateY: number;
135
135
  translateZ: number;
136
- translate: readonly [number, number] | readonly [number, number, number];
136
+ translate: readonly [number, number] | import("../../../skia/types").Vec3;
137
137
  scale: number;
138
138
  scaleX: number;
139
139
  scaleY: number;
@@ -149,7 +149,7 @@ export declare const transformOrigin: (origin: Vector, transform: Transforms3d)
149
149
  translateX: number;
150
150
  translateY: number;
151
151
  translateZ: number;
152
- translate: readonly [number, number] | readonly [number, number, number];
152
+ translate: readonly [number, number] | import("../../../skia/types").Vec3;
153
153
  scale: number;
154
154
  scaleX: number;
155
155
  scaleY: number;
@@ -165,7 +165,7 @@ export declare const transformOrigin: (origin: Vector, transform: Transforms3d)
165
165
  translateX: number;
166
166
  translateY: number;
167
167
  translateZ: number;
168
- translate: readonly [number, number] | readonly [number, number, number];
168
+ translate: readonly [number, number] | import("../../../skia/types").Vec3;
169
169
  scale: number;
170
170
  scaleX: number;
171
171
  scaleY: number;
@@ -181,7 +181,7 @@ export declare const transformOrigin: (origin: Vector, transform: Transforms3d)
181
181
  translateX: number;
182
182
  translateY: number;
183
183
  translateZ: number;
184
- translate: readonly [number, number] | readonly [number, number, number];
184
+ translate: readonly [number, number] | import("../../../skia/types").Vec3;
185
185
  scale: number;
186
186
  scaleX: number;
187
187
  scaleY: number;
@@ -197,7 +197,7 @@ export declare const transformOrigin: (origin: Vector, transform: Transforms3d)
197
197
  translateX: number;
198
198
  translateY: number;
199
199
  translateZ: number;
200
- translate: readonly [number, number] | readonly [number, number, number];
200
+ translate: readonly [number, number] | import("../../../skia/types").Vec3;
201
201
  scale: number;
202
202
  scaleX: number;
203
203
  scaleY: number;
@@ -213,7 +213,7 @@ export declare const transformOrigin: (origin: Vector, transform: Transforms3d)
213
213
  translateX: number;
214
214
  translateY: number;
215
215
  translateZ: number;
216
- translate: readonly [number, number] | readonly [number, number, number];
216
+ translate: readonly [number, number] | import("../../../skia/types").Vec3;
217
217
  scale: number;
218
218
  scaleX: number;
219
219
  scaleY: number;
@@ -229,7 +229,7 @@ export declare const transformOrigin: (origin: Vector, transform: Transforms3d)
229
229
  translateX: number;
230
230
  translateY: number;
231
231
  translateZ: number;
232
- translate: readonly [number, number] | readonly [number, number, number];
232
+ translate: readonly [number, number] | import("../../../skia/types").Vec3;
233
233
  scale: number;
234
234
  scaleX: number;
235
235
  scaleY: number;
@@ -1,4 +1,4 @@
1
- import type { FillType, SkImage, StrokeOpts, Vector, Color, SkPoint, BlendMode, PointMode, VertexMode, SkFont, SkRRect, SkTextBlob, SkPicture, SkSVG, SkPaint, SkRect, SkRSXform, SkColor, SamplingOptions } from "../../skia/types";
1
+ import type { FillType, SkImage, StrokeOpts, Vector, Color, SkPoint, BlendMode, PointMode, VertexMode, SkFont, SkRRect, SkTextBlob, SkPicture, SkSVG, SkPaint, SkRect, SkRSXform, SkColor, SamplingOptions, SkSkottieAnimation } from "../../skia/types";
2
2
  import type { CircleDef, Fit, GroupProps, PathDef, RectDef, RRectDef, SkEnum } from "./Common";
3
3
  export interface DrawingNodeProps extends GroupProps {
4
4
  paint?: SkPaint;
@@ -62,6 +62,10 @@ export interface ImageSVGProps extends DrawingNodeProps {
62
62
  height?: number;
63
63
  rect?: SkRect;
64
64
  }
65
+ export interface SkottieProps extends DrawingNodeProps {
66
+ animation: SkSkottieAnimation;
67
+ frame: number;
68
+ }
65
69
  export interface PictureProps extends DrawingNodeProps {
66
70
  picture: SkPicture;
67
71
  }
@@ -55,5 +55,6 @@ export declare const enum NodeType {
55
55
  Picture = "skPicture",
56
56
  ImageSVG = "skImageSVG",
57
57
  Atlas = "skAtlas",
58
- Paragraph = "skParagraph"
58
+ Paragraph = "skParagraph",
59
+ Skottie = "skSkottie"
59
60
  }
@@ -0,0 +1,21 @@
1
+ import type { SkPath, SkRect, Vec3 } from "../../../skia/types";
2
+ import { Matrix4 } from "../../../skia/types";
3
+ declare enum Path3Command {
4
+ Move = 0,
5
+ Line = 1,
6
+ Quad = 2,
7
+ Cubic = 3,
8
+ Close = 4
9
+ }
10
+ export declare class Path3 {
11
+ commands: [Path3Command, ...number[]][];
12
+ constructor();
13
+ moveTo(to: Vec3): this;
14
+ lineTo(to: Vec3): this;
15
+ quadTo(control: Vec3, to: Vec3): this;
16
+ cubicTo(control1: Vec3, control2: Vec3, to: Vec3): this;
17
+ close(): this;
18
+ addHRect(rect: SkRect, z: number): this;
19
+ project(output: SkPath, tr?: Matrix4): this;
20
+ }
21
+ export {};
@@ -23,6 +23,11 @@ export declare let fonts: {
23
23
  UberMoveMediumMono: SkFont;
24
24
  DinMedium: SkFont;
25
25
  };
26
+ export declare let dataAssets: {
27
+ NotoSansSCRegular: Uint8Array;
28
+ img_0: Uint8Array;
29
+ AvenirHeavy: Uint8Array;
30
+ };
26
31
  export declare const wait: (ms: number) => Promise<unknown>;
27
32
  export declare const resolveFile: (uri: string) => Buffer<ArrayBufferLike>;
28
33
  export declare const resolveFont: (uri: string) => number[];
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import type { SkottieProps } from "../../dom/types";
3
+ import type { SkiaProps } from "../processors";
4
+ export declare const Skottie: (props: SkiaProps<SkottieProps>) => React.JSX.Element;
@@ -13,4 +13,5 @@ export * from "./Group";
13
13
  export * from "./Mask";
14
14
  export * from "./Paint";
15
15
  export * from "./Blend";
16
+ export * from "./Skottie";
16
17
  export * from "./paragraph";