@shopify/react-native-skia 0.1.128 → 0.1.131

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1659) hide show
  1. package/README.md +8 -0
  2. package/android/cpp/jni/JniSkiaDrawView.cpp +3 -2
  3. package/android/cpp/rnskia-android/SkiaOpenGLRenderer.h +1 -0
  4. package/android/src/main/java/com/shopify/reactnative/skia/SkiaDrawView.java +2 -1
  5. package/cpp/api/JsiSkCanvas.h +2 -2
  6. package/cpp/api/JsiSkMatrix.h +40 -27
  7. package/cpp/api/JsiSkPaint.h +3 -1
  8. package/cpp/api/JsiSkPath.h +67 -61
  9. package/cpp/api/JsiSkPathFactory.h +14 -1
  10. package/cpp/api/JsiSkRuntimeEffect.h +7 -9
  11. package/cpp/api/JsiSkRuntimeShaderBuilder.h +18 -0
  12. package/cpp/api/JsiSkTypeface.h +11 -2
  13. package/cpp/api/JsiSkTypefaceFactory.h +5 -1
  14. package/cpp/api/JsiSkVertices.h +0 -2
  15. package/cpp/rnskia/RNSkInfoParameter.h +2 -0
  16. package/cpp/rnskia/values/RNSkValue.h +1 -1
  17. package/cpp/skia/include/codec/SkCodec.h +7 -1
  18. package/cpp/skia/include/core/SkAlphaType.h +45 -0
  19. package/cpp/skia/include/core/SkBitmap.h +4 -2
  20. package/cpp/skia/include/core/SkCanvas.h +31 -20
  21. package/cpp/skia/include/core/SkColor.h +1 -1
  22. package/cpp/skia/include/core/SkColorFilter.h +1 -0
  23. package/cpp/skia/include/core/SkColorType.h +66 -0
  24. package/cpp/skia/include/core/SkDeferredDisplayListRecorder.h +1 -1
  25. package/cpp/skia/include/core/SkDrawable.h +7 -0
  26. package/cpp/skia/include/core/SkEncodedImageFormat.h +1 -0
  27. package/cpp/skia/include/core/SkFont.h +4 -3
  28. package/cpp/skia/include/core/SkFontArguments.h +33 -1
  29. package/cpp/skia/include/core/SkGraphics.h +13 -0
  30. package/cpp/skia/include/core/SkImage.h +67 -22
  31. package/cpp/skia/include/core/SkImageEncoder.h +0 -3
  32. package/cpp/skia/include/core/SkImageGenerator.h +4 -3
  33. package/cpp/skia/include/core/SkImageInfo.h +35 -142
  34. package/cpp/skia/include/core/SkMesh.h +303 -0
  35. package/cpp/skia/include/core/SkMilestone.h +1 -1
  36. package/cpp/skia/include/core/SkOpenTypeSVGDecoder.h +30 -0
  37. package/cpp/skia/include/core/SkPaint.h +4 -19
  38. package/cpp/skia/include/core/SkPath.h +20 -33
  39. package/cpp/skia/include/core/SkPathBuilder.h +1 -6
  40. package/cpp/skia/include/core/SkPixelRef.h +1 -1
  41. package/cpp/skia/include/core/SkPixmap.h +3 -2
  42. package/cpp/skia/include/core/SkRSXform.h +1 -1
  43. package/cpp/skia/include/core/SkSamplingOptions.h +16 -5
  44. package/cpp/skia/include/core/SkSpan.h +5 -5
  45. package/cpp/skia/include/core/SkString.h +5 -8
  46. package/cpp/skia/include/core/SkSurface.h +21 -0
  47. package/cpp/skia/include/core/SkTypeface.h +20 -4
  48. package/cpp/skia/include/core/SkTypes.h +9 -5
  49. package/cpp/skia/include/effects/SkGradientShader.h +9 -18
  50. package/cpp/skia/include/effects/SkRuntimeEffect.h +16 -12
  51. package/cpp/skia/include/gpu/GpuTypes.h +32 -0
  52. package/cpp/skia/include/gpu/GrBackendSemaphore.h +1 -1
  53. package/cpp/skia/include/gpu/GrBackendSurface.h +6 -5
  54. package/cpp/skia/include/gpu/GrBackendSurfaceMutableState.h +1 -1
  55. package/cpp/skia/include/gpu/GrContextOptions.h +11 -20
  56. package/cpp/skia/include/gpu/GrContextThreadSafeProxy.h +7 -0
  57. package/cpp/skia/include/gpu/GrDirectContext.h +16 -11
  58. package/cpp/skia/include/gpu/GrDriverBugWorkaroundsAutogen.h +0 -2
  59. package/cpp/skia/include/gpu/GrRecordingContext.h +14 -7
  60. package/cpp/skia/include/gpu/GrSurfaceInfo.h +6 -6
  61. package/cpp/skia/include/gpu/dawn/GrDawnTypes.h +1 -1
  62. package/cpp/skia/include/gpu/gl/GrGLFunctions.h +3 -1
  63. package/cpp/skia/include/gpu/gl/GrGLInterface.h +2 -2
  64. package/cpp/skia/include/gpu/graphite/BackendTexture.h +64 -0
  65. package/cpp/skia/include/gpu/graphite/Context.h +124 -0
  66. package/cpp/skia/include/gpu/graphite/GraphiteTypes.h +71 -0
  67. package/cpp/skia/include/gpu/graphite/Recorder.h +104 -0
  68. package/cpp/skia/include/gpu/graphite/Recording.h +39 -0
  69. package/cpp/skia/include/gpu/graphite/SkStuff.h +47 -0
  70. package/cpp/skia/include/gpu/graphite/TextureInfo.h +91 -0
  71. package/cpp/skia/include/gpu/graphite/mtl/MtlBackendContext.h +24 -0
  72. package/cpp/skia/include/gpu/graphite/mtl/MtlTypes.h +68 -0
  73. package/cpp/skia/include/gpu/mock/GrMockTypes.h +1 -2
  74. package/cpp/skia/include/ports/SkCFObject.h +0 -4
  75. package/cpp/skia/include/ports/SkTypeface_win.h +2 -2
  76. package/cpp/skia/include/private/SingleOwner.h +72 -0
  77. package/cpp/skia/include/private/SkChecksum.h +11 -0
  78. package/cpp/skia/include/private/SkEncodedInfo.h +22 -5
  79. package/cpp/skia/include/private/SkFloatingPoint.h +0 -53
  80. package/cpp/skia/include/private/SkImageInfoPriv.h +8 -2
  81. package/cpp/skia/include/private/SkMacros.h +13 -18
  82. package/cpp/skia/include/private/SkMutex.h +8 -0
  83. package/cpp/skia/include/private/SkPathRef.h +2 -16
  84. package/cpp/skia/include/private/SkSLDefines.h +9 -1
  85. package/cpp/skia/include/private/SkSLIRNode.h +6 -5
  86. package/cpp/skia/include/private/SkSLLayout.h +11 -10
  87. package/cpp/skia/include/private/SkSLModifiers.h +4 -3
  88. package/cpp/skia/include/private/SkSLProgramElement.h +2 -2
  89. package/cpp/skia/include/private/SkSLProgramKind.h +8 -5
  90. package/cpp/skia/include/private/SkSLStatement.h +2 -3
  91. package/cpp/skia/include/private/SkSLString.h +17 -56
  92. package/cpp/skia/include/private/SkSLSymbol.h +4 -4
  93. package/cpp/skia/include/private/SkShadowFlags.h +3 -1
  94. package/cpp/skia/include/private/SkStringView.h +47 -0
  95. package/cpp/skia/include/private/SkTArray.h +4 -3
  96. package/cpp/skia/include/private/SkTHash.h +66 -24
  97. package/cpp/skia/include/private/SkTLogic.h +2 -32
  98. package/cpp/skia/include/private/SkTemplates.h +2 -2
  99. package/cpp/skia/include/private/SkThreadAnnotations.h +4 -4
  100. package/cpp/skia/include/private/SkVx.h +28 -28
  101. package/cpp/skia/include/private/chromium/GrSlug.h +40 -3
  102. package/cpp/skia/include/private/chromium/SkChromeRemoteGlyphCache.h +12 -6
  103. package/cpp/skia/include/private/gpu/ganesh/GrContext_Base.h +99 -0
  104. package/cpp/skia/include/private/{GrD3DTypesMinimal.h → gpu/ganesh/GrD3DTypesMinimal.h} +0 -0
  105. package/cpp/skia/include/private/{GrDawnTypesPriv.h → gpu/ganesh/GrDawnTypesPriv.h} +0 -0
  106. package/cpp/skia/include/private/gpu/ganesh/GrGLTypesPriv.h +108 -0
  107. package/cpp/skia/include/private/gpu/ganesh/GrImageContext.h +55 -0
  108. package/cpp/skia/include/private/{GrMockTypesPriv.h → gpu/ganesh/GrMockTypesPriv.h} +0 -0
  109. package/cpp/skia/include/private/{GrMtlTypesPriv.h → gpu/ganesh/GrMtlTypesPriv.h} +0 -0
  110. package/cpp/skia/include/private/gpu/ganesh/GrTypesPriv.h +1012 -0
  111. package/cpp/skia/include/private/{GrVkTypesPriv.h → gpu/ganesh/GrVkTypesPriv.h} +0 -0
  112. package/cpp/skia/include/private/gpu/graphite/MtlTypesPriv.h +74 -0
  113. package/cpp/skia/include/sksl/DSL.h +4 -0
  114. package/cpp/skia/include/sksl/DSLBlock.h +8 -3
  115. package/cpp/skia/include/sksl/DSLCase.h +6 -6
  116. package/cpp/skia/include/sksl/DSLCore.h +89 -78
  117. package/cpp/skia/include/sksl/DSLExpression.h +78 -45
  118. package/cpp/skia/include/sksl/DSLFunction.h +23 -18
  119. package/cpp/skia/include/sksl/DSLLayout.h +14 -16
  120. package/cpp/skia/include/sksl/DSLModifiers.h +7 -5
  121. package/cpp/skia/include/sksl/DSLRuntimeEffects.h +1 -1
  122. package/cpp/skia/include/sksl/DSLStatement.h +16 -10
  123. package/cpp/skia/include/sksl/DSLSymbols.h +7 -7
  124. package/cpp/skia/include/sksl/DSLType.h +27 -23
  125. package/cpp/skia/include/sksl/DSLVar.h +72 -61
  126. package/cpp/skia/include/sksl/SkSLErrorReporter.h +12 -49
  127. package/cpp/skia/include/sksl/SkSLOperator.h +151 -0
  128. package/cpp/skia/include/sksl/SkSLPosition.h +102 -0
  129. package/cpp/skia/include/svg/SkSVGCanvas.h +5 -1
  130. package/cpp/skia/include/utils/SkAnimCodecPlayer.h +7 -0
  131. package/cpp/skia/include/utils/SkCamera.h +2 -0
  132. package/cpp/skia/include/utils/SkCanvasStateUtils.h +4 -1
  133. package/cpp/skia/include/utils/SkCustomTypeface.h +6 -4
  134. package/cpp/skia/include/utils/SkNWayCanvas.h +34 -0
  135. package/cpp/skia/include/utils/SkNullCanvas.h +5 -1
  136. package/cpp/skia/include/utils/SkOrderedFontMgr.h +12 -0
  137. package/cpp/skia/include/utils/SkPaintFilterCanvas.h +30 -1
  138. package/cpp/skia/include/utils/SkParse.h +2 -0
  139. package/cpp/skia/include/utils/SkShadowUtils.h +3 -2
  140. package/cpp/skia/include/utils/SkTextUtils.h +8 -4
  141. package/cpp/skia/modules/svg/include/SkSVGAttributeParser.h +27 -1
  142. package/cpp/skia/modules/svg/include/SkSVGDOM.h +4 -0
  143. package/cpp/skia/modules/svg/include/SkSVGOpenTypeSVGDecoder.h +32 -0
  144. package/cpp/skia/modules/svg/include/SkSVGRenderContext.h +3 -3
  145. package/cpp/skia/modules/svg/include/SkSVGSVG.h +2 -0
  146. package/cpp/skia/modules/svg/include/SkSVGTypes.h +48 -9
  147. package/cpp/utils/RNSkLog.h +22 -0
  148. package/ios/RNSkia-iOS/PlatformContext.h +1 -1
  149. package/ios/RNSkia-iOS/RNSkDrawViewImpl.mm +1 -0
  150. package/ios/RNSkia-iOS/SkiaDrawView.mm +3 -2
  151. package/lib/commonjs/animation/decay/runDecay.js.map +1 -1
  152. package/lib/commonjs/animation/functions/index.js +47 -17
  153. package/lib/commonjs/animation/functions/index.js.map +1 -1
  154. package/lib/commonjs/animation/functions/interpolateColors.js.map +1 -1
  155. package/lib/commonjs/animation/functions/interpolatePaths.js +45 -0
  156. package/lib/commonjs/animation/functions/interpolatePaths.js.map +1 -0
  157. package/lib/commonjs/animation/functions/interpolateVector.js +20 -0
  158. package/lib/commonjs/animation/functions/interpolateVector.js.map +1 -0
  159. package/lib/commonjs/animation/spring/runSpring.js.map +1 -1
  160. package/lib/commonjs/animation/spring/useSpring.js.map +1 -1
  161. package/lib/commonjs/animation/timing/createTiming.js.map +1 -1
  162. package/lib/commonjs/animation/timing/runTiming.js.map +1 -1
  163. package/lib/commonjs/animation/timing/useTiming.js.map +1 -1
  164. package/lib/commonjs/index.js +13 -0
  165. package/lib/commonjs/index.js.map +1 -1
  166. package/lib/commonjs/renderer/Canvas.js +18 -36
  167. package/lib/commonjs/renderer/Canvas.js.map +1 -1
  168. package/lib/commonjs/renderer/DependencyManager.js.map +1 -1
  169. package/lib/commonjs/renderer/HostConfig.js +2 -2
  170. package/lib/commonjs/renderer/HostConfig.js.map +1 -1
  171. package/lib/commonjs/renderer/components/Blend.js +10 -9
  172. package/lib/commonjs/renderer/components/Blend.js.map +1 -1
  173. package/lib/commonjs/renderer/components/Compose.js +9 -10
  174. package/lib/commonjs/renderer/components/Compose.js.map +1 -1
  175. package/lib/commonjs/renderer/components/Group.js +7 -6
  176. package/lib/commonjs/renderer/components/Group.js.map +1 -1
  177. package/lib/commonjs/renderer/components/Mask.js +13 -10
  178. package/lib/commonjs/renderer/components/Mask.js.map +1 -1
  179. package/lib/commonjs/renderer/components/Paint.js +7 -4
  180. package/lib/commonjs/renderer/components/Paint.js.map +1 -1
  181. package/lib/commonjs/renderer/components/Picture.js.map +1 -1
  182. package/lib/commonjs/renderer/components/backdrop/BackdropFilter.js +1 -1
  183. package/lib/commonjs/renderer/components/backdrop/BackdropFilter.js.map +1 -1
  184. package/lib/commonjs/renderer/components/colorFilters/BlendColor.js +7 -6
  185. package/lib/commonjs/renderer/components/colorFilters/BlendColor.js.map +1 -1
  186. package/lib/commonjs/renderer/components/colorFilters/Compose.js +6 -6
  187. package/lib/commonjs/renderer/components/colorFilters/Compose.js.map +1 -1
  188. package/lib/commonjs/renderer/components/colorFilters/Lerp.js +8 -9
  189. package/lib/commonjs/renderer/components/colorFilters/Lerp.js.map +1 -1
  190. package/lib/commonjs/renderer/components/colorFilters/LinearToSRGBGamma.js +6 -6
  191. package/lib/commonjs/renderer/components/colorFilters/LinearToSRGBGamma.js.map +1 -1
  192. package/lib/commonjs/renderer/components/colorFilters/LumaColorFilter.js +6 -6
  193. package/lib/commonjs/renderer/components/colorFilters/LumaColorFilter.js.map +1 -1
  194. package/lib/commonjs/renderer/components/colorFilters/Matrix.js +6 -7
  195. package/lib/commonjs/renderer/components/colorFilters/Matrix.js.map +1 -1
  196. package/lib/commonjs/renderer/components/colorFilters/SRGBToLinearGamma.js +6 -6
  197. package/lib/commonjs/renderer/components/colorFilters/SRGBToLinearGamma.js.map +1 -1
  198. package/lib/commonjs/renderer/components/image/BoxFit.js +7 -9
  199. package/lib/commonjs/renderer/components/image/BoxFit.js.map +1 -1
  200. package/lib/commonjs/renderer/components/image/Image.js +3 -2
  201. package/lib/commonjs/renderer/components/image/Image.js.map +1 -1
  202. package/lib/commonjs/renderer/components/image/ImageSVG.js +3 -2
  203. package/lib/commonjs/renderer/components/image/ImageSVG.js.map +1 -1
  204. package/lib/commonjs/renderer/components/image/ImageShader.js +9 -6
  205. package/lib/commonjs/renderer/components/image/ImageShader.js.map +1 -1
  206. package/lib/commonjs/renderer/components/imageFilters/Blur.js +7 -4
  207. package/lib/commonjs/renderer/components/imageFilters/Blur.js.map +1 -1
  208. package/lib/commonjs/renderer/components/imageFilters/DisplacementMap.js +10 -9
  209. package/lib/commonjs/renderer/components/imageFilters/DisplacementMap.js.map +1 -1
  210. package/lib/commonjs/renderer/components/imageFilters/InnerShadow.js +10 -15
  211. package/lib/commonjs/renderer/components/imageFilters/InnerShadow.js.map +1 -1
  212. package/lib/commonjs/renderer/components/imageFilters/Morphology.js +7 -6
  213. package/lib/commonjs/renderer/components/imageFilters/Morphology.js.map +1 -1
  214. package/lib/commonjs/renderer/components/imageFilters/Offset.js +5 -4
  215. package/lib/commonjs/renderer/components/imageFilters/Offset.js.map +1 -1
  216. package/lib/commonjs/renderer/components/imageFilters/RuntimeShader.js +13 -6
  217. package/lib/commonjs/renderer/components/imageFilters/RuntimeShader.js.map +1 -1
  218. package/lib/commonjs/renderer/components/imageFilters/Shadow.js +7 -8
  219. package/lib/commonjs/renderer/components/imageFilters/Shadow.js.map +1 -1
  220. package/lib/commonjs/renderer/components/imageFilters/getInput.js +7 -7
  221. package/lib/commonjs/renderer/components/imageFilters/getInput.js.map +1 -1
  222. package/lib/commonjs/renderer/components/maskFilters/Blur.js +6 -5
  223. package/lib/commonjs/renderer/components/maskFilters/Blur.js.map +1 -1
  224. package/lib/commonjs/renderer/components/pathEffects/Corner.js +8 -8
  225. package/lib/commonjs/renderer/components/pathEffects/Corner.js.map +1 -1
  226. package/lib/commonjs/renderer/components/pathEffects/Dash.js +8 -8
  227. package/lib/commonjs/renderer/components/pathEffects/Dash.js.map +1 -1
  228. package/lib/commonjs/renderer/components/pathEffects/Discrete.js +8 -8
  229. package/lib/commonjs/renderer/components/pathEffects/Discrete.js.map +1 -1
  230. package/lib/commonjs/renderer/components/pathEffects/Line2D.js +8 -8
  231. package/lib/commonjs/renderer/components/pathEffects/Line2D.js.map +1 -1
  232. package/lib/commonjs/renderer/components/pathEffects/Path1D.js +8 -8
  233. package/lib/commonjs/renderer/components/pathEffects/Path1D.js.map +1 -1
  234. package/lib/commonjs/renderer/components/pathEffects/Path2D.js +8 -8
  235. package/lib/commonjs/renderer/components/pathEffects/Path2D.js.map +1 -1
  236. package/lib/commonjs/renderer/components/pathEffects/Sum.js +7 -6
  237. package/lib/commonjs/renderer/components/pathEffects/Sum.js.map +1 -1
  238. package/lib/commonjs/renderer/components/shaders/Color.js +7 -4
  239. package/lib/commonjs/renderer/components/shaders/Color.js.map +1 -1
  240. package/lib/commonjs/renderer/components/shaders/FractalNoise.js +5 -4
  241. package/lib/commonjs/renderer/components/shaders/FractalNoise.js.map +1 -1
  242. package/lib/commonjs/renderer/components/shaders/Gradient.js +5 -5
  243. package/lib/commonjs/renderer/components/shaders/Gradient.js.map +1 -1
  244. package/lib/commonjs/renderer/components/shaders/LinearGradient.js +6 -5
  245. package/lib/commonjs/renderer/components/shaders/LinearGradient.js.map +1 -1
  246. package/lib/commonjs/renderer/components/shaders/RadialGradient.js +6 -5
  247. package/lib/commonjs/renderer/components/shaders/RadialGradient.js.map +1 -1
  248. package/lib/commonjs/renderer/components/shaders/Shader.js +6 -44
  249. package/lib/commonjs/renderer/components/shaders/Shader.js.map +1 -1
  250. package/lib/commonjs/renderer/components/shaders/SweepGradient.js +6 -5
  251. package/lib/commonjs/renderer/components/shaders/SweepGradient.js.map +1 -1
  252. package/lib/commonjs/renderer/components/shaders/Turbulence.js +5 -4
  253. package/lib/commonjs/renderer/components/shaders/Turbulence.js.map +1 -1
  254. package/lib/commonjs/renderer/components/shaders/TwoPointConicalGradient.js +6 -5
  255. package/lib/commonjs/renderer/components/shaders/TwoPointConicalGradient.js.map +1 -1
  256. package/lib/commonjs/renderer/components/shapes/Box.js +26 -29
  257. package/lib/commonjs/renderer/components/shapes/Box.js.map +1 -1
  258. package/lib/commonjs/renderer/components/shapes/Circle.js +7 -5
  259. package/lib/commonjs/renderer/components/shapes/Circle.js.map +1 -1
  260. package/lib/commonjs/renderer/components/shapes/DiffRect.js.map +1 -1
  261. package/lib/commonjs/renderer/components/shapes/FitBox.js.map +1 -1
  262. package/lib/commonjs/renderer/components/shapes/Line.js.map +1 -1
  263. package/lib/commonjs/renderer/components/shapes/Oval.js +3 -2
  264. package/lib/commonjs/renderer/components/shapes/Oval.js.map +1 -1
  265. package/lib/commonjs/renderer/components/shapes/Patch.js +7 -6
  266. package/lib/commonjs/renderer/components/shapes/Patch.js.map +1 -1
  267. package/lib/commonjs/renderer/components/shapes/Path.js +5 -4
  268. package/lib/commonjs/renderer/components/shapes/Path.js.map +1 -1
  269. package/lib/commonjs/renderer/components/shapes/Points.js +2 -2
  270. package/lib/commonjs/renderer/components/shapes/Points.js.map +1 -1
  271. package/lib/commonjs/renderer/components/shapes/Rect.js +3 -2
  272. package/lib/commonjs/renderer/components/shapes/Rect.js.map +1 -1
  273. package/lib/commonjs/renderer/components/shapes/RoundedRect.js +3 -2
  274. package/lib/commonjs/renderer/components/shapes/RoundedRect.js.map +1 -1
  275. package/lib/commonjs/renderer/components/shapes/Vertices.js +9 -8
  276. package/lib/commonjs/renderer/components/shapes/Vertices.js.map +1 -1
  277. package/lib/commonjs/renderer/components/text/Glyphs.js +3 -2
  278. package/lib/commonjs/renderer/components/text/Glyphs.js.map +1 -1
  279. package/lib/commonjs/renderer/components/text/Text.js +3 -2
  280. package/lib/commonjs/renderer/components/text/Text.js.map +1 -1
  281. package/lib/commonjs/renderer/components/text/TextBlob.js.map +1 -1
  282. package/lib/commonjs/renderer/components/text/TextPath.js +7 -11
  283. package/lib/commonjs/renderer/components/text/TextPath.js.map +1 -1
  284. package/lib/commonjs/renderer/index.js +26 -13
  285. package/lib/commonjs/renderer/index.js.map +1 -1
  286. package/lib/commonjs/renderer/nodes/Declaration.js.map +1 -1
  287. package/lib/commonjs/renderer/nodes/Drawing.js +5 -5
  288. package/lib/commonjs/renderer/nodes/Drawing.js.map +1 -1
  289. package/lib/commonjs/renderer/nodes/Node.js.map +1 -1
  290. package/lib/commonjs/renderer/processors/Animations/Animations.js.map +1 -1
  291. package/lib/commonjs/renderer/processors/Circles.js +2 -4
  292. package/lib/commonjs/renderer/processors/Circles.js.map +1 -1
  293. package/lib/commonjs/renderer/processors/Clips.js +5 -5
  294. package/lib/commonjs/renderer/processors/Clips.js.map +1 -1
  295. package/lib/commonjs/renderer/processors/Color.js +27 -0
  296. package/lib/commonjs/renderer/processors/Color.js.map +1 -0
  297. package/lib/commonjs/renderer/processors/Font.js +4 -4
  298. package/lib/commonjs/renderer/processors/Font.js.map +1 -1
  299. package/lib/commonjs/renderer/processors/Paint.js +18 -14
  300. package/lib/commonjs/renderer/processors/Paint.js.map +1 -1
  301. package/lib/commonjs/renderer/processors/Paths.js +4 -4
  302. package/lib/commonjs/renderer/processors/Paths.js.map +1 -1
  303. package/lib/commonjs/renderer/processors/Radius.js +2 -4
  304. package/lib/commonjs/renderer/processors/Radius.js.map +1 -1
  305. package/lib/commonjs/renderer/processors/Rects.js +9 -56
  306. package/lib/commonjs/renderer/processors/Rects.js.map +1 -1
  307. package/lib/commonjs/renderer/processors/Transform.js +26 -17
  308. package/lib/commonjs/renderer/processors/Transform.js.map +1 -1
  309. package/lib/commonjs/renderer/processors/index.js +26 -13
  310. package/lib/commonjs/renderer/processors/index.js.map +1 -1
  311. package/lib/commonjs/renderer/processors/math/Coordinates.js.map +1 -1
  312. package/lib/commonjs/renderer/processors/math/Transforms.js.map +1 -1
  313. package/lib/commonjs/renderer/processors/math/index.js +0 -26
  314. package/lib/commonjs/renderer/processors/math/index.js.map +1 -1
  315. package/lib/commonjs/renderer/useCanvas.js +30 -0
  316. package/lib/commonjs/renderer/useCanvas.js.map +1 -0
  317. package/lib/commonjs/skia/NativeSetup.js +1 -1
  318. package/lib/commonjs/skia/NativeSetup.js.map +1 -1
  319. package/lib/commonjs/skia/Skia.js +2 -36
  320. package/lib/commonjs/skia/Skia.js.map +1 -1
  321. package/lib/commonjs/skia/Skia.web.js +12 -0
  322. package/lib/commonjs/skia/Skia.web.js.map +1 -0
  323. package/lib/commonjs/skia/core/Data.js +79 -0
  324. package/lib/commonjs/skia/core/Data.js.map +1 -0
  325. package/lib/commonjs/skia/core/Font.js +34 -0
  326. package/lib/commonjs/skia/core/Font.js.map +1 -0
  327. package/lib/commonjs/skia/core/Image.js +18 -0
  328. package/lib/commonjs/skia/core/Image.js.map +1 -0
  329. package/lib/commonjs/skia/core/Matrix.js +15 -0
  330. package/lib/commonjs/skia/core/Matrix.js.map +1 -0
  331. package/lib/commonjs/skia/core/Paint.js +28 -0
  332. package/lib/commonjs/skia/core/Paint.js.map +1 -0
  333. package/lib/commonjs/skia/core/Path.js +72 -0
  334. package/lib/commonjs/skia/core/Path.js.map +1 -0
  335. package/lib/commonjs/skia/core/Picture.js +30 -0
  336. package/lib/commonjs/skia/core/Picture.js.map +1 -0
  337. package/lib/commonjs/skia/core/RRect.js +13 -0
  338. package/lib/commonjs/skia/core/RRect.js.map +1 -0
  339. package/lib/commonjs/skia/core/Rect.js +47 -0
  340. package/lib/commonjs/skia/core/Rect.js.map +1 -0
  341. package/lib/commonjs/skia/core/SVG.js +15 -0
  342. package/lib/commonjs/skia/core/SVG.js.map +1 -0
  343. package/lib/commonjs/skia/core/Typeface.js +18 -0
  344. package/lib/commonjs/skia/core/Typeface.js.map +1 -0
  345. package/lib/commonjs/skia/core/Vector.js +49 -0
  346. package/lib/commonjs/skia/core/Vector.js.map +1 -0
  347. package/lib/commonjs/skia/core/index.js +162 -0
  348. package/lib/commonjs/skia/core/index.js.map +1 -0
  349. package/lib/commonjs/skia/index.js +8 -302
  350. package/lib/commonjs/skia/index.js.map +1 -1
  351. package/lib/commonjs/skia/{Canvas.js → types/Canvas.js} +0 -0
  352. package/lib/commonjs/skia/{Canvas.js.map → types/Canvas.js.map} +0 -0
  353. package/lib/commonjs/skia/types/Color.js +2 -0
  354. package/lib/commonjs/skia/{ColorFilter/ColorFilterFactory.js.map → types/Color.js.map} +0 -0
  355. package/lib/commonjs/skia/{ColorFilter → types/ColorFilter}/ColorFilter.js +0 -0
  356. package/lib/commonjs/skia/{ColorFilter → types/ColorFilter}/ColorFilter.js.map +0 -0
  357. package/lib/commonjs/skia/{ColorFilter → types/ColorFilter}/ColorFilterFactory.js +0 -0
  358. package/lib/{module/skia → commonjs/skia/types}/ColorFilter/ColorFilterFactory.js.map +0 -0
  359. package/lib/commonjs/skia/{ColorFilter → types/ColorFilter}/index.js +0 -0
  360. package/lib/commonjs/skia/{ColorFilter → types/ColorFilter}/index.js.map +0 -0
  361. package/lib/commonjs/skia/{ContourMeasure.js → types/ContourMeasure.js} +0 -0
  362. package/lib/commonjs/skia/{ContourMeasure.js.map → types/ContourMeasure.js.map} +0 -0
  363. package/lib/commonjs/skia/types/Data/Data.js +6 -0
  364. package/lib/commonjs/skia/{Data/DataFactory.js.map → types/Data/Data.js.map} +0 -0
  365. package/lib/commonjs/skia/{Data → types/Data}/DataFactory.js +0 -0
  366. package/lib/{module/skia → commonjs/skia/types}/Data/DataFactory.js.map +0 -0
  367. package/lib/commonjs/skia/{Data → types/Data}/index.js +0 -0
  368. package/lib/commonjs/skia/{Data → types/Data}/index.js.map +0 -0
  369. package/lib/commonjs/skia/{Font → types/Font}/Font.js +0 -0
  370. package/lib/commonjs/skia/types/Font/Font.js.map +1 -0
  371. package/lib/commonjs/skia/types/Font/index.js +19 -0
  372. package/lib/commonjs/skia/types/Font/index.js.map +1 -0
  373. package/lib/commonjs/skia/{FontMgr → types/FontMgr}/FontMgr.js +0 -0
  374. package/lib/commonjs/skia/{FontMgr → types/FontMgr}/FontMgr.js.map +0 -0
  375. package/lib/commonjs/skia/{FontMgr → types/FontMgr}/FontMgrFactory.js +0 -0
  376. package/lib/commonjs/skia/{FontMgr → types/FontMgr}/FontMgrFactory.js.map +0 -0
  377. package/lib/commonjs/skia/types/FontMgr/index.js +32 -0
  378. package/lib/commonjs/skia/types/FontMgr/index.js.map +1 -0
  379. package/lib/commonjs/skia/{Image → types/Image}/Image.js +0 -0
  380. package/lib/commonjs/skia/types/Image/Image.js.map +1 -0
  381. package/lib/commonjs/skia/{Image → types/Image}/ImageFactory.js +0 -0
  382. package/lib/commonjs/skia/types/Image/ImageFactory.js.map +1 -0
  383. package/lib/commonjs/skia/types/Image/index.js +32 -0
  384. package/lib/commonjs/skia/types/Image/index.js.map +1 -0
  385. package/lib/commonjs/skia/{ImageFilter → types/ImageFilter}/ImageFilter.js +0 -0
  386. package/lib/commonjs/skia/{ImageFilter → types/ImageFilter}/ImageFilter.js.map +0 -0
  387. package/lib/commonjs/skia/{ImageFilter → types/ImageFilter}/ImageFilterFactory.js +0 -0
  388. package/lib/commonjs/skia/types/ImageFilter/ImageFilterFactory.js.map +1 -0
  389. package/lib/commonjs/skia/{ImageFilter → types/ImageFilter}/index.js +0 -0
  390. package/lib/commonjs/skia/{ImageFilter → types/ImageFilter}/index.js.map +0 -0
  391. package/lib/commonjs/skia/{JsiInstance.js → types/JsiInstance.js} +0 -0
  392. package/lib/commonjs/skia/{JsiInstance.js.map → types/JsiInstance.js.map} +0 -0
  393. package/lib/commonjs/skia/{MaskFilter.js → types/MaskFilter.js} +0 -0
  394. package/lib/commonjs/skia/types/MaskFilter.js.map +1 -0
  395. package/lib/commonjs/skia/types/Matrix.js +78 -0
  396. package/lib/commonjs/skia/types/Matrix.js.map +1 -0
  397. package/lib/commonjs/skia/{Paint → types/Paint}/BlendMode.js +0 -0
  398. package/lib/commonjs/skia/{Paint → types/Paint}/BlendMode.js.map +0 -0
  399. package/lib/commonjs/skia/types/Paint/Paint.js +36 -0
  400. package/lib/commonjs/skia/types/Paint/Paint.js.map +1 -0
  401. package/lib/commonjs/skia/types/Paint/index.js +32 -0
  402. package/lib/commonjs/skia/types/Paint/index.js.map +1 -0
  403. package/lib/commonjs/skia/types/Path/Path.js +48 -0
  404. package/lib/commonjs/skia/types/Path/Path.js.map +1 -0
  405. package/lib/commonjs/skia/{Path → types/Path}/PathFactory.js +0 -0
  406. package/lib/commonjs/skia/{Path → types/Path}/PathFactory.js.map +0 -0
  407. package/lib/commonjs/skia/types/Path/index.js +32 -0
  408. package/lib/commonjs/skia/types/Path/index.js.map +1 -0
  409. package/lib/commonjs/skia/{PathEffect.js → types/PathEffect.js} +0 -0
  410. package/lib/commonjs/skia/types/PathEffect.js.map +1 -0
  411. package/lib/commonjs/skia/{Picture → types/Picture}/Picture.js +0 -0
  412. package/lib/commonjs/skia/{Picture → types/Picture}/Picture.js.map +0 -0
  413. package/lib/commonjs/skia/{Picture → types/Picture}/PictureFactory.js +0 -0
  414. package/lib/commonjs/skia/{Picture → types/Picture}/PictureFactory.js.map +0 -0
  415. package/lib/commonjs/skia/{Picture → types/Picture}/PictureRecorder.js +0 -0
  416. package/lib/commonjs/skia/{Picture → types/Picture}/PictureRecorder.js.map +0 -0
  417. package/lib/commonjs/skia/types/Picture/index.js +45 -0
  418. package/lib/commonjs/skia/types/Picture/index.js.map +1 -0
  419. package/lib/commonjs/skia/{Point.js → types/Point.js} +0 -0
  420. package/lib/commonjs/skia/types/Point.js.map +1 -0
  421. package/lib/commonjs/skia/types/RRect.js +13 -0
  422. package/lib/commonjs/skia/types/RRect.js.map +1 -0
  423. package/lib/commonjs/skia/{RSXform.js → types/RSXform.js} +0 -0
  424. package/lib/commonjs/skia/{RSXform.js.map → types/RSXform.js.map} +0 -0
  425. package/lib/commonjs/skia/{Rect.js → types/Rect.js} +0 -0
  426. package/lib/commonjs/skia/{Rect.js.map → types/Rect.js.map} +0 -0
  427. package/lib/commonjs/skia/{RuntimeEffect → types/RuntimeEffect}/RuntimeEffect.js +0 -0
  428. package/lib/commonjs/skia/{RuntimeEffect → types/RuntimeEffect}/RuntimeEffect.js.map +0 -0
  429. package/lib/commonjs/skia/{RuntimeEffect → types/RuntimeEffect}/RuntimeEffectFactory.js +0 -0
  430. package/lib/commonjs/skia/{RuntimeEffect → types/RuntimeEffect}/RuntimeEffectFactory.js.map +0 -0
  431. package/lib/commonjs/skia/{RuntimeEffect → types/RuntimeEffect}/index.js +0 -0
  432. package/lib/commonjs/skia/{RuntimeEffect → types/RuntimeEffect}/index.js.map +0 -0
  433. package/lib/commonjs/skia/{SVG → types/SVG}/SVG.js +0 -0
  434. package/lib/commonjs/skia/{SVG → types/SVG}/SVG.js.map +0 -0
  435. package/lib/commonjs/skia/{SVG → types/SVG}/SVGFactory.js +0 -0
  436. package/lib/commonjs/skia/{SVG → types/SVG}/SVGFactory.js.map +0 -0
  437. package/lib/commonjs/skia/types/SVG/index.js +32 -0
  438. package/lib/commonjs/skia/types/SVG/index.js.map +1 -0
  439. package/lib/commonjs/skia/types/Shader/Shader.js +61 -0
  440. package/lib/commonjs/skia/types/Shader/Shader.js.map +1 -0
  441. package/lib/commonjs/skia/{Shader → types/Shader}/ShaderFactory.js +0 -0
  442. package/lib/commonjs/skia/{Shader → types/Shader}/ShaderFactory.js.map +0 -0
  443. package/lib/commonjs/skia/types/Shader/index.js +32 -0
  444. package/lib/commonjs/skia/types/Shader/index.js.map +1 -0
  445. package/lib/commonjs/skia/types/Skia.js +6 -0
  446. package/lib/commonjs/skia/{RRect.js.map → types/Skia.js.map} +0 -0
  447. package/lib/commonjs/skia/{Surface → types/Surface}/Surface.js +0 -0
  448. package/lib/commonjs/skia/{Surface → types/Surface}/Surface.js.map +0 -0
  449. package/lib/commonjs/skia/{Surface → types/Surface}/SurfaceFactory.js +0 -0
  450. package/lib/commonjs/skia/{Surface → types/Surface}/SurfaceFactory.js.map +0 -0
  451. package/lib/commonjs/skia/{Surface → types/Surface}/index.js +0 -0
  452. package/lib/commonjs/skia/{Surface → types/Surface}/index.js.map +0 -0
  453. package/lib/commonjs/skia/{TextBlob.js → types/TextBlob.js} +0 -0
  454. package/lib/commonjs/skia/{TextBlob.js.map → types/TextBlob.js.map} +0 -0
  455. package/lib/commonjs/skia/{Typeface → types/Typeface}/Typeface.js +0 -0
  456. package/lib/commonjs/skia/{Typeface → types/Typeface}/Typeface.js.map +0 -0
  457. package/lib/commonjs/skia/{Typeface → types/Typeface}/TypefaceFactory.js +0 -0
  458. package/lib/commonjs/skia/{Typeface → types/Typeface}/TypefaceFactory.js.map +0 -0
  459. package/lib/commonjs/skia/types/Typeface/index.js +32 -0
  460. package/lib/commonjs/skia/types/Typeface/index.js.map +1 -0
  461. package/lib/commonjs/skia/{Vertices → types/Vertices}/Vertices.js +0 -0
  462. package/lib/commonjs/skia/{Vertices → types/Vertices}/Vertices.js.map +0 -0
  463. package/lib/commonjs/skia/{Vertices → types/Vertices}/index.js +0 -0
  464. package/lib/commonjs/skia/{Vertices → types/Vertices}/index.js.map +0 -0
  465. package/lib/commonjs/skia/types/index.js +370 -0
  466. package/lib/commonjs/skia/types/index.js.map +1 -0
  467. package/lib/commonjs/skia/web/Host.js +75 -0
  468. package/lib/commonjs/skia/web/Host.js.map +1 -0
  469. package/lib/commonjs/skia/web/JsiImageFilterFactory.js +68 -0
  470. package/lib/commonjs/skia/web/JsiImageFilterFactory.js.map +1 -0
  471. package/lib/commonjs/skia/web/JsiSkCanvas.js +184 -0
  472. package/lib/commonjs/skia/web/JsiSkCanvas.js.map +1 -0
  473. package/lib/commonjs/skia/web/JsiSkColor.js +339 -0
  474. package/lib/commonjs/skia/web/JsiSkColor.js.map +1 -0
  475. package/lib/commonjs/skia/web/JsiSkColorFilter.js +18 -0
  476. package/lib/commonjs/skia/web/JsiSkColorFilter.js.map +1 -0
  477. package/lib/commonjs/skia/web/JsiSkColorFilterFactory.js +48 -0
  478. package/lib/commonjs/skia/web/JsiSkColorFilterFactory.js.map +1 -0
  479. package/lib/commonjs/skia/web/JsiSkContourMeasure.js +42 -0
  480. package/lib/commonjs/skia/web/JsiSkContourMeasure.js.map +1 -0
  481. package/lib/commonjs/skia/web/JsiSkContourMeasureIter.js +30 -0
  482. package/lib/commonjs/skia/web/JsiSkContourMeasureIter.js.map +1 -0
  483. package/lib/commonjs/skia/web/JsiSkData.js +18 -0
  484. package/lib/commonjs/skia/web/JsiSkData.js.map +1 -0
  485. package/lib/commonjs/skia/web/JsiSkDataFactory.js +44 -0
  486. package/lib/commonjs/skia/web/JsiSkDataFactory.js.map +1 -0
  487. package/lib/commonjs/skia/web/JsiSkFont.js +111 -0
  488. package/lib/commonjs/skia/web/JsiSkFont.js.map +1 -0
  489. package/lib/commonjs/skia/web/JsiSkFontMgr.js +35 -0
  490. package/lib/commonjs/skia/web/JsiSkFontMgr.js.map +1 -0
  491. package/lib/commonjs/skia/web/JsiSkFontMgrFactory.js +25 -0
  492. package/lib/commonjs/skia/web/JsiSkFontMgrFactory.js.map +1 -0
  493. package/lib/commonjs/skia/web/JsiSkImage.js +56 -0
  494. package/lib/commonjs/skia/web/JsiSkImage.js.map +1 -0
  495. package/lib/commonjs/skia/web/JsiSkImageFactory.js +47 -0
  496. package/lib/commonjs/skia/web/JsiSkImageFactory.js.map +1 -0
  497. package/lib/commonjs/skia/web/JsiSkImageFilter.js +18 -0
  498. package/lib/commonjs/skia/web/JsiSkImageFilter.js.map +1 -0
  499. package/lib/commonjs/skia/web/JsiSkMaskFilter.js +18 -0
  500. package/lib/commonjs/skia/web/JsiSkMaskFilter.js.map +1 -0
  501. package/lib/commonjs/skia/web/JsiSkMaskFilterFactory.js +24 -0
  502. package/lib/commonjs/skia/web/JsiSkMaskFilterFactory.js.map +1 -0
  503. package/lib/commonjs/skia/web/JsiSkMatrix.js +38 -0
  504. package/lib/commonjs/skia/web/JsiSkMatrix.js.map +1 -0
  505. package/lib/commonjs/skia/web/JsiSkPaint.js +101 -0
  506. package/lib/commonjs/skia/web/JsiSkPaint.js.map +1 -0
  507. package/lib/commonjs/skia/web/JsiSkPath.js +324 -0
  508. package/lib/commonjs/skia/web/JsiSkPath.js.map +1 -0
  509. package/lib/commonjs/skia/web/JsiSkPathEffect.js +18 -0
  510. package/lib/commonjs/skia/web/JsiSkPathEffect.js.map +1 -0
  511. package/lib/commonjs/skia/web/JsiSkPathEffectFactory.js +78 -0
  512. package/lib/commonjs/skia/web/JsiSkPathEffectFactory.js.map +1 -0
  513. package/lib/commonjs/skia/web/JsiSkPathFactory.js +58 -0
  514. package/lib/commonjs/skia/web/JsiSkPathFactory.js.map +1 -0
  515. package/lib/commonjs/skia/web/JsiSkPicture.js +29 -0
  516. package/lib/commonjs/skia/web/JsiSkPicture.js.map +1 -0
  517. package/lib/commonjs/skia/web/JsiSkPictureFactory.js +30 -0
  518. package/lib/commonjs/skia/web/JsiSkPictureFactory.js.map +1 -0
  519. package/lib/commonjs/skia/web/JsiSkPictureRecorder.js +30 -0
  520. package/lib/commonjs/skia/web/JsiSkPictureRecorder.js.map +1 -0
  521. package/lib/commonjs/skia/web/JsiSkPoint.js +26 -0
  522. package/lib/commonjs/skia/web/JsiSkPoint.js.map +1 -0
  523. package/lib/commonjs/skia/web/JsiSkRRect.js +32 -0
  524. package/lib/commonjs/skia/web/JsiSkRRect.js.map +1 -0
  525. package/lib/commonjs/skia/web/JsiSkRSXform.js +18 -0
  526. package/lib/commonjs/skia/web/JsiSkRSXform.js.map +1 -0
  527. package/lib/commonjs/skia/web/JsiSkRect.js +42 -0
  528. package/lib/commonjs/skia/web/JsiSkRect.js.map +1 -0
  529. package/lib/commonjs/skia/web/JsiSkRuntimeEffect.js +44 -0
  530. package/lib/commonjs/skia/web/JsiSkRuntimeEffect.js.map +1 -0
  531. package/lib/commonjs/skia/web/JsiSkRuntimeEffectFactory.js +30 -0
  532. package/lib/commonjs/skia/web/JsiSkRuntimeEffectFactory.js.map +1 -0
  533. package/lib/commonjs/skia/web/JsiSkSVGFactory.js +26 -0
  534. package/lib/commonjs/skia/web/JsiSkSVGFactory.js.map +1 -0
  535. package/lib/commonjs/skia/web/JsiSkShader.js +18 -0
  536. package/lib/commonjs/skia/web/JsiSkShader.js.map +1 -0
  537. package/lib/commonjs/skia/web/JsiSkShaderFactory.js +52 -0
  538. package/lib/commonjs/skia/web/JsiSkShaderFactory.js.map +1 -0
  539. package/lib/commonjs/skia/web/JsiSkSurface.js +31 -0
  540. package/lib/commonjs/skia/web/JsiSkSurface.js.map +1 -0
  541. package/lib/commonjs/skia/web/JsiSkSurfaceFactory.js +30 -0
  542. package/lib/commonjs/skia/web/JsiSkSurfaceFactory.js.map +1 -0
  543. package/lib/commonjs/skia/web/JsiSkTextBlob.js +18 -0
  544. package/lib/commonjs/skia/web/JsiSkTextBlob.js.map +1 -0
  545. package/lib/commonjs/skia/web/JsiSkTextBlobFactory.js +36 -0
  546. package/lib/commonjs/skia/web/JsiSkTextBlobFactory.js.map +1 -0
  547. package/lib/commonjs/skia/web/JsiSkTypeface.js +28 -0
  548. package/lib/commonjs/skia/web/JsiSkTypeface.js.map +1 -0
  549. package/lib/commonjs/skia/web/JsiSkTypefaceFactory.js +30 -0
  550. package/lib/commonjs/skia/web/JsiSkTypefaceFactory.js.map +1 -0
  551. package/lib/commonjs/skia/web/JsiSkVertices.js +28 -0
  552. package/lib/commonjs/skia/web/JsiSkVertices.js.map +1 -0
  553. package/lib/commonjs/skia/web/JsiSkVerticesFactory.js +27 -0
  554. package/lib/commonjs/skia/web/JsiSkVerticesFactory.js.map +1 -0
  555. package/lib/commonjs/skia/web/JsiSkia.js +97 -0
  556. package/lib/commonjs/skia/web/JsiSkia.js.map +1 -0
  557. package/lib/commonjs/skia/web/index.js +19 -0
  558. package/lib/commonjs/skia/web/index.js.map +1 -0
  559. package/lib/commonjs/values/hooks/useValue.js.map +1 -1
  560. package/lib/commonjs/values/hooks/useValueEffect.js.map +1 -1
  561. package/lib/commonjs/values/web/RNSkReadonlyValue.js.map +1 -1
  562. package/lib/commonjs/values/web/api.js +2 -2
  563. package/lib/commonjs/values/web/api.js.map +1 -1
  564. package/lib/commonjs/views/SkiaView.js.map +1 -1
  565. package/lib/commonjs/views/SkiaView.web.js +216 -0
  566. package/lib/commonjs/views/SkiaView.web.js.map +1 -0
  567. package/lib/commonjs/views/types.js.map +1 -1
  568. package/lib/commonjs/views/useTouchHandler.js +70 -46
  569. package/lib/commonjs/views/useTouchHandler.js.map +1 -1
  570. package/lib/commonjs/web/index.js +20 -0
  571. package/lib/commonjs/web/index.js.map +1 -0
  572. package/lib/module/animation/decay/runDecay.js.map +1 -1
  573. package/lib/module/animation/functions/index.js +4 -2
  574. package/lib/module/animation/functions/index.js.map +1 -1
  575. package/lib/module/animation/functions/interpolateColors.js.map +1 -1
  576. package/lib/module/animation/functions/interpolatePaths.js +36 -0
  577. package/lib/module/animation/functions/interpolatePaths.js.map +1 -0
  578. package/lib/module/animation/functions/interpolateVector.js +7 -0
  579. package/lib/module/animation/functions/interpolateVector.js.map +1 -0
  580. package/lib/module/animation/spring/runSpring.js.map +1 -1
  581. package/lib/module/animation/spring/useSpring.js.map +1 -1
  582. package/lib/module/animation/timing/createTiming.js.map +1 -1
  583. package/lib/module/animation/timing/runTiming.js.map +1 -1
  584. package/lib/module/animation/timing/useTiming.js.map +1 -1
  585. package/lib/module/index.js +1 -0
  586. package/lib/module/index.js.map +1 -1
  587. package/lib/module/renderer/Canvas.js +15 -27
  588. package/lib/module/renderer/Canvas.js.map +1 -1
  589. package/lib/module/renderer/DependencyManager.js.map +1 -1
  590. package/lib/module/renderer/HostConfig.js +2 -2
  591. package/lib/module/renderer/HostConfig.js.map +1 -1
  592. package/lib/module/renderer/components/Blend.js +5 -3
  593. package/lib/module/renderer/components/Blend.js.map +1 -1
  594. package/lib/module/renderer/components/Compose.js +5 -4
  595. package/lib/module/renderer/components/Compose.js.map +1 -1
  596. package/lib/module/renderer/components/Group.js +7 -6
  597. package/lib/module/renderer/components/Group.js.map +1 -1
  598. package/lib/module/renderer/components/Mask.js +7 -3
  599. package/lib/module/renderer/components/Mask.js.map +1 -1
  600. package/lib/module/renderer/components/Paint.js +6 -3
  601. package/lib/module/renderer/components/Paint.js.map +1 -1
  602. package/lib/module/renderer/components/Picture.js.map +1 -1
  603. package/lib/module/renderer/components/backdrop/BackdropFilter.js +1 -1
  604. package/lib/module/renderer/components/backdrop/BackdropFilter.js.map +1 -1
  605. package/lib/module/renderer/components/colorFilters/BlendColor.js +6 -3
  606. package/lib/module/renderer/components/colorFilters/BlendColor.js.map +1 -1
  607. package/lib/module/renderer/components/colorFilters/Compose.js +2 -2
  608. package/lib/module/renderer/components/colorFilters/Compose.js.map +1 -1
  609. package/lib/module/renderer/components/colorFilters/Lerp.js +6 -4
  610. package/lib/module/renderer/components/colorFilters/Lerp.js.map +1 -1
  611. package/lib/module/renderer/components/colorFilters/LinearToSRGBGamma.js +5 -3
  612. package/lib/module/renderer/components/colorFilters/LinearToSRGBGamma.js.map +1 -1
  613. package/lib/module/renderer/components/colorFilters/LumaColorFilter.js +5 -3
  614. package/lib/module/renderer/components/colorFilters/LumaColorFilter.js.map +1 -1
  615. package/lib/module/renderer/components/colorFilters/Matrix.js +5 -3
  616. package/lib/module/renderer/components/colorFilters/Matrix.js.map +1 -1
  617. package/lib/module/renderer/components/colorFilters/SRGBToLinearGamma.js +5 -3
  618. package/lib/module/renderer/components/colorFilters/SRGBToLinearGamma.js.map +1 -1
  619. package/lib/module/renderer/components/image/BoxFit.js +7 -8
  620. package/lib/module/renderer/components/image/BoxFit.js.map +1 -1
  621. package/lib/module/renderer/components/image/Image.js +3 -2
  622. package/lib/module/renderer/components/image/Image.js.map +1 -1
  623. package/lib/module/renderer/components/image/ImageSVG.js +3 -2
  624. package/lib/module/renderer/components/image/ImageSVG.js.map +1 -1
  625. package/lib/module/renderer/components/image/ImageShader.js +10 -7
  626. package/lib/module/renderer/components/image/ImageShader.js.map +1 -1
  627. package/lib/module/renderer/components/imageFilters/Blur.js +7 -4
  628. package/lib/module/renderer/components/imageFilters/Blur.js.map +1 -1
  629. package/lib/module/renderer/components/imageFilters/DisplacementMap.js +7 -5
  630. package/lib/module/renderer/components/imageFilters/DisplacementMap.js.map +1 -1
  631. package/lib/module/renderer/components/imageFilters/InnerShadow.js +3 -3
  632. package/lib/module/renderer/components/imageFilters/InnerShadow.js.map +1 -1
  633. package/lib/module/renderer/components/imageFilters/Morphology.js +6 -4
  634. package/lib/module/renderer/components/imageFilters/Morphology.js.map +1 -1
  635. package/lib/module/renderer/components/imageFilters/Offset.js +5 -3
  636. package/lib/module/renderer/components/imageFilters/Offset.js.map +1 -1
  637. package/lib/module/renderer/components/imageFilters/RuntimeShader.js +13 -4
  638. package/lib/module/renderer/components/imageFilters/RuntimeShader.js.map +1 -1
  639. package/lib/module/renderer/components/imageFilters/Shadow.js +6 -6
  640. package/lib/module/renderer/components/imageFilters/Shadow.js.map +1 -1
  641. package/lib/module/renderer/components/imageFilters/getInput.js +2 -2
  642. package/lib/module/renderer/components/imageFilters/getInput.js.map +1 -1
  643. package/lib/module/renderer/components/maskFilters/Blur.js +5 -3
  644. package/lib/module/renderer/components/maskFilters/Blur.js.map +1 -1
  645. package/lib/module/renderer/components/pathEffects/Corner.js +5 -3
  646. package/lib/module/renderer/components/pathEffects/Corner.js.map +1 -1
  647. package/lib/module/renderer/components/pathEffects/Dash.js +5 -3
  648. package/lib/module/renderer/components/pathEffects/Dash.js.map +1 -1
  649. package/lib/module/renderer/components/pathEffects/Discrete.js +5 -3
  650. package/lib/module/renderer/components/pathEffects/Discrete.js.map +1 -1
  651. package/lib/module/renderer/components/pathEffects/Line2D.js +5 -3
  652. package/lib/module/renderer/components/pathEffects/Line2D.js.map +1 -1
  653. package/lib/module/renderer/components/pathEffects/Path1D.js +6 -4
  654. package/lib/module/renderer/components/pathEffects/Path1D.js.map +1 -1
  655. package/lib/module/renderer/components/pathEffects/Path2D.js +6 -4
  656. package/lib/module/renderer/components/pathEffects/Path2D.js.map +1 -1
  657. package/lib/module/renderer/components/pathEffects/Sum.js +5 -3
  658. package/lib/module/renderer/components/pathEffects/Sum.js.map +1 -1
  659. package/lib/module/renderer/components/shaders/Color.js +6 -3
  660. package/lib/module/renderer/components/shaders/Color.js.map +1 -1
  661. package/lib/module/renderer/components/shaders/FractalNoise.js +4 -2
  662. package/lib/module/renderer/components/shaders/FractalNoise.js.map +1 -1
  663. package/lib/module/renderer/components/shaders/Gradient.js +3 -3
  664. package/lib/module/renderer/components/shaders/Gradient.js.map +1 -1
  665. package/lib/module/renderer/components/shaders/LinearGradient.js +5 -3
  666. package/lib/module/renderer/components/shaders/LinearGradient.js.map +1 -1
  667. package/lib/module/renderer/components/shaders/RadialGradient.js +5 -3
  668. package/lib/module/renderer/components/shaders/RadialGradient.js.map +1 -1
  669. package/lib/module/renderer/components/shaders/Shader.js +6 -45
  670. package/lib/module/renderer/components/shaders/Shader.js.map +1 -1
  671. package/lib/module/renderer/components/shaders/SweepGradient.js +5 -3
  672. package/lib/module/renderer/components/shaders/SweepGradient.js.map +1 -1
  673. package/lib/module/renderer/components/shaders/Turbulence.js +4 -2
  674. package/lib/module/renderer/components/shaders/Turbulence.js.map +1 -1
  675. package/lib/module/renderer/components/shaders/TwoPointConicalGradient.js +5 -3
  676. package/lib/module/renderer/components/shaders/TwoPointConicalGradient.js.map +1 -1
  677. package/lib/module/renderer/components/shapes/Box.js +20 -19
  678. package/lib/module/renderer/components/shapes/Box.js.map +1 -1
  679. package/lib/module/renderer/components/shapes/Circle.js +7 -4
  680. package/lib/module/renderer/components/shapes/Circle.js.map +1 -1
  681. package/lib/module/renderer/components/shapes/DiffRect.js.map +1 -1
  682. package/lib/module/renderer/components/shapes/FitBox.js.map +1 -1
  683. package/lib/module/renderer/components/shapes/Line.js.map +1 -1
  684. package/lib/module/renderer/components/shapes/Oval.js +3 -2
  685. package/lib/module/renderer/components/shapes/Oval.js.map +1 -1
  686. package/lib/module/renderer/components/shapes/Patch.js +5 -4
  687. package/lib/module/renderer/components/shapes/Patch.js.map +1 -1
  688. package/lib/module/renderer/components/shapes/Path.js +4 -3
  689. package/lib/module/renderer/components/shapes/Path.js.map +1 -1
  690. package/lib/module/renderer/components/shapes/Points.js +1 -1
  691. package/lib/module/renderer/components/shapes/Points.js.map +1 -1
  692. package/lib/module/renderer/components/shapes/Rect.js +3 -2
  693. package/lib/module/renderer/components/shapes/Rect.js.map +1 -1
  694. package/lib/module/renderer/components/shapes/RoundedRect.js +3 -2
  695. package/lib/module/renderer/components/shapes/RoundedRect.js.map +1 -1
  696. package/lib/module/renderer/components/shapes/Vertices.js +5 -3
  697. package/lib/module/renderer/components/shapes/Vertices.js.map +1 -1
  698. package/lib/module/renderer/components/text/Glyphs.js +3 -2
  699. package/lib/module/renderer/components/text/Glyphs.js.map +1 -1
  700. package/lib/module/renderer/components/text/Text.js +3 -2
  701. package/lib/module/renderer/components/text/Text.js.map +1 -1
  702. package/lib/module/renderer/components/text/TextBlob.js.map +1 -1
  703. package/lib/module/renderer/components/text/TextPath.js +3 -3
  704. package/lib/module/renderer/components/text/TextPath.js.map +1 -1
  705. package/lib/module/renderer/index.js +2 -1
  706. package/lib/module/renderer/index.js.map +1 -1
  707. package/lib/module/renderer/nodes/Declaration.js.map +1 -1
  708. package/lib/module/renderer/nodes/Drawing.js +3 -3
  709. package/lib/module/renderer/nodes/Drawing.js.map +1 -1
  710. package/lib/module/renderer/nodes/Node.js.map +1 -1
  711. package/lib/module/renderer/processors/Animations/Animations.js.map +1 -1
  712. package/lib/module/renderer/processors/Circles.js +2 -4
  713. package/lib/module/renderer/processors/Circles.js.map +1 -1
  714. package/lib/module/renderer/processors/Clips.js +3 -3
  715. package/lib/module/renderer/processors/Clips.js.map +1 -1
  716. package/lib/module/renderer/processors/Color.js +11 -0
  717. package/lib/module/renderer/processors/Color.js.map +1 -0
  718. package/lib/module/renderer/processors/Font.js +3 -2
  719. package/lib/module/renderer/processors/Font.js.map +1 -1
  720. package/lib/module/renderer/processors/Paint.js +8 -5
  721. package/lib/module/renderer/processors/Paint.js.map +1 -1
  722. package/lib/module/renderer/processors/Paths.js +2 -2
  723. package/lib/module/renderer/processors/Paths.js.map +1 -1
  724. package/lib/module/renderer/processors/Radius.js +2 -3
  725. package/lib/module/renderer/processors/Radius.js.map +1 -1
  726. package/lib/module/renderer/processors/Rects.js +7 -25
  727. package/lib/module/renderer/processors/Rects.js.map +1 -1
  728. package/lib/module/renderer/processors/Transform.js +24 -16
  729. package/lib/module/renderer/processors/Transform.js.map +1 -1
  730. package/lib/module/renderer/processors/index.js +2 -1
  731. package/lib/module/renderer/processors/index.js.map +1 -1
  732. package/lib/module/renderer/processors/math/Coordinates.js.map +1 -1
  733. package/lib/module/renderer/processors/math/Transforms.js.map +1 -1
  734. package/lib/module/renderer/processors/math/index.js +0 -2
  735. package/lib/module/renderer/processors/math/index.js.map +1 -1
  736. package/lib/module/renderer/useCanvas.js +13 -0
  737. package/lib/module/renderer/useCanvas.js.map +1 -0
  738. package/lib/module/skia/NativeSetup.js +2 -2
  739. package/lib/module/skia/NativeSetup.js.map +1 -1
  740. package/lib/module/skia/Skia.js +2 -35
  741. package/lib/module/skia/Skia.js.map +1 -1
  742. package/lib/module/skia/Skia.web.js +3 -0
  743. package/lib/module/skia/Skia.web.js.map +1 -0
  744. package/lib/module/skia/core/Data.js +62 -0
  745. package/lib/module/skia/core/Data.js.map +1 -0
  746. package/lib/module/skia/core/Font.js +22 -0
  747. package/lib/module/skia/core/Font.js.map +1 -0
  748. package/lib/module/skia/core/Image.js +8 -0
  749. package/lib/module/skia/core/Image.js.map +1 -0
  750. package/lib/module/skia/core/Matrix.js +4 -0
  751. package/lib/module/skia/core/Matrix.js.map +1 -0
  752. package/lib/module/skia/core/Paint.js +17 -0
  753. package/lib/module/skia/core/Paint.js.map +1 -0
  754. package/lib/module/skia/core/Path.js +53 -0
  755. package/lib/module/skia/core/Path.js.map +1 -0
  756. package/lib/module/skia/core/Picture.js +19 -0
  757. package/lib/module/skia/core/Picture.js.map +1 -0
  758. package/lib/module/skia/core/RRect.js +3 -0
  759. package/lib/module/skia/core/RRect.js.map +1 -0
  760. package/lib/module/skia/core/Rect.js +17 -0
  761. package/lib/module/skia/core/Rect.js.map +1 -0
  762. package/lib/module/skia/core/SVG.js +4 -0
  763. package/lib/module/skia/core/SVG.js.map +1 -0
  764. package/lib/module/skia/core/Typeface.js +8 -0
  765. package/lib/module/skia/core/Typeface.js.map +1 -0
  766. package/lib/module/skia/core/Vector.js +23 -0
  767. package/lib/module/skia/core/Vector.js.map +1 -0
  768. package/lib/module/skia/core/index.js +13 -0
  769. package/lib/module/skia/core/index.js.map +1 -0
  770. package/lib/module/skia/index.js +2 -23
  771. package/lib/module/skia/index.js.map +1 -1
  772. package/lib/module/skia/{Canvas.js → types/Canvas.js} +0 -0
  773. package/lib/module/skia/{Canvas.js.map → types/Canvas.js.map} +0 -0
  774. package/lib/module/skia/types/Color.js +2 -0
  775. package/lib/module/skia/{ContourMeasure.js.map → types/Color.js.map} +0 -0
  776. package/lib/module/skia/{ColorFilter → types/ColorFilter}/ColorFilter.js +0 -0
  777. package/lib/module/skia/{ColorFilter → types/ColorFilter}/ColorFilter.js.map +0 -0
  778. package/lib/module/skia/{ColorFilter → types/ColorFilter}/ColorFilterFactory.js +0 -0
  779. package/lib/module/skia/{FontMgr/FontMgr.js.map → types/ColorFilter/ColorFilterFactory.js.map} +0 -0
  780. package/lib/module/skia/{ColorFilter → types/ColorFilter}/index.js +0 -0
  781. package/lib/module/skia/{ColorFilter → types/ColorFilter}/index.js.map +0 -0
  782. package/lib/module/skia/{ContourMeasure.js → types/ContourMeasure.js} +0 -0
  783. package/lib/module/skia/{FontMgr/FontMgrFactory.js.map → types/ContourMeasure.js.map} +0 -0
  784. package/lib/module/skia/types/Data/Data.js +2 -0
  785. package/lib/module/skia/{JsiInstance.js.map → types/Data/Data.js.map} +0 -0
  786. package/lib/module/skia/{Data → types/Data}/DataFactory.js +0 -0
  787. package/lib/module/skia/{Path/PathFactory.js.map → types/Data/DataFactory.js.map} +0 -0
  788. package/lib/module/skia/{Data → types/Data}/index.js +0 -0
  789. package/lib/module/skia/{Data → types/Data}/index.js.map +0 -0
  790. package/lib/module/skia/{Font → types/Font}/Font.js +0 -0
  791. package/lib/module/skia/types/Font/Font.js.map +1 -0
  792. package/lib/module/skia/types/Font/index.js +2 -0
  793. package/lib/module/skia/types/Font/index.js.map +1 -0
  794. package/lib/module/skia/{FontMgr → types/FontMgr}/FontMgr.js +0 -0
  795. package/lib/module/skia/{Picture/Picture.js.map → types/FontMgr/FontMgr.js.map} +0 -0
  796. package/lib/module/skia/{FontMgr → types/FontMgr}/FontMgrFactory.js +0 -0
  797. package/lib/module/skia/{Picture/PictureFactory.js.map → types/FontMgr/FontMgrFactory.js.map} +0 -0
  798. package/lib/module/skia/types/FontMgr/index.js +3 -0
  799. package/lib/module/skia/types/FontMgr/index.js.map +1 -0
  800. package/lib/module/skia/{Image → types/Image}/Image.js +0 -0
  801. package/lib/module/skia/types/Image/Image.js.map +1 -0
  802. package/lib/module/skia/{Image → types/Image}/ImageFactory.js +0 -0
  803. package/lib/module/skia/types/Image/ImageFactory.js.map +1 -0
  804. package/lib/module/skia/types/Image/index.js +3 -0
  805. package/lib/module/skia/types/Image/index.js.map +1 -0
  806. package/lib/module/skia/{ImageFilter → types/ImageFilter}/ImageFilter.js +0 -0
  807. package/lib/module/skia/{ImageFilter → types/ImageFilter}/ImageFilter.js.map +0 -0
  808. package/lib/module/skia/{ImageFilter → types/ImageFilter}/ImageFilterFactory.js +0 -0
  809. package/lib/module/skia/types/ImageFilter/ImageFilterFactory.js.map +1 -0
  810. package/lib/module/skia/{ImageFilter → types/ImageFilter}/index.js +0 -0
  811. package/lib/module/skia/{ImageFilter → types/ImageFilter}/index.js.map +0 -0
  812. package/lib/module/skia/{JsiInstance.js → types/JsiInstance.js} +0 -0
  813. package/lib/module/skia/{Picture/PictureRecorder.js.map → types/JsiInstance.js.map} +0 -0
  814. package/lib/module/skia/{MaskFilter.js → types/MaskFilter.js} +0 -0
  815. package/lib/module/skia/types/MaskFilter.js.map +1 -0
  816. package/lib/module/skia/types/Matrix.js +69 -0
  817. package/lib/module/skia/types/Matrix.js.map +1 -0
  818. package/lib/module/skia/{Paint → types/Paint}/BlendMode.js +0 -0
  819. package/lib/module/skia/{Paint → types/Paint}/BlendMode.js.map +0 -0
  820. package/lib/module/skia/types/Paint/Paint.js +25 -0
  821. package/lib/module/skia/types/Paint/Paint.js.map +1 -0
  822. package/lib/module/skia/types/Paint/index.js +3 -0
  823. package/lib/module/skia/types/Paint/index.js.map +1 -0
  824. package/lib/module/skia/types/Path/Path.js +36 -0
  825. package/lib/module/skia/types/Path/Path.js.map +1 -0
  826. package/lib/module/skia/{Path → types/Path}/PathFactory.js +0 -0
  827. package/lib/module/skia/{RRect.js.map → types/Path/PathFactory.js.map} +0 -0
  828. package/lib/module/skia/types/Path/index.js +3 -0
  829. package/lib/module/skia/types/Path/index.js.map +1 -0
  830. package/lib/module/skia/{PathEffect.js → types/PathEffect.js} +0 -0
  831. package/lib/module/skia/types/PathEffect.js.map +1 -0
  832. package/lib/module/skia/{Picture → types/Picture}/Picture.js +0 -0
  833. package/lib/module/skia/{RSXform.js.map → types/Picture/Picture.js.map} +0 -0
  834. package/lib/module/skia/{Picture → types/Picture}/PictureFactory.js +0 -0
  835. package/lib/module/skia/{Rect.js.map → types/Picture/PictureFactory.js.map} +0 -0
  836. package/lib/module/skia/{Picture → types/Picture}/PictureRecorder.js +0 -0
  837. package/lib/module/skia/{RuntimeEffect/RuntimeEffect.js.map → types/Picture/PictureRecorder.js.map} +0 -0
  838. package/lib/module/skia/types/Picture/index.js +4 -0
  839. package/lib/module/skia/types/Picture/index.js.map +1 -0
  840. package/lib/module/skia/{Point.js → types/Point.js} +0 -0
  841. package/lib/module/skia/types/Point.js.map +1 -0
  842. package/lib/module/skia/types/RRect.js +4 -0
  843. package/lib/module/skia/types/RRect.js.map +1 -0
  844. package/lib/module/skia/{RSXform.js → types/RSXform.js} +0 -0
  845. package/lib/module/skia/{RuntimeEffect/RuntimeEffectFactory.js.map → types/RSXform.js.map} +0 -0
  846. package/lib/module/skia/{Rect.js → types/Rect.js} +0 -0
  847. package/lib/module/skia/{SVG/SVG.js.map → types/Rect.js.map} +0 -0
  848. package/lib/module/skia/{RuntimeEffect → types/RuntimeEffect}/RuntimeEffect.js +0 -0
  849. package/lib/module/skia/{SVG/SVGFactory.js.map → types/RuntimeEffect/RuntimeEffect.js.map} +0 -0
  850. package/lib/module/skia/{RuntimeEffect → types/RuntimeEffect}/RuntimeEffectFactory.js +0 -0
  851. package/lib/module/skia/{Shader/ShaderFactory.js.map → types/RuntimeEffect/RuntimeEffectFactory.js.map} +0 -0
  852. package/lib/module/skia/{RuntimeEffect → types/RuntimeEffect}/index.js +0 -0
  853. package/lib/module/skia/{RuntimeEffect → types/RuntimeEffect}/index.js.map +0 -0
  854. package/lib/module/skia/{SVG → types/SVG}/SVG.js +0 -0
  855. package/lib/module/skia/{Surface/Surface.js.map → types/SVG/SVG.js.map} +0 -0
  856. package/lib/module/skia/{SVG → types/SVG}/SVGFactory.js +0 -0
  857. package/lib/module/skia/{Surface/SurfaceFactory.js.map → types/SVG/SVGFactory.js.map} +0 -0
  858. package/lib/module/skia/types/SVG/index.js +3 -0
  859. package/lib/module/skia/types/SVG/index.js.map +1 -0
  860. package/lib/module/skia/types/Shader/Shader.js +50 -0
  861. package/lib/module/skia/types/Shader/Shader.js.map +1 -0
  862. package/lib/module/skia/{Shader → types/Shader}/ShaderFactory.js +0 -0
  863. package/lib/module/skia/{TextBlob.js.map → types/Shader/ShaderFactory.js.map} +0 -0
  864. package/lib/module/skia/types/Shader/index.js +3 -0
  865. package/lib/module/skia/types/Shader/index.js.map +1 -0
  866. package/lib/module/skia/types/Skia.js +2 -0
  867. package/lib/module/skia/{Typeface/Typeface.js.map → types/Skia.js.map} +0 -0
  868. package/lib/module/skia/{Surface → types/Surface}/Surface.js +0 -0
  869. package/lib/module/skia/{Typeface/TypefaceFactory.js.map → types/Surface/Surface.js.map} +0 -0
  870. package/lib/module/skia/{Surface → types/Surface}/SurfaceFactory.js +0 -0
  871. package/lib/module/skia/types/Surface/SurfaceFactory.js.map +1 -0
  872. package/lib/module/skia/{Surface → types/Surface}/index.js +0 -0
  873. package/lib/module/skia/{Surface → types/Surface}/index.js.map +0 -0
  874. package/lib/module/skia/{TextBlob.js → types/TextBlob.js} +0 -0
  875. package/lib/module/skia/types/TextBlob.js.map +1 -0
  876. package/lib/module/skia/{Typeface → types/Typeface}/Typeface.js +0 -0
  877. package/lib/module/skia/types/Typeface/Typeface.js.map +1 -0
  878. package/lib/module/skia/{Typeface → types/Typeface}/TypefaceFactory.js +0 -0
  879. package/lib/module/skia/types/Typeface/TypefaceFactory.js.map +1 -0
  880. package/lib/module/skia/types/Typeface/index.js +3 -0
  881. package/lib/module/skia/types/Typeface/index.js.map +1 -0
  882. package/lib/module/skia/{Vertices → types/Vertices}/Vertices.js +0 -0
  883. package/lib/module/skia/{Vertices → types/Vertices}/Vertices.js.map +0 -0
  884. package/lib/module/skia/{Vertices → types/Vertices}/index.js +0 -0
  885. package/lib/module/skia/{Vertices → types/Vertices}/index.js.map +0 -0
  886. package/lib/module/skia/types/index.js +29 -0
  887. package/lib/module/skia/types/index.js.map +1 -0
  888. package/lib/module/skia/web/Host.js +42 -0
  889. package/lib/module/skia/web/Host.js.map +1 -0
  890. package/lib/module/skia/web/JsiImageFilterFactory.js +57 -0
  891. package/lib/module/skia/web/JsiImageFilterFactory.js.map +1 -0
  892. package/lib/module/skia/web/JsiSkCanvas.js +173 -0
  893. package/lib/module/skia/web/JsiSkCanvas.js.map +1 -0
  894. package/lib/module/skia/web/JsiSkColor.js +330 -0
  895. package/lib/module/skia/web/JsiSkColor.js.map +1 -0
  896. package/lib/module/skia/web/JsiSkColorFilter.js +8 -0
  897. package/lib/module/skia/web/JsiSkColorFilter.js.map +1 -0
  898. package/lib/module/skia/web/JsiSkColorFilterFactory.js +37 -0
  899. package/lib/module/skia/web/JsiSkColorFilterFactory.js.map +1 -0
  900. package/lib/module/skia/web/JsiSkContourMeasure.js +31 -0
  901. package/lib/module/skia/web/JsiSkContourMeasure.js.map +1 -0
  902. package/lib/module/skia/web/JsiSkContourMeasureIter.js +19 -0
  903. package/lib/module/skia/web/JsiSkContourMeasureIter.js.map +1 -0
  904. package/lib/module/skia/web/JsiSkData.js +8 -0
  905. package/lib/module/skia/web/JsiSkData.js.map +1 -0
  906. package/lib/module/skia/web/JsiSkDataFactory.js +33 -0
  907. package/lib/module/skia/web/JsiSkDataFactory.js.map +1 -0
  908. package/lib/module/skia/web/JsiSkFont.js +99 -0
  909. package/lib/module/skia/web/JsiSkFont.js.map +1 -0
  910. package/lib/module/skia/web/JsiSkFontMgr.js +25 -0
  911. package/lib/module/skia/web/JsiSkFontMgr.js.map +1 -0
  912. package/lib/module/skia/web/JsiSkFontMgrFactory.js +14 -0
  913. package/lib/module/skia/web/JsiSkFontMgrFactory.js.map +1 -0
  914. package/lib/module/skia/web/JsiSkImage.js +46 -0
  915. package/lib/module/skia/web/JsiSkImage.js.map +1 -0
  916. package/lib/module/skia/web/JsiSkImageFactory.js +36 -0
  917. package/lib/module/skia/web/JsiSkImageFactory.js.map +1 -0
  918. package/lib/module/skia/web/JsiSkImageFilter.js +8 -0
  919. package/lib/module/skia/web/JsiSkImageFilter.js.map +1 -0
  920. package/lib/module/skia/web/JsiSkMaskFilter.js +8 -0
  921. package/lib/module/skia/web/JsiSkMaskFilter.js.map +1 -0
  922. package/lib/module/skia/web/JsiSkMaskFilterFactory.js +13 -0
  923. package/lib/module/skia/web/JsiSkMaskFilterFactory.js.map +1 -0
  924. package/lib/module/skia/web/JsiSkMatrix.js +28 -0
  925. package/lib/module/skia/web/JsiSkMatrix.js.map +1 -0
  926. package/lib/module/skia/web/JsiSkPaint.js +91 -0
  927. package/lib/module/skia/web/JsiSkPaint.js.map +1 -0
  928. package/lib/module/skia/web/JsiSkPath.js +311 -0
  929. package/lib/module/skia/web/JsiSkPath.js.map +1 -0
  930. package/lib/module/skia/web/JsiSkPathEffect.js +8 -0
  931. package/lib/module/skia/web/JsiSkPathEffect.js.map +1 -0
  932. package/lib/module/skia/web/JsiSkPathEffectFactory.js +67 -0
  933. package/lib/module/skia/web/JsiSkPathEffectFactory.js.map +1 -0
  934. package/lib/module/skia/web/JsiSkPathFactory.js +47 -0
  935. package/lib/module/skia/web/JsiSkPathFactory.js.map +1 -0
  936. package/lib/module/skia/web/JsiSkPicture.js +18 -0
  937. package/lib/module/skia/web/JsiSkPicture.js.map +1 -0
  938. package/lib/module/skia/web/JsiSkPictureFactory.js +19 -0
  939. package/lib/module/skia/web/JsiSkPictureFactory.js.map +1 -0
  940. package/lib/module/skia/web/JsiSkPictureRecorder.js +18 -0
  941. package/lib/module/skia/web/JsiSkPictureRecorder.js.map +1 -0
  942. package/lib/module/skia/web/JsiSkPoint.js +16 -0
  943. package/lib/module/skia/web/JsiSkPoint.js.map +1 -0
  944. package/lib/module/skia/web/JsiSkRRect.js +21 -0
  945. package/lib/module/skia/web/JsiSkRRect.js.map +1 -0
  946. package/lib/module/skia/web/JsiSkRSXform.js +8 -0
  947. package/lib/module/skia/web/JsiSkRSXform.js.map +1 -0
  948. package/lib/module/skia/web/JsiSkRect.js +32 -0
  949. package/lib/module/skia/web/JsiSkRect.js.map +1 -0
  950. package/lib/module/skia/web/JsiSkRuntimeEffect.js +33 -0
  951. package/lib/module/skia/web/JsiSkRuntimeEffect.js.map +1 -0
  952. package/lib/module/skia/web/JsiSkRuntimeEffectFactory.js +19 -0
  953. package/lib/module/skia/web/JsiSkRuntimeEffectFactory.js.map +1 -0
  954. package/lib/module/skia/web/JsiSkSVGFactory.js +16 -0
  955. package/lib/module/skia/web/JsiSkSVGFactory.js.map +1 -0
  956. package/lib/module/skia/web/JsiSkShader.js +8 -0
  957. package/lib/module/skia/web/JsiSkShader.js.map +1 -0
  958. package/lib/module/skia/web/JsiSkShaderFactory.js +41 -0
  959. package/lib/module/skia/web/JsiSkShaderFactory.js.map +1 -0
  960. package/lib/module/skia/web/JsiSkSurface.js +19 -0
  961. package/lib/module/skia/web/JsiSkSurface.js.map +1 -0
  962. package/lib/module/skia/web/JsiSkSurfaceFactory.js +19 -0
  963. package/lib/module/skia/web/JsiSkSurfaceFactory.js.map +1 -0
  964. package/lib/module/skia/web/JsiSkTextBlob.js +8 -0
  965. package/lib/module/skia/web/JsiSkTextBlob.js.map +1 -0
  966. package/lib/module/skia/web/JsiSkTextBlobFactory.js +25 -0
  967. package/lib/module/skia/web/JsiSkTextBlobFactory.js.map +1 -0
  968. package/lib/module/skia/web/JsiSkTypeface.js +18 -0
  969. package/lib/module/skia/web/JsiSkTypeface.js.map +1 -0
  970. package/lib/module/skia/web/JsiSkTypefaceFactory.js +19 -0
  971. package/lib/module/skia/web/JsiSkTypefaceFactory.js.map +1 -0
  972. package/lib/module/skia/web/JsiSkVertices.js +17 -0
  973. package/lib/module/skia/web/JsiSkVertices.js.map +1 -0
  974. package/lib/module/skia/web/JsiSkVerticesFactory.js +16 -0
  975. package/lib/module/skia/web/JsiSkVerticesFactory.js.map +1 -0
  976. package/lib/module/skia/web/JsiSkia.js +61 -0
  977. package/lib/module/skia/web/JsiSkia.js.map +1 -0
  978. package/lib/module/skia/web/index.js +2 -0
  979. package/lib/module/skia/web/index.js.map +1 -0
  980. package/lib/module/values/hooks/useValue.js.map +1 -1
  981. package/lib/module/values/hooks/useValueEffect.js.map +1 -1
  982. package/lib/module/values/web/RNSkReadonlyValue.js.map +1 -1
  983. package/lib/module/values/web/api.js +2 -2
  984. package/lib/module/values/web/api.js.map +1 -1
  985. package/lib/module/views/SkiaView.js.map +1 -1
  986. package/lib/module/views/SkiaView.web.js +202 -0
  987. package/lib/module/views/SkiaView.web.js.map +1 -0
  988. package/lib/module/views/types.js.map +1 -1
  989. package/lib/module/views/useTouchHandler.js +64 -43
  990. package/lib/module/views/useTouchHandler.js.map +1 -1
  991. package/lib/module/web/index.js +8 -0
  992. package/lib/module/web/index.js.map +1 -0
  993. package/lib/typescript/src/animation/decay/runDecay.d.ts +2 -2
  994. package/lib/typescript/src/animation/functions/index.d.ts +4 -2
  995. package/lib/typescript/src/animation/functions/interpolatePaths.d.ts +17 -0
  996. package/lib/typescript/src/animation/functions/interpolateVector.d.ts +10 -0
  997. package/lib/typescript/src/animation/spring/runSpring.d.ts +2 -2
  998. package/lib/typescript/src/animation/spring/useSpring.d.ts +2 -2
  999. package/lib/typescript/src/animation/timing/createTiming.d.ts +2 -2
  1000. package/lib/typescript/src/animation/timing/runTiming.d.ts +2 -2
  1001. package/lib/typescript/src/animation/timing/useLoop.d.ts +1 -1
  1002. package/lib/typescript/src/animation/timing/useTiming.d.ts +2 -2
  1003. package/lib/typescript/src/index.d.ts +1 -0
  1004. package/lib/typescript/src/renderer/Canvas.d.ts +3 -14
  1005. package/lib/typescript/src/renderer/DependencyManager.d.ts +2 -2
  1006. package/lib/typescript/src/renderer/DrawingContext.d.ts +3 -4
  1007. package/lib/typescript/src/renderer/components/Blend.d.ts +1 -1
  1008. package/lib/typescript/src/renderer/components/Group.d.ts +1 -1
  1009. package/lib/typescript/src/renderer/components/Paint.d.ts +1 -1
  1010. package/lib/typescript/src/renderer/components/Picture.d.ts +1 -1
  1011. package/lib/typescript/src/renderer/components/colorFilters/BlendColor.d.ts +2 -2
  1012. package/lib/typescript/src/renderer/components/colorFilters/Compose.d.ts +2 -2
  1013. package/lib/typescript/src/renderer/components/image/BoxFit.d.ts +13 -3
  1014. package/lib/typescript/src/renderer/components/image/Image.d.ts +1 -1
  1015. package/lib/typescript/src/renderer/components/image/ImageSVG.d.ts +1 -1
  1016. package/lib/typescript/src/renderer/components/image/ImageShader.d.ts +2 -2
  1017. package/lib/typescript/src/renderer/components/imageFilters/Blur.d.ts +1 -1
  1018. package/lib/typescript/src/renderer/components/imageFilters/DisplacementMap.d.ts +1 -1
  1019. package/lib/typescript/src/renderer/components/imageFilters/InnerShadow.d.ts +2 -3
  1020. package/lib/typescript/src/renderer/components/imageFilters/RuntimeShader.d.ts +2 -1
  1021. package/lib/typescript/src/renderer/components/imageFilters/Shadow.d.ts +1 -1
  1022. package/lib/typescript/src/renderer/components/imageFilters/getInput.d.ts +2 -1
  1023. package/lib/typescript/src/renderer/components/maskFilters/Blur.d.ts +1 -1
  1024. package/lib/typescript/src/renderer/components/pathEffects/Line2D.d.ts +1 -1
  1025. package/lib/typescript/src/renderer/components/pathEffects/Path1D.d.ts +1 -1
  1026. package/lib/typescript/src/renderer/components/pathEffects/Path2D.d.ts +1 -1
  1027. package/lib/typescript/src/renderer/components/shaders/Color.d.ts +1 -1
  1028. package/lib/typescript/src/renderer/components/shaders/Gradient.d.ts +4 -4
  1029. package/lib/typescript/src/renderer/components/shaders/LinearGradient.d.ts +2 -1
  1030. package/lib/typescript/src/renderer/components/shaders/RadialGradient.d.ts +2 -1
  1031. package/lib/typescript/src/renderer/components/shaders/Shader.d.ts +2 -9
  1032. package/lib/typescript/src/renderer/components/shaders/SweepGradient.d.ts +2 -1
  1033. package/lib/typescript/src/renderer/components/shaders/TwoPointConicalGradient.d.ts +2 -1
  1034. package/lib/typescript/src/renderer/components/shapes/Box.d.ts +1 -2
  1035. package/lib/typescript/src/renderer/components/shapes/Circle.d.ts +4 -1
  1036. package/lib/typescript/src/renderer/components/shapes/DiffRect.d.ts +1 -1
  1037. package/lib/typescript/src/renderer/components/shapes/FitBox.d.ts +1 -1
  1038. package/lib/typescript/src/renderer/components/shapes/Line.d.ts +2 -1
  1039. package/lib/typescript/src/renderer/components/shapes/Patch.d.ts +3 -3
  1040. package/lib/typescript/src/renderer/components/shapes/Path.d.ts +1 -1
  1041. package/lib/typescript/src/renderer/components/shapes/Points.d.ts +2 -2
  1042. package/lib/typescript/src/renderer/components/shapes/Vertices.d.ts +2 -2
  1043. package/lib/typescript/src/renderer/components/text/Glyphs.d.ts +1 -1
  1044. package/lib/typescript/src/renderer/components/text/TextBlob.d.ts +1 -1
  1045. package/lib/typescript/src/renderer/components/text/TextPath.d.ts +1 -1
  1046. package/lib/typescript/src/renderer/index.d.ts +2 -1
  1047. package/lib/typescript/src/renderer/nodes/Declaration.d.ts +1 -1
  1048. package/lib/typescript/src/renderer/nodes/Node.d.ts +1 -1
  1049. package/lib/typescript/src/renderer/processors/Animations/Animations.d.ts +3 -5
  1050. package/lib/typescript/src/renderer/processors/Circles.d.ts +2 -2
  1051. package/lib/typescript/src/renderer/processors/Clips.d.ts +2 -3
  1052. package/lib/typescript/src/renderer/processors/Color.d.ts +7 -0
  1053. package/lib/typescript/src/renderer/processors/Font.d.ts +2 -3
  1054. package/lib/typescript/src/renderer/processors/Paint.d.ts +3 -3
  1055. package/lib/typescript/src/renderer/processors/Paths.d.ts +2 -2
  1056. package/lib/typescript/src/renderer/processors/Radius.d.ts +2 -2
  1057. package/lib/typescript/src/renderer/processors/Rects.d.ts +4 -13
  1058. package/lib/typescript/src/renderer/processors/Transform.d.ts +3 -4
  1059. package/lib/typescript/src/renderer/processors/index.d.ts +2 -1
  1060. package/lib/typescript/src/renderer/processors/math/Coordinates.d.ts +1 -1
  1061. package/lib/typescript/src/renderer/processors/math/Transforms.d.ts +1 -1
  1062. package/lib/typescript/src/renderer/processors/math/index.d.ts +0 -2
  1063. package/lib/typescript/src/renderer/useCanvas.d.ts +14 -0
  1064. package/lib/typescript/src/skia/Skia.d.ts +2 -35
  1065. package/lib/typescript/src/skia/Skia.web.d.ts +1 -0
  1066. package/lib/typescript/src/skia/core/Data.d.ts +5 -0
  1067. package/lib/typescript/src/skia/core/Font.d.ts +5 -0
  1068. package/lib/typescript/src/skia/core/Image.d.ts +5 -0
  1069. package/lib/typescript/src/skia/core/Matrix.d.ts +2 -0
  1070. package/lib/typescript/src/skia/core/Paint.d.ts +6 -0
  1071. package/lib/typescript/src/skia/core/Path.d.ts +21 -0
  1072. package/lib/typescript/src/skia/core/Picture.d.ts +9 -0
  1073. package/lib/typescript/src/skia/core/RRect.d.ts +2 -0
  1074. package/lib/typescript/src/skia/core/Rect.d.ts +8 -0
  1075. package/lib/typescript/src/skia/core/SVG.d.ts +2 -0
  1076. package/lib/typescript/src/skia/core/Typeface.d.ts +5 -0
  1077. package/lib/typescript/src/skia/core/Vector.d.ts +12 -0
  1078. package/lib/typescript/src/skia/core/index.d.ts +12 -0
  1079. package/lib/typescript/src/skia/index.d.ts +2 -23
  1080. package/lib/typescript/src/skia/{Canvas.d.ts → types/Canvas.d.ts} +0 -0
  1081. package/lib/typescript/src/skia/types/Color.d.ts +2 -0
  1082. package/lib/typescript/src/skia/{ColorFilter → types/ColorFilter}/ColorFilter.d.ts +0 -0
  1083. package/lib/typescript/src/skia/types/ColorFilter/ColorFilterFactory.d.ts +43 -0
  1084. package/lib/typescript/src/skia/{ColorFilter → types/ColorFilter}/index.d.ts +0 -0
  1085. package/lib/typescript/src/skia/types/ContourMeasure.d.ts +40 -0
  1086. package/lib/typescript/src/skia/types/Data/Data.d.ts +5 -0
  1087. package/lib/typescript/src/skia/types/Data/DataFactory.d.ts +18 -0
  1088. package/lib/typescript/src/skia/{Data → types/Data}/index.d.ts +0 -0
  1089. package/lib/typescript/src/skia/types/Font/Font.d.ts +187 -0
  1090. package/lib/typescript/src/skia/types/Font/index.d.ts +1 -0
  1091. package/lib/typescript/src/skia/types/FontMgr/FontMgr.d.ts +18 -0
  1092. package/lib/typescript/src/skia/types/FontMgr/FontMgrFactory.d.ts +4 -0
  1093. package/lib/typescript/src/skia/types/FontMgr/index.d.ts +2 -0
  1094. package/lib/typescript/src/skia/types/Image/Image.d.ts +75 -0
  1095. package/lib/typescript/src/skia/types/Image/ImageFactory.d.ts +62 -0
  1096. package/lib/typescript/src/skia/types/Image/index.d.ts +2 -0
  1097. package/lib/typescript/src/skia/{ImageFilter → types/ImageFilter}/ImageFilter.d.ts +0 -0
  1098. package/lib/typescript/src/skia/types/ImageFilter/ImageFilterFactory.d.ts +130 -0
  1099. package/lib/typescript/src/skia/{ImageFilter → types/ImageFilter}/index.d.ts +0 -0
  1100. package/lib/typescript/src/skia/{JsiInstance.d.ts → types/JsiInstance.d.ts} +0 -0
  1101. package/lib/typescript/src/skia/types/MaskFilter.d.ts +21 -0
  1102. package/lib/typescript/src/skia/types/Matrix.d.ts +29 -0
  1103. package/lib/typescript/src/skia/{Paint → types/Paint}/BlendMode.d.ts +0 -0
  1104. package/lib/typescript/src/skia/types/Paint/Paint.d.ts +127 -0
  1105. package/lib/typescript/src/skia/types/Paint/index.d.ts +2 -0
  1106. package/lib/typescript/src/skia/types/Path/Path.d.ts +462 -0
  1107. package/lib/typescript/src/skia/types/Path/PathFactory.d.ts +29 -0
  1108. package/lib/typescript/src/skia/types/Path/index.d.ts +2 -0
  1109. package/lib/typescript/src/skia/types/PathEffect.d.ts +75 -0
  1110. package/lib/typescript/src/skia/types/Picture/Picture.d.ts +26 -0
  1111. package/lib/typescript/src/skia/{Picture → types/Picture}/PictureFactory.d.ts +0 -0
  1112. package/lib/typescript/src/skia/{Picture → types/Picture}/PictureRecorder.d.ts +0 -0
  1113. package/lib/typescript/src/skia/types/Picture/index.d.ts +3 -0
  1114. package/lib/typescript/src/skia/types/Point.d.ts +10 -0
  1115. package/lib/typescript/src/skia/types/RRect.d.ts +7 -0
  1116. package/lib/typescript/src/skia/{RSXform.d.ts → types/RSXform.d.ts} +0 -0
  1117. package/lib/typescript/src/skia/{Rect.d.ts → types/Rect.d.ts} +0 -0
  1118. package/lib/typescript/src/skia/types/RuntimeEffect/RuntimeEffect.d.ts +47 -0
  1119. package/lib/typescript/src/skia/{RuntimeEffect → types/RuntimeEffect}/RuntimeEffectFactory.d.ts +0 -0
  1120. package/lib/typescript/src/skia/{RuntimeEffect → types/RuntimeEffect}/index.d.ts +0 -0
  1121. package/lib/typescript/src/skia/{SVG → types/SVG}/SVG.d.ts +0 -0
  1122. package/lib/typescript/src/skia/types/SVG/SVGFactory.d.ts +6 -0
  1123. package/lib/typescript/src/skia/types/SVG/index.d.ts +2 -0
  1124. package/lib/typescript/src/skia/types/Shader/Shader.d.ts +11 -0
  1125. package/lib/typescript/src/skia/{Shader → types/Shader}/ShaderFactory.d.ts +0 -0
  1126. package/lib/typescript/src/skia/types/Shader/index.d.ts +2 -0
  1127. package/lib/typescript/src/skia/types/Skia.d.ts +68 -0
  1128. package/lib/typescript/src/skia/{Surface → types/Surface}/Surface.d.ts +0 -0
  1129. package/lib/typescript/src/skia/{Surface → types/Surface}/SurfaceFactory.d.ts +0 -0
  1130. package/lib/typescript/src/skia/{Surface → types/Surface}/index.d.ts +0 -0
  1131. package/lib/typescript/src/skia/{TextBlob.d.ts → types/TextBlob.d.ts} +0 -0
  1132. package/lib/typescript/src/skia/{Typeface → types/Typeface}/Typeface.d.ts +0 -0
  1133. package/lib/typescript/src/skia/types/Typeface/TypefaceFactory.d.ts +5 -0
  1134. package/lib/typescript/src/skia/types/Typeface/index.d.ts +2 -0
  1135. package/lib/typescript/src/skia/{Vertices → types/Vertices}/Vertices.d.ts +0 -0
  1136. package/lib/typescript/src/skia/{Vertices → types/Vertices}/index.d.ts +0 -0
  1137. package/lib/typescript/src/skia/types/index.d.ts +28 -0
  1138. package/lib/typescript/src/skia/web/Host.d.ts +21 -0
  1139. package/lib/typescript/src/skia/web/JsiImageFilterFactory.d.ts +19 -0
  1140. package/lib/typescript/src/skia/web/JsiSkCanvas.d.ts +44 -0
  1141. package/lib/typescript/src/skia/web/JsiSkColor.d.ts +2 -0
  1142. package/lib/typescript/src/skia/web/JsiSkColorFilter.d.ts +6 -0
  1143. package/lib/typescript/src/skia/web/JsiSkColorFilterFactory.d.ts +14 -0
  1144. package/lib/typescript/src/skia/web/JsiSkContourMeasure.d.ts +16 -0
  1145. package/lib/typescript/src/skia/web/JsiSkContourMeasureIter.d.ts +8 -0
  1146. package/lib/typescript/src/skia/web/JsiSkData.d.ts +8 -0
  1147. package/lib/typescript/src/skia/web/JsiSkDataFactory.d.ts +19 -0
  1148. package/lib/typescript/src/skia/web/JsiSkFont.d.ts +33 -0
  1149. package/lib/typescript/src/skia/web/JsiSkFontMgr.d.ts +9 -0
  1150. package/lib/typescript/src/skia/web/JsiSkFontMgrFactory.d.ts +8 -0
  1151. package/lib/typescript/src/skia/web/JsiSkImage.d.ts +12 -0
  1152. package/lib/typescript/src/skia/web/JsiSkImageFactory.d.ts +10 -0
  1153. package/lib/typescript/src/skia/web/JsiSkImageFilter.d.ts +6 -0
  1154. package/lib/typescript/src/skia/web/JsiSkMaskFilter.d.ts +6 -0
  1155. package/lib/typescript/src/skia/web/JsiSkMaskFilterFactory.d.ts +9 -0
  1156. package/lib/typescript/src/skia/web/JsiSkMatrix.d.ts +11 -0
  1157. package/lib/typescript/src/skia/web/JsiSkPaint.d.ts +26 -0
  1158. package/lib/typescript/src/skia/web/JsiSkPath.d.ts +56 -0
  1159. package/lib/typescript/src/skia/web/JsiSkPathEffect.d.ts +6 -0
  1160. package/lib/typescript/src/skia/web/JsiSkPathEffectFactory.d.ts +15 -0
  1161. package/lib/typescript/src/skia/web/JsiSkPathFactory.d.ts +13 -0
  1162. package/lib/typescript/src/skia/web/JsiSkPicture.d.ts +9 -0
  1163. package/lib/typescript/src/skia/web/JsiSkPictureFactory.d.ts +8 -0
  1164. package/lib/typescript/src/skia/web/JsiSkPictureRecorder.d.ts +11 -0
  1165. package/lib/typescript/src/skia/web/JsiSkPoint.d.ts +8 -0
  1166. package/lib/typescript/src/skia/web/JsiSkRRect.d.ts +10 -0
  1167. package/lib/typescript/src/skia/web/JsiSkRSXform.d.ts +8 -0
  1168. package/lib/typescript/src/skia/web/JsiSkRect.d.ts +11 -0
  1169. package/lib/typescript/src/skia/web/JsiSkRuntimeEffect.d.ts +14 -0
  1170. package/lib/typescript/src/skia/web/JsiSkRuntimeEffectFactory.d.ts +8 -0
  1171. package/lib/typescript/src/skia/web/JsiSkSVGFactory.d.ts +9 -0
  1172. package/lib/typescript/src/skia/web/JsiSkShader.d.ts +6 -0
  1173. package/lib/typescript/src/skia/web/JsiSkShaderFactory.d.ts +16 -0
  1174. package/lib/typescript/src/skia/web/JsiSkSurface.d.ts +8 -0
  1175. package/lib/typescript/src/skia/web/JsiSkSurfaceFactory.d.ts +8 -0
  1176. package/lib/typescript/src/skia/web/JsiSkTextBlob.d.ts +6 -0
  1177. package/lib/typescript/src/skia/web/JsiSkTextBlobFactory.d.ts +12 -0
  1178. package/lib/typescript/src/skia/web/JsiSkTypeface.d.ts +8 -0
  1179. package/lib/typescript/src/skia/web/JsiSkTypefaceFactory.d.ts +8 -0
  1180. package/lib/typescript/src/skia/web/JsiSkVertices.d.ts +9 -0
  1181. package/lib/typescript/src/skia/web/JsiSkVerticesFactory.d.ts +4 -0
  1182. package/lib/typescript/src/skia/web/JsiSkia.d.ts +3 -0
  1183. package/lib/typescript/src/skia/web/index.d.ts +1 -0
  1184. package/lib/typescript/src/values/api.d.ts +1 -1
  1185. package/lib/typescript/src/values/api.web.d.ts +1 -1
  1186. package/lib/typescript/src/values/hooks/useDerivedValue.d.ts +1 -1
  1187. package/lib/typescript/src/values/hooks/useValue.d.ts +2 -2
  1188. package/lib/typescript/src/values/hooks/useValueEffect.d.ts +2 -2
  1189. package/lib/typescript/src/values/types.d.ts +5 -5
  1190. package/lib/typescript/src/values/web/RNSkReadonlyValue.d.ts +2 -2
  1191. package/lib/typescript/src/views/SkiaView.d.ts +4 -4
  1192. package/lib/typescript/src/views/SkiaView.web.d.ts +56 -0
  1193. package/lib/typescript/src/views/types.d.ts +4 -4
  1194. package/lib/typescript/src/views/useTouchHandler.d.ts +11 -1
  1195. package/lib/typescript/src/web/index.d.ts +5 -0
  1196. package/libs/android/arm64-v8a/libskia.a +0 -0
  1197. package/libs/android/arm64-v8a/libsvg.a +0 -0
  1198. package/libs/android/armeabi-v7a/libskia.a +0 -0
  1199. package/libs/android/armeabi-v7a/libsvg.a +0 -0
  1200. package/libs/android/x86/libskia.a +0 -0
  1201. package/libs/android/x86/libsvg.a +0 -0
  1202. package/libs/android/x86_64/libskia.a +0 -0
  1203. package/libs/android/x86_64/libsvg.a +0 -0
  1204. package/libs/ios/libskia.xcframework/Info.plist +5 -5
  1205. package/libs/ios/libskia.xcframework/ios-arm64_arm64e/libskia.a +0 -0
  1206. package/libs/ios/libskia.xcframework/ios-arm64_arm64e_x86_64-simulator/libskia.a +0 -0
  1207. package/libs/ios/libskshaper.xcframework/Info.plist +5 -5
  1208. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e/libskshaper.a +0 -0
  1209. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e_x86_64-simulator/libskshaper.a +0 -0
  1210. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e/libsvg.a +0 -0
  1211. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsvg.a +0 -0
  1212. package/package.json +3 -2
  1213. package/src/animation/decay/runDecay.ts +5 -2
  1214. package/src/animation/functions/index.ts +4 -2
  1215. package/src/animation/functions/interpolateColors.ts +1 -2
  1216. package/src/animation/functions/interpolatePaths.ts +38 -0
  1217. package/src/animation/functions/interpolateVector.ts +26 -0
  1218. package/src/animation/spring/runSpring.ts +2 -2
  1219. package/src/animation/spring/useSpring.ts +2 -2
  1220. package/src/animation/timing/createTiming.ts +2 -2
  1221. package/src/animation/timing/runTiming.ts +2 -2
  1222. package/src/animation/timing/useTiming.ts +2 -2
  1223. package/src/index.ts +1 -1
  1224. package/src/renderer/Canvas.tsx +13 -36
  1225. package/src/renderer/DependencyManager.tsx +2 -2
  1226. package/src/renderer/DrawingContext.ts +3 -5
  1227. package/src/renderer/HostConfig.ts +2 -2
  1228. package/src/renderer/components/Blend.tsx +12 -11
  1229. package/src/renderer/components/Compose.tsx +2 -4
  1230. package/src/renderer/components/Group.tsx +11 -6
  1231. package/src/renderer/components/Mask.tsx +5 -3
  1232. package/src/renderer/components/Paint.tsx +5 -4
  1233. package/src/renderer/components/Picture.tsx +1 -1
  1234. package/src/renderer/components/backdrop/BackdropFilter.tsx +1 -1
  1235. package/src/renderer/components/colorFilters/BlendColor.tsx +4 -4
  1236. package/src/renderer/components/colorFilters/Compose.ts +3 -2
  1237. package/src/renderer/components/colorFilters/Lerp.tsx +3 -3
  1238. package/src/renderer/components/colorFilters/LinearToSRGBGamma.tsx +2 -3
  1239. package/src/renderer/components/colorFilters/LumaColorFilter.tsx +2 -3
  1240. package/src/renderer/components/colorFilters/Matrix.tsx +2 -3
  1241. package/src/renderer/components/colorFilters/SRGBToLinearGamma.tsx +2 -3
  1242. package/src/renderer/components/image/BoxFit.ts +7 -13
  1243. package/src/renderer/components/image/Image.tsx +3 -3
  1244. package/src/renderer/components/image/ImageSVG.tsx +3 -3
  1245. package/src/renderer/components/image/ImageShader.tsx +8 -7
  1246. package/src/renderer/components/imageFilters/Blur.tsx +12 -10
  1247. package/src/renderer/components/imageFilters/DisplacementMap.tsx +4 -5
  1248. package/src/renderer/components/imageFilters/InnerShadow.tsx +4 -4
  1249. package/src/renderer/components/imageFilters/Morphology.tsx +3 -4
  1250. package/src/renderer/components/imageFilters/Offset.tsx +5 -4
  1251. package/src/renderer/components/imageFilters/RuntimeShader.tsx +12 -4
  1252. package/src/renderer/components/imageFilters/Shadow.tsx +10 -7
  1253. package/src/renderer/components/imageFilters/getInput.ts +3 -2
  1254. package/src/renderer/components/maskFilters/Blur.tsx +2 -3
  1255. package/src/renderer/components/pathEffects/Corner.tsx +2 -3
  1256. package/src/renderer/components/pathEffects/Dash.tsx +2 -3
  1257. package/src/renderer/components/pathEffects/Discrete.tsx +2 -3
  1258. package/src/renderer/components/pathEffects/Line2D.tsx +3 -4
  1259. package/src/renderer/components/pathEffects/Path1D.tsx +3 -4
  1260. package/src/renderer/components/pathEffects/Path2D.tsx +4 -5
  1261. package/src/renderer/components/pathEffects/Sum.tsx +7 -6
  1262. package/src/renderer/components/shaders/Color.tsx +7 -5
  1263. package/src/renderer/components/shaders/FractalNoise.tsx +1 -2
  1264. package/src/renderer/components/shaders/Gradient.ts +7 -10
  1265. package/src/renderer/components/shaders/LinearGradient.tsx +4 -4
  1266. package/src/renderer/components/shaders/RadialGradient.tsx +4 -4
  1267. package/src/renderer/components/shaders/Shader.tsx +6 -58
  1268. package/src/renderer/components/shaders/SweepGradient.tsx +4 -4
  1269. package/src/renderer/components/shaders/Turbulence.tsx +1 -2
  1270. package/src/renderer/components/shaders/TwoPointConicalGradient.tsx +4 -4
  1271. package/src/renderer/components/shapes/Box.tsx +36 -19
  1272. package/src/renderer/components/shapes/Circle.tsx +3 -4
  1273. package/src/renderer/components/shapes/DiffRect.tsx +1 -1
  1274. package/src/renderer/components/shapes/FitBox.tsx +1 -1
  1275. package/src/renderer/components/shapes/Line.tsx +2 -1
  1276. package/src/renderer/components/shapes/Oval.tsx +6 -4
  1277. package/src/renderer/components/shapes/Patch.tsx +6 -11
  1278. package/src/renderer/components/shapes/Path.tsx +3 -3
  1279. package/src/renderer/components/shapes/Points.tsx +2 -2
  1280. package/src/renderer/components/shapes/Rect.tsx +6 -4
  1281. package/src/renderer/components/shapes/RoundedRect.tsx +2 -2
  1282. package/src/renderer/components/shapes/Vertices.tsx +5 -4
  1283. package/src/renderer/components/text/Glyphs.tsx +6 -3
  1284. package/src/renderer/components/text/Text.tsx +2 -2
  1285. package/src/renderer/components/text/TextBlob.tsx +1 -1
  1286. package/src/renderer/components/text/TextPath.tsx +3 -5
  1287. package/src/renderer/index.ts +2 -1
  1288. package/src/renderer/nodes/Declaration.tsx +1 -1
  1289. package/src/renderer/nodes/Drawing.tsx +3 -2
  1290. package/src/renderer/nodes/Node.ts +1 -1
  1291. package/src/renderer/processors/Animations/Animations.ts +5 -11
  1292. package/src/renderer/processors/Circles.ts +4 -4
  1293. package/src/renderer/processors/Clips.ts +9 -5
  1294. package/src/renderer/processors/Color.ts +15 -0
  1295. package/src/renderer/processors/Font.ts +10 -4
  1296. package/src/renderer/processors/Paint.ts +12 -7
  1297. package/src/renderer/processors/Paths.ts +3 -3
  1298. package/src/renderer/processors/Radius.ts +3 -4
  1299. package/src/renderer/processors/Rects.ts +12 -43
  1300. package/src/renderer/processors/Transform.ts +28 -19
  1301. package/src/renderer/processors/index.ts +2 -1
  1302. package/src/renderer/processors/math/Coordinates.ts +1 -1
  1303. package/src/renderer/processors/math/Transforms.ts +2 -1
  1304. package/src/renderer/processors/math/index.ts +0 -2
  1305. package/src/renderer/useCanvas.ts +21 -0
  1306. package/src/skia/NativeSetup.ts +2 -2
  1307. package/src/skia/Skia.ts +2 -38
  1308. package/src/skia/Skia.web.ts +3 -0
  1309. package/src/skia/core/Data.ts +81 -0
  1310. package/src/skia/core/Font.ts +28 -0
  1311. package/src/skia/core/Image.ts +12 -0
  1312. package/src/skia/core/Matrix.ts +6 -0
  1313. package/src/skia/core/Paint.ts +22 -0
  1314. package/src/skia/core/Path.ts +60 -0
  1315. package/src/skia/core/Picture.ts +25 -0
  1316. package/src/skia/core/RRect.tsx +5 -0
  1317. package/src/skia/core/Rect.ts +33 -0
  1318. package/src/skia/core/SVG.ts +9 -0
  1319. package/src/skia/core/Typeface.ts +11 -0
  1320. package/src/skia/core/Vector.ts +11 -0
  1321. package/src/skia/core/index.ts +12 -0
  1322. package/src/skia/index.ts +2 -23
  1323. package/src/skia/{Canvas.ts → types/Canvas.ts} +0 -0
  1324. package/src/skia/types/Color.ts +4 -0
  1325. package/src/skia/{ColorFilter → types/ColorFilter}/ColorFilter.ts +0 -0
  1326. package/src/skia/types/ColorFilter/ColorFilterFactory.ts +52 -0
  1327. package/src/skia/{ColorFilter → types/ColorFilter}/index.ts +0 -0
  1328. package/src/skia/types/ContourMeasure.tsx +47 -0
  1329. package/src/skia/types/Data/Data.ts +5 -0
  1330. package/src/skia/types/Data/DataFactory.ts +19 -0
  1331. package/src/skia/{Data → types/Data}/index.ts +0 -0
  1332. package/src/skia/types/Font/Font.ts +230 -0
  1333. package/src/skia/types/Font/index.ts +1 -0
  1334. package/src/skia/types/FontMgr/FontMgr.ts +24 -0
  1335. package/src/skia/types/FontMgr/FontMgrFactory.ts +12 -0
  1336. package/src/skia/types/FontMgr/index.ts +2 -0
  1337. package/src/skia/types/Image/Image.ts +96 -0
  1338. package/src/skia/types/Image/ImageFactory.ts +78 -0
  1339. package/src/skia/types/Image/index.ts +2 -0
  1340. package/src/skia/{ImageFilter → types/ImageFilter}/ImageFilter.ts +0 -0
  1341. package/src/skia/types/ImageFilter/ImageFilterFactory.ts +192 -0
  1342. package/src/skia/{ImageFilter → types/ImageFilter}/index.ts +0 -0
  1343. package/src/skia/{JsiInstance.ts → types/JsiInstance.ts} +0 -0
  1344. package/src/skia/types/MaskFilter.ts +27 -0
  1345. package/src/skia/types/Matrix.ts +95 -0
  1346. package/src/skia/{Paint → types/Paint}/BlendMode.ts +0 -0
  1347. package/src/skia/types/Paint/Paint.ts +153 -0
  1348. package/src/skia/types/Paint/index.ts +2 -0
  1349. package/src/skia/types/Path/Path.ts +565 -0
  1350. package/src/skia/types/Path/PathFactory.ts +34 -0
  1351. package/src/skia/types/Path/index.ts +2 -0
  1352. package/src/skia/types/PathEffect.ts +97 -0
  1353. package/src/skia/types/Picture/Picture.ts +34 -0
  1354. package/src/skia/{Picture → types/Picture}/PictureFactory.ts +0 -0
  1355. package/src/skia/{Picture → types/Picture}/PictureRecorder.ts +0 -0
  1356. package/src/skia/types/Picture/index.ts +3 -0
  1357. package/src/skia/types/Point.ts +12 -0
  1358. package/src/skia/types/RRect.ts +12 -0
  1359. package/src/skia/{RSXform.ts → types/RSXform.ts} +0 -0
  1360. package/src/skia/{Rect.ts → types/Rect.ts} +0 -0
  1361. package/src/skia/types/RuntimeEffect/RuntimeEffect.ts +60 -0
  1362. package/src/skia/{RuntimeEffect → types/RuntimeEffect}/RuntimeEffectFactory.ts +0 -0
  1363. package/src/skia/{RuntimeEffect → types/RuntimeEffect}/index.ts +0 -0
  1364. package/src/skia/{SVG → types/SVG}/SVG.ts +0 -0
  1365. package/src/skia/types/SVG/SVGFactory.ts +8 -0
  1366. package/src/skia/types/SVG/index.ts +2 -0
  1367. package/src/skia/types/Shader/Shader.ts +67 -0
  1368. package/src/skia/{Shader → types/Shader}/ShaderFactory.ts +0 -0
  1369. package/src/skia/types/Shader/index.ts +2 -0
  1370. package/src/skia/types/Skia.ts +84 -0
  1371. package/src/skia/{Surface → types/Surface}/Surface.ts +0 -0
  1372. package/src/skia/{Surface → types/Surface}/SurfaceFactory.ts +0 -0
  1373. package/src/skia/{Surface → types/Surface}/index.ts +0 -0
  1374. package/src/skia/{TextBlob.ts → types/TextBlob.ts} +0 -0
  1375. package/src/skia/{Typeface → types/Typeface}/Typeface.ts +0 -0
  1376. package/src/skia/types/Typeface/TypefaceFactory.ts +7 -0
  1377. package/src/skia/types/Typeface/index.ts +2 -0
  1378. package/src/skia/{Vertices → types/Vertices}/Vertices.tsx +0 -0
  1379. package/src/skia/{Vertices → types/Vertices}/index.ts +0 -0
  1380. package/src/skia/types/index.ts +28 -0
  1381. package/src/skia/web/Host.ts +56 -0
  1382. package/src/skia/web/JsiImageFilterFactory.ts +144 -0
  1383. package/src/skia/web/JsiSkCanvas.ts +330 -0
  1384. package/src/skia/web/JsiSkColor.ts +327 -0
  1385. package/src/skia/web/JsiSkColorFilter.ts +14 -0
  1386. package/src/skia/web/JsiSkColorFilterFactory.ts +67 -0
  1387. package/src/skia/web/JsiSkContourMeasure.ts +35 -0
  1388. package/src/skia/web/JsiSkContourMeasureIter.ts +23 -0
  1389. package/src/skia/web/JsiSkData.ts +13 -0
  1390. package/src/skia/web/JsiSkDataFactory.ts +35 -0
  1391. package/src/skia/web/JsiSkFont.ts +124 -0
  1392. package/src/skia/web/JsiSkFontMgr.ts +42 -0
  1393. package/src/skia/web/JsiSkFontMgrFactory.ts +18 -0
  1394. package/src/skia/web/JsiSkImage.ts +66 -0
  1395. package/src/skia/web/JsiSkImageFactory.ts +40 -0
  1396. package/src/skia/web/JsiSkImageFilter.ts +14 -0
  1397. package/src/skia/web/JsiSkMaskFilter.ts +14 -0
  1398. package/src/skia/web/JsiSkMaskFilterFactory.ts +20 -0
  1399. package/src/skia/web/JsiSkMatrix.ts +54 -0
  1400. package/src/skia/web/JsiSkPaint.ts +104 -0
  1401. package/src/skia/web/JsiSkPath.ts +369 -0
  1402. package/src/skia/web/JsiSkPathEffect.ts +14 -0
  1403. package/src/skia/web/JsiSkPathEffectFactory.ts +85 -0
  1404. package/src/skia/web/JsiSkPathFactory.ts +54 -0
  1405. package/src/skia/web/JsiSkPicture.ts +45 -0
  1406. package/src/skia/web/JsiSkPictureFactory.ts +20 -0
  1407. package/src/skia/web/JsiSkPictureRecorder.ts +31 -0
  1408. package/src/skia/web/JsiSkPoint.ts +19 -0
  1409. package/src/skia/web/JsiSkRRect.ts +27 -0
  1410. package/src/skia/web/JsiSkRSXform.ts +16 -0
  1411. package/src/skia/web/JsiSkRect.ts +37 -0
  1412. package/src/skia/web/JsiSkRuntimeEffect.ts +57 -0
  1413. package/src/skia/web/JsiSkRuntimeEffectFactory.ts +23 -0
  1414. package/src/skia/web/JsiSkSVGFactory.ts +20 -0
  1415. package/src/skia/web/JsiSkShader.ts +14 -0
  1416. package/src/skia/web/JsiSkShaderFactory.ts +178 -0
  1417. package/src/skia/web/JsiSkSurface.ts +25 -0
  1418. package/src/skia/web/JsiSkSurfaceFactory.ts +20 -0
  1419. package/src/skia/web/JsiSkTextBlob.ts +14 -0
  1420. package/src/skia/web/JsiSkTextBlobFactory.ts +49 -0
  1421. package/src/skia/web/JsiSkTypeface.ts +28 -0
  1422. package/src/skia/web/JsiSkTypefaceFactory.tsx +20 -0
  1423. package/src/skia/web/JsiSkVertices.ts +23 -0
  1424. package/src/skia/web/JsiSkVerticesFactory.ts +27 -0
  1425. package/src/skia/web/JsiSkia.ts +98 -0
  1426. package/src/skia/web/index.ts +1 -0
  1427. package/src/values/hooks/useValue.ts +2 -2
  1428. package/src/values/hooks/useValueEffect.ts +2 -5
  1429. package/src/values/types.ts +6 -6
  1430. package/src/values/web/RNSkReadonlyValue.ts +2 -2
  1431. package/src/values/web/api.ts +6 -6
  1432. package/src/views/SkiaView.tsx +3 -3
  1433. package/src/views/SkiaView.web.tsx +192 -0
  1434. package/src/views/types.ts +4 -4
  1435. package/src/views/useTouchHandler.ts +82 -51
  1436. package/src/web/index.ts +13 -0
  1437. package/cpp/skia/include/core/SkCustomMesh.h +0 -202
  1438. package/cpp/skia/include/core/SkStringView.h +0 -185
  1439. package/cpp/skia/include/private/GrContext_Base.h +0 -92
  1440. package/cpp/skia/include/private/GrGLTypesPriv.h +0 -107
  1441. package/cpp/skia/include/private/GrImageContext.h +0 -55
  1442. package/cpp/skia/include/private/GrSingleOwner.h +0 -65
  1443. package/cpp/skia/include/private/GrTypesPriv.h +0 -1354
  1444. package/cpp/skia/include/private/SkPaintParamsKey.h +0 -110
  1445. package/cpp/skia/include/private/SkShaderCodeDictionary.h +0 -63
  1446. package/cpp/skia/include/private/SkTOptional.h +0 -362
  1447. package/lib/commonjs/renderer/processors/math/Matrix3.js +0 -66
  1448. package/lib/commonjs/renderer/processors/math/Matrix3.js.map +0 -1
  1449. package/lib/commonjs/renderer/processors/math/Vector.js +0 -60
  1450. package/lib/commonjs/renderer/processors/math/Vector.js.map +0 -1
  1451. package/lib/commonjs/skia/Color.js +0 -31
  1452. package/lib/commonjs/skia/Color.js.map +0 -1
  1453. package/lib/commonjs/skia/Data/Data.js +0 -53
  1454. package/lib/commonjs/skia/Data/Data.js.map +0 -1
  1455. package/lib/commonjs/skia/Font/Font.js.map +0 -1
  1456. package/lib/commonjs/skia/Font/index.js +0 -32
  1457. package/lib/commonjs/skia/Font/index.js.map +0 -1
  1458. package/lib/commonjs/skia/Font/useFont.js +0 -36
  1459. package/lib/commonjs/skia/Font/useFont.js.map +0 -1
  1460. package/lib/commonjs/skia/FontMgr/index.js +0 -19
  1461. package/lib/commonjs/skia/FontMgr/index.js.map +0 -1
  1462. package/lib/commonjs/skia/Image/Image.js.map +0 -1
  1463. package/lib/commonjs/skia/Image/ImageFactory.js.map +0 -1
  1464. package/lib/commonjs/skia/Image/index.js +0 -45
  1465. package/lib/commonjs/skia/Image/index.js.map +0 -1
  1466. package/lib/commonjs/skia/Image/useImage.js +0 -18
  1467. package/lib/commonjs/skia/Image/useImage.js.map +0 -1
  1468. package/lib/commonjs/skia/ImageFilter/ImageFilterFactory.js.map +0 -1
  1469. package/lib/commonjs/skia/MaskFilter.js.map +0 -1
  1470. package/lib/commonjs/skia/Matrix.js +0 -21
  1471. package/lib/commonjs/skia/Matrix.js.map +0 -1
  1472. package/lib/commonjs/skia/Paint/Paint.js +0 -48
  1473. package/lib/commonjs/skia/Paint/Paint.js.map +0 -1
  1474. package/lib/commonjs/skia/Paint/index.js +0 -45
  1475. package/lib/commonjs/skia/Paint/index.js.map +0 -1
  1476. package/lib/commonjs/skia/Paint/usePaint.js +0 -26
  1477. package/lib/commonjs/skia/Paint/usePaint.js.map +0 -1
  1478. package/lib/commonjs/skia/Path/Path.js +0 -47
  1479. package/lib/commonjs/skia/Path/Path.js.map +0 -1
  1480. package/lib/commonjs/skia/Path/index.js +0 -45
  1481. package/lib/commonjs/skia/Path/index.js.map +0 -1
  1482. package/lib/commonjs/skia/Path/usePath.js +0 -60
  1483. package/lib/commonjs/skia/Path/usePath.js.map +0 -1
  1484. package/lib/commonjs/skia/PathEffect.js.map +0 -1
  1485. package/lib/commonjs/skia/Picture/index.js +0 -58
  1486. package/lib/commonjs/skia/Picture/index.js.map +0 -1
  1487. package/lib/commonjs/skia/Picture/usePicture.js +0 -30
  1488. package/lib/commonjs/skia/Picture/usePicture.js.map +0 -1
  1489. package/lib/commonjs/skia/Point.js.map +0 -1
  1490. package/lib/commonjs/skia/RRect.js +0 -6
  1491. package/lib/commonjs/skia/SVG/index.js +0 -45
  1492. package/lib/commonjs/skia/SVG/index.js.map +0 -1
  1493. package/lib/commonjs/skia/SVG/useSvg.js +0 -15
  1494. package/lib/commonjs/skia/SVG/useSvg.js.map +0 -1
  1495. package/lib/commonjs/skia/Shader/Shader.js +0 -11
  1496. package/lib/commonjs/skia/Shader/Shader.js.map +0 -1
  1497. package/lib/commonjs/skia/Shader/index.js +0 -45
  1498. package/lib/commonjs/skia/Shader/index.js.map +0 -1
  1499. package/lib/commonjs/skia/Shader/useShader.js +0 -18
  1500. package/lib/commonjs/skia/Shader/useShader.js.map +0 -1
  1501. package/lib/commonjs/skia/SkiaApi.js +0 -4
  1502. package/lib/commonjs/skia/SkiaApi.js.map +0 -1
  1503. package/lib/commonjs/skia/Typeface/index.js +0 -45
  1504. package/lib/commonjs/skia/Typeface/index.js.map +0 -1
  1505. package/lib/commonjs/skia/Typeface/useTypeface.js +0 -18
  1506. package/lib/commonjs/skia/Typeface/useTypeface.js.map +0 -1
  1507. package/lib/module/renderer/processors/math/Matrix3.js +0 -55
  1508. package/lib/module/renderer/processors/math/Matrix3.js.map +0 -1
  1509. package/lib/module/renderer/processors/math/Vector.js +0 -28
  1510. package/lib/module/renderer/processors/math/Vector.js.map +0 -1
  1511. package/lib/module/skia/Color.js +0 -13
  1512. package/lib/module/skia/Color.js.map +0 -1
  1513. package/lib/module/skia/Data/Data.js +0 -35
  1514. package/lib/module/skia/Data/Data.js.map +0 -1
  1515. package/lib/module/skia/Font/Font.js.map +0 -1
  1516. package/lib/module/skia/Font/index.js +0 -3
  1517. package/lib/module/skia/Font/index.js.map +0 -1
  1518. package/lib/module/skia/Font/useFont.js +0 -24
  1519. package/lib/module/skia/Font/useFont.js.map +0 -1
  1520. package/lib/module/skia/FontMgr/index.js +0 -2
  1521. package/lib/module/skia/FontMgr/index.js.map +0 -1
  1522. package/lib/module/skia/Image/Image.js.map +0 -1
  1523. package/lib/module/skia/Image/ImageFactory.js.map +0 -1
  1524. package/lib/module/skia/Image/index.js +0 -4
  1525. package/lib/module/skia/Image/index.js.map +0 -1
  1526. package/lib/module/skia/Image/useImage.js +0 -8
  1527. package/lib/module/skia/Image/useImage.js.map +0 -1
  1528. package/lib/module/skia/ImageFilter/ImageFilterFactory.js.map +0 -1
  1529. package/lib/module/skia/MaskFilter.js.map +0 -1
  1530. package/lib/module/skia/Matrix.js +0 -14
  1531. package/lib/module/skia/Matrix.js.map +0 -1
  1532. package/lib/module/skia/Paint/Paint.js +0 -31
  1533. package/lib/module/skia/Paint/Paint.js.map +0 -1
  1534. package/lib/module/skia/Paint/index.js +0 -4
  1535. package/lib/module/skia/Paint/index.js.map +0 -1
  1536. package/lib/module/skia/Paint/usePaint.js +0 -16
  1537. package/lib/module/skia/Paint/usePaint.js.map +0 -1
  1538. package/lib/module/skia/Path/Path.js +0 -35
  1539. package/lib/module/skia/Path/Path.js.map +0 -1
  1540. package/lib/module/skia/Path/index.js +0 -4
  1541. package/lib/module/skia/Path/index.js.map +0 -1
  1542. package/lib/module/skia/Path/usePath.js +0 -44
  1543. package/lib/module/skia/Path/usePath.js.map +0 -1
  1544. package/lib/module/skia/PathEffect.js.map +0 -1
  1545. package/lib/module/skia/Picture/index.js +0 -5
  1546. package/lib/module/skia/Picture/index.js.map +0 -1
  1547. package/lib/module/skia/Picture/usePicture.js +0 -19
  1548. package/lib/module/skia/Picture/usePicture.js.map +0 -1
  1549. package/lib/module/skia/Point.js.map +0 -1
  1550. package/lib/module/skia/RRect.js +0 -2
  1551. package/lib/module/skia/SVG/index.js +0 -4
  1552. package/lib/module/skia/SVG/index.js.map +0 -1
  1553. package/lib/module/skia/SVG/useSvg.js +0 -4
  1554. package/lib/module/skia/SVG/useSvg.js.map +0 -1
  1555. package/lib/module/skia/Shader/Shader.js +0 -2
  1556. package/lib/module/skia/Shader/Shader.js.map +0 -1
  1557. package/lib/module/skia/Shader/index.js +0 -4
  1558. package/lib/module/skia/Shader/index.js.map +0 -1
  1559. package/lib/module/skia/Shader/useShader.js +0 -7
  1560. package/lib/module/skia/Shader/useShader.js.map +0 -1
  1561. package/lib/module/skia/SkiaApi.js +0 -2
  1562. package/lib/module/skia/SkiaApi.js.map +0 -1
  1563. package/lib/module/skia/Typeface/index.js +0 -4
  1564. package/lib/module/skia/Typeface/index.js.map +0 -1
  1565. package/lib/module/skia/Typeface/useTypeface.js +0 -8
  1566. package/lib/module/skia/Typeface/useTypeface.js.map +0 -1
  1567. package/lib/typescript/src/renderer/processors/math/Matrix3.d.ts +0 -10
  1568. package/lib/typescript/src/renderer/processors/math/Vector.d.ts +0 -23
  1569. package/lib/typescript/src/skia/Color.d.ts +0 -8
  1570. package/lib/typescript/src/skia/ColorFilter/ColorFilterFactory.d.ts +0 -43
  1571. package/lib/typescript/src/skia/ContourMeasure.d.ts +0 -42
  1572. package/lib/typescript/src/skia/Data/Data.d.ts +0 -9
  1573. package/lib/typescript/src/skia/Data/DataFactory.d.ts +0 -18
  1574. package/lib/typescript/src/skia/Font/Font.d.ts +0 -187
  1575. package/lib/typescript/src/skia/Font/index.d.ts +0 -2
  1576. package/lib/typescript/src/skia/Font/useFont.d.ts +0 -6
  1577. package/lib/typescript/src/skia/FontMgr/FontMgr.d.ts +0 -18
  1578. package/lib/typescript/src/skia/FontMgr/FontMgrFactory.d.ts +0 -4
  1579. package/lib/typescript/src/skia/FontMgr/index.d.ts +0 -1
  1580. package/lib/typescript/src/skia/Image/Image.d.ts +0 -75
  1581. package/lib/typescript/src/skia/Image/ImageFactory.d.ts +0 -62
  1582. package/lib/typescript/src/skia/Image/index.d.ts +0 -3
  1583. package/lib/typescript/src/skia/Image/useImage.d.ts +0 -5
  1584. package/lib/typescript/src/skia/ImageFilter/ImageFilterFactory.d.ts +0 -130
  1585. package/lib/typescript/src/skia/MaskFilter.d.ts +0 -21
  1586. package/lib/typescript/src/skia/Matrix.d.ts +0 -28
  1587. package/lib/typescript/src/skia/Paint/Paint.d.ts +0 -128
  1588. package/lib/typescript/src/skia/Paint/index.d.ts +0 -3
  1589. package/lib/typescript/src/skia/Paint/usePaint.d.ts +0 -6
  1590. package/lib/typescript/src/skia/Path/Path.d.ts +0 -456
  1591. package/lib/typescript/src/skia/Path/PathFactory.d.ts +0 -24
  1592. package/lib/typescript/src/skia/Path/index.d.ts +0 -3
  1593. package/lib/typescript/src/skia/Path/usePath.d.ts +0 -22
  1594. package/lib/typescript/src/skia/PathEffect.d.ts +0 -75
  1595. package/lib/typescript/src/skia/Picture/Picture.d.ts +0 -26
  1596. package/lib/typescript/src/skia/Picture/index.d.ts +0 -4
  1597. package/lib/typescript/src/skia/Picture/usePicture.d.ts +0 -11
  1598. package/lib/typescript/src/skia/Point.d.ts +0 -9
  1599. package/lib/typescript/src/skia/RRect.d.ts +0 -6
  1600. package/lib/typescript/src/skia/RuntimeEffect/RuntimeEffect.d.ts +0 -48
  1601. package/lib/typescript/src/skia/SVG/SVGFactory.d.ts +0 -6
  1602. package/lib/typescript/src/skia/SVG/index.d.ts +0 -3
  1603. package/lib/typescript/src/skia/SVG/useSvg.d.ts +0 -2
  1604. package/lib/typescript/src/skia/Shader/Shader.d.ts +0 -3
  1605. package/lib/typescript/src/skia/Shader/index.d.ts +0 -3
  1606. package/lib/typescript/src/skia/Shader/useShader.d.ts +0 -1
  1607. package/lib/typescript/src/skia/SkiaApi.d.ts +0 -71
  1608. package/lib/typescript/src/skia/Typeface/TypefaceFactory.d.ts +0 -5
  1609. package/lib/typescript/src/skia/Typeface/index.d.ts +0 -3
  1610. package/lib/typescript/src/skia/Typeface/useTypeface.d.ts +0 -5
  1611. package/src/animation/timing/functions/__tests__/timing.spec.ts +0 -29
  1612. package/src/renderer/processors/math/Matrix3.ts +0 -73
  1613. package/src/renderer/processors/math/Vector.ts +0 -38
  1614. package/src/skia/Color.ts +0 -20
  1615. package/src/skia/ColorFilter/ColorFilterFactory.ts +0 -52
  1616. package/src/skia/ContourMeasure.tsx +0 -49
  1617. package/src/skia/Data/Data.ts +0 -61
  1618. package/src/skia/Data/DataFactory.ts +0 -19
  1619. package/src/skia/Font/Font.ts +0 -230
  1620. package/src/skia/Font/index.ts +0 -2
  1621. package/src/skia/Font/useFont.ts +0 -27
  1622. package/src/skia/FontMgr/FontMgr.ts +0 -24
  1623. package/src/skia/FontMgr/FontMgrFactory.ts +0 -17
  1624. package/src/skia/FontMgr/index.ts +0 -1
  1625. package/src/skia/Image/Image.ts +0 -96
  1626. package/src/skia/Image/ImageFactory.ts +0 -78
  1627. package/src/skia/Image/index.ts +0 -3
  1628. package/src/skia/Image/useImage.ts +0 -9
  1629. package/src/skia/ImageFilter/ImageFilterFactory.ts +0 -192
  1630. package/src/skia/MaskFilter.ts +0 -27
  1631. package/src/skia/Matrix.ts +0 -30
  1632. package/src/skia/Paint/Paint.ts +0 -160
  1633. package/src/skia/Paint/index.ts +0 -3
  1634. package/src/skia/Paint/usePaint.ts +0 -21
  1635. package/src/skia/Path/Path.ts +0 -554
  1636. package/src/skia/Path/PathFactory.ts +0 -27
  1637. package/src/skia/Path/index.ts +0 -3
  1638. package/src/skia/Path/usePath.ts +0 -54
  1639. package/src/skia/PathEffect.ts +0 -93
  1640. package/src/skia/Picture/Picture.ts +0 -34
  1641. package/src/skia/Picture/index.ts +0 -4
  1642. package/src/skia/Picture/usePicture.ts +0 -28
  1643. package/src/skia/Point.ts +0 -10
  1644. package/src/skia/RRect.ts +0 -7
  1645. package/src/skia/RuntimeEffect/RuntimeEffect.ts +0 -65
  1646. package/src/skia/SVG/SVGFactory.ts +0 -8
  1647. package/src/skia/SVG/index.ts +0 -3
  1648. package/src/skia/SVG/useSvg.ts +0 -6
  1649. package/src/skia/Shader/Shader.ts +0 -6
  1650. package/src/skia/Shader/index.ts +0 -3
  1651. package/src/skia/Shader/useShader.ts +0 -9
  1652. package/src/skia/SkiaApi.ts +0 -86
  1653. package/src/skia/Typeface/TypefaceFactory.ts +0 -7
  1654. package/src/skia/Typeface/index.ts +0 -3
  1655. package/src/skia/Typeface/useTypeface.ts +0 -9
  1656. package/src/values/web/__tests__/RNSkAnimation.spec.ts +0 -21
  1657. package/src/values/web/__tests__/RNSkDerivedValue.spec.ts +0 -15
  1658. package/src/values/web/__tests__/RNSkReadonlyValue.spec.ts +0 -8
  1659. package/src/values/web/__tests__/RNSkValue.spec.ts +0 -11
@@ -1 +1 @@
1
- {"version":3,"sources":["runTiming.ts"],"names":["getResolvedParams","createTiming","runTiming","value","toOrParams","config","callback","resolvedParameters","animation"],"mappings":"AAOA,SAASA,iBAAT,QAAkC,aAAlC;AACA,SAASC,YAAT,QAA6B,gBAA7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,MAAMC,SAAS,GAAG,CACvBC,KADuB,EAEvBC,UAFuB,EAGvBC,MAHuB,EAIvBC,QAJuB,KAKL;AAClB,QAAMC,kBAAkB,GAAGP,iBAAiB,CAACI,UAAD,EAAaC,MAAb,CAA5C;AACA,QAAMG,SAAS,GAAGP,YAAY,CAACM,kBAAD,EAAqBJ,KAArB,EAA4BG,QAA5B,CAA9B;AACAH,EAAAA,KAAK,CAACK,SAAN,GAAkBA,SAAlB;AACA,SAAOA,SAAP;AACD,CAVM","sourcesContent":["import type { SkiaValue, SkiaAnimation } from \"../../values/types\";\nimport type {\n AnimationParams,\n TimingConfig,\n AnimationCallback,\n} from \"../types\";\n\nimport { getResolvedParams } from \"./functions\";\nimport { createTiming } from \"./createTiming\";\n/**\n * Creates a new animation on an existing value that will be driven by\n * an animation value. The value will be run from / to the value in\n * params and modified by the provided easing curve for the length of\n * the duration. When the value has reached its desired \"to\" value the\n * animation will be stopped.\n *\n * @param value The value to animate\n * @param toOrParams To value or Animation parameters\n * @param config Spring or timing configuration\n * @returns an animation value that can be used to start/stop\n * the animation.\n */\nexport const runTiming = (\n value: SkiaValue<number>,\n toOrParams: number | AnimationParams,\n config?: TimingConfig,\n callback?: AnimationCallback\n): SkiaAnimation => {\n const resolvedParameters = getResolvedParams(toOrParams, config);\n const animation = createTiming(resolvedParameters, value, callback);\n value.animation = animation;\n return animation;\n};\n"]}
1
+ {"version":3,"sources":["runTiming.ts"],"names":["getResolvedParams","createTiming","runTiming","value","toOrParams","config","callback","resolvedParameters","animation"],"mappings":"AAOA,SAASA,iBAAT,QAAkC,aAAlC;AACA,SAASC,YAAT,QAA6B,gBAA7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,MAAMC,SAAS,GAAG,CACvBC,KADuB,EAEvBC,UAFuB,EAGvBC,MAHuB,EAIvBC,QAJuB,KAKL;AAClB,QAAMC,kBAAkB,GAAGP,iBAAiB,CAACI,UAAD,EAAaC,MAAb,CAA5C;AACA,QAAMG,SAAS,GAAGP,YAAY,CAACM,kBAAD,EAAqBJ,KAArB,EAA4BG,QAA5B,CAA9B;AACAH,EAAAA,KAAK,CAACK,SAAN,GAAkBA,SAAlB;AACA,SAAOA,SAAP;AACD,CAVM","sourcesContent":["import type { SkiaMutableValue, SkiaAnimation } from \"../../values/types\";\nimport type {\n AnimationParams,\n TimingConfig,\n AnimationCallback,\n} from \"../types\";\n\nimport { getResolvedParams } from \"./functions\";\nimport { createTiming } from \"./createTiming\";\n/**\n * Creates a new animation on an existing value that will be driven by\n * an animation value. The value will be run from / to the value in\n * params and modified by the provided easing curve for the length of\n * the duration. When the value has reached its desired \"to\" value the\n * animation will be stopped.\n *\n * @param value The value to animate\n * @param toOrParams To value or Animation parameters\n * @param config Spring or timing configuration\n * @returns an animation value that can be used to start/stop\n * the animation.\n */\nexport const runTiming = (\n value: SkiaMutableValue<number>,\n toOrParams: number | AnimationParams,\n config?: TimingConfig,\n callback?: AnimationCallback\n): SkiaAnimation => {\n const resolvedParameters = getResolvedParams(toOrParams, config);\n const animation = createTiming(resolvedParameters, value, callback);\n value.animation = animation;\n return animation;\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["useTiming.ts"],"names":["useEffect","useMemo","useRef","useValue","getResolvedParams","createTiming","useTiming","toOrParams","config","callback","prevCfgRef","resolvedParameters","nextParams","equals","current","value","from","prevAnimationRef","prevParamsRef","animation","undefined","a","b","JSON","stringify"],"mappings":"AAAA,SAASA,SAAT,EAAoBC,OAApB,EAA6BC,MAA7B,QAA2C,OAA3C;AAQA,SAASC,QAAT,QAAyB,6BAAzB;AAEA,SAASC,iBAAT,QAAkC,aAAlC;AACA,SAASC,YAAT,QAA6B,gBAA7B;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,MAAMC,SAAS,GAAG,CACvBC,UADuB,EAEvBC,MAFuB,EAGvBC,QAHuB,KAIO;AAAA;;AAC9B;AACA;AACA,QAAMC,UAAU,GAAGR,MAAM,EAAzB;AACA,QAAMS,kBAAkB,GAAGV,OAAO,CAAC,MAAM;AACvC,UAAMW,UAAU,GAAGR,iBAAiB,CAACG,UAAD,EAAaC,MAAb,CAApC;;AACA,QAAI,CAACK,MAAM,CAACH,UAAU,CAACI,OAAZ,EAAqBF,UAArB,CAAX,EAA6C;AAC3CF,MAAAA,UAAU,CAACI,OAAX,GAAqBF,UAArB;AACD;;AACD,WAAOF,UAAU,CAACI,OAAlB;AACD,GANiC,EAM/B,CAACN,MAAD,EAASD,UAAT,CAN+B,CAAlC,CAJ8B,CAY9B;;AACA,QAAMQ,KAAK,GAAGZ,QAAQ,0BAACQ,kBAAkB,CAACK,IAApB,yEAA4B,CAA5B,CAAtB,CAb8B,CAe9B;AACA;;AACA,QAAMC,gBAAgB,GAAGf,MAAM,EAA/B;AACA,QAAMgB,aAAa,GAAGhB,MAAM,EAA5B;AACA,QAAMiB,SAAS,GAAGlB,OAAO,CAAC,MAAM;AAC9B,QAAI,CAACY,MAAM,CAACK,aAAa,CAACJ,OAAf,EAAwBH,kBAAxB,CAAX,EAAwD;AACtDO,MAAAA,aAAa,CAACJ,OAAd,GAAwBH,kBAAxB;AACAM,MAAAA,gBAAgB,CAACH,OAAjB,GAA2BT,YAAY,CACrCM,kBADqC,EAErCI,KAFqC,EAGrCN,QAHqC,CAAvC;AAKD;;AACD,WAAOQ,gBAAgB,CAACH,OAAxB;AACD,GAVwB,EAUtB,CAACL,QAAD,EAAWE,kBAAX,EAA+BI,KAA/B,CAVsB,CAAzB,CAnB8B,CA+B9B;;AACAf,EAAAA,SAAS,CAAC,MAAM;AACde,IAAAA,KAAK,CAACI,SAAN,GAAkBA,SAAlB;AACA,WAAO,MAAOJ,KAAK,CAACI,SAAN,GAAkBC,SAAhC;AACD,GAHQ,EAGN,CAACD,SAAD,EAAYJ,KAAZ,CAHM,CAAT,CAhC8B,CAqC9B;;AACA,SAAOA,KAAP;AACD,CA3CM;;AA6CP,MAAMF,MAAM,GAAG,CAASQ,CAAT,EAAgBC,CAAhB,KAA0B;AACvC,SAAOC,IAAI,CAACC,SAAL,CAAeH,CAAf,MAAsBE,IAAI,CAACC,SAAL,CAAeF,CAAf,CAA7B;AACD,CAFD","sourcesContent":["import { useEffect, useMemo, useRef } from \"react\";\n\nimport type { SkiaReadonlyValue, SkiaAnimation } from \"../../values/types\";\nimport type {\n AnimationParams,\n TimingConfig,\n AnimationCallback,\n} from \"../types\";\nimport { useValue } from \"../../values/hooks/useValue\";\n\nimport { getResolvedParams } from \"./functions\";\nimport { createTiming } from \"./createTiming\";\n\n/**\n * Creats an animation value that will run whenever\n * the animation parameters change. The animation start immediately.\n * @param toOrParams\n * @param config\n * @returns A value that is animated\n */\nexport const useTiming = (\n toOrParams: number | AnimationParams,\n config?: TimingConfig,\n callback?: AnimationCallback\n): SkiaReadonlyValue<number> => {\n // Resolve parameters - keep a cached version to avoid\n // unnecesary re-renders.\n const prevCfgRef = useRef<ReturnType<typeof getResolvedParams>>();\n const resolvedParameters = useMemo(() => {\n const nextParams = getResolvedParams(toOrParams, config);\n if (!equals(prevCfgRef.current, nextParams)) {\n prevCfgRef.current = nextParams;\n }\n return prevCfgRef.current!;\n }, [config, toOrParams]);\n\n // Create value\n const value = useValue(resolvedParameters.from ?? 0);\n\n // Create timing animation - keep a cached version to avoid\n // uneccessary recreation of animations\n const prevAnimationRef = useRef<SkiaAnimation>();\n const prevParamsRef = useRef<typeof resolvedParameters>();\n const animation = useMemo(() => {\n if (!equals(prevParamsRef.current, resolvedParameters)) {\n prevParamsRef.current = resolvedParameters;\n prevAnimationRef.current = createTiming(\n resolvedParameters,\n value,\n callback\n );\n }\n return prevAnimationRef.current!;\n }, [callback, resolvedParameters, value]);\n\n // Run animation on the value - and stop it on unmount\n useEffect(() => {\n value.animation = animation;\n return () => (value.animation = undefined);\n }, [animation, value]);\n\n // Return the value that is animated\n return value;\n};\n\nconst equals = <T1, T2>(a: T1, b: T2) => {\n return JSON.stringify(a) === JSON.stringify(b);\n};\n"]}
1
+ {"version":3,"sources":["useTiming.ts"],"names":["useEffect","useMemo","useRef","useValue","getResolvedParams","createTiming","useTiming","toOrParams","config","callback","prevCfgRef","resolvedParameters","nextParams","equals","current","value","from","prevAnimationRef","prevParamsRef","animation","undefined","a","b","JSON","stringify"],"mappings":"AAAA,SAASA,SAAT,EAAoBC,OAApB,EAA6BC,MAA7B,QAA2C,OAA3C;AAQA,SAASC,QAAT,QAAyB,6BAAzB;AAEA,SAASC,iBAAT,QAAkC,aAAlC;AACA,SAASC,YAAT,QAA6B,gBAA7B;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,MAAMC,SAAS,GAAG,CACvBC,UADuB,EAEvBC,MAFuB,EAGvBC,QAHuB,KAID;AAAA;;AACtB;AACA;AACA,QAAMC,UAAU,GAAGR,MAAM,EAAzB;AACA,QAAMS,kBAAkB,GAAGV,OAAO,CAAC,MAAM;AACvC,UAAMW,UAAU,GAAGR,iBAAiB,CAACG,UAAD,EAAaC,MAAb,CAApC;;AACA,QAAI,CAACK,MAAM,CAACH,UAAU,CAACI,OAAZ,EAAqBF,UAArB,CAAX,EAA6C;AAC3CF,MAAAA,UAAU,CAACI,OAAX,GAAqBF,UAArB;AACD;;AACD,WAAOF,UAAU,CAACI,OAAlB;AACD,GANiC,EAM/B,CAACN,MAAD,EAASD,UAAT,CAN+B,CAAlC,CAJsB,CAYtB;;AACA,QAAMQ,KAAK,GAAGZ,QAAQ,0BAACQ,kBAAkB,CAACK,IAApB,yEAA4B,CAA5B,CAAtB,CAbsB,CAetB;AACA;;AACA,QAAMC,gBAAgB,GAAGf,MAAM,EAA/B;AACA,QAAMgB,aAAa,GAAGhB,MAAM,EAA5B;AACA,QAAMiB,SAAS,GAAGlB,OAAO,CAAC,MAAM;AAC9B,QAAI,CAACY,MAAM,CAACK,aAAa,CAACJ,OAAf,EAAwBH,kBAAxB,CAAX,EAAwD;AACtDO,MAAAA,aAAa,CAACJ,OAAd,GAAwBH,kBAAxB;AACAM,MAAAA,gBAAgB,CAACH,OAAjB,GAA2BT,YAAY,CACrCM,kBADqC,EAErCI,KAFqC,EAGrCN,QAHqC,CAAvC;AAKD;;AACD,WAAOQ,gBAAgB,CAACH,OAAxB;AACD,GAVwB,EAUtB,CAACL,QAAD,EAAWE,kBAAX,EAA+BI,KAA/B,CAVsB,CAAzB,CAnBsB,CA+BtB;;AACAf,EAAAA,SAAS,CAAC,MAAM;AACde,IAAAA,KAAK,CAACI,SAAN,GAAkBA,SAAlB;AACA,WAAO,MAAOJ,KAAK,CAACI,SAAN,GAAkBC,SAAhC;AACD,GAHQ,EAGN,CAACD,SAAD,EAAYJ,KAAZ,CAHM,CAAT,CAhCsB,CAqCtB;;AACA,SAAOA,KAAP;AACD,CA3CM;;AA6CP,MAAMF,MAAM,GAAG,CAASQ,CAAT,EAAgBC,CAAhB,KAA0B;AACvC,SAAOC,IAAI,CAACC,SAAL,CAAeH,CAAf,MAAsBE,IAAI,CAACC,SAAL,CAAeF,CAAf,CAA7B;AACD,CAFD","sourcesContent":["import { useEffect, useMemo, useRef } from \"react\";\n\nimport type { SkiaValue, SkiaAnimation } from \"../../values/types\";\nimport type {\n AnimationParams,\n TimingConfig,\n AnimationCallback,\n} from \"../types\";\nimport { useValue } from \"../../values/hooks/useValue\";\n\nimport { getResolvedParams } from \"./functions\";\nimport { createTiming } from \"./createTiming\";\n\n/**\n * Creats an animation value that will run whenever\n * the animation parameters change. The animation start immediately.\n * @param toOrParams\n * @param config\n * @returns A value that is animated\n */\nexport const useTiming = (\n toOrParams: number | AnimationParams,\n config?: TimingConfig,\n callback?: AnimationCallback\n): SkiaValue<number> => {\n // Resolve parameters - keep a cached version to avoid\n // unnecesary re-renders.\n const prevCfgRef = useRef<ReturnType<typeof getResolvedParams>>();\n const resolvedParameters = useMemo(() => {\n const nextParams = getResolvedParams(toOrParams, config);\n if (!equals(prevCfgRef.current, nextParams)) {\n prevCfgRef.current = nextParams;\n }\n return prevCfgRef.current!;\n }, [config, toOrParams]);\n\n // Create value\n const value = useValue(resolvedParameters.from ?? 0);\n\n // Create timing animation - keep a cached version to avoid\n // uneccessary recreation of animations\n const prevAnimationRef = useRef<SkiaAnimation>();\n const prevParamsRef = useRef<typeof resolvedParameters>();\n const animation = useMemo(() => {\n if (!equals(prevParamsRef.current, resolvedParameters)) {\n prevParamsRef.current = resolvedParameters;\n prevAnimationRef.current = createTiming(\n resolvedParameters,\n value,\n callback\n );\n }\n return prevAnimationRef.current!;\n }, [callback, resolvedParameters, value]);\n\n // Run animation on the value - and stop it on unmount\n useEffect(() => {\n value.animation = animation;\n return () => (value.animation = undefined);\n }, [animation, value]);\n\n // Return the value that is animated\n return value;\n};\n\nconst equals = <T1, T2>(a: T1, b: T2) => {\n return JSON.stringify(a) === JSON.stringify(b);\n};\n"]}
@@ -1,5 +1,6 @@
1
1
  import "./skia/NativeSetup";
2
2
  export * from "./renderer";
3
+ export * from "./renderer/Canvas";
3
4
  export * from "./views";
4
5
  export * from "./skia";
5
6
  export * from "./external";
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAP;AAEA,cAAc,YAAd;AACA,cAAc,SAAd;AACA,cAAc,QAAd;AACA,cAAc,YAAd;AACA,cAAc,UAAd;AACA,cAAc,aAAd","sourcesContent":["import \"./skia/NativeSetup\";\n\nexport * from \"./renderer\";\nexport * from \"./views\";\nexport * from \"./skia\";\nexport * from \"./external\";\nexport * from \"./values\";\nexport * from \"./animation\";\n"]}
1
+ {"version":3,"sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAP;AACA,cAAc,YAAd;AACA,cAAc,mBAAd;AACA,cAAc,SAAd;AACA,cAAc,QAAd;AACA,cAAc,YAAd;AACA,cAAc,UAAd;AACA,cAAc,aAAd","sourcesContent":["import \"./skia/NativeSetup\";\nexport * from \"./renderer\";\nexport * from \"./renderer/Canvas\";\nexport * from \"./views\";\nexport * from \"./skia\";\nexport * from \"./external\";\nexport * from \"./values\";\nexport * from \"./animation\";\n"]}
@@ -1,30 +1,13 @@
1
- import React, { useEffect, useState, useCallback, useMemo, useContext, forwardRef, useRef } from "react";
1
+ import React, { useEffect, useState, useCallback, useMemo, forwardRef, useRef } from "react";
2
2
  import ReactReconciler from "react-reconciler";
3
3
  import { SkiaView, useDrawCallback } from "../views";
4
- import { Skia } from "../skia";
5
4
  import { useValue } from "../values/hooks/useValue";
6
- import { SkiaPaint } from "../skia/Paint/Paint";
5
+ import { Skia } from "../skia/Skia";
7
6
  import { debug as hostDebug, skHostConfig } from "./HostConfig"; // import { debugTree } from "./nodes";
8
7
 
9
- import { vec } from "./processors";
10
8
  import { Container } from "./nodes";
11
9
  import { DependencyManager } from "./DependencyManager";
12
- const CanvasContext = /*#__PURE__*/React.createContext(null);
13
- export const useCanvas = () => {
14
- const size = useContext(CanvasContext);
15
-
16
- if (!size) {
17
- throw new Error("Canvas context is not available");
18
- }
19
-
20
- return {
21
- size
22
- };
23
- };
24
- export const useCanvasSize = () => {
25
- console.warn("useCanvasSize is deprecated, use the size member of useCanvas() instead.");
26
- return useCanvas().size;
27
- };
10
+ import { CanvasProvider } from "./useCanvas";
28
11
  export const skiaReconciler = ReactReconciler(skHostConfig);
29
12
  skiaReconciler.injectIntoDevTools({
30
13
  bundleType: 1,
@@ -50,10 +33,14 @@ export const Canvas = /*#__PURE__*/forwardRef((_ref, forwardedRef) => {
50
33
  onTouch,
51
34
  fontMgr
52
35
  } = _ref;
53
- const canvasCtx = useValue({
36
+ const size = useValue({
54
37
  width: 0,
55
38
  height: 0
56
39
  });
40
+ const canvasCtx = useMemo(() => ({
41
+ Skia,
42
+ size
43
+ }), [size]);
57
44
  const innerRef = useCanvasRef();
58
45
  const ref = useCombinedRefs(forwardedRef, innerRef);
59
46
  const [tick, setTick] = useState(0);
@@ -62,7 +49,7 @@ export const Canvas = /*#__PURE__*/forwardRef((_ref, forwardedRef) => {
62
49
  const root = useMemo(() => skiaReconciler.createContainer(container, 0, false, null), [container]); // Render effect
63
50
 
64
51
  useEffect(() => {
65
- render( /*#__PURE__*/React.createElement(CanvasContext.Provider, {
52
+ render( /*#__PURE__*/React.createElement(CanvasProvider, {
66
53
  value: canvasCtx
67
54
  }, children), root, container);
68
55
  }, [children, root, redraw, container, canvasCtx]); // Draw callback
@@ -79,14 +66,14 @@ export const Canvas = /*#__PURE__*/forwardRef((_ref, forwardedRef) => {
79
66
  onTouch(info.touches);
80
67
  }
81
68
 
82
- if (width !== canvasCtx.current.width || height !== canvasCtx.current.height) {
83
- canvasCtx.current = {
69
+ if (width !== canvasCtx.size.current.width || height !== canvasCtx.size.current.height) {
70
+ canvasCtx.size.current = {
84
71
  width,
85
72
  height
86
73
  };
87
74
  }
88
75
 
89
- const paint = SkiaPaint();
76
+ const paint = Skia.Paint();
90
77
  const ctx = {
91
78
  width,
92
79
  height,
@@ -95,8 +82,9 @@ export const Canvas = /*#__PURE__*/forwardRef((_ref, forwardedRef) => {
95
82
  paint,
96
83
  opacity: 1,
97
84
  ref,
98
- center: vec(width / 2, height / 2),
99
- fontMgr: fontMgr !== null && fontMgr !== void 0 ? fontMgr : defaultFontMgr
85
+ center: Skia.Point(width / 2, height / 2),
86
+ fontMgr: fontMgr !== null && fontMgr !== void 0 ? fontMgr : defaultFontMgr,
87
+ Skia
100
88
  };
101
89
  container.draw(ctx);
102
90
  }, [tick, onTouch]);
@@ -1 +1 @@
1
- {"version":3,"sources":["Canvas.tsx"],"names":["React","useEffect","useState","useCallback","useMemo","useContext","forwardRef","useRef","ReactReconciler","SkiaView","useDrawCallback","Skia","useValue","SkiaPaint","debug","hostDebug","skHostConfig","vec","Container","DependencyManager","CanvasContext","createContext","useCanvas","size","Error","useCanvasSize","console","warn","skiaReconciler","injectIntoDevTools","bundleType","version","rendererPackageName","render","element","root","container","updateContainer","depMgr","subscribe","useCanvasRef","defaultFontMgr","FontMgr","RefDefault","Canvas","forwardedRef","children","style","mode","onTouch","fontMgr","canvasCtx","width","height","innerRef","ref","useCombinedRefs","tick","setTick","redraw","t","createContainer","onDraw","canvas","info","timestamp","touches","current","paint","ctx","opacity","center","draw","unsubscribe","refs","targetRef","forEach"],"mappings":"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","sourcesContent":["import React, {\n useEffect,\n useState,\n useCallback,\n useMemo,\n useContext,\n forwardRef,\n useRef,\n} from \"react\";\nimport type {\n RefObject,\n ReactNode,\n ComponentProps,\n MutableRefObject,\n ForwardedRef,\n} from \"react\";\nimport type { OpaqueRoot } from \"react-reconciler\";\nimport ReactReconciler from \"react-reconciler\";\n\nimport { SkiaView, useDrawCallback } from \"../views\";\nimport type { TouchHandler } from \"../views\";\nimport { Skia } from \"../skia\";\nimport type { FontMgr } from \"../skia/FontMgr/FontMgr\";\nimport { useValue } from \"../values/hooks/useValue\";\nimport type { SkiaReadonlyValue } from \"../values/types\";\nimport { SkiaPaint } from \"../skia/Paint/Paint\";\n\nimport { debug as hostDebug, skHostConfig } from \"./HostConfig\";\n// import { debugTree } from \"./nodes\";\nimport { vec } from \"./processors\";\nimport { Container } from \"./nodes\";\nimport { DependencyManager } from \"./DependencyManager\";\n\nconst CanvasContext = React.createContext<SkiaReadonlyValue<{\n width: number;\n height: number;\n}> | null>(null);\n\nexport const useCanvas = () => {\n const size = useContext(CanvasContext);\n if (!size) {\n throw new Error(\"Canvas context is not available\");\n }\n return { size };\n};\n\nexport const useCanvasSize = () => {\n console.warn(\n \"useCanvasSize is deprecated, use the size member of useCanvas() instead.\"\n );\n return useCanvas().size;\n};\n\nexport const skiaReconciler = ReactReconciler(skHostConfig);\n\nskiaReconciler.injectIntoDevTools({\n bundleType: 1,\n version: \"0.0.1\",\n rendererPackageName: \"react-native-skia\",\n});\n\nconst render = (element: ReactNode, root: OpaqueRoot, container: Container) => {\n skiaReconciler.updateContainer(element, root, null, () => {\n hostDebug(\"updateContainer\");\n\n container.depMgr.subscribe();\n });\n};\n\nexport const useCanvasRef = () => useRef<SkiaView>(null);\n\nexport interface CanvasProps extends ComponentProps<typeof SkiaView> {\n ref?: RefObject<SkiaView>;\n children: ReactNode;\n onTouch?: TouchHandler;\n fontMgr?: FontMgr;\n}\n\nconst defaultFontMgr = Skia.FontMgr.RefDefault();\n\nexport const Canvas = forwardRef<SkiaView, CanvasProps>(\n ({ children, style, debug, mode, onTouch, fontMgr }, forwardedRef) => {\n const canvasCtx = useValue({ width: 0, height: 0 });\n const innerRef = useCanvasRef();\n const ref = useCombinedRefs(forwardedRef, innerRef);\n const [tick, setTick] = useState(0);\n const redraw = useCallback(() => setTick((t) => t + 1), []);\n\n const container = useMemo(\n () => new Container(new DependencyManager(ref), redraw),\n [redraw, ref]\n );\n\n const root = useMemo(\n () => skiaReconciler.createContainer(container, 0, false, null),\n [container]\n );\n // Render effect\n useEffect(() => {\n render(\n <CanvasContext.Provider value={canvasCtx}>\n {children}\n </CanvasContext.Provider>,\n root,\n container\n );\n }, [children, root, redraw, container, canvasCtx]);\n\n // Draw callback\n const onDraw = useDrawCallback(\n (canvas, info) => {\n // TODO: if tree is empty (count === 1) maybe we should not render?\n const { width, height, timestamp } = info;\n if (onTouch) {\n onTouch(info.touches);\n }\n if (\n width !== canvasCtx.current.width ||\n height !== canvasCtx.current.height\n ) {\n canvasCtx.current = { width, height };\n }\n const paint = SkiaPaint();\n const ctx = {\n width,\n height,\n timestamp,\n canvas,\n paint,\n opacity: 1,\n ref,\n center: vec(width / 2, height / 2),\n fontMgr: fontMgr ?? defaultFontMgr,\n };\n container.draw(ctx);\n },\n [tick, onTouch]\n );\n\n useEffect(() => {\n return () => {\n container.depMgr.unsubscribe();\n };\n }, [container]);\n\n return (\n <SkiaView\n ref={ref}\n style={style}\n onDraw={onDraw}\n mode={mode}\n debug={debug}\n />\n );\n }\n);\n\n/**\n * Combines a list of refs into a single ref. This can be used to provide\n * both a forwarded ref and an internal ref keeping the same functionality\n * on both of the refs.\n * @param refs Array of refs to combine\n * @returns A single ref that can be used in a ref prop.\n */\nconst useCombinedRefs = <T,>(\n ...refs: Array<MutableRefObject<T> | ForwardedRef<T>>\n) => {\n const targetRef = React.useRef<T>(null);\n React.useEffect(() => {\n refs.forEach((ref) => {\n if (ref) {\n if (typeof ref === \"function\") {\n ref(targetRef.current);\n } else {\n ref.current = targetRef.current;\n }\n }\n });\n }, [refs]);\n return targetRef;\n};\n"]}
1
+ {"version":3,"sources":["Canvas.tsx"],"names":["React","useEffect","useState","useCallback","useMemo","forwardRef","useRef","ReactReconciler","SkiaView","useDrawCallback","useValue","Skia","debug","hostDebug","skHostConfig","Container","DependencyManager","CanvasProvider","skiaReconciler","injectIntoDevTools","bundleType","version","rendererPackageName","render","element","root","container","updateContainer","depMgr","subscribe","useCanvasRef","defaultFontMgr","FontMgr","RefDefault","Canvas","forwardedRef","children","style","mode","onTouch","fontMgr","size","width","height","canvasCtx","innerRef","ref","useCombinedRefs","tick","setTick","redraw","t","createContainer","onDraw","canvas","info","timestamp","touches","current","paint","Paint","ctx","opacity","center","Point","draw","unsubscribe","refs","targetRef","forEach"],"mappings":"AAAA,OAAOA,KAAP,IACEC,SADF,EAEEC,QAFF,EAGEC,WAHF,EAIEC,OAJF,EAKEC,UALF,EAMEC,MANF,QAOO,OAPP;AAgBA,OAAOC,eAAP,MAA4B,kBAA5B;AAEA,SAASC,QAAT,EAAmBC,eAAnB,QAA0C,UAA1C;AAGA,SAASC,QAAT,QAAyB,0BAAzB;AACA,SAASC,IAAT,QAAqB,cAArB;AAEA,SAASC,KAAK,IAAIC,SAAlB,EAA6BC,YAA7B,QAAiD,cAAjD,C,CACA;;AACA,SAASC,SAAT,QAA0B,SAA1B;AACA,SAASC,iBAAT,QAAkC,qBAAlC;AACA,SAASC,cAAT,QAA+B,aAA/B;AAEA,OAAO,MAAMC,cAAc,GAAGX,eAAe,CAACO,YAAD,CAAtC;AAEPI,cAAc,CAACC,kBAAf,CAAkC;AAChCC,EAAAA,UAAU,EAAE,CADoB;AAEhCC,EAAAA,OAAO,EAAE,OAFuB;AAGhCC,EAAAA,mBAAmB,EAAE;AAHW,CAAlC;;AAMA,MAAMC,MAAM,GAAG,CAACC,OAAD,EAAqBC,IAArB,EAAuCC,SAAvC,KAAgE;AAC7ER,EAAAA,cAAc,CAACS,eAAf,CAA+BH,OAA/B,EAAwCC,IAAxC,EAA8C,IAA9C,EAAoD,MAAM;AACxDZ,IAAAA,SAAS,CAAC,iBAAD,CAAT;AAEAa,IAAAA,SAAS,CAACE,MAAV,CAAiBC,SAAjB;AACD,GAJD;AAKD,CAND;;AAQA,OAAO,MAAMC,YAAY,GAAG,MAAMxB,MAAM,CAAW,IAAX,CAAjC;AASP,MAAMyB,cAAc,GAAGpB,IAAI,CAACqB,OAAL,CAAaC,UAAb,EAAvB;AAEA,OAAO,MAAMC,MAAM,gBAAG7B,UAAU,CAC9B,OAAqD8B,YAArD,KAAsE;AAAA,MAArE;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,KAAZ;AAAmBzB,IAAAA,KAAnB;AAA0B0B,IAAAA,IAA1B;AAAgCC,IAAAA,OAAhC;AAAyCC,IAAAA;AAAzC,GAAqE;AACpE,QAAMC,IAAI,GAAG/B,QAAQ,CAAC;AAAEgC,IAAAA,KAAK,EAAE,CAAT;AAAYC,IAAAA,MAAM,EAAE;AAApB,GAAD,CAArB;AACA,QAAMC,SAAS,GAAGxC,OAAO,CAAC,OAAO;AAAEO,IAAAA,IAAF;AAAQ8B,IAAAA;AAAR,GAAP,CAAD,EAAyB,CAACA,IAAD,CAAzB,CAAzB;AACA,QAAMI,QAAQ,GAAGf,YAAY,EAA7B;AACA,QAAMgB,GAAG,GAAGC,eAAe,CAACZ,YAAD,EAAeU,QAAf,CAA3B;AACA,QAAM,CAACG,IAAD,EAAOC,OAAP,IAAkB/C,QAAQ,CAAC,CAAD,CAAhC;AACA,QAAMgD,MAAM,GAAG/C,WAAW,CAAC,MAAM8C,OAAO,CAAEE,CAAD,IAAOA,CAAC,GAAG,CAAZ,CAAd,EAA8B,EAA9B,CAA1B;AAEA,QAAMzB,SAAS,GAAGtB,OAAO,CACvB,MAAM,IAAIW,SAAJ,CAAc,IAAIC,iBAAJ,CAAsB8B,GAAtB,CAAd,EAA0CI,MAA1C,CADiB,EAEvB,CAACA,MAAD,EAASJ,GAAT,CAFuB,CAAzB;AAKA,QAAMrB,IAAI,GAAGrB,OAAO,CAClB,MAAMc,cAAc,CAACkC,eAAf,CAA+B1B,SAA/B,EAA0C,CAA1C,EAA6C,KAA7C,EAAoD,IAApD,CADY,EAElB,CAACA,SAAD,CAFkB,CAApB,CAboE,CAiBpE;;AACAzB,EAAAA,SAAS,CAAC,MAAM;AACdsB,IAAAA,MAAM,eACJ,oBAAC,cAAD;AAAgB,MAAA,KAAK,EAAEqB;AAAvB,OAAmCR,QAAnC,CADI,EAEJX,IAFI,EAGJC,SAHI,CAAN;AAKD,GANQ,EAMN,CAACU,QAAD,EAAWX,IAAX,EAAiByB,MAAjB,EAAyBxB,SAAzB,EAAoCkB,SAApC,CANM,CAAT,CAlBoE,CA0BpE;;AACA,QAAMS,MAAM,GAAG5C,eAAe,CAC5B,CAAC6C,MAAD,EAASC,IAAT,KAAkB;AAChB;AACA,UAAM;AAAEb,MAAAA,KAAF;AAASC,MAAAA,MAAT;AAAiBa,MAAAA;AAAjB,QAA+BD,IAArC;;AACA,QAAIhB,OAAJ,EAAa;AACXA,MAAAA,OAAO,CAACgB,IAAI,CAACE,OAAN,CAAP;AACD;;AACD,QACEf,KAAK,KAAKE,SAAS,CAACH,IAAV,CAAeiB,OAAf,CAAuBhB,KAAjC,IACAC,MAAM,KAAKC,SAAS,CAACH,IAAV,CAAeiB,OAAf,CAAuBf,MAFpC,EAGE;AACAC,MAAAA,SAAS,CAACH,IAAV,CAAeiB,OAAf,GAAyB;AAAEhB,QAAAA,KAAF;AAASC,QAAAA;AAAT,OAAzB;AACD;;AACD,UAAMgB,KAAK,GAAGhD,IAAI,CAACiD,KAAL,EAAd;AACA,UAAMC,GAAG,GAAG;AACVnB,MAAAA,KADU;AAEVC,MAAAA,MAFU;AAGVa,MAAAA,SAHU;AAIVF,MAAAA,MAJU;AAKVK,MAAAA,KALU;AAMVG,MAAAA,OAAO,EAAE,CANC;AAOVhB,MAAAA,GAPU;AAQViB,MAAAA,MAAM,EAAEpD,IAAI,CAACqD,KAAL,CAAWtB,KAAK,GAAG,CAAnB,EAAsBC,MAAM,GAAG,CAA/B,CARE;AASVH,MAAAA,OAAO,EAAEA,OAAF,aAAEA,OAAF,cAAEA,OAAF,GAAaT,cATV;AAUVpB,MAAAA;AAVU,KAAZ;AAYAe,IAAAA,SAAS,CAACuC,IAAV,CAAeJ,GAAf;AACD,GA3B2B,EA4B5B,CAACb,IAAD,EAAOT,OAAP,CA5B4B,CAA9B;AA+BAtC,EAAAA,SAAS,CAAC,MAAM;AACd,WAAO,MAAM;AACXyB,MAAAA,SAAS,CAACE,MAAV,CAAiBsC,WAAjB;AACD,KAFD;AAGD,GAJQ,EAIN,CAACxC,SAAD,CAJM,CAAT;AAMA,sBACE,oBAAC,QAAD;AACE,IAAA,GAAG,EAAEoB,GADP;AAEE,IAAA,KAAK,EAAET,KAFT;AAGE,IAAA,MAAM,EAAEgB,MAHV;AAIE,IAAA,IAAI,EAAEf,IAJR;AAKE,IAAA,KAAK,EAAE1B;AALT,IADF;AASD,CA1E6B,CAAzB;AA6EP;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMmC,eAAe,GAAG,YAEnB;AAAA,oCADAoB,IACA;AADAA,IAAAA,IACA;AAAA;;AACH,QAAMC,SAAS,GAAGpE,KAAK,CAACM,MAAN,CAAgB,IAAhB,CAAlB;AACAN,EAAAA,KAAK,CAACC,SAAN,CAAgB,MAAM;AACpBkE,IAAAA,IAAI,CAACE,OAAL,CAAcvB,GAAD,IAAS;AACpB,UAAIA,GAAJ,EAAS;AACP,YAAI,OAAOA,GAAP,KAAe,UAAnB,EAA+B;AAC7BA,UAAAA,GAAG,CAACsB,SAAS,CAACV,OAAX,CAAH;AACD,SAFD,MAEO;AACLZ,UAAAA,GAAG,CAACY,OAAJ,GAAcU,SAAS,CAACV,OAAxB;AACD;AACF;AACF,KARD;AASD,GAVD,EAUG,CAACS,IAAD,CAVH;AAWA,SAAOC,SAAP;AACD,CAhBD","sourcesContent":["import React, {\n useEffect,\n useState,\n useCallback,\n useMemo,\n forwardRef,\n useRef,\n} from \"react\";\nimport type {\n RefObject,\n ReactNode,\n ComponentProps,\n MutableRefObject,\n ForwardedRef,\n} from \"react\";\nimport type { OpaqueRoot } from \"react-reconciler\";\nimport ReactReconciler from \"react-reconciler\";\n\nimport { SkiaView, useDrawCallback } from \"../views\";\nimport type { TouchHandler } from \"../views\";\nimport type { SkFontMgr } from \"../skia/types\";\nimport { useValue } from \"../values/hooks/useValue\";\nimport { Skia } from \"../skia/Skia\";\n\nimport { debug as hostDebug, skHostConfig } from \"./HostConfig\";\n// import { debugTree } from \"./nodes\";\nimport { Container } from \"./nodes\";\nimport { DependencyManager } from \"./DependencyManager\";\nimport { CanvasProvider } from \"./useCanvas\";\n\nexport const skiaReconciler = ReactReconciler(skHostConfig);\n\nskiaReconciler.injectIntoDevTools({\n bundleType: 1,\n version: \"0.0.1\",\n rendererPackageName: \"react-native-skia\",\n});\n\nconst render = (element: ReactNode, root: OpaqueRoot, container: Container) => {\n skiaReconciler.updateContainer(element, root, null, () => {\n hostDebug(\"updateContainer\");\n\n container.depMgr.subscribe();\n });\n};\n\nexport const useCanvasRef = () => useRef<SkiaView>(null);\n\nexport interface CanvasProps extends ComponentProps<typeof SkiaView> {\n ref?: RefObject<SkiaView>;\n children: ReactNode;\n onTouch?: TouchHandler;\n fontMgr?: SkFontMgr;\n}\n\nconst defaultFontMgr = Skia.FontMgr.RefDefault();\n\nexport const Canvas = forwardRef<SkiaView, CanvasProps>(\n ({ children, style, debug, mode, onTouch, fontMgr }, forwardedRef) => {\n const size = useValue({ width: 0, height: 0 });\n const canvasCtx = useMemo(() => ({ Skia, size }), [size]);\n const innerRef = useCanvasRef();\n const ref = useCombinedRefs(forwardedRef, innerRef);\n const [tick, setTick] = useState(0);\n const redraw = useCallback(() => setTick((t) => t + 1), []);\n\n const container = useMemo(\n () => new Container(new DependencyManager(ref), redraw),\n [redraw, ref]\n );\n\n const root = useMemo(\n () => skiaReconciler.createContainer(container, 0, false, null),\n [container]\n );\n // Render effect\n useEffect(() => {\n render(\n <CanvasProvider value={canvasCtx}>{children}</CanvasProvider>,\n root,\n container\n );\n }, [children, root, redraw, container, canvasCtx]);\n\n // Draw callback\n const onDraw = useDrawCallback(\n (canvas, info) => {\n // TODO: if tree is empty (count === 1) maybe we should not render?\n const { width, height, timestamp } = info;\n if (onTouch) {\n onTouch(info.touches);\n }\n if (\n width !== canvasCtx.size.current.width ||\n height !== canvasCtx.size.current.height\n ) {\n canvasCtx.size.current = { width, height };\n }\n const paint = Skia.Paint();\n const ctx = {\n width,\n height,\n timestamp,\n canvas,\n paint,\n opacity: 1,\n ref,\n center: Skia.Point(width / 2, height / 2),\n fontMgr: fontMgr ?? defaultFontMgr,\n Skia,\n };\n container.draw(ctx);\n },\n [tick, onTouch]\n );\n\n useEffect(() => {\n return () => {\n container.depMgr.unsubscribe();\n };\n }, [container]);\n\n return (\n <SkiaView\n ref={ref}\n style={style}\n onDraw={onDraw}\n mode={mode}\n debug={debug}\n />\n );\n }\n);\n\n/**\n * Combines a list of refs into a single ref. This can be used to provide\n * both a forwarded ref and an internal ref keeping the same functionality\n * on both of the refs.\n * @param refs Array of refs to combine\n * @returns A single ref that can be used in a ref prop.\n */\nconst useCombinedRefs = <T,>(\n ...refs: Array<MutableRefObject<T> | ForwardedRef<T>>\n) => {\n const targetRef = React.useRef<T>(null);\n React.useEffect(() => {\n refs.forEach((ref) => {\n if (ref) {\n if (typeof ref === \"function\") {\n ref(targetRef.current);\n } else {\n ref.current = targetRef.current;\n }\n }\n });\n }, [refs]);\n return targetRef;\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["DependencyManager.tsx"],"names":["isValue","DependencyManager","constructor","ref","Map","unSubscribeNode","node","subscription","subscriptions","get","unsubscribe","delete","subscribeNode","props","values","Object","filter","length","set","subscribe","current","Error","forEach","registerValues","clear"],"mappings":";;AAKA,SAASA,OAAT,QAAwB,cAAxB;AAMA,OAAO,MAAMC,iBAAN,CAAwB;AAO7BC,EAAAA,WAAW,CAACC,GAAD,EAA2B;AAAA;;AAAA,2CAFlC,IAAIC,GAAJ,EAEkC;;AACpC,SAAKD,GAAL,GAAWA,GAAX;AACD;;AAEDE,EAAAA,eAAe,CAACC,IAAD,EAAa;AAC1B,UAAMC,YAAY,GAAG,KAAKC,aAAL,CAAmBC,GAAnB,CAAuBH,IAAvB,CAArB;;AACA,QAAIC,YAAY,IAAIA,YAAY,CAACG,WAAjC,EAA8C;AAC5CH,MAAAA,YAAY,CAACG,WAAb;AACD;;AACD,SAAKF,aAAL,CAAmBG,MAAnB,CAA0BL,IAA1B;AACD;;AAEDM,EAAAA,aAAa,CAACN,IAAD,EAAaO,KAAb,EAA2B;AACtC,UAAMC,MAAM,GAAGC,MAAM,CAACD,MAAP,CAAcD,KAAd,EAAqBG,MAArB,CAA4BhB,OAA5B,CAAf;;AACA,QAAIc,MAAM,CAACG,MAAP,GAAgB,CAApB,EAAuB;AACrB,WAAKT,aAAL,CAAmBU,GAAnB,CAAuBZ,IAAvB,EAA6B;AAAEQ,QAAAA,MAAF;AAAUJ,QAAAA,WAAW,EAAE;AAAvB,OAA7B;AACD;AACF;;AAEDS,EAAAA,SAAS,GAAG;AACV,QAAI,KAAKhB,GAAL,CAASiB,OAAT,KAAqB,IAAzB,EAA+B;AAC7B,YAAM,IAAIC,KAAJ,CAAU,uBAAV,CAAN;AACD;;AACD,SAAKb,aAAL,CAAmBc,OAAnB,CAA4Bf,YAAD,IAAkB;AAC3C,UAAIA,YAAY,CAACG,WAAb,KAA6B,IAAjC,EAAuC;AACrCH,QAAAA,YAAY,CAACG,WAAb,GAA2B,KAAKP,GAAL,CAASiB,OAAT,CAAkBG,cAAlB,CACzBhB,YAAY,CAACO,MADY,CAA3B;AAGD;AACF,KAND;AAOD;;AAEDJ,EAAAA,WAAW,GAAG;AACZ,SAAKF,aAAL,CAAmBc,OAAnB,CAA2B,QAAqB;AAAA,UAApB;AAAEZ,QAAAA;AAAF,OAAoB;;AAC9C,UAAIA,WAAJ,EAAiB;AACfA,QAAAA,WAAW;AACZ;AACF,KAJD;AAKA,SAAKF,aAAL,CAAmBgB,KAAnB;AACD;;AA9C4B","sourcesContent":["import type { RefObject } from \"react\";\n\nimport type { SkiaView } from \"../views\";\nimport type { SkiaReadonlyValue } from \"../values\";\n\nimport { isValue } from \"./processors\";\nimport type { Node } from \"./nodes\";\n\ntype Unsubscribe = () => void;\ntype Props = { [key: string]: unknown };\n\nexport class DependencyManager {\n ref: RefObject<SkiaView>;\n subscriptions: Map<\n Node,\n { values: SkiaReadonlyValue<unknown>[]; unsubscribe: null | Unsubscribe }\n > = new Map();\n\n constructor(ref: RefObject<SkiaView>) {\n this.ref = ref;\n }\n\n unSubscribeNode(node: Node) {\n const subscription = this.subscriptions.get(node);\n if (subscription && subscription.unsubscribe) {\n subscription.unsubscribe();\n }\n this.subscriptions.delete(node);\n }\n\n subscribeNode(node: Node, props: Props) {\n const values = Object.values(props).filter(isValue);\n if (values.length > 0) {\n this.subscriptions.set(node, { values, unsubscribe: null });\n }\n }\n\n subscribe() {\n if (this.ref.current === null) {\n throw new Error(\"Canvas ref is not set\");\n }\n this.subscriptions.forEach((subscription) => {\n if (subscription.unsubscribe === null) {\n subscription.unsubscribe = this.ref.current!.registerValues(\n subscription.values\n );\n }\n });\n }\n\n unsubscribe() {\n this.subscriptions.forEach(({ unsubscribe }) => {\n if (unsubscribe) {\n unsubscribe();\n }\n });\n this.subscriptions.clear();\n }\n}\n"]}
1
+ {"version":3,"sources":["DependencyManager.tsx"],"names":["isValue","DependencyManager","constructor","ref","Map","unSubscribeNode","node","subscription","subscriptions","get","unsubscribe","delete","subscribeNode","props","values","Object","filter","length","set","subscribe","current","Error","forEach","registerValues","clear"],"mappings":";;AAKA,SAASA,OAAT,QAAwB,cAAxB;AAMA,OAAO,MAAMC,iBAAN,CAAwB;AAO7BC,EAAAA,WAAW,CAACC,GAAD,EAA2B;AAAA;;AAAA,2CAFlC,IAAIC,GAAJ,EAEkC;;AACpC,SAAKD,GAAL,GAAWA,GAAX;AACD;;AAEDE,EAAAA,eAAe,CAACC,IAAD,EAAa;AAC1B,UAAMC,YAAY,GAAG,KAAKC,aAAL,CAAmBC,GAAnB,CAAuBH,IAAvB,CAArB;;AACA,QAAIC,YAAY,IAAIA,YAAY,CAACG,WAAjC,EAA8C;AAC5CH,MAAAA,YAAY,CAACG,WAAb;AACD;;AACD,SAAKF,aAAL,CAAmBG,MAAnB,CAA0BL,IAA1B;AACD;;AAEDM,EAAAA,aAAa,CAACN,IAAD,EAAaO,KAAb,EAA2B;AACtC,UAAMC,MAAM,GAAGC,MAAM,CAACD,MAAP,CAAcD,KAAd,EAAqBG,MAArB,CAA4BhB,OAA5B,CAAf;;AACA,QAAIc,MAAM,CAACG,MAAP,GAAgB,CAApB,EAAuB;AACrB,WAAKT,aAAL,CAAmBU,GAAnB,CAAuBZ,IAAvB,EAA6B;AAAEQ,QAAAA,MAAF;AAAUJ,QAAAA,WAAW,EAAE;AAAvB,OAA7B;AACD;AACF;;AAEDS,EAAAA,SAAS,GAAG;AACV,QAAI,KAAKhB,GAAL,CAASiB,OAAT,KAAqB,IAAzB,EAA+B;AAC7B,YAAM,IAAIC,KAAJ,CAAU,uBAAV,CAAN;AACD;;AACD,SAAKb,aAAL,CAAmBc,OAAnB,CAA4Bf,YAAD,IAAkB;AAC3C,UAAIA,YAAY,CAACG,WAAb,KAA6B,IAAjC,EAAuC;AACrCH,QAAAA,YAAY,CAACG,WAAb,GAA2B,KAAKP,GAAL,CAASiB,OAAT,CAAkBG,cAAlB,CACzBhB,YAAY,CAACO,MADY,CAA3B;AAGD;AACF,KAND;AAOD;;AAEDJ,EAAAA,WAAW,GAAG;AACZ,SAAKF,aAAL,CAAmBc,OAAnB,CAA2B,QAAqB;AAAA,UAApB;AAAEZ,QAAAA;AAAF,OAAoB;;AAC9C,UAAIA,WAAJ,EAAiB;AACfA,QAAAA,WAAW;AACZ;AACF,KAJD;AAKA,SAAKF,aAAL,CAAmBgB,KAAnB;AACD;;AA9C4B","sourcesContent":["import type { RefObject } from \"react\";\n\nimport type { SkiaView } from \"../views\";\nimport type { SkiaValue } from \"../values\";\n\nimport { isValue } from \"./processors\";\nimport type { Node } from \"./nodes\";\n\ntype Unsubscribe = () => void;\ntype Props = { [key: string]: unknown };\n\nexport class DependencyManager {\n ref: RefObject<SkiaView>;\n subscriptions: Map<\n Node,\n { values: SkiaValue<unknown>[]; unsubscribe: null | Unsubscribe }\n > = new Map();\n\n constructor(ref: RefObject<SkiaView>) {\n this.ref = ref;\n }\n\n unSubscribeNode(node: Node) {\n const subscription = this.subscriptions.get(node);\n if (subscription && subscription.unsubscribe) {\n subscription.unsubscribe();\n }\n this.subscriptions.delete(node);\n }\n\n subscribeNode(node: Node, props: Props) {\n const values = Object.values(props).filter(isValue);\n if (values.length > 0) {\n this.subscriptions.set(node, { values, unsubscribe: null });\n }\n }\n\n subscribe() {\n if (this.ref.current === null) {\n throw new Error(\"Canvas ref is not set\");\n }\n this.subscriptions.forEach((subscription) => {\n if (subscription.unsubscribe === null) {\n subscription.unsubscribe = this.ref.current!.registerValues(\n subscription.values\n );\n }\n });\n }\n\n unsubscribe() {\n this.subscriptions.forEach(({ unsubscribe }) => {\n if (unsubscribe) {\n unsubscribe();\n }\n });\n this.subscriptions.clear();\n }\n}\n"]}
@@ -1,4 +1,4 @@
1
- /*global NodeJS, performance*/
1
+ /*global NodeJS*/
2
2
  import { DeclarationNode, DrawingNode, NodeType } from "./nodes";
3
3
  import { exhaustiveCheck, shallowEq } from "./typeddash";
4
4
  const DEBUG = false;
@@ -110,7 +110,7 @@ export const skHostConfig = {
110
110
  /**
111
111
  * This function is used by the reconciler in order to calculate current time for prioritising work.
112
112
  */
113
- now: performance.now,
113
+ now: Date.now,
114
114
  supportsMutation: true,
115
115
  isPrimaryRenderer: false,
116
116
  supportsPersistence: false,
@@ -1 +1 @@
1
- {"version":3,"sources":["HostConfig.ts"],"names":["DeclarationNode","DrawingNode","NodeType","exhaustiveCheck","shallowEq","DEBUG","debug","console","log","allChildrenAreMemoized","node","memoizable","child","children","memoized","bustBranchMemoization","parent","ancestor","bustBranchMemoizable","appendNode","push","removeNode","index","indexOf","splice","depMgr","unSubscribeNode","c","insertBefore","before","beforeIndex","createNode","container","type","props","Drawing","onDraw","skipProcessing","p1","Declaration","onDeclare","p2","skHostConfig","now","performance","supportsMutation","isPrimaryRenderer","supportsPersistence","supportsHydration","scheduleTimeout","setTimeout","cancelTimeout","clearTimeout","noTimeout","appendChildToContainer","appendChild","getRootHostContext","_rootContainerInstance","getChildHostContext","_parentHostContext","_type","shouldSetTextContent","_props","createTextInstance","_text","_hostContext","_internalInstanceHandle","Error","createInstance","appendInitialChild","parentInstance","finalizeInitialChildren","commitMount","prepareForCommit","_containerInfo","finalizeContainerChildren","resetAfterCommit","redraw","getPublicInstance","prepareUpdate","instance","oldProps","newProps","propsAreEqual","commitUpdate","_updatePayload","prevProps","nextProps","_internalHandle","commitTextUpdate","_textInstance","_oldText","_newText","clearContainer","preparePortalMount","removeChild","removeChildFromContainer","insertInContainerBefore"],"mappings":"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","sourcesContent":["/*global NodeJS, performance*/\nimport type { HostConfig } from \"react-reconciler\";\n\nimport type { Node, Container, DeclarationProps, DrawingProps } from \"./nodes\";\nimport { DeclarationNode, DrawingNode, NodeType } from \"./nodes\";\nimport { exhaustiveCheck, shallowEq } from \"./typeddash\";\n\nconst DEBUG = false;\nexport const debug = (...args: Parameters<typeof console.log>) => {\n if (DEBUG) {\n console.log(...args);\n }\n};\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n skDeclaration: DeclarationProps<any>;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n skDrawing: DrawingProps<any>;\n }\n }\n}\n\ntype Instance = Node;\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype Props = any;\ntype TextInstance = Node;\ntype SuspenseInstance = Instance;\ntype HydratableInstance = Instance;\ntype PublicInstance = Instance;\ntype HostContext = null;\ntype UpdatePayload = true;\ntype ChildSet = unknown;\ntype TimeoutHandle = NodeJS.Timeout;\ntype NoTimeout = -1;\n\ntype SkiaHostConfig = HostConfig<\n NodeType,\n Props,\n Container,\n Instance,\n TextInstance,\n SuspenseInstance,\n HydratableInstance,\n PublicInstance,\n HostContext,\n UpdatePayload,\n ChildSet,\n TimeoutHandle,\n NoTimeout\n>;\n\nconst allChildrenAreMemoized = (node: Instance) => {\n if (!node.memoizable) {\n return false;\n }\n for (const child of node.children) {\n if (!child.memoized) {\n return false;\n }\n }\n return true;\n};\n\nconst bustBranchMemoization = (parent: Node) => {\n if (parent.memoizable) {\n let ancestor: Node | undefined = parent;\n while (ancestor) {\n ancestor.memoized = null;\n ancestor = ancestor.parent;\n }\n }\n};\n\nconst bustBranchMemoizable = (parent: Node) => {\n if (parent.memoizable) {\n let ancestor: Node | undefined = parent;\n while (ancestor) {\n ancestor.memoizable = false;\n ancestor = ancestor.parent;\n }\n }\n};\n\nconst appendNode = (parent: Node, child: Node) => {\n child.parent = parent;\n bustBranchMemoization(parent);\n if (!child.memoizable) {\n bustBranchMemoizable(parent);\n }\n if (!parent.memoizable) {\n child.memoizable = false;\n }\n parent.children.push(child);\n};\n\nconst removeNode = (parent: Node, child: Node) => {\n bustBranchMemoization(parent);\n const index = parent.children.indexOf(child);\n parent.children.splice(index, 1);\n child.depMgr.unSubscribeNode(child);\n // unsubscribe to all children as well\n for (const c of child.children) {\n removeNode(child, c);\n }\n};\n\nconst insertBefore = (parent: Node, child: Node, before: Node) => {\n bustBranchMemoization(parent);\n const index = parent.children.indexOf(child);\n if (index !== -1) {\n parent.children.splice(index, 1);\n }\n const beforeIndex = parent.children.indexOf(before);\n parent.children.splice(beforeIndex, 0, child);\n};\n\nconst createNode = (container: Container, type: NodeType, props: Props) => {\n switch (type) {\n case NodeType.Drawing:\n const { onDraw, skipProcessing, ...p1 } = props;\n return new DrawingNode(container.depMgr, onDraw, skipProcessing, p1);\n case NodeType.Declaration:\n const { onDeclare, ...p2 } = props;\n return new DeclarationNode(container.depMgr, onDeclare, p2);\n default:\n // TODO: here we need to throw a nice error message\n // This is the error that will show up when the user uses nodes not supported by Skia (View, Audio, etc)\n return exhaustiveCheck(type);\n }\n};\n\nexport const skHostConfig: SkiaHostConfig = {\n /**\n * This function is used by the reconciler in order to calculate current time for prioritising work.\n */\n now: performance.now,\n\n supportsMutation: true,\n isPrimaryRenderer: false,\n supportsPersistence: false,\n supportsHydration: false,\n //supportsMicrotask: true,\n\n scheduleTimeout: setTimeout,\n cancelTimeout: clearTimeout,\n noTimeout: -1,\n\n appendChildToContainer(container, child) {\n debug(\"appendChildToContainer\", container, child);\n appendNode(container, child);\n },\n\n appendChild(parent, child) {\n debug(\"appendChild\", parent, child);\n appendNode(parent, child);\n },\n\n getRootHostContext: (_rootContainerInstance: Node) => {\n debug(\"getRootHostContext\");\n return null;\n },\n\n getChildHostContext(_parentHostContext, _type, _rootContainerInstance) {\n debug(\"getChildHostContext\");\n return null;\n },\n\n shouldSetTextContent(_type, _props) {\n return false;\n },\n\n createTextInstance(\n _text,\n _rootContainerInstance,\n _hostContext,\n _internalInstanceHandle\n ) {\n debug(\"createTextInstance\");\n // return SpanNode({}, text) as SkNode;\n throw new Error(\"Text nodes are not supported yet\");\n },\n\n createInstance(\n type,\n props,\n container,\n _hostContext,\n _internalInstanceHandle\n ) {\n debug(\"createInstance\", type);\n return createNode(container, type, props) as Node;\n },\n\n appendInitialChild(parentInstance, child) {\n debug(\"appendInitialChild\");\n appendNode(parentInstance, child);\n },\n\n finalizeInitialChildren(\n parentInstance,\n _type,\n _props,\n _rootContainerInstance,\n _hostContext\n ) {\n debug(\"finalizeInitialChildren\", parentInstance);\n return false;\n },\n\n commitMount() {\n // if finalizeInitialChildren = true\n debug(\"commitMount\");\n },\n\n prepareForCommit(_containerInfo) {\n debug(\"prepareForCommit\");\n return null;\n },\n\n finalizeContainerChildren: () => {\n debug(\"finalizeContainerChildren\");\n },\n\n resetAfterCommit(container) {\n debug(\"resetAfterCommit\");\n container.redraw();\n },\n\n getPublicInstance(node: Instance) {\n debug(\"getPublicInstance\");\n return node;\n },\n\n prepareUpdate: (\n instance,\n type,\n oldProps,\n newProps,\n _rootContainerInstance,\n _hostContext\n ) => {\n debug(\"prepareUpdate\");\n const propsAreEqual = shallowEq(oldProps, newProps);\n if (propsAreEqual && !instance.memoizable) {\n return null;\n }\n debug(\"update \", type);\n return true;\n },\n\n commitUpdate(\n instance,\n _updatePayload,\n type,\n prevProps,\n nextProps,\n _internalHandle\n ) {\n debug(\"commitUpdate: \", type);\n if (shallowEq(prevProps, nextProps) && allChildrenAreMemoized(instance)) {\n return;\n }\n bustBranchMemoization(instance);\n instance.props = nextProps;\n },\n\n commitTextUpdate: (\n _textInstance: TextInstance,\n _oldText: string,\n _newText: string\n ) => {\n // textInstance.instance = newText;\n },\n\n clearContainer: (container) => {\n debug(\"clearContainer\");\n container.children.splice(0);\n },\n\n preparePortalMount: () => {\n debug(\"preparePortalMount\");\n },\n\n removeChild: (parent, child) => {\n removeNode(parent, child);\n },\n\n removeChildFromContainer: (parent, child) => {\n removeNode(parent, child);\n },\n\n insertInContainerBefore: (parent, child, before) => {\n insertBefore(parent, child, before);\n },\n\n insertBefore: (parent, child, before) => {\n insertBefore(parent, child, before);\n },\n};\n"]}
1
+ {"version":3,"sources":["HostConfig.ts"],"names":["DeclarationNode","DrawingNode","NodeType","exhaustiveCheck","shallowEq","DEBUG","debug","console","log","allChildrenAreMemoized","node","memoizable","child","children","memoized","bustBranchMemoization","parent","ancestor","bustBranchMemoizable","appendNode","push","removeNode","index","indexOf","splice","depMgr","unSubscribeNode","c","insertBefore","before","beforeIndex","createNode","container","type","props","Drawing","onDraw","skipProcessing","p1","Declaration","onDeclare","p2","skHostConfig","now","Date","supportsMutation","isPrimaryRenderer","supportsPersistence","supportsHydration","scheduleTimeout","setTimeout","cancelTimeout","clearTimeout","noTimeout","appendChildToContainer","appendChild","getRootHostContext","_rootContainerInstance","getChildHostContext","_parentHostContext","_type","shouldSetTextContent","_props","createTextInstance","_text","_hostContext","_internalInstanceHandle","Error","createInstance","appendInitialChild","parentInstance","finalizeInitialChildren","commitMount","prepareForCommit","_containerInfo","finalizeContainerChildren","resetAfterCommit","redraw","getPublicInstance","prepareUpdate","instance","oldProps","newProps","propsAreEqual","commitUpdate","_updatePayload","prevProps","nextProps","_internalHandle","commitTextUpdate","_textInstance","_oldText","_newText","clearContainer","preparePortalMount","removeChild","removeChildFromContainer","insertInContainerBefore"],"mappings":"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","sourcesContent":["/*global NodeJS*/\nimport type { HostConfig } from \"react-reconciler\";\n\nimport type { Node, Container, DeclarationProps, DrawingProps } from \"./nodes\";\nimport { DeclarationNode, DrawingNode, NodeType } from \"./nodes\";\nimport { exhaustiveCheck, shallowEq } from \"./typeddash\";\n\nconst DEBUG = false;\nexport const debug = (...args: Parameters<typeof console.log>) => {\n if (DEBUG) {\n console.log(...args);\n }\n};\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace JSX {\n interface IntrinsicElements {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n skDeclaration: DeclarationProps<any>;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n skDrawing: DrawingProps<any>;\n }\n }\n}\n\ntype Instance = Node;\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype Props = any;\ntype TextInstance = Node;\ntype SuspenseInstance = Instance;\ntype HydratableInstance = Instance;\ntype PublicInstance = Instance;\ntype HostContext = null;\ntype UpdatePayload = true;\ntype ChildSet = unknown;\ntype TimeoutHandle = NodeJS.Timeout;\ntype NoTimeout = -1;\n\ntype SkiaHostConfig = HostConfig<\n NodeType,\n Props,\n Container,\n Instance,\n TextInstance,\n SuspenseInstance,\n HydratableInstance,\n PublicInstance,\n HostContext,\n UpdatePayload,\n ChildSet,\n TimeoutHandle,\n NoTimeout\n>;\n\nconst allChildrenAreMemoized = (node: Instance) => {\n if (!node.memoizable) {\n return false;\n }\n for (const child of node.children) {\n if (!child.memoized) {\n return false;\n }\n }\n return true;\n};\n\nconst bustBranchMemoization = (parent: Node) => {\n if (parent.memoizable) {\n let ancestor: Node | undefined = parent;\n while (ancestor) {\n ancestor.memoized = null;\n ancestor = ancestor.parent;\n }\n }\n};\n\nconst bustBranchMemoizable = (parent: Node) => {\n if (parent.memoizable) {\n let ancestor: Node | undefined = parent;\n while (ancestor) {\n ancestor.memoizable = false;\n ancestor = ancestor.parent;\n }\n }\n};\n\nconst appendNode = (parent: Node, child: Node) => {\n child.parent = parent;\n bustBranchMemoization(parent);\n if (!child.memoizable) {\n bustBranchMemoizable(parent);\n }\n if (!parent.memoizable) {\n child.memoizable = false;\n }\n parent.children.push(child);\n};\n\nconst removeNode = (parent: Node, child: Node) => {\n bustBranchMemoization(parent);\n const index = parent.children.indexOf(child);\n parent.children.splice(index, 1);\n child.depMgr.unSubscribeNode(child);\n // unsubscribe to all children as well\n for (const c of child.children) {\n removeNode(child, c);\n }\n};\n\nconst insertBefore = (parent: Node, child: Node, before: Node) => {\n bustBranchMemoization(parent);\n const index = parent.children.indexOf(child);\n if (index !== -1) {\n parent.children.splice(index, 1);\n }\n const beforeIndex = parent.children.indexOf(before);\n parent.children.splice(beforeIndex, 0, child);\n};\n\nconst createNode = (container: Container, type: NodeType, props: Props) => {\n switch (type) {\n case NodeType.Drawing:\n const { onDraw, skipProcessing, ...p1 } = props;\n return new DrawingNode(container.depMgr, onDraw, skipProcessing, p1);\n case NodeType.Declaration:\n const { onDeclare, ...p2 } = props;\n return new DeclarationNode(container.depMgr, onDeclare, p2);\n default:\n // TODO: here we need to throw a nice error message\n // This is the error that will show up when the user uses nodes not supported by Skia (View, Audio, etc)\n return exhaustiveCheck(type);\n }\n};\n\nexport const skHostConfig: SkiaHostConfig = {\n /**\n * This function is used by the reconciler in order to calculate current time for prioritising work.\n */\n now: Date.now,\n\n supportsMutation: true,\n isPrimaryRenderer: false,\n supportsPersistence: false,\n supportsHydration: false,\n //supportsMicrotask: true,\n\n scheduleTimeout: setTimeout,\n cancelTimeout: clearTimeout,\n noTimeout: -1,\n\n appendChildToContainer(container, child) {\n debug(\"appendChildToContainer\", container, child);\n appendNode(container, child);\n },\n\n appendChild(parent, child) {\n debug(\"appendChild\", parent, child);\n appendNode(parent, child);\n },\n\n getRootHostContext: (_rootContainerInstance: Node) => {\n debug(\"getRootHostContext\");\n return null;\n },\n\n getChildHostContext(_parentHostContext, _type, _rootContainerInstance) {\n debug(\"getChildHostContext\");\n return null;\n },\n\n shouldSetTextContent(_type, _props) {\n return false;\n },\n\n createTextInstance(\n _text,\n _rootContainerInstance,\n _hostContext,\n _internalInstanceHandle\n ) {\n debug(\"createTextInstance\");\n // return SpanNode({}, text) as SkNode;\n throw new Error(\"Text nodes are not supported yet\");\n },\n\n createInstance(\n type,\n props,\n container,\n _hostContext,\n _internalInstanceHandle\n ) {\n debug(\"createInstance\", type);\n return createNode(container, type, props) as Node;\n },\n\n appendInitialChild(parentInstance, child) {\n debug(\"appendInitialChild\");\n appendNode(parentInstance, child);\n },\n\n finalizeInitialChildren(\n parentInstance,\n _type,\n _props,\n _rootContainerInstance,\n _hostContext\n ) {\n debug(\"finalizeInitialChildren\", parentInstance);\n return false;\n },\n\n commitMount() {\n // if finalizeInitialChildren = true\n debug(\"commitMount\");\n },\n\n prepareForCommit(_containerInfo) {\n debug(\"prepareForCommit\");\n return null;\n },\n\n finalizeContainerChildren: () => {\n debug(\"finalizeContainerChildren\");\n },\n\n resetAfterCommit(container) {\n debug(\"resetAfterCommit\");\n container.redraw();\n },\n\n getPublicInstance(node: Instance) {\n debug(\"getPublicInstance\");\n return node;\n },\n\n prepareUpdate: (\n instance,\n type,\n oldProps,\n newProps,\n _rootContainerInstance,\n _hostContext\n ) => {\n debug(\"prepareUpdate\");\n const propsAreEqual = shallowEq(oldProps, newProps);\n if (propsAreEqual && !instance.memoizable) {\n return null;\n }\n debug(\"update \", type);\n return true;\n },\n\n commitUpdate(\n instance,\n _updatePayload,\n type,\n prevProps,\n nextProps,\n _internalHandle\n ) {\n debug(\"commitUpdate: \", type);\n if (shallowEq(prevProps, nextProps) && allChildrenAreMemoized(instance)) {\n return;\n }\n bustBranchMemoization(instance);\n instance.props = nextProps;\n },\n\n commitTextUpdate: (\n _textInstance: TextInstance,\n _oldText: string,\n _newText: string\n ) => {\n // textInstance.instance = newText;\n },\n\n clearContainer: (container) => {\n debug(\"clearContainer\");\n container.children.splice(0);\n },\n\n preparePortalMount: () => {\n debug(\"preparePortalMount\");\n },\n\n removeChild: (parent, child) => {\n removeNode(parent, child);\n },\n\n removeChildFromContainer: (parent, child) => {\n removeNode(parent, child);\n },\n\n insertInContainerBefore: (parent, child, before) => {\n insertBefore(parent, child, before);\n },\n\n insertBefore: (parent, child, before) => {\n insertBefore(parent, child, before);\n },\n};\n"]}
@@ -1,14 +1,16 @@
1
1
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
2
 
3
3
  import React from "react";
4
- import { isImageFilter, Skia, BlendMode } from "../../skia";
4
+ import { isImageFilter, BlendMode, isShader } from "../../skia/types";
5
5
  import { createDeclaration } from "../nodes";
6
- import { isShader } from "../../skia/Shader/Shader";
7
6
  import { enumKey } from "../processors/Paint";
8
- const onDeclare = createDeclaration((_ref, children) => {
7
+ const onDeclare = createDeclaration((_ref, children, _ref2) => {
9
8
  let {
10
9
  mode
11
10
  } = _ref;
11
+ let {
12
+ Skia
13
+ } = _ref2;
12
14
  const [inner, outer] = children;
13
15
  const blend = BlendMode[enumKey(mode)];
14
16
 
@@ -1 +1 @@
1
- {"version":3,"sources":["Blend.tsx"],"names":["React","isImageFilter","Skia","BlendMode","createDeclaration","isShader","enumKey","onDeclare","children","mode","inner","outer","blend","ImageFilter","MakeBlend","Shader","Error","Blend","props"],"mappings":";;AACA,OAAOA,KAAP,MAAkB,OAAlB;AAEA,SAASC,aAAT,EAAwBC,IAAxB,EAA8BC,SAA9B,QAA+C,YAA/C;AACA,SAASC,iBAAT,QAAkC,UAAlC;AAEA,SAASC,QAAT,QAAyB,0BAAzB;AACA,SAASC,OAAT,QAAwB,qBAAxB;AAOA,MAAMC,SAAS,GAAGH,iBAAiB,CAAa,OAAWI,QAAX,KAAwB;AAAA,MAAvB;AAAEC,IAAAA;AAAF,GAAuB;AACtE,QAAM,CAACC,KAAD,EAAQC,KAAR,IAAiBH,QAAvB;AACA,QAAMI,KAAK,GAAGT,SAAS,CAACG,OAAO,CAACG,IAAD,CAAR,CAAvB;;AACA,MAAIR,aAAa,CAACU,KAAD,CAAb,IAAwBV,aAAa,CAACS,KAAD,CAAzC,EAAkD;AAChD,WAAOR,IAAI,CAACW,WAAL,CAAiBC,SAAjB,CAA2BF,KAA3B,EAAkCD,KAAlC,EAAyCD,KAAzC,CAAP;AACD,GAFD,MAEO,IAAIL,QAAQ,CAACM,KAAD,CAAR,IAAmBN,QAAQ,CAACK,KAAD,CAA/B,EAAwC;AAC7C,WAAOR,IAAI,CAACa,MAAL,CAAYD,SAAZ,CAAsBF,KAAtB,EAA6BD,KAA7B,EAAoCD,KAApC,CAAP;AACD;;AACD,QAAM,IAAIM,KAAJ,CAAU,kDAAV,CAAN;AACD,CATkC,CAAnC;AAWA,OAAO,MAAMC,KAAK,GAAIC,KAAD,IAAsC;AACzD,sBAAO;AAAe,IAAA,SAAS,EAAEX;AAA1B,KAAyCW,KAAzC,EAAP;AACD,CAFM","sourcesContent":["import type { ReactNode } from \"react\";\nimport React from \"react\";\n\nimport { isImageFilter, Skia, BlendMode } from \"../../skia\";\nimport { createDeclaration } from \"../nodes\";\nimport type { AnimatedProps, SkEnum } from \"../processors\";\nimport { isShader } from \"../../skia/Shader/Shader\";\nimport { enumKey } from \"../processors/Paint\";\n\ninterface BlendProps {\n mode: SkEnum<typeof BlendMode>;\n children?: ReactNode | ReactNode[];\n}\n\nconst onDeclare = createDeclaration<BlendProps>(({ mode }, children) => {\n const [inner, outer] = children;\n const blend = BlendMode[enumKey(mode)];\n if (isImageFilter(outer) && isImageFilter(inner)) {\n return Skia.ImageFilter.MakeBlend(blend, outer, inner);\n } else if (isShader(outer) && isShader(inner)) {\n return Skia.Shader.MakeBlend(blend, outer, inner);\n }\n throw new Error(\"<Blend /> can only blend Shaders or ImageFilters\");\n});\n\nexport const Blend = (props: AnimatedProps<BlendProps>) => {\n return <skDeclaration onDeclare={onDeclare} {...props} />;\n};\n"]}
1
+ {"version":3,"sources":["Blend.tsx"],"names":["React","isImageFilter","BlendMode","isShader","createDeclaration","enumKey","onDeclare","children","mode","Skia","inner","outer","blend","ImageFilter","MakeBlend","Shader","Error","Blend","props"],"mappings":";;AACA,OAAOA,KAAP,MAAkB,OAAlB;AAEA,SAASC,aAAT,EAAwBC,SAAxB,EAAmCC,QAAnC,QAAmD,kBAAnD;AACA,SAASC,iBAAT,QAAkC,UAAlC;AAEA,SAASC,OAAT,QAAwB,qBAAxB;AAOA,MAAMC,SAAS,GAAGF,iBAAiB,CACjC,OAAWG,QAAX,YAAkC;AAAA,MAAjC;AAAEC,IAAAA;AAAF,GAAiC;AAAA,MAAb;AAAEC,IAAAA;AAAF,GAAa;AAChC,QAAM,CAACC,KAAD,EAAQC,KAAR,IAAiBJ,QAAvB;AACA,QAAMK,KAAK,GAAGV,SAAS,CAACG,OAAO,CAACG,IAAD,CAAR,CAAvB;;AACA,MAAIP,aAAa,CAACU,KAAD,CAAb,IAAwBV,aAAa,CAACS,KAAD,CAAzC,EAAkD;AAChD,WAAOD,IAAI,CAACI,WAAL,CAAiBC,SAAjB,CAA2BF,KAA3B,EAAkCD,KAAlC,EAAyCD,KAAzC,CAAP;AACD,GAFD,MAEO,IAAIP,QAAQ,CAACQ,KAAD,CAAR,IAAmBR,QAAQ,CAACO,KAAD,CAA/B,EAAwC;AAC7C,WAAOD,IAAI,CAACM,MAAL,CAAYD,SAAZ,CAAsBF,KAAtB,EAA6BD,KAA7B,EAAoCD,KAApC,CAAP;AACD;;AACD,QAAM,IAAIM,KAAJ,CAAU,kDAAV,CAAN;AACD,CAVgC,CAAnC;AAaA,OAAO,MAAMC,KAAK,GAAIC,KAAD,IAAsC;AACzD,sBAAO;AAAe,IAAA,SAAS,EAAEZ;AAA1B,KAAyCY,KAAzC,EAAP;AACD,CAFM","sourcesContent":["import type { ReactNode } from \"react\";\nimport React from \"react\";\n\nimport { isImageFilter, BlendMode, isShader } from \"../../skia/types\";\nimport { createDeclaration } from \"../nodes\";\nimport type { AnimatedProps, SkEnum } from \"../processors\";\nimport { enumKey } from \"../processors/Paint\";\n\ninterface BlendProps {\n mode: SkEnum<typeof BlendMode>;\n children?: ReactNode | ReactNode[];\n}\n\nconst onDeclare = createDeclaration<BlendProps>(\n ({ mode }, children, { Skia }) => {\n const [inner, outer] = children;\n const blend = BlendMode[enumKey(mode)];\n if (isImageFilter(outer) && isImageFilter(inner)) {\n return Skia.ImageFilter.MakeBlend(blend, outer, inner);\n } else if (isShader(outer) && isShader(inner)) {\n return Skia.Shader.MakeBlend(blend, outer, inner);\n }\n throw new Error(\"<Blend /> can only blend Shaders or ImageFilters\");\n }\n);\n\nexport const Blend = (props: AnimatedProps<BlendProps>) => {\n return <skDeclaration onDeclare={onDeclare} {...props} />;\n};\n"]}
@@ -1,11 +1,12 @@
1
1
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
2
 
3
3
  import React from "react";
4
- import { Skia } from "../../skia";
4
+ import { isImageFilter, isColorFilter } from "../../skia/types";
5
5
  import { createDeclaration } from "../nodes/Declaration";
6
- import { isColorFilter } from "../../skia/ColorFilter/ColorFilter";
7
- import { isImageFilter } from "../../skia/ImageFilter/ImageFilter";
8
- const onDeclare = createDeclaration((_, children) => {
6
+ const onDeclare = createDeclaration((_, children, _ref) => {
7
+ let {
8
+ Skia
9
+ } = _ref;
9
10
  const [inner, outer] = children;
10
11
 
11
12
  if (isColorFilter(outer) && isColorFilter(inner)) {
@@ -1 +1 @@
1
- {"version":3,"sources":["Compose.tsx"],"names":["React","Skia","createDeclaration","isColorFilter","isImageFilter","onDeclare","_","children","inner","outer","ColorFilter","MakeCompose","ImageFilter","Error","Compose","props"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAGA,SAASC,IAAT,QAAqB,YAArB;AACA,SAASC,iBAAT,QAAkC,sBAAlC;AAEA,SAASC,aAAT,QAA8B,oCAA9B;AACA,SAASC,aAAT,QAA8B,oCAA9B;AAMA,MAAMC,SAAS,GAAGH,iBAAiB,CAAC,CAACI,CAAD,EAAIC,QAAJ,KAAiB;AACnD,QAAM,CAACC,KAAD,EAAQC,KAAR,IAAiBF,QAAvB;;AACA,MAAIJ,aAAa,CAACM,KAAD,CAAb,IAAwBN,aAAa,CAACK,KAAD,CAAzC,EAAkD;AAChD,WAAOP,IAAI,CAACS,WAAL,CAAiBC,WAAjB,CAA6BF,KAA7B,EAAoCD,KAApC,CAAP;AACD,GAFD,MAEO,IAAIJ,aAAa,CAACK,KAAD,CAAb,IAAwBL,aAAa,CAACI,KAAD,CAAzC,EAAkD;AACvD,WAAOP,IAAI,CAACW,WAAL,CAAiBD,WAAjB,CAA6BF,KAA7B,EAAoCD,KAApC,CAAP;AACD;;AACD,QAAM,IAAIK,KAAJ,CACJ,8DADI,CAAN;AAGD,CAVkC,CAAnC;AAYA,OAAO,MAAMC,OAAO,GAAIC,KAAD,IAAwC;AAC7D,sBAAO;AAAe,IAAA,SAAS,EAAEV;AAA1B,KAAyCU,KAAzC,EAAP;AACD,CAFM","sourcesContent":["import React from \"react\";\nimport type { ReactNode } from \"react\";\n\nimport { Skia } from \"../../skia\";\nimport { createDeclaration } from \"../nodes/Declaration\";\nimport type { AnimatedProps } from \"../processors/Animations/Animations\";\nimport { isColorFilter } from \"../../skia/ColorFilter/ColorFilter\";\nimport { isImageFilter } from \"../../skia/ImageFilter/ImageFilter\";\n\nexport interface ComposeProps {\n children: ReactNode | ReactNode[];\n}\n\nconst onDeclare = createDeclaration((_, children) => {\n const [inner, outer] = children;\n if (isColorFilter(outer) && isColorFilter(inner)) {\n return Skia.ColorFilter.MakeCompose(outer, inner);\n } else if (isImageFilter(outer) && isImageFilter(inner)) {\n return Skia.ImageFilter.MakeCompose(outer, inner);\n }\n throw new Error(\n \"ComposeFilter can only compose ColorFilters and ImageFilters\"\n );\n});\n\nexport const Compose = (props: AnimatedProps<ComposeProps>) => {\n return <skDeclaration onDeclare={onDeclare} {...props} />;\n};\n"]}
1
+ {"version":3,"sources":["Compose.tsx"],"names":["React","isImageFilter","isColorFilter","createDeclaration","onDeclare","_","children","Skia","inner","outer","ColorFilter","MakeCompose","ImageFilter","Error","Compose","props"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAGA,SAASC,aAAT,EAAwBC,aAAxB,QAA6C,kBAA7C;AACA,SAASC,iBAAT,QAAkC,sBAAlC;AAOA,MAAMC,SAAS,GAAGD,iBAAiB,CAAC,CAACE,CAAD,EAAIC,QAAJ,WAA2B;AAAA,MAAb;AAAEC,IAAAA;AAAF,GAAa;AAC7D,QAAM,CAACC,KAAD,EAAQC,KAAR,IAAiBH,QAAvB;;AACA,MAAIJ,aAAa,CAACO,KAAD,CAAb,IAAwBP,aAAa,CAACM,KAAD,CAAzC,EAAkD;AAChD,WAAOD,IAAI,CAACG,WAAL,CAAiBC,WAAjB,CAA6BF,KAA7B,EAAoCD,KAApC,CAAP;AACD,GAFD,MAEO,IAAIP,aAAa,CAACQ,KAAD,CAAb,IAAwBR,aAAa,CAACO,KAAD,CAAzC,EAAkD;AACvD,WAAOD,IAAI,CAACK,WAAL,CAAiBD,WAAjB,CAA6BF,KAA7B,EAAoCD,KAApC,CAAP;AACD;;AACD,QAAM,IAAIK,KAAJ,CACJ,8DADI,CAAN;AAGD,CAVkC,CAAnC;AAYA,OAAO,MAAMC,OAAO,GAAIC,KAAD,IAAwC;AAC7D,sBAAO;AAAe,IAAA,SAAS,EAAEX;AAA1B,KAAyCW,KAAzC,EAAP;AACD,CAFM","sourcesContent":["import React from \"react\";\nimport type { ReactNode } from \"react\";\n\nimport { isImageFilter, isColorFilter } from \"../../skia/types\";\nimport { createDeclaration } from \"../nodes/Declaration\";\nimport type { AnimatedProps } from \"../processors/Animations/Animations\";\n\nexport interface ComposeProps {\n children: ReactNode | ReactNode[];\n}\n\nconst onDeclare = createDeclaration((_, children, { Skia }) => {\n const [inner, outer] = children;\n if (isColorFilter(outer) && isColorFilter(inner)) {\n return Skia.ColorFilter.MakeCompose(outer, inner);\n } else if (isImageFilter(outer) && isImageFilter(inner)) {\n return Skia.ImageFilter.MakeCompose(outer, inner);\n }\n throw new Error(\n \"ComposeFilter can only compose ColorFilters and ImageFilters\"\n );\n});\n\nexport const Compose = (props: AnimatedProps<ComposeProps>) => {\n return <skDeclaration onDeclare={onDeclare} {...props} />;\n};\n"]}
@@ -1,8 +1,8 @@
1
1
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
2
 
3
3
  import React from "react";
4
- import { ClipOp } from "../../skia";
5
- import { processTransform, processPaint, processClip } from "../processors";
4
+ import { ClipOp } from "../../skia/types";
5
+ import { processCanvasTransform, processPaint, processClip } from "../processors";
6
6
  import { createDrawing, DrawingNode } from "../nodes";
7
7
  import { isDeclarationNode } from "../nodes/Declaration";
8
8
 
@@ -17,11 +17,12 @@ const onDraw = createDrawing((ctx, _ref, node) => {
17
17
  } = _ref;
18
18
  const {
19
19
  canvas,
20
- opacity
20
+ opacity,
21
+ Skia
21
22
  } = ctx;
22
23
  const declarations = node.children.filter(isDeclarationNode).map(child => child.draw(ctx));
23
24
  const drawings = node.children.filter(child => child instanceof DrawingNode);
24
- const paint = processPaint(ctx.paint.copy(), opacity, groupProps, declarations);
25
+ const paint = processPaint(ctx.Skia, ctx.paint.copy(), opacity, groupProps, declarations);
25
26
  const hasTransform = !!groupProps.transform || !!groupProps.matrix;
26
27
  const hasClip = !!clip;
27
28
  const shouldSave = hasTransform || hasClip || !!layer;
@@ -41,11 +42,11 @@ const onDraw = createDrawing((ctx, _ref, node) => {
41
42
  canvas.save();
42
43
  }
43
44
 
44
- processTransform(ctx, groupProps);
45
+ processCanvasTransform(ctx, groupProps);
45
46
 
46
47
  if (clip) {
47
48
  const op = invertClip ? ClipOp.Difference : ClipOp.Intersect;
48
- processClip(canvas, clip, op);
49
+ processClip(Skia, canvas, clip, op);
49
50
  }
50
51
  }
51
52
 
@@ -1 +1 @@
1
- {"version":3,"sources":["Group.tsx"],"names":["React","ClipOp","processTransform","processPaint","processClip","createDrawing","DrawingNode","isDeclarationNode","isSkPaint","obj","__typename__","onDraw","ctx","node","layer","clip","invertClip","groupProps","canvas","opacity","declarations","children","filter","map","child","draw","drawings","paint","copy","hasTransform","transform","matrix","hasClip","shouldSave","saveLayer","current","undefined","save","op","Difference","Intersect","visit","restore","Group","props"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAIA,SAASC,MAAT,QAAuB,YAAvB;AACA,SAASC,gBAAT,EAA2BC,YAA3B,EAAyCC,WAAzC,QAA4D,eAA5D;AAOA,SAASC,aAAT,EAAwBC,WAAxB,QAA2C,UAA3C;AACA,SAASC,iBAAT,QAAkC,sBAAlC;;AAEA,MAAMC,SAAS,GAAIC,GAAD,IAChB,kBAAkBA,GAAlB,IAAyBA,GAAG,CAACC,YAAJ,KAAqB,OADhD;;AASA,MAAMC,MAAM,GAAGN,aAAa,CAC1B,CAACO,GAAD,QAAkDC,IAAlD,KAA2D;AAAA,MAArD;AAAEC,IAAAA,KAAF;AAASC,IAAAA,IAAT;AAAeC,IAAAA,UAAf;AAA2B,OAAGC;AAA9B,GAAqD;AACzD,QAAM;AAAEC,IAAAA,MAAF;AAAUC,IAAAA;AAAV,MAAsBP,GAA5B;AACA,QAAMQ,YAAY,GAAGP,IAAI,CAACQ,QAAL,CAClBC,MADkB,CACXf,iBADW,EAElBgB,GAFkB,CAEbC,KAAD,IAAWA,KAAK,CAACC,IAAN,CAAWb,GAAX,CAFG,CAArB;AAIA,QAAMc,QAAQ,GAAGb,IAAI,CAACQ,QAAL,CAAcC,MAAd,CACdE,KAAD,IAAWA,KAAK,YAAYlB,WADb,CAAjB;AAGA,QAAMqB,KAAK,GAAGxB,YAAY,CACxBS,GAAG,CAACe,KAAJ,CAAUC,IAAV,EADwB,EAExBT,OAFwB,EAGxBF,UAHwB,EAIxBG,YAJwB,CAA1B;AAMA,QAAMS,YAAY,GAAG,CAAC,CAACZ,UAAU,CAACa,SAAb,IAA0B,CAAC,CAACb,UAAU,CAACc,MAA5D;AACA,QAAMC,OAAO,GAAG,CAAC,CAACjB,IAAlB;AACA,QAAMkB,UAAU,GAAGJ,YAAY,IAAIG,OAAhB,IAA2B,CAAC,CAAClB,KAAhD;;AACA,MAAImB,UAAJ,EAAgB;AACd,QAAInB,KAAJ,EAAW;AACT,UAAI,OAAOA,KAAP,KAAiB,SAArB,EAAgC;AAC9BI,QAAAA,MAAM,CAACgB,SAAP;AACD,OAFD,MAEO,IAAI1B,SAAS,CAACM,KAAD,CAAb,EAAsB;AAC3BI,QAAAA,MAAM,CAACgB,SAAP,CAAiBpB,KAAjB;AACD,OAFM,MAEA;AAAA;;AACLI,QAAAA,MAAM,CAACgB,SAAP,mBAAiBpB,KAAK,CAACqB,OAAvB,2DAAkCC,SAAlC;AACD;AACF,KARD,MAQO;AACLlB,MAAAA,MAAM,CAACmB,IAAP;AACD;;AACDnC,IAAAA,gBAAgB,CAACU,GAAD,EAAMK,UAAN,CAAhB;;AACA,QAAIF,IAAJ,EAAU;AACR,YAAMuB,EAAE,GAAGtB,UAAU,GAAGf,MAAM,CAACsC,UAAV,GAAuBtC,MAAM,CAACuC,SAAnD;AACApC,MAAAA,WAAW,CAACc,MAAD,EAASH,IAAT,EAAeuB,EAAf,CAAX;AACD;AACF;;AACDzB,EAAAA,IAAI,CAAC4B,KAAL,CACE,EACE,GAAG7B,GADL;AAEEe,IAAAA,KAFF;AAGER,IAAAA,OAAO,EAAEF,UAAU,CAACE,OAAX,GAAqBF,UAAU,CAACE,OAAX,GAAqBA,OAA1C,GAAoDA;AAH/D,GADF,EAMEO,QANF;;AAQA,MAAIO,UAAJ,EAAgB;AACdf,IAAAA,MAAM,CAACwB,OAAP;AACD;AACF,CAhDyB,CAA5B;AAmDA,OAAO,MAAMC,KAAK,GAAIC,KAAD,IAAsC;AACzD,sBAAO;AAAW,IAAA,MAAM,EAAEjC;AAAnB,KAA+BiC,KAA/B;AAAsC,IAAA,cAAc;AAApD,KAAP;AACD,CAFM","sourcesContent":["import React from \"react\";\nimport type { RefObject } from \"react\";\n\nimport type { SkPaint } from \"../../skia\";\nimport { ClipOp } from \"../../skia\";\nimport { processTransform, processPaint, processClip } from \"../processors\";\nimport type {\n CustomPaintProps,\n TransformProps,\n AnimatedProps,\n ClipDef,\n} from \"../processors\";\nimport { createDrawing, DrawingNode } from \"../nodes\";\nimport { isDeclarationNode } from \"../nodes/Declaration\";\n\nconst isSkPaint = (obj: RefObject<SkPaint> | SkPaint): obj is SkPaint =>\n \"__typename__\" in obj && obj.__typename__ === \"Paint\";\n\nexport interface GroupProps extends CustomPaintProps, TransformProps {\n clip?: ClipDef;\n invertClip?: boolean;\n layer?: RefObject<SkPaint> | SkPaint | boolean;\n}\n\nconst onDraw = createDrawing<GroupProps>(\n (ctx, { layer, clip, invertClip, ...groupProps }, node) => {\n const { canvas, opacity } = ctx;\n const declarations = node.children\n .filter(isDeclarationNode)\n .map((child) => child.draw(ctx));\n\n const drawings = node.children.filter(\n (child) => child instanceof DrawingNode\n );\n const paint = processPaint(\n ctx.paint.copy(),\n opacity,\n groupProps,\n declarations\n );\n const hasTransform = !!groupProps.transform || !!groupProps.matrix;\n const hasClip = !!clip;\n const shouldSave = hasTransform || hasClip || !!layer;\n if (shouldSave) {\n if (layer) {\n if (typeof layer === \"boolean\") {\n canvas.saveLayer();\n } else if (isSkPaint(layer)) {\n canvas.saveLayer(layer);\n } else {\n canvas.saveLayer(layer.current ?? undefined);\n }\n } else {\n canvas.save();\n }\n processTransform(ctx, groupProps);\n if (clip) {\n const op = invertClip ? ClipOp.Difference : ClipOp.Intersect;\n processClip(canvas, clip, op);\n }\n }\n node.visit(\n {\n ...ctx,\n paint,\n opacity: groupProps.opacity ? groupProps.opacity * opacity : opacity,\n },\n drawings\n );\n if (shouldSave) {\n canvas.restore();\n }\n }\n);\n\nexport const Group = (props: AnimatedProps<GroupProps>) => {\n return <skDrawing onDraw={onDraw} {...props} skipProcessing />;\n};\n"]}
1
+ {"version":3,"sources":["Group.tsx"],"names":["React","ClipOp","processCanvasTransform","processPaint","processClip","createDrawing","DrawingNode","isDeclarationNode","isSkPaint","obj","__typename__","onDraw","ctx","node","layer","clip","invertClip","groupProps","canvas","opacity","Skia","declarations","children","filter","map","child","draw","drawings","paint","copy","hasTransform","transform","matrix","hasClip","shouldSave","saveLayer","current","undefined","save","op","Difference","Intersect","visit","restore","Group","props"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAIA,SAASC,MAAT,QAAuB,kBAAvB;AACA,SACEC,sBADF,EAEEC,YAFF,EAGEC,WAHF,QAIO,eAJP;AAWA,SAASC,aAAT,EAAwBC,WAAxB,QAA2C,UAA3C;AACA,SAASC,iBAAT,QAAkC,sBAAlC;;AAEA,MAAMC,SAAS,GAAIC,GAAD,IAChB,kBAAkBA,GAAlB,IAAyBA,GAAG,CAACC,YAAJ,KAAqB,OADhD;;AASA,MAAMC,MAAM,GAAGN,aAAa,CAC1B,CAACO,GAAD,QAAkDC,IAAlD,KAA2D;AAAA,MAArD;AAAEC,IAAAA,KAAF;AAASC,IAAAA,IAAT;AAAeC,IAAAA,UAAf;AAA2B,OAAGC;AAA9B,GAAqD;AACzD,QAAM;AAAEC,IAAAA,MAAF;AAAUC,IAAAA,OAAV;AAAmBC,IAAAA;AAAnB,MAA4BR,GAAlC;AACA,QAAMS,YAAY,GAAGR,IAAI,CAACS,QAAL,CAClBC,MADkB,CACXhB,iBADW,EAElBiB,GAFkB,CAEbC,KAAD,IAAWA,KAAK,CAACC,IAAN,CAAWd,GAAX,CAFG,CAArB;AAIA,QAAMe,QAAQ,GAAGd,IAAI,CAACS,QAAL,CAAcC,MAAd,CACdE,KAAD,IAAWA,KAAK,YAAYnB,WADb,CAAjB;AAGA,QAAMsB,KAAK,GAAGzB,YAAY,CACxBS,GAAG,CAACQ,IADoB,EAExBR,GAAG,CAACgB,KAAJ,CAAUC,IAAV,EAFwB,EAGxBV,OAHwB,EAIxBF,UAJwB,EAKxBI,YALwB,CAA1B;AAOA,QAAMS,YAAY,GAAG,CAAC,CAACb,UAAU,CAACc,SAAb,IAA0B,CAAC,CAACd,UAAU,CAACe,MAA5D;AACA,QAAMC,OAAO,GAAG,CAAC,CAAClB,IAAlB;AACA,QAAMmB,UAAU,GAAGJ,YAAY,IAAIG,OAAhB,IAA2B,CAAC,CAACnB,KAAhD;;AACA,MAAIoB,UAAJ,EAAgB;AACd,QAAIpB,KAAJ,EAAW;AACT,UAAI,OAAOA,KAAP,KAAiB,SAArB,EAAgC;AAC9BI,QAAAA,MAAM,CAACiB,SAAP;AACD,OAFD,MAEO,IAAI3B,SAAS,CAACM,KAAD,CAAb,EAAsB;AAC3BI,QAAAA,MAAM,CAACiB,SAAP,CAAiBrB,KAAjB;AACD,OAFM,MAEA;AAAA;;AACLI,QAAAA,MAAM,CAACiB,SAAP,mBAAiBrB,KAAK,CAACsB,OAAvB,2DAAkCC,SAAlC;AACD;AACF,KARD,MAQO;AACLnB,MAAAA,MAAM,CAACoB,IAAP;AACD;;AACDpC,IAAAA,sBAAsB,CAACU,GAAD,EAAMK,UAAN,CAAtB;;AACA,QAAIF,IAAJ,EAAU;AACR,YAAMwB,EAAE,GAAGvB,UAAU,GAAGf,MAAM,CAACuC,UAAV,GAAuBvC,MAAM,CAACwC,SAAnD;AACArC,MAAAA,WAAW,CAACgB,IAAD,EAAOF,MAAP,EAAeH,IAAf,EAAqBwB,EAArB,CAAX;AACD;AACF;;AACD1B,EAAAA,IAAI,CAAC6B,KAAL,CACE,EACE,GAAG9B,GADL;AAEEgB,IAAAA,KAFF;AAGET,IAAAA,OAAO,EAAEF,UAAU,CAACE,OAAX,GAAqBF,UAAU,CAACE,OAAX,GAAqBA,OAA1C,GAAoDA;AAH/D,GADF,EAMEQ,QANF;;AAQA,MAAIO,UAAJ,EAAgB;AACdhB,IAAAA,MAAM,CAACyB,OAAP;AACD;AACF,CAjDyB,CAA5B;AAoDA,OAAO,MAAMC,KAAK,GAAIC,KAAD,IAAsC;AACzD,sBAAO;AAAW,IAAA,MAAM,EAAElC;AAAnB,KAA+BkC,KAA/B;AAAsC,IAAA,cAAc;AAApD,KAAP;AACD,CAFM","sourcesContent":["import React from \"react\";\nimport type { RefObject } from \"react\";\n\nimport type { SkPaint } from \"../../skia/types\";\nimport { ClipOp } from \"../../skia/types\";\nimport {\n processCanvasTransform,\n processPaint,\n processClip,\n} from \"../processors\";\nimport type {\n CustomPaintProps,\n TransformProps,\n AnimatedProps,\n ClipDef,\n} from \"../processors\";\nimport { createDrawing, DrawingNode } from \"../nodes\";\nimport { isDeclarationNode } from \"../nodes/Declaration\";\n\nconst isSkPaint = (obj: RefObject<SkPaint> | SkPaint): obj is SkPaint =>\n \"__typename__\" in obj && obj.__typename__ === \"Paint\";\n\nexport interface GroupProps extends CustomPaintProps, TransformProps {\n clip?: ClipDef;\n invertClip?: boolean;\n layer?: RefObject<SkPaint> | SkPaint | boolean;\n}\n\nconst onDraw = createDrawing<GroupProps>(\n (ctx, { layer, clip, invertClip, ...groupProps }, node) => {\n const { canvas, opacity, Skia } = ctx;\n const declarations = node.children\n .filter(isDeclarationNode)\n .map((child) => child.draw(ctx));\n\n const drawings = node.children.filter(\n (child) => child instanceof DrawingNode\n );\n const paint = processPaint(\n ctx.Skia,\n ctx.paint.copy(),\n opacity,\n groupProps,\n declarations\n );\n const hasTransform = !!groupProps.transform || !!groupProps.matrix;\n const hasClip = !!clip;\n const shouldSave = hasTransform || hasClip || !!layer;\n if (shouldSave) {\n if (layer) {\n if (typeof layer === \"boolean\") {\n canvas.saveLayer();\n } else if (isSkPaint(layer)) {\n canvas.saveLayer(layer);\n } else {\n canvas.saveLayer(layer.current ?? undefined);\n }\n } else {\n canvas.save();\n }\n processCanvasTransform(ctx, groupProps);\n if (clip) {\n const op = invertClip ? ClipOp.Difference : ClipOp.Intersect;\n processClip(Skia, canvas, clip, op);\n }\n }\n node.visit(\n {\n ...ctx,\n paint,\n opacity: groupProps.opacity ? groupProps.opacity * opacity : opacity,\n },\n drawings\n );\n if (shouldSave) {\n canvas.restore();\n }\n }\n);\n\nexport const Group = (props: AnimatedProps<GroupProps>) => {\n return <skDrawing onDraw={onDraw} {...props} skipProcessing />;\n};\n"]}
@@ -1,5 +1,6 @@
1
1
  import React, { useMemo } from "react";
2
- import { BlendMode, Skia } from "../../skia";
2
+ import { BlendMode } from "../../skia/types";
3
+ import { useCanvas } from "../useCanvas";
3
4
  import { Group } from "./Group";
4
5
  export const Mask = _ref => {
5
6
  let {
@@ -8,6 +9,9 @@ export const Mask = _ref => {
8
9
  mode,
9
10
  clip
10
11
  } = _ref;
12
+ const {
13
+ Skia
14
+ } = useCanvas();
11
15
  const maskPaint = useMemo(() => {
12
16
  const paint = Skia.Paint();
13
17
  paint.setBlendMode(BlendMode.Src);
@@ -17,12 +21,12 @@ export const Mask = _ref => {
17
21
  }
18
22
 
19
23
  return paint;
20
- }, [mode]);
24
+ }, [Skia, mode]);
21
25
  const clippingPaint = useMemo(() => {
22
26
  const paint = Skia.Paint();
23
27
  paint.setBlendMode(BlendMode.DstIn);
24
28
  return paint;
25
- }, []);
29
+ }, [Skia]);
26
30
  return /*#__PURE__*/React.createElement(Group, {
27
31
  layer: true
28
32
  }, /*#__PURE__*/React.createElement(Group, {
@@ -1 +1 @@
1
- {"version":3,"sources":["Mask.tsx"],"names":["React","useMemo","BlendMode","Skia","Group","Mask","children","mask","mode","clip","maskPaint","paint","Paint","setBlendMode","Src","setColorFilter","ColorFilter","MakeLumaColorFilter","clippingPaint","DstIn","defaultProps"],"mappings":"AACA,OAAOA,KAAP,IAAgBC,OAAhB,QAA+B,OAA/B;AAEA,SAASC,SAAT,EAAoBC,IAApB,QAAgC,YAAhC;AAEA,SAASC,KAAT,QAAsB,SAAtB;AASA,OAAO,MAAMC,IAAI,GAAG,QAA+C;AAAA,MAA9C;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,IAAZ;AAAkBC,IAAAA,IAAlB;AAAwBC,IAAAA;AAAxB,GAA8C;AACjE,QAAMC,SAAS,GAAGT,OAAO,CAAC,MAAM;AAC9B,UAAMU,KAAK,GAAGR,IAAI,CAACS,KAAL,EAAd;AACAD,IAAAA,KAAK,CAACE,YAAN,CAAmBX,SAAS,CAACY,GAA7B;;AACA,QAAIN,IAAI,KAAK,WAAb,EAA0B;AACxBG,MAAAA,KAAK,CAACI,cAAN,CAAqBZ,IAAI,CAACa,WAAL,CAAiBC,mBAAjB,EAArB;AACD;;AACD,WAAON,KAAP;AACD,GAPwB,EAOtB,CAACH,IAAD,CAPsB,CAAzB;AAQA,QAAMU,aAAa,GAAGjB,OAAO,CAAC,MAAM;AAClC,UAAMU,KAAK,GAAGR,IAAI,CAACS,KAAL,EAAd;AACAD,IAAAA,KAAK,CAACE,YAAN,CAAmBX,SAAS,CAACiB,KAA7B;AACA,WAAOR,KAAP;AACD,GAJ4B,EAI1B,EAJ0B,CAA7B;AAKA,sBACE,oBAAC,KAAD;AAAO,IAAA,KAAK;AAAZ,kBACE,oBAAC,KAAD;AAAO,IAAA,KAAK,EAAED;AAAd,KACGH,IADH,EAEGE,IAAI,iBAAI,oBAAC,KAAD;AAAO,IAAA,KAAK,EAAES;AAAd,KAA8BZ,QAA9B,CAFX,CADF,eAKE,oBAAC,KAAD;AAAO,IAAA,SAAS,EAAC;AAAjB,KAA0BA,QAA1B,CALF,CADF;AASD,CAvBM;AAyBPD,IAAI,CAACe,YAAL,GAAoB;AAClBZ,EAAAA,IAAI,EAAE,OADY;AAElBC,EAAAA,IAAI,EAAE;AAFY,CAApB","sourcesContent":["import type { ReactNode } from \"react\";\nimport React, { useMemo } from \"react\";\n\nimport { BlendMode, Skia } from \"../../skia\";\n\nimport { Group } from \"./Group\";\n\ninterface MaskProps {\n mode: \"luminance\" | \"alpha\";\n clip: boolean;\n mask: ReactNode | ReactNode[];\n children: ReactNode | ReactNode[];\n}\n\nexport const Mask = ({ children, mask, mode, clip }: MaskProps) => {\n const maskPaint = useMemo(() => {\n const paint = Skia.Paint();\n paint.setBlendMode(BlendMode.Src);\n if (mode === \"luminance\") {\n paint.setColorFilter(Skia.ColorFilter.MakeLumaColorFilter());\n }\n return paint;\n }, [mode]);\n const clippingPaint = useMemo(() => {\n const paint = Skia.Paint();\n paint.setBlendMode(BlendMode.DstIn);\n return paint;\n }, []);\n return (\n <Group layer>\n <Group layer={maskPaint}>\n {mask}\n {clip && <Group layer={clippingPaint}>{children}</Group>}\n </Group>\n <Group blendMode=\"srcIn\">{children}</Group>\n </Group>\n );\n};\n\nMask.defaultProps = {\n mode: \"alpha\",\n clip: true,\n};\n"]}
1
+ {"version":3,"sources":["Mask.tsx"],"names":["React","useMemo","BlendMode","useCanvas","Group","Mask","children","mask","mode","clip","Skia","maskPaint","paint","Paint","setBlendMode","Src","setColorFilter","ColorFilter","MakeLumaColorFilter","clippingPaint","DstIn","defaultProps"],"mappings":"AACA,OAAOA,KAAP,IAAgBC,OAAhB,QAA+B,OAA/B;AAEA,SAASC,SAAT,QAA0B,kBAA1B;AACA,SAASC,SAAT,QAA0B,cAA1B;AAEA,SAASC,KAAT,QAAsB,SAAtB;AASA,OAAO,MAAMC,IAAI,GAAG,QAA+C;AAAA,MAA9C;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,IAAZ;AAAkBC,IAAAA,IAAlB;AAAwBC,IAAAA;AAAxB,GAA8C;AACjE,QAAM;AAAEC,IAAAA;AAAF,MAAWP,SAAS,EAA1B;AACA,QAAMQ,SAAS,GAAGV,OAAO,CAAC,MAAM;AAC9B,UAAMW,KAAK,GAAGF,IAAI,CAACG,KAAL,EAAd;AACAD,IAAAA,KAAK,CAACE,YAAN,CAAmBZ,SAAS,CAACa,GAA7B;;AACA,QAAIP,IAAI,KAAK,WAAb,EAA0B;AACxBI,MAAAA,KAAK,CAACI,cAAN,CAAqBN,IAAI,CAACO,WAAL,CAAiBC,mBAAjB,EAArB;AACD;;AACD,WAAON,KAAP;AACD,GAPwB,EAOtB,CAACF,IAAD,EAAOF,IAAP,CAPsB,CAAzB;AAQA,QAAMW,aAAa,GAAGlB,OAAO,CAAC,MAAM;AAClC,UAAMW,KAAK,GAAGF,IAAI,CAACG,KAAL,EAAd;AACAD,IAAAA,KAAK,CAACE,YAAN,CAAmBZ,SAAS,CAACkB,KAA7B;AACA,WAAOR,KAAP;AACD,GAJ4B,EAI1B,CAACF,IAAD,CAJ0B,CAA7B;AAKA,sBACE,oBAAC,KAAD;AAAO,IAAA,KAAK;AAAZ,kBACE,oBAAC,KAAD;AAAO,IAAA,KAAK,EAAEC;AAAd,KACGJ,IADH,EAEGE,IAAI,iBAAI,oBAAC,KAAD;AAAO,IAAA,KAAK,EAAEU;AAAd,KAA8Bb,QAA9B,CAFX,CADF,eAKE,oBAAC,KAAD;AAAO,IAAA,SAAS,EAAC;AAAjB,KAA0BA,QAA1B,CALF,CADF;AASD,CAxBM;AA0BPD,IAAI,CAACgB,YAAL,GAAoB;AAClBb,EAAAA,IAAI,EAAE,OADY;AAElBC,EAAAA,IAAI,EAAE;AAFY,CAApB","sourcesContent":["import type { ReactNode } from \"react\";\nimport React, { useMemo } from \"react\";\n\nimport { BlendMode } from \"../../skia/types\";\nimport { useCanvas } from \"../useCanvas\";\n\nimport { Group } from \"./Group\";\n\ninterface MaskProps {\n mode: \"luminance\" | \"alpha\";\n clip: boolean;\n mask: ReactNode | ReactNode[];\n children: ReactNode | ReactNode[];\n}\n\nexport const Mask = ({ children, mask, mode, clip }: MaskProps) => {\n const { Skia } = useCanvas();\n const maskPaint = useMemo(() => {\n const paint = Skia.Paint();\n paint.setBlendMode(BlendMode.Src);\n if (mode === \"luminance\") {\n paint.setColorFilter(Skia.ColorFilter.MakeLumaColorFilter());\n }\n return paint;\n }, [Skia, mode]);\n const clippingPaint = useMemo(() => {\n const paint = Skia.Paint();\n paint.setBlendMode(BlendMode.DstIn);\n return paint;\n }, [Skia]);\n return (\n <Group layer>\n <Group layer={maskPaint}>\n {mask}\n {clip && <Group layer={clippingPaint}>{children}</Group>}\n </Group>\n <Group blendMode=\"srcIn\">{children}</Group>\n </Group>\n );\n};\n\nMask.defaultProps = {\n mode: \"alpha\",\n clip: true,\n};\n"]}
@@ -1,14 +1,17 @@
1
1
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
2
 
3
3
  import React, { useRef, useMemo, forwardRef, useImperativeHandle } from "react";
4
- import { SkiaPaint } from "../../skia";
5
4
  import { processPaint } from "../processors";
6
5
  import { createDeclaration } from "../nodes";
6
+ import { useCanvas } from "../useCanvas";
7
7
  export const usePaintRef = () => useRef(null);
8
8
  export const Paint = /*#__PURE__*/forwardRef((props, ref) => {
9
- const paint = useMemo(() => SkiaPaint(), []);
9
+ const {
10
+ Skia
11
+ } = useCanvas();
12
+ const paint = useMemo(() => Skia.Paint(), [Skia]);
10
13
  useImperativeHandle(ref, () => paint, [paint]);
11
- const onDeclare = useMemo(() => createDeclaration((paintProps, children, ctx) => processPaint(paint, ctx.opacity, paintProps, children)), [paint]);
14
+ const onDeclare = useMemo(() => createDeclaration((paintProps, children, ctx) => processPaint(ctx.Skia, paint, ctx.opacity, paintProps, children)), [paint]);
12
15
  return /*#__PURE__*/React.createElement("skDeclaration", _extends({
13
16
  onDeclare: onDeclare
14
17
  }, props));
@@ -1 +1 @@
1
- {"version":3,"sources":["Paint.tsx"],"names":["React","useRef","useMemo","forwardRef","useImperativeHandle","SkiaPaint","processPaint","createDeclaration","usePaintRef","Paint","props","ref","paint","onDeclare","paintProps","children","ctx","opacity"],"mappings":";;AACA,OAAOA,KAAP,IAAgBC,MAAhB,EAAwBC,OAAxB,EAAiCC,UAAjC,EAA6CC,mBAA7C,QAAwE,OAAxE;AAGA,SAASC,SAAT,QAA0B,YAA1B;AAEA,SAASC,YAAT,QAA6B,eAA7B;AACA,SAASC,iBAAT,QAAkC,UAAlC;AAEA,OAAO,MAAMC,WAAW,GAAG,MAAMP,MAAM,CAAU,IAAV,CAAhC;AAMP,OAAO,MAAMQ,KAAK,gBAAGN,UAAU,CAC7B,CAACO,KAAD,EAAQC,GAAR,KAAgB;AACd,QAAMC,KAAK,GAAGV,OAAO,CAAC,MAAMG,SAAS,EAAhB,EAAoB,EAApB,CAArB;AACAD,EAAAA,mBAAmB,CAACO,GAAD,EAAM,MAAMC,KAAZ,EAAmB,CAACA,KAAD,CAAnB,CAAnB;AACA,QAAMC,SAAS,GAAGX,OAAO,CACvB,MACEK,iBAAiB,CAAa,CAACO,UAAD,EAAaC,QAAb,EAAuBC,GAAvB,KAC5BV,YAAY,CAACM,KAAD,EAAQI,GAAG,CAACC,OAAZ,EAAqBH,UAArB,EAAiCC,QAAjC,CADG,CAFI,EAKvB,CAACH,KAAD,CALuB,CAAzB;AAOA,sBAAO;AAAe,IAAA,SAAS,EAAEC;AAA1B,KAAyCH,KAAzC,EAAP;AACD,CAZ4B,CAAxB","sourcesContent":["import type { ReactNode } from \"react\";\nimport React, { useRef, useMemo, forwardRef, useImperativeHandle } from \"react\";\n\nimport type { SkPaint } from \"../../skia\";\nimport { SkiaPaint } from \"../../skia\";\nimport type { CustomPaintProps, AnimatedProps } from \"../processors\";\nimport { processPaint } from \"../processors\";\nimport { createDeclaration } from \"../nodes\";\n\nexport const usePaintRef = () => useRef<SkPaint>(null);\n\nexport interface PaintProps extends Omit<CustomPaintProps, \"paint\"> {\n children?: ReactNode | ReactNode[];\n}\n\nexport const Paint = forwardRef<SkPaint, AnimatedProps<PaintProps>>(\n (props, ref) => {\n const paint = useMemo(() => SkiaPaint(), []);\n useImperativeHandle(ref, () => paint, [paint]);\n const onDeclare = useMemo(\n () =>\n createDeclaration<PaintProps>((paintProps, children, ctx) =>\n processPaint(paint, ctx.opacity, paintProps, children)\n ),\n [paint]\n );\n return <skDeclaration onDeclare={onDeclare} {...props} />;\n }\n);\n"]}
1
+ {"version":3,"sources":["Paint.tsx"],"names":["React","useRef","useMemo","forwardRef","useImperativeHandle","processPaint","createDeclaration","useCanvas","usePaintRef","Paint","props","ref","Skia","paint","onDeclare","paintProps","children","ctx","opacity"],"mappings":";;AACA,OAAOA,KAAP,IAAgBC,MAAhB,EAAwBC,OAAxB,EAAiCC,UAAjC,EAA6CC,mBAA7C,QAAwE,OAAxE;AAIA,SAASC,YAAT,QAA6B,eAA7B;AACA,SAASC,iBAAT,QAAkC,UAAlC;AACA,SAASC,SAAT,QAA0B,cAA1B;AAEA,OAAO,MAAMC,WAAW,GAAG,MAAMP,MAAM,CAAU,IAAV,CAAhC;AAMP,OAAO,MAAMQ,KAAK,gBAAGN,UAAU,CAC7B,CAACO,KAAD,EAAQC,GAAR,KAAgB;AACd,QAAM;AAAEC,IAAAA;AAAF,MAAWL,SAAS,EAA1B;AACA,QAAMM,KAAK,GAAGX,OAAO,CAAC,MAAMU,IAAI,CAACH,KAAL,EAAP,EAAqB,CAACG,IAAD,CAArB,CAArB;AACAR,EAAAA,mBAAmB,CAACO,GAAD,EAAM,MAAME,KAAZ,EAAmB,CAACA,KAAD,CAAnB,CAAnB;AACA,QAAMC,SAAS,GAAGZ,OAAO,CACvB,MACEI,iBAAiB,CAAa,CAACS,UAAD,EAAaC,QAAb,EAAuBC,GAAvB,KAC5BZ,YAAY,CAACY,GAAG,CAACL,IAAL,EAAWC,KAAX,EAAkBI,GAAG,CAACC,OAAtB,EAA+BH,UAA/B,EAA2CC,QAA3C,CADG,CAFI,EAKvB,CAACH,KAAD,CALuB,CAAzB;AAOA,sBAAO;AAAe,IAAA,SAAS,EAAEC;AAA1B,KAAyCJ,KAAzC,EAAP;AACD,CAb4B,CAAxB","sourcesContent":["import type { ReactNode } from \"react\";\nimport React, { useRef, useMemo, forwardRef, useImperativeHandle } from \"react\";\n\nimport type { SkPaint } from \"../../skia/types\";\nimport type { CustomPaintProps, AnimatedProps } from \"../processors\";\nimport { processPaint } from \"../processors\";\nimport { createDeclaration } from \"../nodes\";\nimport { useCanvas } from \"../useCanvas\";\n\nexport const usePaintRef = () => useRef<SkPaint>(null);\n\nexport interface PaintProps extends Omit<CustomPaintProps, \"paint\"> {\n children?: ReactNode | ReactNode[];\n}\n\nexport const Paint = forwardRef<SkPaint, AnimatedProps<PaintProps>>(\n (props, ref) => {\n const { Skia } = useCanvas();\n const paint = useMemo(() => Skia.Paint(), [Skia]);\n useImperativeHandle(ref, () => paint, [paint]);\n const onDeclare = useMemo(\n () =>\n createDeclaration<PaintProps>((paintProps, children, ctx) =>\n processPaint(ctx.Skia, paint, ctx.opacity, paintProps, children)\n ),\n [paint]\n );\n return <skDeclaration onDeclare={onDeclare} {...props} />;\n }\n);\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["Picture.tsx"],"names":["React","createDrawing","onDraw","ctx","picture","canvas","drawPicture","Picture","props"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAGA,SAASC,aAAT,QAA8B,kBAA9B;AAMA,MAAMC,MAAM,GAAGD,aAAa,CAAe,CAACE,GAAD,WAAsB;AAAA,MAAhB;AAAEC,IAAAA;AAAF,GAAgB;AAC/D,QAAM;AAAEC,IAAAA;AAAF,MAAaF,GAAnB;AACAE,EAAAA,MAAM,CAACC,WAAP,CAAmBF,OAAnB;AACD,CAH2B,CAA5B;AAKA,OAAO,MAAMG,OAAO,GAAIC,KAAD,IAAyB;AAC9C,sBAAO;AAAW,IAAA,MAAM,EAAEN;AAAnB,KAA+BM,KAA/B;AAAsC,IAAA,cAAc;AAApD,KAAP;AACD,CAFM","sourcesContent":["import React from \"react\";\n\nimport type { SkPicture } from \"../../skia\";\nimport { createDrawing } from \"../nodes/Drawing\";\n\nexport interface PictureProps {\n picture: SkPicture;\n}\n\nconst onDraw = createDrawing<PictureProps>((ctx, { picture }) => {\n const { canvas } = ctx;\n canvas.drawPicture(picture);\n});\n\nexport const Picture = (props: PictureProps) => {\n return <skDrawing onDraw={onDraw} {...props} skipProcessing />;\n};\n"]}
1
+ {"version":3,"sources":["Picture.tsx"],"names":["React","createDrawing","onDraw","ctx","picture","canvas","drawPicture","Picture","props"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAGA,SAASC,aAAT,QAA8B,kBAA9B;AAMA,MAAMC,MAAM,GAAGD,aAAa,CAAe,CAACE,GAAD,WAAsB;AAAA,MAAhB;AAAEC,IAAAA;AAAF,GAAgB;AAC/D,QAAM;AAAEC,IAAAA;AAAF,MAAaF,GAAnB;AACAE,EAAAA,MAAM,CAACC,WAAP,CAAmBF,OAAnB;AACD,CAH2B,CAA5B;AAKA,OAAO,MAAMG,OAAO,GAAIC,KAAD,IAAyB;AAC9C,sBAAO;AAAW,IAAA,MAAM,EAAEN;AAAnB,KAA+BM,KAA/B;AAAsC,IAAA,cAAc;AAApD,KAAP;AACD,CAFM","sourcesContent":["import React from \"react\";\n\nimport type { SkPicture } from \"../../skia/types\";\nimport { createDrawing } from \"../nodes/Drawing\";\n\nexport interface PictureProps {\n picture: SkPicture;\n}\n\nconst onDraw = createDrawing<PictureProps>((ctx, { picture }) => {\n const { canvas } = ctx;\n canvas.drawPicture(picture);\n});\n\nexport const Picture = (props: PictureProps) => {\n return <skDrawing onDraw={onDraw} {...props} skipProcessing />;\n};\n"]}
@@ -13,7 +13,7 @@ const disableFilterMemoization = children => {
13
13
  const onDraw = createDrawing((ctx, _, node) => {
14
14
  disableFilterMemoization(node.children);
15
15
  const toFilter = node.visit(ctx);
16
- const filter = getInput(toFilter);
16
+ const filter = getInput(ctx.Skia, toFilter);
17
17
 
18
18
  if (!filter) {
19
19
  throw new Error("No image filter provided to the background");
@@ -1 +1 @@
1
- {"version":3,"sources":["BackdropFilter.tsx"],"names":["React","createDrawing","getInput","Group","disableFilterMemoization","children","forEach","child","memoizable","onDraw","ctx","_","node","toFilter","visit","filter","Error","canvas","saveLayer","undefined","restore","BackdropFilter","filterChild","groupChildren","props"],"mappings":"AACA,OAAOA,KAAP,MAAkB,OAAlB;AAGA,SAASC,aAAT,QAA8B,aAA9B;AAEA,SAASC,QAAT,QAAyB,0BAAzB;AAEA,SAASC,KAAT,QAAsB,UAAtB;;AAEA,MAAMC,wBAAwB,GAAIC,QAAD,IAA+B;AAC9DA,EAAAA,QAAQ,CAACC,OAAT,CAAkBC,KAAD,IAAW;AAC1BA,IAAAA,KAAK,CAACC,UAAN,GAAmB,KAAnB;AACAJ,IAAAA,wBAAwB,CAACG,KAAK,CAACF,QAAP,CAAxB;AACD,GAHD;AAID,CALD;;AAWA,MAAMI,MAAM,GAAGR,aAAa,CAAsB,CAACS,GAAD,EAAMC,CAAN,EAASC,IAAT,KAAkB;AAClER,EAAAA,wBAAwB,CAACQ,IAAI,CAACP,QAAN,CAAxB;AACA,QAAMQ,QAAQ,GAAGD,IAAI,CAACE,KAAL,CAAWJ,GAAX,CAAjB;AACA,QAAMK,MAAM,GAAGb,QAAQ,CAACW,QAAD,CAAvB;;AACA,MAAI,CAACE,MAAL,EAAa;AACX,UAAM,IAAIC,KAAJ,CAAU,4CAAV,CAAN;AACD;;AACD,QAAM;AAAEC,IAAAA;AAAF,MAAaP,GAAnB;AACAO,EAAAA,MAAM,CAACC,SAAP,CAAiBC,SAAjB,EAA4B,IAA5B,EAAkCJ,MAAlC;AACAE,EAAAA,MAAM,CAACG,OAAP;AACD,CAV2B,CAA5B;AAYA,OAAO,MAAMC,cAAc,GAAG,QAIY;AAAA,MAJX;AAC7BN,IAAAA,MAAM,EAAEO,WADqB;AAE7BjB,IAAAA,QAAQ,EAAEkB,aAFmB;AAG7B,OAAGC;AAH0B,GAIW;AACxC,sBACE,oBAAC,KAAD,EAAWA,KAAX,eACE;AAAW,IAAA,MAAM,EAAEf,MAAnB;AAA2B,IAAA,cAAc;AAAzC,KACGa,WADH,CADF,EAIGC,aAJH,CADF;AAQD,CAbM","sourcesContent":["import type { ReactNode } from \"react\";\nimport React from \"react\";\n\nimport type { AnimatedProps } from \"../../processors\";\nimport { createDrawing } from \"../../nodes\";\nimport type { Node } from \"../../nodes\";\nimport { getInput } from \"../imageFilters/getInput\";\nimport type { GroupProps } from \"../Group\";\nimport { Group } from \"../Group\";\n\nconst disableFilterMemoization = (children: Node<unknown>[]) => {\n children.forEach((child) => {\n child.memoizable = false;\n disableFilterMemoization(child.children);\n });\n};\n\nexport interface BackdropFilterProps extends GroupProps {\n filter: ReactNode | ReactNode[];\n}\n\nconst onDraw = createDrawing<BackdropFilterProps>((ctx, _, node) => {\n disableFilterMemoization(node.children);\n const toFilter = node.visit(ctx);\n const filter = getInput(toFilter);\n if (!filter) {\n throw new Error(\"No image filter provided to the background\");\n }\n const { canvas } = ctx;\n canvas.saveLayer(undefined, null, filter);\n canvas.restore();\n});\n\nexport const BackdropFilter = ({\n filter: filterChild,\n children: groupChildren,\n ...props\n}: AnimatedProps<BackdropFilterProps>) => {\n return (\n <Group {...props}>\n <skDrawing onDraw={onDraw} skipProcessing>\n {filterChild}\n </skDrawing>\n {groupChildren}\n </Group>\n );\n};\n"]}
1
+ {"version":3,"sources":["BackdropFilter.tsx"],"names":["React","createDrawing","getInput","Group","disableFilterMemoization","children","forEach","child","memoizable","onDraw","ctx","_","node","toFilter","visit","filter","Skia","Error","canvas","saveLayer","undefined","restore","BackdropFilter","filterChild","groupChildren","props"],"mappings":"AACA,OAAOA,KAAP,MAAkB,OAAlB;AAGA,SAASC,aAAT,QAA8B,aAA9B;AAEA,SAASC,QAAT,QAAyB,0BAAzB;AAEA,SAASC,KAAT,QAAsB,UAAtB;;AAEA,MAAMC,wBAAwB,GAAIC,QAAD,IAA+B;AAC9DA,EAAAA,QAAQ,CAACC,OAAT,CAAkBC,KAAD,IAAW;AAC1BA,IAAAA,KAAK,CAACC,UAAN,GAAmB,KAAnB;AACAJ,IAAAA,wBAAwB,CAACG,KAAK,CAACF,QAAP,CAAxB;AACD,GAHD;AAID,CALD;;AAWA,MAAMI,MAAM,GAAGR,aAAa,CAAsB,CAACS,GAAD,EAAMC,CAAN,EAASC,IAAT,KAAkB;AAClER,EAAAA,wBAAwB,CAACQ,IAAI,CAACP,QAAN,CAAxB;AACA,QAAMQ,QAAQ,GAAGD,IAAI,CAACE,KAAL,CAAWJ,GAAX,CAAjB;AACA,QAAMK,MAAM,GAAGb,QAAQ,CAACQ,GAAG,CAACM,IAAL,EAAWH,QAAX,CAAvB;;AACA,MAAI,CAACE,MAAL,EAAa;AACX,UAAM,IAAIE,KAAJ,CAAU,4CAAV,CAAN;AACD;;AACD,QAAM;AAAEC,IAAAA;AAAF,MAAaR,GAAnB;AACAQ,EAAAA,MAAM,CAACC,SAAP,CAAiBC,SAAjB,EAA4B,IAA5B,EAAkCL,MAAlC;AACAG,EAAAA,MAAM,CAACG,OAAP;AACD,CAV2B,CAA5B;AAYA,OAAO,MAAMC,cAAc,GAAG,QAIY;AAAA,MAJX;AAC7BP,IAAAA,MAAM,EAAEQ,WADqB;AAE7BlB,IAAAA,QAAQ,EAAEmB,aAFmB;AAG7B,OAAGC;AAH0B,GAIW;AACxC,sBACE,oBAAC,KAAD,EAAWA,KAAX,eACE;AAAW,IAAA,MAAM,EAAEhB,MAAnB;AAA2B,IAAA,cAAc;AAAzC,KACGc,WADH,CADF,EAIGC,aAJH,CADF;AAQD,CAbM","sourcesContent":["import type { ReactNode } from \"react\";\nimport React from \"react\";\n\nimport type { AnimatedProps } from \"../../processors\";\nimport { createDrawing } from \"../../nodes\";\nimport type { Node } from \"../../nodes\";\nimport { getInput } from \"../imageFilters/getInput\";\nimport type { GroupProps } from \"../Group\";\nimport { Group } from \"../Group\";\n\nconst disableFilterMemoization = (children: Node<unknown>[]) => {\n children.forEach((child) => {\n child.memoizable = false;\n disableFilterMemoization(child.children);\n });\n};\n\nexport interface BackdropFilterProps extends GroupProps {\n filter: ReactNode | ReactNode[];\n}\n\nconst onDraw = createDrawing<BackdropFilterProps>((ctx, _, node) => {\n disableFilterMemoization(node.children);\n const toFilter = node.visit(ctx);\n const filter = getInput(ctx.Skia, toFilter);\n if (!filter) {\n throw new Error(\"No image filter provided to the background\");\n }\n const { canvas } = ctx;\n canvas.saveLayer(undefined, null, filter);\n canvas.restore();\n});\n\nexport const BackdropFilter = ({\n filter: filterChild,\n children: groupChildren,\n ...props\n}: AnimatedProps<BackdropFilterProps>) => {\n return (\n <Group {...props}>\n <skDrawing onDraw={onDraw} skipProcessing>\n {filterChild}\n </skDrawing>\n {groupChildren}\n </Group>\n );\n};\n"]}