@shopify/react-native-skia 0.1.213 → 0.1.215

Sign up to get free protection for your applications and to get access to all the features.
Files changed (327) hide show
  1. package/android/cpp/rnskia-android/SkiaOpenGLHelper.h +3 -2
  2. package/android/cpp/rnskia-android/SkiaOpenGLSurfaceFactory.cpp +9 -2
  3. package/cpp/api/JsiSkMatrix.h +31 -0
  4. package/cpp/api/JsiSkPath.h +15 -7
  5. package/cpp/api/JsiSkSurface.h +4 -1
  6. package/cpp/skia/include/android/GrAHardwareBufferUtils.h +99 -0
  7. package/cpp/skia/include/android/SkHeifDecoder.h +10 -3
  8. package/cpp/skia/include/codec/SkAvifDecoder.h +1 -0
  9. package/cpp/skia/include/codec/SkBmpDecoder.h +1 -0
  10. package/cpp/skia/include/codec/SkCodec.h +4 -3
  11. package/cpp/skia/include/codec/SkEncodedImageFormat.h +0 -3
  12. package/cpp/skia/include/codec/SkGifDecoder.h +1 -0
  13. package/cpp/skia/include/codec/SkIcoDecoder.h +1 -0
  14. package/cpp/skia/include/codec/SkJpegDecoder.h +1 -0
  15. package/cpp/skia/include/codec/SkJpegxlDecoder.h +1 -0
  16. package/cpp/skia/include/codec/SkPngDecoder.h +1 -0
  17. package/cpp/skia/include/codec/SkRawDecoder.h +1 -0
  18. package/cpp/skia/include/codec/SkWbmpDecoder.h +1 -0
  19. package/cpp/skia/include/codec/SkWebpDecoder.h +1 -0
  20. package/cpp/skia/include/config/SkUserConfig.h +0 -2
  21. package/cpp/skia/include/core/SkBitmap.h +8 -8
  22. package/cpp/skia/include/core/SkCanvas.h +37 -50
  23. package/cpp/skia/include/core/SkCapabilities.h +2 -7
  24. package/cpp/skia/include/core/SkColor.h +1 -1
  25. package/cpp/skia/include/core/SkColorFilter.h +6 -0
  26. package/cpp/skia/include/core/SkColorTable.h +3 -0
  27. package/cpp/skia/include/core/SkColorType.h +2 -0
  28. package/cpp/skia/include/core/SkContourMeasure.h +12 -8
  29. package/cpp/skia/include/core/SkDocument.h +1 -0
  30. package/cpp/skia/include/core/SkFont.h +11 -2
  31. package/cpp/skia/include/core/SkFontMgr.h +2 -3
  32. package/cpp/skia/include/core/SkGraphics.h +3 -13
  33. package/cpp/skia/include/core/SkImage.h +57 -111
  34. package/cpp/skia/include/core/SkImageFilter.h +6 -1
  35. package/cpp/skia/include/core/SkImageGenerator.h +8 -0
  36. package/cpp/skia/include/core/SkImageInfo.h +0 -2
  37. package/cpp/skia/include/core/SkM44.h +7 -3
  38. package/cpp/skia/include/core/SkMallocPixelRef.h +4 -1
  39. package/cpp/skia/include/core/SkMatrix.h +17 -17
  40. package/cpp/skia/include/core/SkMesh.h +71 -61
  41. package/cpp/skia/include/core/SkMilestone.h +1 -1
  42. package/cpp/skia/include/core/SkOverdrawCanvas.h +25 -0
  43. package/cpp/skia/include/core/SkPaint.h +1 -1
  44. package/cpp/skia/include/core/SkPath.h +12 -4
  45. package/cpp/skia/include/core/SkPathMeasure.h +3 -4
  46. package/cpp/skia/include/core/SkPicture.h +19 -6
  47. package/cpp/skia/include/core/SkPictureRecorder.h +6 -6
  48. package/cpp/skia/include/core/SkPixmap.h +2 -3
  49. package/cpp/skia/include/core/SkRRect.h +1 -1
  50. package/cpp/skia/include/core/SkRect.h +107 -110
  51. package/cpp/skia/include/core/SkRefCnt.h +1 -1
  52. package/cpp/skia/include/core/SkRegion.h +7 -1
  53. package/cpp/skia/include/core/SkSerialProcs.h +14 -0
  54. package/cpp/skia/include/core/SkShader.h +9 -0
  55. package/cpp/skia/include/core/SkStream.h +9 -9
  56. package/cpp/skia/include/core/SkString.h +1 -1
  57. package/cpp/skia/include/core/SkSurface.h +14 -25
  58. package/cpp/skia/include/core/SkTextBlob.h +17 -4
  59. package/cpp/skia/include/core/SkTiledImageUtils.h +28 -0
  60. package/cpp/skia/include/core/SkTypeface.h +7 -2
  61. package/cpp/skia/include/core/SkTypes.h +4 -12
  62. package/cpp/skia/include/docs/SkPDFDocument.h +17 -3
  63. package/cpp/skia/include/effects/SkImageFilters.h +73 -24
  64. package/cpp/skia/include/effects/SkRuntimeEffect.h +20 -51
  65. package/cpp/skia/include/gpu/GpuTypes.h +13 -0
  66. package/cpp/skia/include/gpu/GrBackendSurface.h +95 -262
  67. package/cpp/skia/include/gpu/GrContextOptions.h +7 -1
  68. package/cpp/skia/include/gpu/GrDirectContext.h +138 -128
  69. package/cpp/skia/include/gpu/GrRecordingContext.h +9 -4
  70. package/cpp/skia/include/gpu/GrSurfaceInfo.h +0 -24
  71. package/cpp/skia/include/gpu/GrTypes.h +16 -1
  72. package/cpp/skia/include/gpu/GrYUVABackendTextures.h +4 -4
  73. package/cpp/skia/include/gpu/d3d/GrD3DTypes.h +2 -2
  74. package/cpp/skia/include/gpu/ganesh/SkImageGanesh.h +44 -12
  75. package/cpp/skia/include/gpu/ganesh/SkMeshGanesh.h +57 -0
  76. package/cpp/skia/include/gpu/ganesh/SkSurfaceGanesh.h +2 -1
  77. package/cpp/skia/include/gpu/ganesh/gl/GrGLBackendSurface.h +58 -0
  78. package/cpp/skia/include/gpu/ganesh/gl/GrGLDirectContext.h +29 -0
  79. package/cpp/skia/include/gpu/ganesh/mtl/SkSurfaceMetal.h +1 -1
  80. package/cpp/skia/include/gpu/ganesh/vk/GrVkBackendSurface.h +67 -0
  81. package/cpp/skia/include/gpu/gl/GrGLInterface.h +2 -2
  82. package/cpp/skia/include/gpu/graphite/BackendTexture.h +14 -3
  83. package/cpp/skia/include/gpu/graphite/Context.h +93 -13
  84. package/cpp/skia/include/gpu/graphite/ContextOptions.h +19 -8
  85. package/cpp/skia/include/gpu/graphite/GraphiteTypes.h +23 -0
  86. package/cpp/skia/include/gpu/graphite/Image.h +56 -0
  87. package/cpp/skia/include/gpu/graphite/ImageProvider.h +5 -0
  88. package/cpp/skia/include/gpu/graphite/Recorder.h +26 -9
  89. package/cpp/skia/include/gpu/graphite/Recording.h +7 -5
  90. package/cpp/skia/include/gpu/graphite/TextureInfo.h +8 -0
  91. package/cpp/skia/include/gpu/graphite/mtl/MtlGraphiteTypes.h +2 -2
  92. package/cpp/skia/include/gpu/mtl/GrMtlTypes.h +2 -2
  93. package/cpp/skia/include/gpu/vk/GrVkTypes.h +4 -3
  94. package/cpp/skia/include/ports/SkCFObject.h +1 -1
  95. package/cpp/skia/include/private/SkGainmapInfo.h +4 -13
  96. package/cpp/skia/include/private/SkJpegGainmapEncoder.h +1 -24
  97. package/cpp/skia/include/private/SkWeakRefCnt.h +1 -1
  98. package/cpp/skia/include/private/base/SkAnySubclass.h +73 -0
  99. package/cpp/skia/include/private/base/SkAssert.h +106 -12
  100. package/cpp/skia/include/private/base/SkAttributes.h +0 -12
  101. package/cpp/skia/include/private/base/SkFeatures.h +0 -3
  102. package/cpp/skia/include/private/base/SkFloatingPoint.h +58 -105
  103. package/cpp/skia/include/private/base/SkSpan_impl.h +18 -12
  104. package/cpp/skia/include/private/base/SkTArray.h +22 -17
  105. package/cpp/skia/include/private/base/SkTDArray.h +5 -6
  106. package/cpp/skia/include/private/base/SkTemplates.h +50 -30
  107. package/cpp/skia/include/private/chromium/GrDeferredDisplayListRecorder.h +5 -2
  108. package/cpp/skia/include/private/chromium/GrSurfaceCharacterization.h +2 -2
  109. package/cpp/skia/include/private/chromium/SkChromeRemoteGlyphCache.h +13 -8
  110. package/cpp/skia/include/private/chromium/SkDiscardableMemory.h +1 -1
  111. package/cpp/skia/include/private/chromium/SkImageChromium.h +16 -3
  112. package/cpp/skia/include/private/chromium/Slug.h +11 -4
  113. package/cpp/skia/include/private/gpu/ganesh/GrD3DTypesMinimal.h +1 -1
  114. package/cpp/skia/include/private/gpu/ganesh/GrGLTypesPriv.h +6 -9
  115. package/cpp/skia/include/private/gpu/ganesh/GrTypesPriv.h +29 -13
  116. package/cpp/skia/include/private/gpu/ganesh/GrVkTypesPriv.h +2 -28
  117. package/cpp/skia/include/private/gpu/graphite/ContextOptionsPriv.h +34 -0
  118. package/cpp/skia/include/private/gpu/graphite/DawnTypesPriv.h +6 -0
  119. package/cpp/skia/include/private/gpu/graphite/MtlGraphiteTypesPriv.h +8 -0
  120. package/cpp/skia/include/private/gpu/graphite/VulkanGraphiteTypesPriv.h +10 -0
  121. package/cpp/skia/include/utils/SkBase64.h +2 -2
  122. package/cpp/skia/include/utils/SkNWayCanvas.h +1 -11
  123. package/cpp/skia/include/utils/SkNoDrawCanvas.h +0 -2
  124. package/cpp/skia/include/utils/SkPaintFilterCanvas.h +1 -2
  125. package/cpp/skia/include/utils/SkShadowUtils.h +15 -1
  126. package/cpp/skia/include/utils/SkTextUtils.h +1 -1
  127. package/cpp/skia/modules/skparagraph/include/Paragraph.h +107 -1
  128. package/cpp/skia/modules/skparagraph/include/ParagraphBuilder.h +3 -2
  129. package/cpp/skia/modules/skparagraph/include/ParagraphStyle.h +4 -0
  130. package/cpp/skia/modules/skparagraph/include/TypefaceFontProvider.h +5 -3
  131. package/cpp/skia/modules/svg/include/SkSVGAttributeParser.h +4 -0
  132. package/cpp/skia/src/core/SkChecksum.h +2 -1
  133. package/cpp/skia/src/core/SkPathPriv.h +1 -1
  134. package/cpp/skia/src/core/SkTHash.h +19 -9
  135. package/ios/RNSkia-iOS/RNSkMetalCanvasProvider.mm +3 -1
  136. package/ios/RNSkia-iOS/SkiaMetalSurfaceFactory.mm +1 -1
  137. package/lib/commonjs/animation/functions/interpolatePaths.d.ts +1 -1
  138. package/lib/commonjs/animation/functions/interpolatePaths.js +4 -4
  139. package/lib/commonjs/animation/functions/interpolatePaths.js.map +1 -1
  140. package/lib/commonjs/dom/nodes/datatypes/Rect.js +5 -1
  141. package/lib/commonjs/dom/nodes/datatypes/Rect.js.map +1 -1
  142. package/lib/commonjs/external/reanimated/index.d.ts +3 -1
  143. package/lib/commonjs/external/reanimated/index.js +30 -4
  144. package/lib/commonjs/external/reanimated/index.js.map +1 -1
  145. package/lib/commonjs/external/reanimated/interpolators.d.ts +9 -0
  146. package/lib/commonjs/external/reanimated/interpolators.js +56 -0
  147. package/lib/commonjs/external/reanimated/interpolators.js.map +1 -0
  148. package/lib/commonjs/external/reanimated/moduleWrapper.d.ts +8 -6
  149. package/lib/commonjs/external/reanimated/moduleWrapper.js +8 -18
  150. package/lib/commonjs/external/reanimated/moduleWrapper.js.map +1 -1
  151. package/lib/commonjs/external/reanimated/renderHelpers.js +46 -1
  152. package/lib/commonjs/external/reanimated/renderHelpers.js.map +1 -1
  153. package/lib/commonjs/external/reanimated/useAnimatedImageValue.d.ts +2 -0
  154. package/lib/commonjs/external/reanimated/useAnimatedImageValue.js +53 -0
  155. package/lib/commonjs/external/reanimated/useAnimatedImageValue.js.map +1 -0
  156. package/lib/commonjs/external/reanimated/useDerivedValueOnJS.d.ts +1 -0
  157. package/lib/commonjs/external/reanimated/useDerivedValueOnJS.js +27 -0
  158. package/lib/commonjs/external/reanimated/useDerivedValueOnJS.js.map +1 -0
  159. package/lib/commonjs/mock/index.js +8 -0
  160. package/lib/commonjs/mock/index.js.map +1 -1
  161. package/lib/commonjs/renderer/HostConfig.js +5 -5
  162. package/lib/commonjs/renderer/HostConfig.js.map +1 -1
  163. package/lib/commonjs/skia/core/AnimatedImage.d.ts +0 -1
  164. package/lib/commonjs/skia/core/AnimatedImage.js +1 -45
  165. package/lib/commonjs/skia/core/AnimatedImage.js.map +1 -1
  166. package/lib/commonjs/skia/types/MaskFilter.js +4 -0
  167. package/lib/commonjs/skia/types/MaskFilter.js.map +1 -1
  168. package/lib/commonjs/skia/types/Matrix.d.ts +4 -0
  169. package/lib/commonjs/skia/types/Matrix.js.map +1 -1
  170. package/lib/commonjs/skia/types/Path/Path.d.ts +10 -9
  171. package/lib/commonjs/skia/types/Path/Path.js.map +1 -1
  172. package/lib/commonjs/skia/web/JsiSkMatrix.d.ts +6 -0
  173. package/lib/commonjs/skia/web/JsiSkMatrix.js +33 -5
  174. package/lib/commonjs/skia/web/JsiSkMatrix.js.map +1 -1
  175. package/lib/commonjs/skia/web/JsiSkPath.d.ts +9 -9
  176. package/lib/commonjs/skia/web/JsiSkPath.js +15 -2
  177. package/lib/commonjs/skia/web/JsiSkPath.js.map +1 -1
  178. package/lib/commonjs/skia/web/JsiSkPicture.js +2 -1
  179. package/lib/commonjs/skia/web/JsiSkPicture.js.map +1 -1
  180. package/lib/commonjs/views/SkiaBaseWebView.js +1 -1
  181. package/lib/commonjs/views/SkiaBaseWebView.js.map +1 -1
  182. package/lib/commonjs/views/types.js +3 -0
  183. package/lib/commonjs/views/types.js.map +1 -1
  184. package/lib/module/animation/functions/interpolatePaths.d.ts +1 -1
  185. package/lib/module/animation/functions/interpolatePaths.js +4 -4
  186. package/lib/module/animation/functions/interpolatePaths.js.map +1 -1
  187. package/lib/module/dom/nodes/datatypes/Rect.js +5 -1
  188. package/lib/module/dom/nodes/datatypes/Rect.js.map +1 -1
  189. package/lib/module/external/reanimated/index.d.ts +3 -1
  190. package/lib/module/external/reanimated/index.js +3 -1
  191. package/lib/module/external/reanimated/index.js.map +1 -1
  192. package/lib/module/external/reanimated/interpolators.d.ts +9 -0
  193. package/lib/module/external/reanimated/interpolators.js +34 -0
  194. package/lib/module/external/reanimated/interpolators.js.map +1 -0
  195. package/lib/module/external/reanimated/moduleWrapper.d.ts +8 -6
  196. package/lib/module/external/reanimated/moduleWrapper.js +5 -16
  197. package/lib/module/external/reanimated/moduleWrapper.js.map +1 -1
  198. package/lib/module/external/reanimated/renderHelpers.js +48 -2
  199. package/lib/module/external/reanimated/renderHelpers.js.map +1 -1
  200. package/lib/module/external/reanimated/useAnimatedImageValue.d.ts +2 -0
  201. package/lib/module/external/reanimated/useAnimatedImageValue.js +41 -0
  202. package/lib/module/external/reanimated/useAnimatedImageValue.js.map +1 -0
  203. package/lib/module/external/reanimated/useDerivedValueOnJS.d.ts +1 -0
  204. package/lib/module/external/reanimated/useDerivedValueOnJS.js +16 -0
  205. package/lib/module/external/reanimated/useDerivedValueOnJS.js.map +1 -0
  206. package/lib/module/mock/index.js +8 -0
  207. package/lib/module/mock/index.js.map +1 -1
  208. package/lib/module/renderer/HostConfig.js +1 -1
  209. package/lib/module/renderer/HostConfig.js.map +1 -1
  210. package/lib/module/skia/core/AnimatedImage.d.ts +0 -1
  211. package/lib/module/skia/core/AnimatedImage.js +0 -40
  212. package/lib/module/skia/core/AnimatedImage.js.map +1 -1
  213. package/lib/module/skia/types/MaskFilter.js +3 -0
  214. package/lib/module/skia/types/MaskFilter.js.map +1 -1
  215. package/lib/module/skia/types/Matrix.d.ts +4 -0
  216. package/lib/module/skia/types/Matrix.js.map +1 -1
  217. package/lib/module/skia/types/Path/Path.d.ts +10 -9
  218. package/lib/module/skia/types/Path/Path.js.map +1 -1
  219. package/lib/module/skia/web/JsiSkMatrix.d.ts +6 -0
  220. package/lib/module/skia/web/JsiSkMatrix.js +33 -5
  221. package/lib/module/skia/web/JsiSkMatrix.js.map +1 -1
  222. package/lib/module/skia/web/JsiSkPath.d.ts +9 -9
  223. package/lib/module/skia/web/JsiSkPath.js +15 -2
  224. package/lib/module/skia/web/JsiSkPath.js.map +1 -1
  225. package/lib/module/views/types.js +3 -0
  226. package/lib/module/views/types.js.map +1 -1
  227. package/lib/typescript/jestEnv.d.mts +5 -0
  228. package/lib/typescript/jestSetup.d.mts +1 -0
  229. package/lib/typescript/src/animation/functions/interpolatePaths.d.ts +1 -1
  230. package/lib/typescript/src/external/reanimated/index.d.ts +3 -1
  231. package/lib/typescript/src/external/reanimated/interpolators.d.ts +9 -0
  232. package/lib/typescript/src/external/reanimated/moduleWrapper.d.ts +8 -6
  233. package/lib/typescript/src/external/reanimated/useAnimatedImageValue.d.ts +2 -0
  234. package/lib/typescript/src/external/reanimated/useDerivedValueOnJS.d.ts +1 -0
  235. package/lib/typescript/src/skia/core/AnimatedImage.d.ts +0 -1
  236. package/lib/typescript/src/skia/types/Matrix.d.ts +4 -0
  237. package/lib/typescript/src/skia/types/Path/Path.d.ts +10 -9
  238. package/lib/typescript/src/skia/web/JsiSkMatrix.d.ts +6 -0
  239. package/lib/typescript/src/skia/web/JsiSkPath.d.ts +9 -9
  240. package/libs/android/arm64-v8a/libskia.a +0 -0
  241. package/libs/android/arm64-v8a/libskottie.a +0 -0
  242. package/libs/android/arm64-v8a/libskparagraph.a +0 -0
  243. package/libs/android/arm64-v8a/libsksg.a +0 -0
  244. package/libs/android/arm64-v8a/libskshaper.a +0 -0
  245. package/libs/android/arm64-v8a/libskunicode.a +0 -0
  246. package/libs/android/arm64-v8a/libsvg.a +0 -0
  247. package/libs/android/armeabi-v7a/libskia.a +0 -0
  248. package/libs/android/armeabi-v7a/libskottie.a +0 -0
  249. package/libs/android/armeabi-v7a/libskparagraph.a +0 -0
  250. package/libs/android/armeabi-v7a/libsksg.a +0 -0
  251. package/libs/android/armeabi-v7a/libskshaper.a +0 -0
  252. package/libs/android/armeabi-v7a/libskunicode.a +0 -0
  253. package/libs/android/armeabi-v7a/libsvg.a +0 -0
  254. package/libs/android/x86/libskia.a +0 -0
  255. package/libs/android/x86/libskottie.a +0 -0
  256. package/libs/android/x86/libskparagraph.a +0 -0
  257. package/libs/android/x86/libsksg.a +0 -0
  258. package/libs/android/x86/libskshaper.a +0 -0
  259. package/libs/android/x86/libskunicode.a +0 -0
  260. package/libs/android/x86/libsvg.a +0 -0
  261. package/libs/android/x86_64/libskia.a +0 -0
  262. package/libs/android/x86_64/libskottie.a +0 -0
  263. package/libs/android/x86_64/libskparagraph.a +0 -0
  264. package/libs/android/x86_64/libsksg.a +0 -0
  265. package/libs/android/x86_64/libskshaper.a +0 -0
  266. package/libs/android/x86_64/libskunicode.a +0 -0
  267. package/libs/android/x86_64/libsvg.a +0 -0
  268. package/libs/ios/libskia.xcframework/Info.plist +5 -5
  269. package/libs/ios/libskia.xcframework/ios-arm64_arm64e/libskia.a +0 -0
  270. package/libs/ios/libskia.xcframework/ios-arm64_arm64e_x86_64-simulator/libskia.a +0 -0
  271. package/libs/ios/libskottie.xcframework/ios-arm64_arm64e/libskottie.a +0 -0
  272. package/libs/ios/libskottie.xcframework/ios-arm64_arm64e_x86_64-simulator/libskottie.a +0 -0
  273. package/libs/ios/libskparagraph.xcframework/Info.plist +5 -5
  274. package/libs/ios/libskparagraph.xcframework/ios-arm64_arm64e/libskparagraph.a +0 -0
  275. package/libs/ios/libskparagraph.xcframework/ios-arm64_arm64e_x86_64-simulator/libskparagraph.a +0 -0
  276. package/libs/ios/libsksg.xcframework/Info.plist +5 -5
  277. package/libs/ios/libsksg.xcframework/ios-arm64_arm64e/libsksg.a +0 -0
  278. package/libs/ios/libsksg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsksg.a +0 -0
  279. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e/libskshaper.a +0 -0
  280. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e_x86_64-simulator/libskshaper.a +0 -0
  281. package/libs/ios/libskunicode.xcframework/Info.plist +5 -5
  282. package/libs/ios/libskunicode.xcframework/ios-arm64_arm64e/libskunicode.a +0 -0
  283. package/libs/ios/libskunicode.xcframework/ios-arm64_arm64e_x86_64-simulator/libskunicode.a +0 -0
  284. package/libs/ios/libsvg.xcframework/Info.plist +5 -5
  285. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e/libsvg.a +0 -0
  286. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsvg.a +0 -0
  287. package/package.json +4 -3
  288. package/react-native-skia.podspec +1 -1
  289. package/src/animation/functions/interpolatePaths.ts +7 -4
  290. package/src/dom/nodes/datatypes/Rect.ts +6 -2
  291. package/src/external/reanimated/index.ts +3 -1
  292. package/src/external/reanimated/interpolators.ts +89 -0
  293. package/src/external/reanimated/moduleWrapper.ts +38 -25
  294. package/src/external/reanimated/renderHelpers.ts +42 -2
  295. package/src/external/reanimated/useAnimatedImageValue.ts +51 -0
  296. package/src/external/reanimated/useDerivedValueOnJS.ts +25 -0
  297. package/src/mock/index.ts +5 -0
  298. package/src/renderer/HostConfig.ts +1 -1
  299. package/src/skia/core/AnimatedImage.ts +0 -47
  300. package/src/skia/types/Matrix.ts +4 -0
  301. package/src/skia/types/Path/Path.ts +10 -9
  302. package/src/skia/web/JsiSkMatrix.ts +33 -27
  303. package/src/skia/web/JsiSkPath.ts +15 -2
  304. package/cpp/skia/include/core/SkDeferredDisplayList.h +0 -15
  305. package/cpp/skia/include/core/SkDeferredDisplayListRecorder.h +0 -15
  306. package/cpp/skia/include/core/SkPromiseImageTexture.h +0 -20
  307. package/cpp/skia/include/core/SkSurfaceCharacterization.h +0 -15
  308. package/cpp/skia/include/core/SkTime.h +0 -63
  309. package/cpp/skia/include/effects/SkOpPathEffect.h +0 -43
  310. package/cpp/skia/include/effects/SkStrokeAndFillPathEffect.h +0 -28
  311. package/cpp/skia/include/gpu/GrBackendSurfaceMutableState.h +0 -32
  312. package/cpp/skia/include/gpu/dawn/GrDawnTypes.h +0 -95
  313. package/cpp/skia/include/private/SkBitmaskEnum.h +0 -59
  314. package/cpp/skia/include/private/SkSLDefines.h +0 -64
  315. package/cpp/skia/include/private/SkShadowFlags.h +0 -27
  316. package/cpp/skia/include/private/gpu/ganesh/GrDawnTypesPriv.h +0 -26
  317. package/globalJestSetup.js +0 -6
  318. package/lib/commonjs/external/reanimated/useSharedValueEffect.d.ts +0 -8
  319. package/lib/commonjs/external/reanimated/useSharedValueEffect.js +0 -52
  320. package/lib/commonjs/external/reanimated/useSharedValueEffect.js.map +0 -1
  321. package/lib/module/external/reanimated/useSharedValueEffect.d.ts +0 -8
  322. package/lib/module/external/reanimated/useSharedValueEffect.js +0 -42
  323. package/lib/module/external/reanimated/useSharedValueEffect.js.map +0 -1
  324. package/lib/typescript/globalJestSetup.d.ts +0 -2
  325. package/lib/typescript/src/external/reanimated/useSharedValueEffect.d.ts +0 -8
  326. package/src/external/reanimated/useSharedValueEffect.ts +0 -58
  327. /package/cpp/skia/{include/private/base → src/core}/SkPathEnums.h +0 -0
@@ -21,12 +21,12 @@ export declare class JsiSkPath extends HostObject<Path, "Path"> implements SkPat
21
21
  rMoveTo(x: number, y: number): this;
22
22
  rLineTo(x: number, y: number): this;
23
23
  rQuadTo(x1: number, y1: number, x2: number, y2: number): this;
24
- setFillType(fill: FillType): void;
25
- setIsVolatile(volatile: boolean): void;
24
+ setFillType(fill: FillType): this;
25
+ setIsVolatile(volatile: boolean): this;
26
26
  stroke(opts?: StrokeOpts): this | null;
27
- close(): void;
28
- reset(): void;
29
- rewind(): void;
27
+ close(): this;
28
+ reset(): this;
29
+ rewind(): this;
30
30
  computeTightBounds(): SkRect;
31
31
  arcToOval(oval: SkRect, startAngleInDegrees: number, sweepAngleInDegrees: number, forceMoveTo: boolean): this;
32
32
  arcToRotated(rx: number, ry: number, xAxisRotateInDegrees: number, useSmallArc: boolean, isCCW: boolean, x: number, y: number): this;
@@ -39,8 +39,8 @@ export declare class JsiSkPath extends HostObject<Path, "Path"> implements SkPat
39
39
  equals(other: SkPath): boolean;
40
40
  getBounds(): JsiSkRect;
41
41
  getFillType(): number;
42
- quadTo(x1: number, y1: number, x2: number, y2: number): void;
43
- addRect(rect: SkRect, isCCW?: boolean): void;
42
+ quadTo(x1: number, y1: number, x2: number, y2: number): this;
43
+ addRect(rect: SkRect, isCCW?: boolean): this;
44
44
  addRRect(rrect: SkRRect, isCCW?: boolean): this;
45
45
  getPoint(index: number): JsiSkPoint;
46
46
  isEmpty(): boolean;
@@ -51,8 +51,8 @@ export declare class JsiSkPath extends HostObject<Path, "Path"> implements SkPat
51
51
  simplify(): boolean;
52
52
  toSVGString(): string;
53
53
  trim(start: number, stop: number, isComplement: boolean): this | null;
54
- transform(m3: SkMatrix): void;
55
- interpolate(end: SkPath, t: number): JsiSkPath | null;
54
+ transform(m3: SkMatrix): this;
55
+ interpolate(end: SkPath, t: number, output?: SkPath): SkPath | JsiSkPath | null;
56
56
  isInterpolatable(path2: SkPath): boolean;
57
57
  toCmds(): PathCommand[];
58
58
  }
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -6,32 +6,32 @@
6
6
  <array>
7
7
  <dict>
8
8
  <key>LibraryIdentifier</key>
9
- <string>ios-arm64_arm64e</string>
9
+ <string>ios-arm64_arm64e_x86_64-simulator</string>
10
10
  <key>LibraryPath</key>
11
11
  <string>libskia.a</string>
12
12
  <key>SupportedArchitectures</key>
13
13
  <array>
14
14
  <string>arm64</string>
15
15
  <string>arm64e</string>
16
+ <string>x86_64</string>
16
17
  </array>
17
18
  <key>SupportedPlatform</key>
18
19
  <string>ios</string>
20
+ <key>SupportedPlatformVariant</key>
21
+ <string>simulator</string>
19
22
  </dict>
20
23
  <dict>
21
24
  <key>LibraryIdentifier</key>
22
- <string>ios-arm64_arm64e_x86_64-simulator</string>
25
+ <string>ios-arm64_arm64e</string>
23
26
  <key>LibraryPath</key>
24
27
  <string>libskia.a</string>
25
28
  <key>SupportedArchitectures</key>
26
29
  <array>
27
30
  <string>arm64</string>
28
31
  <string>arm64e</string>
29
- <string>x86_64</string>
30
32
  </array>
31
33
  <key>SupportedPlatform</key>
32
34
  <string>ios</string>
33
- <key>SupportedPlatformVariant</key>
34
- <string>simulator</string>
35
35
  </dict>
36
36
  </array>
37
37
  <key>CFBundlePackageType</key>
@@ -6,32 +6,32 @@
6
6
  <array>
7
7
  <dict>
8
8
  <key>LibraryIdentifier</key>
9
- <string>ios-arm64_arm64e_x86_64-simulator</string>
9
+ <string>ios-arm64_arm64e</string>
10
10
  <key>LibraryPath</key>
11
11
  <string>libskparagraph.a</string>
12
12
  <key>SupportedArchitectures</key>
13
13
  <array>
14
14
  <string>arm64</string>
15
15
  <string>arm64e</string>
16
- <string>x86_64</string>
17
16
  </array>
18
17
  <key>SupportedPlatform</key>
19
18
  <string>ios</string>
20
- <key>SupportedPlatformVariant</key>
21
- <string>simulator</string>
22
19
  </dict>
23
20
  <dict>
24
21
  <key>LibraryIdentifier</key>
25
- <string>ios-arm64_arm64e</string>
22
+ <string>ios-arm64_arm64e_x86_64-simulator</string>
26
23
  <key>LibraryPath</key>
27
24
  <string>libskparagraph.a</string>
28
25
  <key>SupportedArchitectures</key>
29
26
  <array>
30
27
  <string>arm64</string>
31
28
  <string>arm64e</string>
29
+ <string>x86_64</string>
32
30
  </array>
33
31
  <key>SupportedPlatform</key>
34
32
  <string>ios</string>
33
+ <key>SupportedPlatformVariant</key>
34
+ <string>simulator</string>
35
35
  </dict>
36
36
  </array>
37
37
  <key>CFBundlePackageType</key>
@@ -6,32 +6,32 @@
6
6
  <array>
7
7
  <dict>
8
8
  <key>LibraryIdentifier</key>
9
- <string>ios-arm64_arm64e</string>
9
+ <string>ios-arm64_arm64e_x86_64-simulator</string>
10
10
  <key>LibraryPath</key>
11
11
  <string>libsksg.a</string>
12
12
  <key>SupportedArchitectures</key>
13
13
  <array>
14
14
  <string>arm64</string>
15
15
  <string>arm64e</string>
16
+ <string>x86_64</string>
16
17
  </array>
17
18
  <key>SupportedPlatform</key>
18
19
  <string>ios</string>
20
+ <key>SupportedPlatformVariant</key>
21
+ <string>simulator</string>
19
22
  </dict>
20
23
  <dict>
21
24
  <key>LibraryIdentifier</key>
22
- <string>ios-arm64_arm64e_x86_64-simulator</string>
25
+ <string>ios-arm64_arm64e</string>
23
26
  <key>LibraryPath</key>
24
27
  <string>libsksg.a</string>
25
28
  <key>SupportedArchitectures</key>
26
29
  <array>
27
30
  <string>arm64</string>
28
31
  <string>arm64e</string>
29
- <string>x86_64</string>
30
32
  </array>
31
33
  <key>SupportedPlatform</key>
32
34
  <string>ios</string>
33
- <key>SupportedPlatformVariant</key>
34
- <string>simulator</string>
35
35
  </dict>
36
36
  </array>
37
37
  <key>CFBundlePackageType</key>
@@ -6,32 +6,32 @@
6
6
  <array>
7
7
  <dict>
8
8
  <key>LibraryIdentifier</key>
9
- <string>ios-arm64_arm64e</string>
9
+ <string>ios-arm64_arm64e_x86_64-simulator</string>
10
10
  <key>LibraryPath</key>
11
11
  <string>libskunicode.a</string>
12
12
  <key>SupportedArchitectures</key>
13
13
  <array>
14
14
  <string>arm64</string>
15
15
  <string>arm64e</string>
16
+ <string>x86_64</string>
16
17
  </array>
17
18
  <key>SupportedPlatform</key>
18
19
  <string>ios</string>
20
+ <key>SupportedPlatformVariant</key>
21
+ <string>simulator</string>
19
22
  </dict>
20
23
  <dict>
21
24
  <key>LibraryIdentifier</key>
22
- <string>ios-arm64_arm64e_x86_64-simulator</string>
25
+ <string>ios-arm64_arm64e</string>
23
26
  <key>LibraryPath</key>
24
27
  <string>libskunicode.a</string>
25
28
  <key>SupportedArchitectures</key>
26
29
  <array>
27
30
  <string>arm64</string>
28
31
  <string>arm64e</string>
29
- <string>x86_64</string>
30
32
  </array>
31
33
  <key>SupportedPlatform</key>
32
34
  <string>ios</string>
33
- <key>SupportedPlatformVariant</key>
34
- <string>simulator</string>
35
35
  </dict>
36
36
  </array>
37
37
  <key>CFBundlePackageType</key>
@@ -6,32 +6,32 @@
6
6
  <array>
7
7
  <dict>
8
8
  <key>LibraryIdentifier</key>
9
- <string>ios-arm64_arm64e_x86_64-simulator</string>
9
+ <string>ios-arm64_arm64e</string>
10
10
  <key>LibraryPath</key>
11
11
  <string>libsvg.a</string>
12
12
  <key>SupportedArchitectures</key>
13
13
  <array>
14
14
  <string>arm64</string>
15
15
  <string>arm64e</string>
16
- <string>x86_64</string>
17
16
  </array>
18
17
  <key>SupportedPlatform</key>
19
18
  <string>ios</string>
20
- <key>SupportedPlatformVariant</key>
21
- <string>simulator</string>
22
19
  </dict>
23
20
  <dict>
24
21
  <key>LibraryIdentifier</key>
25
- <string>ios-arm64_arm64e</string>
22
+ <string>ios-arm64_arm64e_x86_64-simulator</string>
26
23
  <key>LibraryPath</key>
27
24
  <string>libsvg.a</string>
28
25
  <key>SupportedArchitectures</key>
29
26
  <array>
30
27
  <string>arm64</string>
31
28
  <string>arm64e</string>
29
+ <string>x86_64</string>
32
30
  </array>
33
31
  <key>SupportedPlatform</key>
34
32
  <string>ios</string>
33
+ <key>SupportedPlatformVariant</key>
34
+ <string>simulator</string>
35
35
  </dict>
36
36
  </array>
37
37
  <key>CFBundlePackageType</key>
package/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "setup-skia-web": "./scripts/setup-canvaskit.js"
8
8
  },
9
9
  "title": "React Native Skia",
10
- "version": "0.1.213",
10
+ "version": "0.1.215",
11
11
  "description": "High-performance React Native Graphics using Skia",
12
12
  "main": "lib/module/index.js",
13
13
  "files": [
@@ -83,7 +83,7 @@
83
83
  },
84
84
  "devDependencies": {
85
85
  "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6",
86
- "@types/jest": "^28.1.6",
86
+ "@types/jest": "29.5.6",
87
87
  "@types/pixelmatch": "^5.2.4",
88
88
  "@types/pngjs": "^6.0.1",
89
89
  "@types/react-native": "0.70.6",
@@ -92,13 +92,14 @@
92
92
  "eslint": "8.21.0",
93
93
  "eslint-config-react-native-wcandillon": "3.9.0",
94
94
  "eslint-plugin-reanimated": "2.0.0",
95
- "jest": "28.1.3",
95
+ "jest": "29.6.4",
96
96
  "merge-dirs": "^0.2.1",
97
97
  "pixelmatch": "^5.3.0",
98
98
  "pngjs": "^6.0.0",
99
99
  "react": "18.1.0",
100
100
  "react-native": "0.71.7",
101
101
  "react-native-builder-bob": "^0.18.2",
102
+ "react-native-reanimated": "^3.5.4",
102
103
  "ts-jest": "^28.0.7",
103
104
  "typescript": "4.8.3",
104
105
  "ws": "^8.11.0"
@@ -17,7 +17,7 @@ Pod::Spec.new do |s|
17
17
  # optional - use expanded license entry instead:
18
18
  # s.license = { :type => "MIT", :file => "LICENSE" }
19
19
  s.authors = { "Your Name" => "yourname@email.com" }
20
- s.platforms = { :ios => "9.0" }
20
+ s.platforms = { :ios => "12.0" }
21
21
  s.source = { :git => "https://github.com/shopify/react-native-skia/react-native-skia.git", :tag => "#{s.version}" }
22
22
 
23
23
  s.requires_arc = true
@@ -9,11 +9,12 @@ const lerp = (
9
9
  from: number,
10
10
  to: number,
11
11
  p1: SkPath,
12
- p2: SkPath
12
+ p2: SkPath,
13
+ output?: SkPath
13
14
  ) => {
14
15
  "worklet";
15
16
  const t = (value - from) / (to - from);
16
- return p2.interpolate(p1, t)!;
17
+ return p2.interpolate(p1, t, output)!;
17
18
  };
18
19
 
19
20
  /**
@@ -36,7 +37,8 @@ export const interpolatePaths = (
36
37
  value: number,
37
38
  input: number[],
38
39
  outputRange: SkPath[],
39
- options?: ExtrapolationType
40
+ options?: ExtrapolationType,
41
+ output?: SkPath
40
42
  ) => {
41
43
  "worklet";
42
44
  const extrapolation = validateInterpolationOptions(options);
@@ -84,6 +86,7 @@ export const interpolatePaths = (
84
86
  input[i],
85
87
  input[i + 1],
86
88
  outputRange[i],
87
- outputRange[i + 1]
89
+ outputRange[i + 1],
90
+ output
88
91
  );
89
92
  };
@@ -4,8 +4,12 @@ import type { RectCtor, RectDef, RRectCtor, RRectDef } from "../../types";
4
4
 
5
5
  import { processRadius } from "./Radius";
6
6
 
7
- export const isEdge = (pos: Vector, b: SkRect) =>
8
- pos.x === b.x || pos.y === b.y || pos.x === b.width || pos.y === b.height;
7
+ export const isEdge = (pos: Vector, b: SkRect) => {
8
+ "worklet";
9
+ return (
10
+ pos.x === b.x || pos.y === b.y || pos.x === b.width || pos.y === b.height
11
+ );
12
+ };
9
13
 
10
14
  // We have an issue to check property existence on JSI backed instances
11
15
  const isRRectCtor = (def: RRectDef): def is RRectCtor =>
@@ -1,2 +1,4 @@
1
- export * from "./useSharedValueEffect";
1
+ export * from "./useAnimatedImageValue";
2
+ export * from "./useDerivedValueOnJS";
2
3
  export * from "./renderHelpers";
4
+ export * from "./interpolators";
@@ -0,0 +1,89 @@
1
+ import type { ExtrapolationType, SharedValue } from "react-native-reanimated";
2
+ import { useMemo } from "react";
3
+
4
+ import type { SkPath, SkPoint } from "../../skia/types";
5
+ import { interpolatePaths, interpolateVector } from "../../animation";
6
+ import { Skia } from "../../skia";
7
+
8
+ import {
9
+ useAnimatedReaction,
10
+ useFrameCallback,
11
+ useSharedValue,
12
+ } from "./moduleWrapper";
13
+
14
+ export const notifyChange = (value: SharedValue<unknown>) => {
15
+ "worklet";
16
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
17
+ (value as any)._value = value.value;
18
+ };
19
+
20
+ export const useClock = () => {
21
+ const clock = useSharedValue(0);
22
+ useFrameCallback((info) => {
23
+ clock.value = info.timeSinceFirstFrame;
24
+ });
25
+ return clock;
26
+ };
27
+
28
+ /**
29
+ * @worklet
30
+ */
31
+ type Interpolator<T> = (
32
+ value: number,
33
+ input: number[],
34
+ output: T[],
35
+ options: ExtrapolationType,
36
+ result: T
37
+ ) => T;
38
+
39
+ const useInterpolator = <T>(
40
+ factory: () => T,
41
+ value: SharedValue<number>,
42
+ interpolator: Interpolator<T>,
43
+ input: number[],
44
+ output: T[],
45
+ options?: ExtrapolationType
46
+ ) => {
47
+ // eslint-disable-next-line react-hooks/exhaustive-deps
48
+ const init = useMemo(() => factory(), []);
49
+ const result = useSharedValue(init);
50
+ useAnimatedReaction(
51
+ () => value.value,
52
+ (val) => {
53
+ result.value = interpolator(val, input, output, options, result.value);
54
+ notifyChange(result);
55
+ },
56
+ [input, output, options]
57
+ );
58
+ return result;
59
+ };
60
+
61
+ export const usePathInterpolation = (
62
+ value: SharedValue<number>,
63
+ input: number[],
64
+ outputRange: SkPath[],
65
+ options?: ExtrapolationType
66
+ ) =>
67
+ useInterpolator(
68
+ () => Skia.Path.Make(),
69
+ value,
70
+ interpolatePaths,
71
+ input,
72
+ outputRange,
73
+ options
74
+ );
75
+
76
+ export const useVectorInterpolation = (
77
+ value: SharedValue<number>,
78
+ input: number[],
79
+ outputRange: SkPoint[],
80
+ options?: ExtrapolationType
81
+ ) =>
82
+ useInterpolator(
83
+ () => Skia.Point(0, 0),
84
+ value,
85
+ interpolateVector,
86
+ input,
87
+ outputRange,
88
+ options
89
+ );
@@ -1,7 +1,10 @@
1
1
  /* eslint-disable @typescript-eslint/no-explicit-any */
2
- import { useMemo } from "react";
3
-
4
- import type { SharedValueType } from "../../renderer/processors/Animations";
2
+ import type { DependencyList } from "react";
3
+ import type {
4
+ FrameCallback,
5
+ FrameInfo,
6
+ SharedValue,
7
+ } from "react-native-reanimated";
5
8
 
6
9
  // This one is needed for the deprecated useSharedValue function
7
10
  // We can remove it once we remove the deprecation
@@ -13,9 +16,7 @@ let reanimatedVersion: string;
13
16
 
14
17
  try {
15
18
  Reanimated2 = require("react-native-reanimated");
16
- reanimatedVersion =
17
- // eslint-disable-next-line import/extensions
18
- require("react-native-reanimated/package.json").version;
19
+ reanimatedVersion = require("react-native-reanimated/package.json").version;
19
20
  if (
20
21
  reanimatedVersion &&
21
22
  (reanimatedVersion >= "3.0.0" || reanimatedVersion.includes("3.0.0-"))
@@ -36,26 +37,38 @@ export function throwOnMissingReanimated() {
36
37
  }
37
38
  }
38
39
 
39
- function throwOnMissingReanimated3() {
40
- if (!HAS_REANIMATED3) {
41
- throw new Error(
42
- `Reanimated version ${reanimatedVersion} is not supported, please upgrade to 3.0.0 or newer.`
43
- );
44
- }
45
- }
40
+ export const useSharedValue: <T>(
41
+ init: T,
42
+ oneWayReadsOnly?: boolean
43
+ ) => SharedValue<T> = Reanimated2?.useSharedValue || throwOnMissingReanimated;
46
44
 
47
- export const useSharedValue =
48
- Reanimated2?.useSharedValue ||
49
- ((value: number) => useMemo(() => ({ value }), [value]));
50
- export const useFrameCallback: (...args: any[]) => any =
51
- Reanimated2?.useFrameCallback || throwOnMissingReanimated;
45
+ export const useFrameCallback: (
46
+ callback: (frameInfo: FrameInfo) => void,
47
+ autostart?: boolean
48
+ ) => FrameCallback = Reanimated2?.useFrameCallback || throwOnMissingReanimated;
49
+
50
+ export const startMapper: (
51
+ worklet: () => void,
52
+ inputs?: unknown[],
53
+ outputs?: unknown[]
54
+ ) => number = Reanimated2?.startMapper || throwOnMissingReanimated;
55
+
56
+ export const stopMapper: (mapperID: number) => void =
57
+ Reanimated2?.stopMapper || throwOnMissingReanimated;
52
58
 
53
- export const startMapper = Reanimated2?.startMapper || throwOnMissingReanimated;
54
- export const stopMapper = Reanimated2?.stopMapper || throwOnMissingReanimated;
55
59
  export const runOnJS = Reanimated2?.runOnJS || throwOnMissingReanimated;
56
- export const isSharedValue = <T>(
57
- value: unknown
58
- ): value is SharedValueType<T> => {
59
- throwOnMissingReanimated3();
60
- return !!value && Reanimated3.isSharedValue(value);
60
+
61
+ export const useAnimatedReaction: <T>(
62
+ prepare: () => T,
63
+ react: (v: T) => void,
64
+ dependencies?: DependencyList
65
+ ) => void = Reanimated2?.useAnimatedReaction || throwOnMissingReanimated;
66
+
67
+ export const isSharedValue = <T>(value: unknown): value is SharedValue<T> => {
68
+ return (
69
+ !!value &&
70
+ (Reanimated3
71
+ ? Reanimated3.isSharedValue(value)
72
+ : (value as any).value !== undefined)
73
+ );
61
74
  };