@shopify/react-native-skia 0.1.191 → 0.1.193

Sign up to get free protection for your applications and to get access to all the features.
Files changed (615) hide show
  1. package/android/CMakeLists.txt +1 -1
  2. package/android/build.gradle +1 -0
  3. package/android/cpp/jni/JniPlatformContext.cpp +1 -1
  4. package/cpp/api/JsiSkColorFilter.h +2 -17
  5. package/cpp/api/JsiSkContourMeasure.h +3 -17
  6. package/cpp/api/JsiSkContourMeasureIter.h +3 -18
  7. package/cpp/api/JsiSkData.h +1 -18
  8. package/cpp/api/JsiSkFont.h +4 -14
  9. package/cpp/api/JsiSkHostObjects.h +85 -10
  10. package/cpp/api/JsiSkImage.h +26 -16
  11. package/cpp/api/JsiSkImageFactory.h +2 -2
  12. package/cpp/api/JsiSkImageFilter.h +1 -17
  13. package/cpp/api/JsiSkMaskFilter.h +1 -17
  14. package/cpp/api/JsiSkMatrix.h +3 -6
  15. package/cpp/api/JsiSkPaint.h +3 -15
  16. package/cpp/api/JsiSkPath.h +10 -21
  17. package/cpp/api/JsiSkPathEffect.h +2 -17
  18. package/cpp/api/JsiSkPicture.h +4 -18
  19. package/cpp/api/JsiSkPictureRecorder.h +4 -1
  20. package/cpp/api/JsiSkPoint.h +6 -1
  21. package/cpp/api/JsiSkRRect.h +6 -1
  22. package/cpp/api/JsiSkRSXform.h +4 -6
  23. package/cpp/api/JsiSkRect.h +6 -2
  24. package/cpp/api/JsiSkRuntimeEffect.h +4 -7
  25. package/cpp/api/JsiSkRuntimeShaderBuilder.h +2 -10
  26. package/cpp/api/JsiSkSVG.h +1 -10
  27. package/cpp/api/JsiSkShader.h +2 -16
  28. package/cpp/api/JsiSkSurface.h +3 -16
  29. package/cpp/api/JsiSkTextBlob.h +2 -18
  30. package/cpp/api/JsiSkTypeface.h +1 -22
  31. package/cpp/api/JsiSkVertices.h +3 -17
  32. package/cpp/rnskia/dom/base/Declaration.h +5 -7
  33. package/cpp/rnskia/dom/nodes/JsiBlurMaskNode.h +1 -0
  34. package/cpp/rnskia/dom/nodes/JsiPathNode.h +2 -2
  35. package/cpp/rnskia/dom/props/BoxShadowProps.h +2 -0
  36. package/cpp/rnskia/values/RNSkReadonlyValue.h +2 -2
  37. package/cpp/rnskia/values/RNSkValue.h +1 -1
  38. package/cpp/skia/include/android/SkAndroidFrameworkUtils.h +2 -8
  39. package/cpp/skia/include/android/SkImageAndroid.h +101 -0
  40. package/cpp/skia/include/codec/SkAndroidCodec.h +26 -8
  41. package/cpp/skia/include/codec/SkCodec.h +31 -17
  42. package/cpp/skia/include/codec/SkEncodedImageFormat.h +36 -0
  43. package/cpp/skia/include/codec/SkPixmapUtils.h +31 -0
  44. package/cpp/skia/include/config/SkUserConfig.h +61 -29
  45. package/cpp/skia/include/core/SkBitmap.h +25 -25
  46. package/cpp/skia/include/core/SkBlurTypes.h +0 -2
  47. package/cpp/skia/include/core/SkCanvas.h +32 -15
  48. package/cpp/skia/include/core/SkCapabilities.h +2 -2
  49. package/cpp/skia/include/core/SkColor.h +2 -0
  50. package/cpp/skia/include/core/SkColorPriv.h +19 -4
  51. package/cpp/skia/include/core/SkColorSpace.h +14 -17
  52. package/cpp/skia/include/core/SkColorType.h +1 -0
  53. package/cpp/skia/include/core/SkContourMeasure.h +1 -1
  54. package/cpp/skia/include/core/SkCoverageMode.h +0 -2
  55. package/cpp/skia/include/core/SkCubicMap.h +2 -0
  56. package/cpp/skia/include/core/SkData.h +5 -2
  57. package/cpp/skia/include/core/SkDataTable.h +6 -2
  58. package/cpp/skia/include/core/SkDeferredDisplayList.h +11 -10
  59. package/cpp/skia/include/core/SkDeferredDisplayListRecorder.h +9 -8
  60. package/cpp/skia/include/core/SkDrawable.h +10 -2
  61. package/cpp/skia/include/core/SkEncodedImageFormat.h +3 -30
  62. package/cpp/skia/include/core/SkFlattenable.h +4 -2
  63. package/cpp/skia/include/core/SkFont.h +1 -0
  64. package/cpp/skia/include/core/SkFontMetrics.h +1 -0
  65. package/cpp/skia/include/core/SkFontMgr.h +20 -29
  66. package/cpp/skia/include/core/SkFontStyle.h +4 -1
  67. package/cpp/skia/include/core/SkGraphics.h +21 -18
  68. package/cpp/skia/include/core/SkICC.h +3 -13
  69. package/cpp/skia/include/core/SkImage.h +395 -717
  70. package/cpp/skia/include/core/SkImageGenerator.h +19 -74
  71. package/cpp/skia/include/core/SkImageInfo.h +7 -5
  72. package/cpp/skia/include/core/SkM44.h +11 -0
  73. package/cpp/skia/include/core/SkMaskFilter.h +6 -3
  74. package/cpp/skia/include/core/SkMatrix.h +14 -4
  75. package/cpp/skia/include/core/SkMesh.h +52 -18
  76. package/cpp/skia/include/core/SkMilestone.h +1 -1
  77. package/cpp/skia/include/core/SkPaint.h +11 -34
  78. package/cpp/skia/include/core/SkPath.h +23 -4
  79. package/cpp/skia/include/core/SkPathBuilder.h +13 -5
  80. package/cpp/skia/include/core/SkPathMeasure.h +1 -1
  81. package/cpp/skia/include/core/SkPathTypes.h +0 -2
  82. package/cpp/skia/include/core/SkPathUtils.h +42 -0
  83. package/cpp/skia/include/core/SkPicture.h +3 -2
  84. package/cpp/skia/include/core/SkPictureRecorder.h +2 -0
  85. package/cpp/skia/include/core/SkPixelRef.h +4 -8
  86. package/cpp/skia/include/core/SkPixmap.h +12 -20
  87. package/cpp/skia/include/core/SkPoint.h +4 -2
  88. package/cpp/skia/include/core/SkPromiseImageTexture.h +2 -2
  89. package/cpp/skia/include/core/SkRRect.h +5 -1
  90. package/cpp/skia/include/core/SkRect.h +6 -3
  91. package/cpp/skia/include/core/SkRefCnt.h +9 -14
  92. package/cpp/skia/include/core/SkRegion.h +1 -1
  93. package/cpp/skia/include/core/SkScalar.h +2 -4
  94. package/cpp/skia/include/core/SkSerialProcs.h +18 -10
  95. package/cpp/skia/include/core/SkShader.h +1 -64
  96. package/cpp/skia/include/core/SkSize.h +2 -0
  97. package/cpp/skia/include/core/SkSpan.h +4 -112
  98. package/cpp/skia/include/core/SkStream.h +11 -12
  99. package/cpp/skia/include/core/SkString.h +9 -25
  100. package/cpp/skia/include/core/SkStrokeRec.h +1 -1
  101. package/cpp/skia/include/core/SkSurface.h +83 -61
  102. package/cpp/skia/include/core/SkSurfaceCharacterization.h +3 -3
  103. package/cpp/skia/include/core/SkSurfaceProps.h +9 -1
  104. package/cpp/skia/include/core/SkTextBlob.h +2 -2
  105. package/cpp/skia/include/core/SkTextureCompressionType.h +30 -0
  106. package/cpp/skia/include/core/SkTime.h +1 -1
  107. package/cpp/skia/include/core/SkTypeface.h +9 -2
  108. package/cpp/skia/include/core/SkTypes.h +37 -466
  109. package/cpp/skia/include/core/SkVertices.h +2 -0
  110. package/cpp/skia/include/core/SkYUVAInfo.h +4 -0
  111. package/cpp/skia/include/core/SkYUVAPixmaps.h +7 -1
  112. package/cpp/skia/include/docs/SkPDFDocument.h +12 -1
  113. package/cpp/skia/include/effects/SkColorMatrix.h +2 -1
  114. package/cpp/skia/include/effects/SkGradientShader.h +65 -14
  115. package/cpp/skia/include/effects/SkImageFilters.h +0 -11
  116. package/cpp/skia/include/effects/SkRuntimeEffect.h +41 -11
  117. package/cpp/skia/include/encode/SkEncoder.h +7 -3
  118. package/cpp/skia/include/encode/SkICC.h +36 -0
  119. package/cpp/skia/include/encode/SkJpegEncoder.h +102 -71
  120. package/cpp/skia/include/encode/SkPngEncoder.h +89 -71
  121. package/cpp/skia/include/encode/SkWebpEncoder.h +65 -38
  122. package/cpp/skia/include/gpu/GpuTypes.h +23 -1
  123. package/cpp/skia/include/gpu/GrBackendSurface.h +9 -7
  124. package/cpp/skia/include/gpu/GrContextOptions.h +28 -9
  125. package/cpp/skia/include/gpu/GrContextThreadSafeProxy.h +6 -4
  126. package/cpp/skia/include/gpu/GrDirectContext.h +84 -63
  127. package/cpp/skia/include/gpu/GrDriverBugWorkarounds.h +2 -1
  128. package/cpp/skia/include/gpu/GrRecordingContext.h +9 -5
  129. package/cpp/skia/include/gpu/GrTypes.h +18 -18
  130. package/cpp/skia/include/gpu/d3d/GrD3DTypes.h +4 -4
  131. package/cpp/skia/include/gpu/dawn/GrDawnTypes.h +3 -3
  132. package/cpp/skia/include/gpu/ganesh/GrTextureGenerator.h +77 -0
  133. package/cpp/skia/include/gpu/ganesh/SkImageGanesh.h +385 -0
  134. package/cpp/skia/include/gpu/gl/GrGLExtensions.h +3 -3
  135. package/cpp/skia/include/gpu/gl/GrGLFunctions.h +1 -1
  136. package/cpp/skia/include/gpu/gl/GrGLInterface.h +0 -3
  137. package/cpp/skia/include/gpu/gl/GrGLTypes.h +2 -1
  138. package/cpp/skia/include/gpu/graphite/BackendTexture.h +72 -3
  139. package/cpp/skia/include/gpu/graphite/Context.h +85 -32
  140. package/cpp/skia/include/gpu/graphite/ContextOptions.h +15 -11
  141. package/cpp/skia/include/gpu/graphite/GraphiteTypes.h +55 -5
  142. package/cpp/skia/include/gpu/graphite/ImageProvider.h +6 -4
  143. package/cpp/skia/include/gpu/graphite/Recorder.h +41 -11
  144. package/cpp/skia/include/gpu/graphite/Recording.h +50 -3
  145. package/cpp/skia/include/gpu/graphite/TextureInfo.h +47 -8
  146. package/cpp/skia/include/gpu/graphite/YUVABackendTextures.h +139 -0
  147. package/cpp/skia/include/gpu/graphite/dawn/DawnTypes.h +40 -0
  148. package/cpp/skia/include/gpu/graphite/dawn/DawnUtils.h +28 -0
  149. package/cpp/skia/include/gpu/graphite/mtl/MtlBackendContext.h +1 -1
  150. package/cpp/skia/include/gpu/graphite/mtl/{MtlTypes.h → MtlGraphiteTypes.h} +7 -6
  151. package/cpp/skia/include/gpu/graphite/mtl/MtlGraphiteUtils.h +27 -0
  152. package/cpp/skia/include/gpu/graphite/vk/VulkanGraphiteTypes.h +4 -9
  153. package/cpp/skia/include/gpu/graphite/vk/VulkanGraphiteUtils.h +28 -0
  154. package/cpp/skia/include/gpu/mock/GrMockTypes.h +17 -13
  155. package/cpp/skia/include/gpu/mtl/GrMtlTypes.h +2 -2
  156. package/cpp/skia/include/gpu/vk/GrVkBackendContext.h +1 -1
  157. package/cpp/skia/include/gpu/vk/GrVkTypes.h +3 -3
  158. package/cpp/skia/include/gpu/vk/VulkanExtensions.h +3 -3
  159. package/cpp/skia/include/gpu/vk/VulkanMemoryAllocator.h +5 -7
  160. package/cpp/skia/include/pathops/SkPathOps.h +3 -3
  161. package/cpp/skia/include/ports/SkFontMgr_data.h +22 -0
  162. package/cpp/skia/include/ports/SkFontMgr_indirect.h +14 -14
  163. package/cpp/skia/include/ports/SkRemotableFontMgr.h +2 -2
  164. package/cpp/skia/include/ports/SkTypeface_win.h +2 -1
  165. package/cpp/skia/include/private/SkChecksum.h +32 -7
  166. package/cpp/skia/include/private/SkColorData.h +1 -26
  167. package/cpp/skia/include/private/SkGainmapInfo.h +97 -0
  168. package/cpp/skia/include/private/SkGainmapShader.h +53 -0
  169. package/cpp/skia/include/private/SkIDChangeListener.h +4 -3
  170. package/cpp/skia/include/private/SkJpegGainmapEncoder.h +71 -0
  171. package/cpp/skia/include/private/SkJpegMetadataDecoder.h +61 -0
  172. package/cpp/skia/include/private/SkOpts_spi.h +3 -1
  173. package/cpp/skia/include/private/SkPathRef.h +64 -47
  174. package/cpp/skia/include/private/SkSLDefines.h +5 -5
  175. package/cpp/skia/include/private/SkSLSampleUsage.h +0 -4
  176. package/cpp/skia/include/private/SkSpinlock.h +1 -1
  177. package/cpp/skia/include/private/SkWeakRefCnt.h +3 -0
  178. package/cpp/skia/include/private/{SingleOwner.h → base/SingleOwner.h} +8 -5
  179. package/cpp/skia/include/private/base/SkAPI.h +52 -0
  180. package/cpp/skia/include/private/base/SkAlign.h +39 -0
  181. package/cpp/skia/include/private/base/SkAlignedStorage.h +32 -0
  182. package/cpp/skia/include/private/base/SkAssert.h +92 -0
  183. package/cpp/skia/include/private/base/SkAttributes.h +102 -0
  184. package/cpp/skia/include/private/base/SkCPUTypes.h +25 -0
  185. package/cpp/skia/include/private/base/SkContainers.h +46 -0
  186. package/cpp/skia/include/private/base/SkDebug.h +27 -0
  187. package/cpp/skia/include/private/{SkDeque.h → base/SkDeque.h} +3 -1
  188. package/cpp/skia/include/private/base/SkFeatures.h +151 -0
  189. package/cpp/skia/include/private/{SkFixed.h → base/SkFixed.h} +9 -7
  190. package/cpp/skia/include/private/{SkFloatBits.h → base/SkFloatBits.h} +2 -3
  191. package/cpp/skia/include/private/{SkFloatingPoint.h → base/SkFloatingPoint.h} +18 -9
  192. package/cpp/skia/include/private/base/SkLoadUserConfig.h +63 -0
  193. package/cpp/skia/include/private/{SkMacros.h → base/SkMacros.h} +17 -2
  194. package/cpp/skia/include/private/{SkMalloc.h → base/SkMalloc.h} +4 -7
  195. package/cpp/skia/include/{core → private/base}/SkMath.h +25 -2
  196. package/cpp/skia/include/private/{SkMutex.h → base/SkMutex.h} +5 -5
  197. package/cpp/skia/include/private/{SkNoncopyable.h → base/SkNoncopyable.h} +2 -2
  198. package/cpp/skia/include/private/{SkOnce.h → base/SkOnce.h} +3 -1
  199. package/cpp/skia/include/private/base/SkPathEnums.h +25 -0
  200. package/cpp/skia/include/private/{SkSafe32.h → base/SkSafe32.h} +16 -1
  201. package/cpp/skia/include/private/{SkSemaphore.h → base/SkSemaphore.h} +4 -3
  202. package/cpp/skia/include/private/base/SkSpan_impl.h +129 -0
  203. package/cpp/skia/include/private/base/SkTArray.h +694 -0
  204. package/cpp/skia/include/private/{SkTDArray.h → base/SkTDArray.h} +17 -54
  205. package/cpp/skia/include/private/{SkTFitsIn.h → base/SkTFitsIn.h} +14 -8
  206. package/cpp/skia/include/private/{SkTLogic.h → base/SkTLogic.h} +1 -1
  207. package/cpp/skia/include/private/{SkTemplates.h → base/SkTemplates.h} +63 -88
  208. package/cpp/skia/include/private/{SkThreadID.h → base/SkThreadID.h} +5 -2
  209. package/cpp/skia/include/private/{SkTo.h → base/SkTo.h} +13 -2
  210. package/cpp/skia/include/private/base/SkTypeTraits.h +33 -0
  211. package/cpp/skia/include/private/chromium/GrVkSecondaryCBDrawContext.h +130 -0
  212. package/cpp/skia/include/private/chromium/SkChromeRemoteGlyphCache.h +5 -9
  213. package/cpp/skia/include/private/chromium/SkDiscardableMemory.h +70 -0
  214. package/cpp/skia/include/private/chromium/Slug.h +0 -9
  215. package/cpp/skia/include/private/gpu/ganesh/GrContext_Base.h +2 -1
  216. package/cpp/skia/include/private/gpu/ganesh/GrD3DTypesMinimal.h +1 -1
  217. package/cpp/skia/include/private/gpu/ganesh/GrDawnTypesPriv.h +1 -1
  218. package/cpp/skia/include/private/gpu/ganesh/GrGLTypesPriv.h +1 -1
  219. package/cpp/skia/include/private/gpu/ganesh/GrImageContext.h +1 -1
  220. package/cpp/skia/include/private/gpu/ganesh/GrMockTypesPriv.h +3 -2
  221. package/cpp/skia/include/private/gpu/ganesh/GrMtlTypesPriv.h +1 -1
  222. package/cpp/skia/include/private/gpu/ganesh/GrTypesPriv.h +17 -23
  223. package/cpp/skia/include/private/gpu/ganesh/GrVkTypesPriv.h +2 -2
  224. package/cpp/skia/include/private/gpu/graphite/DawnTypesPriv.h +38 -0
  225. package/cpp/skia/include/private/gpu/graphite/{MtlTypesPriv.h → MtlGraphiteTypesPriv.h} +5 -5
  226. package/cpp/skia/include/private/gpu/graphite/VulkanGraphiteTypesPriv.h +1 -9
  227. package/cpp/skia/include/private/gpu/vk/SkiaVulkan.h +4 -0
  228. package/cpp/skia/include/utils/SkCamera.h +1 -1
  229. package/cpp/skia/include/utils/SkCustomTypeface.h +7 -1
  230. package/cpp/skia/include/utils/SkNWayCanvas.h +6 -6
  231. package/cpp/skia/include/utils/SkOrderedFontMgr.h +7 -6
  232. package/cpp/skia/include/utils/SkPaintFilterCanvas.h +2 -2
  233. package/cpp/skia/include/utils/SkParsePath.h +1 -1
  234. package/cpp/skia/modules/skcms/skcms.h +14 -0
  235. package/cpp/skia/modules/skcms/src/Transform_inl.h +19 -0
  236. package/cpp/skia/modules/skparagraph/include/FontCollection.h +2 -2
  237. package/cpp/skia/modules/skparagraph/include/Paragraph.h +72 -2
  238. package/cpp/skia/modules/skparagraph/include/ParagraphCache.h +1 -11
  239. package/cpp/skia/modules/skparagraph/include/ParagraphPainter.h +63 -0
  240. package/cpp/skia/modules/skparagraph/include/TextStyle.h +27 -4
  241. package/cpp/skia/modules/skparagraph/include/TypefaceFontProvider.h +13 -13
  242. package/cpp/skia/modules/skresources/include/SkResources.h +18 -4
  243. package/cpp/skia/modules/svg/include/SkSVGAttribute.h +1 -1
  244. package/cpp/skia/modules/svg/include/SkSVGAttributeParser.h +2 -2
  245. package/cpp/skia/modules/svg/include/SkSVGContainer.h +2 -2
  246. package/cpp/skia/modules/svg/include/SkSVGDOM.h +1 -1
  247. package/cpp/skia/modules/svg/include/SkSVGFilterContext.h +2 -2
  248. package/cpp/skia/modules/svg/include/SkSVGGradient.h +2 -2
  249. package/cpp/skia/modules/svg/include/SkSVGIDMapper.h +2 -2
  250. package/cpp/skia/modules/svg/include/SkSVGRenderContext.h +3 -3
  251. package/cpp/skia/modules/svg/include/SkSVGSVG.h +1 -1
  252. package/cpp/skia/modules/svg/include/SkSVGTypes.h +22 -21
  253. package/cpp/skia/modules/svg/include/SkSVGValue.h +1 -1
  254. package/cpp/skia/{include/private → src/core}/SkTHash.h +41 -37
  255. package/ios/RNSkia-iOS/ViewScreenshotService.mm +1 -1
  256. package/lib/commonjs/renderer/Canvas.js +17 -1
  257. package/lib/commonjs/renderer/Canvas.js.map +1 -1
  258. package/lib/commonjs/skia/core/Data.d.ts +2 -2
  259. package/lib/commonjs/skia/core/Data.js.map +1 -1
  260. package/lib/commonjs/skia/types/Data/Data.d.ts +2 -2
  261. package/lib/commonjs/skia/types/Data/Data.js.map +1 -1
  262. package/lib/commonjs/skia/types/Image/Image.d.ts +2 -2
  263. package/lib/commonjs/skia/types/Image/Image.js.map +1 -1
  264. package/lib/commonjs/skia/types/JsiInstance.d.ts +4 -4
  265. package/lib/commonjs/skia/types/JsiInstance.js.map +1 -1
  266. package/lib/commonjs/skia/types/SVG/SVG.d.ts +2 -2
  267. package/lib/commonjs/skia/types/SVG/SVG.js.map +1 -1
  268. package/lib/commonjs/skia/types/Typeface/Typeface.d.ts +2 -2
  269. package/lib/commonjs/skia/types/Typeface/Typeface.js.map +1 -1
  270. package/lib/commonjs/skia/web/Host.d.ts +1 -0
  271. package/lib/commonjs/skia/web/Host.js +2 -0
  272. package/lib/commonjs/skia/web/Host.js.map +1 -1
  273. package/lib/commonjs/skia/web/JsiSkCanvas.d.ts +1 -0
  274. package/lib/commonjs/skia/web/JsiSkCanvas.js +6 -0
  275. package/lib/commonjs/skia/web/JsiSkCanvas.js.map +1 -1
  276. package/lib/commonjs/skia/web/JsiSkColorFilter.d.ts +1 -0
  277. package/lib/commonjs/skia/web/JsiSkColorFilter.js +6 -0
  278. package/lib/commonjs/skia/web/JsiSkColorFilter.js.map +1 -1
  279. package/lib/commonjs/skia/web/JsiSkContourMeasure.d.ts +1 -0
  280. package/lib/commonjs/skia/web/JsiSkContourMeasure.js +6 -0
  281. package/lib/commonjs/skia/web/JsiSkContourMeasure.js.map +1 -1
  282. package/lib/commonjs/skia/web/JsiSkContourMeasureIter.d.ts +1 -0
  283. package/lib/commonjs/skia/web/JsiSkContourMeasureIter.js +6 -0
  284. package/lib/commonjs/skia/web/JsiSkContourMeasureIter.js.map +1 -1
  285. package/lib/commonjs/skia/web/JsiSkData.d.ts +1 -1
  286. package/lib/commonjs/skia/web/JsiSkData.js +4 -2
  287. package/lib/commonjs/skia/web/JsiSkData.js.map +1 -1
  288. package/lib/commonjs/skia/web/JsiSkFont.d.ts +1 -0
  289. package/lib/commonjs/skia/web/JsiSkFont.js +6 -0
  290. package/lib/commonjs/skia/web/JsiSkFont.js.map +1 -1
  291. package/lib/commonjs/skia/web/JsiSkImage.d.ts +1 -1
  292. package/lib/commonjs/skia/web/JsiSkImage.js +6 -4
  293. package/lib/commonjs/skia/web/JsiSkImage.js.map +1 -1
  294. package/lib/commonjs/skia/web/JsiSkImageFilter.d.ts +1 -0
  295. package/lib/commonjs/skia/web/JsiSkImageFilter.js +6 -0
  296. package/lib/commonjs/skia/web/JsiSkImageFilter.js.map +1 -1
  297. package/lib/commonjs/skia/web/JsiSkMaskFilter.d.ts +1 -0
  298. package/lib/commonjs/skia/web/JsiSkMaskFilter.js +6 -0
  299. package/lib/commonjs/skia/web/JsiSkMaskFilter.js.map +1 -1
  300. package/lib/commonjs/skia/web/JsiSkMatrix.d.ts +1 -0
  301. package/lib/commonjs/skia/web/JsiSkMatrix.js +5 -0
  302. package/lib/commonjs/skia/web/JsiSkMatrix.js.map +1 -1
  303. package/lib/commonjs/skia/web/JsiSkPaint.d.ts +1 -0
  304. package/lib/commonjs/skia/web/JsiSkPaint.js +6 -0
  305. package/lib/commonjs/skia/web/JsiSkPaint.js.map +1 -1
  306. package/lib/commonjs/skia/web/JsiSkPath.d.ts +1 -0
  307. package/lib/commonjs/skia/web/JsiSkPath.js +6 -0
  308. package/lib/commonjs/skia/web/JsiSkPath.js.map +1 -1
  309. package/lib/commonjs/skia/web/JsiSkPathEffect.d.ts +1 -0
  310. package/lib/commonjs/skia/web/JsiSkPathEffect.js +6 -0
  311. package/lib/commonjs/skia/web/JsiSkPathEffect.js.map +1 -1
  312. package/lib/commonjs/skia/web/JsiSkPicture.d.ts +1 -0
  313. package/lib/commonjs/skia/web/JsiSkPicture.js +6 -1
  314. package/lib/commonjs/skia/web/JsiSkPicture.js.map +1 -1
  315. package/lib/commonjs/skia/web/JsiSkPictureRecorder.d.ts +1 -0
  316. package/lib/commonjs/skia/web/JsiSkPictureRecorder.js +6 -0
  317. package/lib/commonjs/skia/web/JsiSkPictureRecorder.js.map +1 -1
  318. package/lib/commonjs/skia/web/JsiSkPoint.d.ts +1 -0
  319. package/lib/commonjs/skia/web/JsiSkPoint.js +5 -0
  320. package/lib/commonjs/skia/web/JsiSkPoint.js.map +1 -1
  321. package/lib/commonjs/skia/web/JsiSkRRect.d.ts +1 -0
  322. package/lib/commonjs/skia/web/JsiSkRRect.js +5 -0
  323. package/lib/commonjs/skia/web/JsiSkRRect.js.map +1 -1
  324. package/lib/commonjs/skia/web/JsiSkRSXform.d.ts +1 -0
  325. package/lib/commonjs/skia/web/JsiSkRSXform.js +5 -0
  326. package/lib/commonjs/skia/web/JsiSkRSXform.js.map +1 -1
  327. package/lib/commonjs/skia/web/JsiSkRect.d.ts +1 -0
  328. package/lib/commonjs/skia/web/JsiSkRect.js +5 -0
  329. package/lib/commonjs/skia/web/JsiSkRect.js.map +1 -1
  330. package/lib/commonjs/skia/web/JsiSkRuntimeEffect.d.ts +1 -0
  331. package/lib/commonjs/skia/web/JsiSkRuntimeEffect.js +6 -0
  332. package/lib/commonjs/skia/web/JsiSkRuntimeEffect.js.map +1 -1
  333. package/lib/commonjs/skia/web/JsiSkShader.d.ts +1 -0
  334. package/lib/commonjs/skia/web/JsiSkShader.js +6 -0
  335. package/lib/commonjs/skia/web/JsiSkShader.js.map +1 -1
  336. package/lib/commonjs/skia/web/JsiSkSurface.d.ts +1 -0
  337. package/lib/commonjs/skia/web/JsiSkSurface.js +6 -0
  338. package/lib/commonjs/skia/web/JsiSkSurface.js.map +1 -1
  339. package/lib/commonjs/skia/web/JsiSkTextBlob.d.ts +1 -0
  340. package/lib/commonjs/skia/web/JsiSkTextBlob.js +6 -0
  341. package/lib/commonjs/skia/web/JsiSkTextBlob.js.map +1 -1
  342. package/lib/commonjs/skia/web/JsiSkTypeface.d.ts +1 -1
  343. package/lib/commonjs/skia/web/JsiSkTypeface.js +6 -4
  344. package/lib/commonjs/skia/web/JsiSkTypeface.js.map +1 -1
  345. package/lib/commonjs/skia/web/JsiSkVertices.d.ts +1 -0
  346. package/lib/commonjs/skia/web/JsiSkVertices.js +6 -0
  347. package/lib/commonjs/skia/web/JsiSkVertices.js.map +1 -1
  348. package/lib/commonjs/values/hooks/useComputedValue.js +1 -1
  349. package/lib/commonjs/values/hooks/useComputedValue.js.map +1 -1
  350. package/lib/commonjs/values/types.d.ts +1 -1
  351. package/lib/commonjs/values/types.js.map +1 -1
  352. package/lib/commonjs/values/web/RNSkComputedValue.d.ts +1 -1
  353. package/lib/commonjs/values/web/RNSkComputedValue.js +1 -1
  354. package/lib/commonjs/values/web/RNSkComputedValue.js.map +1 -1
  355. package/lib/commonjs/values/web/RNSkReadonlyValue.d.ts +1 -1
  356. package/lib/commonjs/values/web/RNSkReadonlyValue.js +1 -1
  357. package/lib/commonjs/values/web/RNSkReadonlyValue.js.map +1 -1
  358. package/lib/commonjs/views/SkiaDomView.web.js +14 -4
  359. package/lib/commonjs/views/SkiaDomView.web.js.map +1 -1
  360. package/lib/commonjs/views/types.d.ts +2 -1
  361. package/lib/commonjs/views/types.js.map +1 -1
  362. package/lib/module/renderer/Canvas.js +15 -1
  363. package/lib/module/renderer/Canvas.js.map +1 -1
  364. package/lib/module/skia/core/Data.d.ts +2 -2
  365. package/lib/module/skia/core/Data.js.map +1 -1
  366. package/lib/module/skia/types/Data/Data.d.ts +2 -2
  367. package/lib/module/skia/types/Data/Data.js.map +1 -1
  368. package/lib/module/skia/types/Image/Image.d.ts +2 -2
  369. package/lib/module/skia/types/Image/Image.js.map +1 -1
  370. package/lib/module/skia/types/JsiInstance.d.ts +4 -4
  371. package/lib/module/skia/types/JsiInstance.js.map +1 -1
  372. package/lib/module/skia/types/SVG/SVG.d.ts +2 -2
  373. package/lib/module/skia/types/SVG/SVG.js.map +1 -1
  374. package/lib/module/skia/types/Typeface/Typeface.d.ts +2 -2
  375. package/lib/module/skia/types/Typeface/Typeface.js.map +1 -1
  376. package/lib/module/skia/web/Host.d.ts +1 -0
  377. package/lib/module/skia/web/Host.js +2 -0
  378. package/lib/module/skia/web/Host.js.map +1 -1
  379. package/lib/module/skia/web/JsiSkCanvas.d.ts +1 -0
  380. package/lib/module/skia/web/JsiSkCanvas.js +6 -0
  381. package/lib/module/skia/web/JsiSkCanvas.js.map +1 -1
  382. package/lib/module/skia/web/JsiSkColorFilter.d.ts +1 -0
  383. package/lib/module/skia/web/JsiSkColorFilter.js +6 -0
  384. package/lib/module/skia/web/JsiSkColorFilter.js.map +1 -1
  385. package/lib/module/skia/web/JsiSkContourMeasure.d.ts +1 -0
  386. package/lib/module/skia/web/JsiSkContourMeasure.js +6 -0
  387. package/lib/module/skia/web/JsiSkContourMeasure.js.map +1 -1
  388. package/lib/module/skia/web/JsiSkContourMeasureIter.d.ts +1 -0
  389. package/lib/module/skia/web/JsiSkContourMeasureIter.js +6 -0
  390. package/lib/module/skia/web/JsiSkContourMeasureIter.js.map +1 -1
  391. package/lib/module/skia/web/JsiSkData.d.ts +1 -1
  392. package/lib/module/skia/web/JsiSkData.js +4 -2
  393. package/lib/module/skia/web/JsiSkData.js.map +1 -1
  394. package/lib/module/skia/web/JsiSkFont.d.ts +1 -0
  395. package/lib/module/skia/web/JsiSkFont.js +6 -0
  396. package/lib/module/skia/web/JsiSkFont.js.map +1 -1
  397. package/lib/module/skia/web/JsiSkImage.d.ts +1 -1
  398. package/lib/module/skia/web/JsiSkImage.js +6 -4
  399. package/lib/module/skia/web/JsiSkImage.js.map +1 -1
  400. package/lib/module/skia/web/JsiSkImageFilter.d.ts +1 -0
  401. package/lib/module/skia/web/JsiSkImageFilter.js +6 -0
  402. package/lib/module/skia/web/JsiSkImageFilter.js.map +1 -1
  403. package/lib/module/skia/web/JsiSkMaskFilter.d.ts +1 -0
  404. package/lib/module/skia/web/JsiSkMaskFilter.js +6 -0
  405. package/lib/module/skia/web/JsiSkMaskFilter.js.map +1 -1
  406. package/lib/module/skia/web/JsiSkMatrix.d.ts +1 -0
  407. package/lib/module/skia/web/JsiSkMatrix.js +5 -0
  408. package/lib/module/skia/web/JsiSkMatrix.js.map +1 -1
  409. package/lib/module/skia/web/JsiSkPaint.d.ts +1 -0
  410. package/lib/module/skia/web/JsiSkPaint.js +6 -0
  411. package/lib/module/skia/web/JsiSkPaint.js.map +1 -1
  412. package/lib/module/skia/web/JsiSkPath.d.ts +1 -0
  413. package/lib/module/skia/web/JsiSkPath.js +6 -0
  414. package/lib/module/skia/web/JsiSkPath.js.map +1 -1
  415. package/lib/module/skia/web/JsiSkPathEffect.d.ts +1 -0
  416. package/lib/module/skia/web/JsiSkPathEffect.js +6 -0
  417. package/lib/module/skia/web/JsiSkPathEffect.js.map +1 -1
  418. package/lib/module/skia/web/JsiSkPicture.d.ts +1 -0
  419. package/lib/module/skia/web/JsiSkPicture.js +6 -0
  420. package/lib/module/skia/web/JsiSkPicture.js.map +1 -1
  421. package/lib/module/skia/web/JsiSkPictureRecorder.d.ts +1 -0
  422. package/lib/module/skia/web/JsiSkPictureRecorder.js +6 -0
  423. package/lib/module/skia/web/JsiSkPictureRecorder.js.map +1 -1
  424. package/lib/module/skia/web/JsiSkPoint.d.ts +1 -0
  425. package/lib/module/skia/web/JsiSkPoint.js +5 -0
  426. package/lib/module/skia/web/JsiSkPoint.js.map +1 -1
  427. package/lib/module/skia/web/JsiSkRRect.d.ts +1 -0
  428. package/lib/module/skia/web/JsiSkRRect.js +5 -0
  429. package/lib/module/skia/web/JsiSkRRect.js.map +1 -1
  430. package/lib/module/skia/web/JsiSkRSXform.d.ts +1 -0
  431. package/lib/module/skia/web/JsiSkRSXform.js +5 -0
  432. package/lib/module/skia/web/JsiSkRSXform.js.map +1 -1
  433. package/lib/module/skia/web/JsiSkRect.d.ts +1 -0
  434. package/lib/module/skia/web/JsiSkRect.js +5 -0
  435. package/lib/module/skia/web/JsiSkRect.js.map +1 -1
  436. package/lib/module/skia/web/JsiSkRuntimeEffect.d.ts +1 -0
  437. package/lib/module/skia/web/JsiSkRuntimeEffect.js +6 -0
  438. package/lib/module/skia/web/JsiSkRuntimeEffect.js.map +1 -1
  439. package/lib/module/skia/web/JsiSkShader.d.ts +1 -0
  440. package/lib/module/skia/web/JsiSkShader.js +6 -0
  441. package/lib/module/skia/web/JsiSkShader.js.map +1 -1
  442. package/lib/module/skia/web/JsiSkSurface.d.ts +1 -0
  443. package/lib/module/skia/web/JsiSkSurface.js +6 -0
  444. package/lib/module/skia/web/JsiSkSurface.js.map +1 -1
  445. package/lib/module/skia/web/JsiSkTextBlob.d.ts +1 -0
  446. package/lib/module/skia/web/JsiSkTextBlob.js +6 -0
  447. package/lib/module/skia/web/JsiSkTextBlob.js.map +1 -1
  448. package/lib/module/skia/web/JsiSkTypeface.d.ts +1 -1
  449. package/lib/module/skia/web/JsiSkTypeface.js +6 -4
  450. package/lib/module/skia/web/JsiSkTypeface.js.map +1 -1
  451. package/lib/module/skia/web/JsiSkVertices.d.ts +1 -0
  452. package/lib/module/skia/web/JsiSkVertices.js +6 -0
  453. package/lib/module/skia/web/JsiSkVertices.js.map +1 -1
  454. package/lib/module/values/hooks/useComputedValue.js +1 -1
  455. package/lib/module/values/hooks/useComputedValue.js.map +1 -1
  456. package/lib/module/values/types.d.ts +1 -1
  457. package/lib/module/values/types.js.map +1 -1
  458. package/lib/module/values/web/RNSkComputedValue.d.ts +1 -1
  459. package/lib/module/values/web/RNSkComputedValue.js +1 -1
  460. package/lib/module/values/web/RNSkComputedValue.js.map +1 -1
  461. package/lib/module/values/web/RNSkReadonlyValue.d.ts +1 -1
  462. package/lib/module/values/web/RNSkReadonlyValue.js +1 -1
  463. package/lib/module/values/web/RNSkReadonlyValue.js.map +1 -1
  464. package/lib/module/views/SkiaDomView.web.js +13 -4
  465. package/lib/module/views/SkiaDomView.web.js.map +1 -1
  466. package/lib/module/views/types.d.ts +2 -1
  467. package/lib/module/views/types.js.map +1 -1
  468. package/lib/typescript/src/skia/core/Data.d.ts +2 -2
  469. package/lib/typescript/src/skia/types/Data/Data.d.ts +2 -2
  470. package/lib/typescript/src/skia/types/Image/Image.d.ts +2 -2
  471. package/lib/typescript/src/skia/types/JsiInstance.d.ts +4 -4
  472. package/lib/typescript/src/skia/types/SVG/SVG.d.ts +2 -2
  473. package/lib/typescript/src/skia/types/Typeface/Typeface.d.ts +2 -2
  474. package/lib/typescript/src/skia/web/Host.d.ts +1 -0
  475. package/lib/typescript/src/skia/web/JsiSkCanvas.d.ts +1 -0
  476. package/lib/typescript/src/skia/web/JsiSkColorFilter.d.ts +1 -0
  477. package/lib/typescript/src/skia/web/JsiSkContourMeasure.d.ts +1 -0
  478. package/lib/typescript/src/skia/web/JsiSkContourMeasureIter.d.ts +1 -0
  479. package/lib/typescript/src/skia/web/JsiSkData.d.ts +1 -1
  480. package/lib/typescript/src/skia/web/JsiSkFont.d.ts +1 -0
  481. package/lib/typescript/src/skia/web/JsiSkImage.d.ts +1 -1
  482. package/lib/typescript/src/skia/web/JsiSkImageFilter.d.ts +1 -0
  483. package/lib/typescript/src/skia/web/JsiSkMaskFilter.d.ts +1 -0
  484. package/lib/typescript/src/skia/web/JsiSkMatrix.d.ts +1 -0
  485. package/lib/typescript/src/skia/web/JsiSkPaint.d.ts +1 -0
  486. package/lib/typescript/src/skia/web/JsiSkPath.d.ts +1 -0
  487. package/lib/typescript/src/skia/web/JsiSkPathEffect.d.ts +1 -0
  488. package/lib/typescript/src/skia/web/JsiSkPicture.d.ts +1 -0
  489. package/lib/typescript/src/skia/web/JsiSkPictureRecorder.d.ts +1 -0
  490. package/lib/typescript/src/skia/web/JsiSkPoint.d.ts +1 -0
  491. package/lib/typescript/src/skia/web/JsiSkRRect.d.ts +1 -0
  492. package/lib/typescript/src/skia/web/JsiSkRSXform.d.ts +1 -0
  493. package/lib/typescript/src/skia/web/JsiSkRect.d.ts +1 -0
  494. package/lib/typescript/src/skia/web/JsiSkRuntimeEffect.d.ts +1 -0
  495. package/lib/typescript/src/skia/web/JsiSkShader.d.ts +1 -0
  496. package/lib/typescript/src/skia/web/JsiSkSurface.d.ts +1 -0
  497. package/lib/typescript/src/skia/web/JsiSkTextBlob.d.ts +1 -0
  498. package/lib/typescript/src/skia/web/JsiSkTypeface.d.ts +1 -1
  499. package/lib/typescript/src/skia/web/JsiSkVertices.d.ts +1 -0
  500. package/lib/typescript/src/values/types.d.ts +1 -1
  501. package/lib/typescript/src/values/web/RNSkComputedValue.d.ts +1 -1
  502. package/lib/typescript/src/values/web/RNSkReadonlyValue.d.ts +1 -1
  503. package/lib/typescript/src/views/types.d.ts +2 -1
  504. package/libs/android/arm64-v8a/libskia.a +0 -0
  505. package/libs/android/arm64-v8a/libskottie.a +0 -0
  506. package/libs/android/arm64-v8a/libsksg.a +0 -0
  507. package/libs/android/arm64-v8a/libskshaper.a +0 -0
  508. package/libs/android/arm64-v8a/libsvg.a +0 -0
  509. package/libs/android/armeabi-v7a/libskia.a +0 -0
  510. package/libs/android/armeabi-v7a/libskottie.a +0 -0
  511. package/libs/android/armeabi-v7a/libsksg.a +0 -0
  512. package/libs/android/armeabi-v7a/libskshaper.a +0 -0
  513. package/libs/android/armeabi-v7a/libsvg.a +0 -0
  514. package/libs/android/x86/libskia.a +0 -0
  515. package/libs/android/x86/libskottie.a +0 -0
  516. package/libs/android/x86/libsksg.a +0 -0
  517. package/libs/android/x86/libskshaper.a +0 -0
  518. package/libs/android/x86/libsvg.a +0 -0
  519. package/libs/android/x86_64/libskia.a +0 -0
  520. package/libs/android/x86_64/libskottie.a +0 -0
  521. package/libs/android/x86_64/libsksg.a +0 -0
  522. package/libs/android/x86_64/libskshaper.a +0 -0
  523. package/libs/android/x86_64/libsvg.a +0 -0
  524. package/libs/ios/libskia.xcframework/Info.plist +5 -5
  525. package/libs/ios/libskia.xcframework/ios-arm64_arm64e/libskia.a +0 -0
  526. package/libs/ios/libskia.xcframework/ios-arm64_arm64e_x86_64-simulator/libskia.a +0 -0
  527. package/libs/ios/libskottie.xcframework/ios-arm64_arm64e/libskottie.a +0 -0
  528. package/libs/ios/libskottie.xcframework/ios-arm64_arm64e_x86_64-simulator/libskottie.a +0 -0
  529. package/libs/ios/libsksg.xcframework/ios-arm64_arm64e/libsksg.a +0 -0
  530. package/libs/ios/libsksg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsksg.a +0 -0
  531. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e/libskshaper.a +0 -0
  532. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e_x86_64-simulator/libskshaper.a +0 -0
  533. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e/libsvg.a +0 -0
  534. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsvg.a +0 -0
  535. package/package.json +1 -1
  536. package/react-native-skia.podspec +1 -1
  537. package/scripts/install-npm.js +11 -1
  538. package/src/renderer/Canvas.tsx +21 -1
  539. package/src/skia/core/Data.ts +3 -3
  540. package/src/skia/types/Data/Data.ts +2 -2
  541. package/src/skia/types/Image/Image.ts +2 -2
  542. package/src/skia/types/JsiInstance.ts +4 -4
  543. package/src/skia/types/SVG/SVG.ts +2 -2
  544. package/src/skia/types/Typeface/Typeface.ts +2 -2
  545. package/src/skia/web/Host.ts +2 -0
  546. package/src/skia/web/JsiSkCanvas.ts +4 -0
  547. package/src/skia/web/JsiSkColorFilter.ts +4 -0
  548. package/src/skia/web/JsiSkContourMeasure.ts +4 -0
  549. package/src/skia/web/JsiSkContourMeasureIter.ts +4 -0
  550. package/src/skia/web/JsiSkData.ts +3 -3
  551. package/src/skia/web/JsiSkFont.ts +4 -0
  552. package/src/skia/web/JsiSkImage.ts +2 -2
  553. package/src/skia/web/JsiSkImageFilter.ts +4 -0
  554. package/src/skia/web/JsiSkMaskFilter.ts +4 -0
  555. package/src/skia/web/JsiSkMatrix.ts +4 -0
  556. package/src/skia/web/JsiSkPaint.ts +4 -0
  557. package/src/skia/web/JsiSkPath.ts +4 -0
  558. package/src/skia/web/JsiSkPathEffect.ts +4 -0
  559. package/src/skia/web/JsiSkPicture.ts +4 -0
  560. package/src/skia/web/JsiSkPictureRecorder.ts +4 -0
  561. package/src/skia/web/JsiSkPoint.ts +4 -0
  562. package/src/skia/web/JsiSkRRect.ts +4 -0
  563. package/src/skia/web/JsiSkRSXform.ts +4 -0
  564. package/src/skia/web/JsiSkRect.ts +4 -0
  565. package/src/skia/web/JsiSkRuntimeEffect.ts +4 -0
  566. package/src/skia/web/JsiSkShader.ts +4 -0
  567. package/src/skia/web/JsiSkSurface.ts +4 -0
  568. package/src/skia/web/JsiSkTextBlob.ts +4 -0
  569. package/src/skia/web/JsiSkTypeface.ts +2 -2
  570. package/src/skia/web/JsiSkVertices.ts +4 -0
  571. package/src/values/hooks/useComputedValue.ts +1 -1
  572. package/src/values/types.ts +1 -1
  573. package/src/values/web/RNSkComputedValue.ts +1 -1
  574. package/src/values/web/RNSkReadonlyValue.ts +1 -1
  575. package/src/views/SkiaDomView.web.tsx +6 -1
  576. package/src/views/types.ts +2 -1
  577. package/cpp/skia/include/core/SkImageEncoder.h +0 -71
  578. package/cpp/skia/include/gpu/GrConfig.h +0 -53
  579. package/cpp/skia/include/gpu/graphite/CombinationBuilder.h +0 -195
  580. package/cpp/skia/include/private/SkHalf.h +0 -38
  581. package/cpp/skia/include/private/SkImageInfoPriv.h +0 -199
  582. package/cpp/skia/include/private/SkSLIRNode.h +0 -64
  583. package/cpp/skia/include/private/SkSLLayout.h +0 -144
  584. package/cpp/skia/include/private/SkSLModifiers.h +0 -178
  585. package/cpp/skia/include/private/SkSLProgramElement.h +0 -77
  586. package/cpp/skia/include/private/SkSLProgramKind.h +0 -35
  587. package/cpp/skia/include/private/SkSLStatement.h +0 -86
  588. package/cpp/skia/include/private/SkSLString.h +0 -41
  589. package/cpp/skia/include/private/SkSLSymbol.h +0 -94
  590. package/cpp/skia/include/private/SkSafe_math.h +0 -52
  591. package/cpp/skia/include/private/SkStringView.h +0 -51
  592. package/cpp/skia/include/private/SkTArray.h +0 -655
  593. package/cpp/skia/include/private/SkUniquePaintParamsID.h +0 -35
  594. package/cpp/skia/include/private/SkVx.h +0 -1026
  595. package/cpp/skia/include/sksl/DSL.h +0 -37
  596. package/cpp/skia/include/sksl/DSLBlock.h +0 -58
  597. package/cpp/skia/include/sksl/DSLCase.h +0 -62
  598. package/cpp/skia/include/sksl/DSLCore.h +0 -492
  599. package/cpp/skia/include/sksl/DSLExpression.h +0 -241
  600. package/cpp/skia/include/sksl/DSLFunction.h +0 -113
  601. package/cpp/skia/include/sksl/DSLLayout.h +0 -92
  602. package/cpp/skia/include/sksl/DSLModifiers.h +0 -69
  603. package/cpp/skia/include/sksl/DSLStatement.h +0 -82
  604. package/cpp/skia/include/sksl/DSLSymbols.h +0 -61
  605. package/cpp/skia/include/sksl/DSLType.h +0 -271
  606. package/cpp/skia/include/sksl/DSLVar.h +0 -231
  607. package/cpp/skia/include/sksl/SkSLErrorReporter.h +0 -65
  608. package/cpp/skia/include/sksl/SkSLOperator.h +0 -154
  609. package/cpp/skia/include/sksl/SkSLPosition.h +0 -104
  610. package/cpp/skia/include/utils/SkRandom.h +0 -169
  611. package/cpp/skia/src/core/SkLRUCache.h +0 -126
  612. package/cpp/skia/src/core/SkTInternalLList.h +0 -302
  613. /package/cpp/skia/include/{core → codec}/SkPngChunkReader.h +0 -0
  614. /package/cpp/skia/include/private/{SkTPin.h → base/SkTPin.h} +0 -0
  615. /package/cpp/skia/include/private/{SkThreadAnnotations.h → base/SkThreadAnnotations.h} +0 -0
@@ -21,7 +21,7 @@ var _Animations = require("../../renderer/processors/Animations");
21
21
  const useComputedValue = (cb, values) => {
22
22
  const value = (0, _react.useMemo)(() => _api.ValueApi.createComputedValue(cb, values.filter(_Animations.isValue)), // eslint-disable-next-line react-hooks/exhaustive-deps
23
23
  values);
24
- (0, _react.useEffect)(() => () => value.__invalidate(), [value]);
24
+ (0, _react.useEffect)(() => () => value.dispose(), [value]);
25
25
  return value;
26
26
  };
27
27
 
@@ -1 +1 @@
1
- {"version":3,"names":["useComputedValue","cb","values","value","useMemo","ValueApi","createComputedValue","filter","isValue","useEffect","__invalidate"],"sources":["useComputedValue.ts"],"sourcesContent":["import { useEffect, useMemo } from \"react\";\n\nimport { ValueApi } from \"../api\";\nimport { isValue } from \"../../renderer/processors/Animations\";\n\n/**\n * Creates a new computed value - a value that will calculate its value depending\n * on other values.\n * @param cb Callback to calculate new value\n * @param values Dependant values\n * @returns A readonly value\n */\nexport const useComputedValue = <R>(cb: () => R, values: unknown[]) => {\n const value = useMemo(\n () => ValueApi.createComputedValue<R>(cb, values.filter(isValue)),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n values\n );\n useEffect(() => () => value.__invalidate(), [value]);\n return value;\n};\n"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,gBAAgB,GAAG,CAAIC,EAAJ,EAAiBC,MAAjB,KAAuC;EACrE,MAAMC,KAAK,GAAG,IAAAC,cAAA,EACZ,MAAMC,aAAA,CAASC,mBAAT,CAAgCL,EAAhC,EAAoCC,MAAM,CAACK,MAAP,CAAcC,mBAAd,CAApC,CADM,EAEZ;EACAN,MAHY,CAAd;EAKA,IAAAO,gBAAA,EAAU,MAAM,MAAMN,KAAK,CAACO,YAAN,EAAtB,EAA4C,CAACP,KAAD,CAA5C;EACA,OAAOA,KAAP;AACD,CARM"}
1
+ {"version":3,"names":["useComputedValue","cb","values","value","useMemo","ValueApi","createComputedValue","filter","isValue","useEffect","dispose"],"sources":["useComputedValue.ts"],"sourcesContent":["import { useEffect, useMemo } from \"react\";\n\nimport { ValueApi } from \"../api\";\nimport { isValue } from \"../../renderer/processors/Animations\";\n\n/**\n * Creates a new computed value - a value that will calculate its value depending\n * on other values.\n * @param cb Callback to calculate new value\n * @param values Dependant values\n * @returns A readonly value\n */\nexport const useComputedValue = <R>(cb: () => R, values: unknown[]) => {\n const value = useMemo(\n () => ValueApi.createComputedValue<R>(cb, values.filter(isValue)),\n // eslint-disable-next-line react-hooks/exhaustive-deps\n values\n );\n useEffect(() => () => value.dispose(), [value]);\n return value;\n};\n"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,gBAAgB,GAAG,CAAIC,EAAJ,EAAiBC,MAAjB,KAAuC;EACrE,MAAMC,KAAK,GAAG,IAAAC,cAAA,EACZ,MAAMC,aAAA,CAASC,mBAAT,CAAgCL,EAAhC,EAAoCC,MAAM,CAACK,MAAP,CAAcC,mBAAd,CAApC,CADM,EAEZ;EACAN,MAHY,CAAd;EAKA,IAAAO,gBAAA,EAAU,MAAM,MAAMN,KAAK,CAACO,OAAN,EAAtB,EAAuC,CAACP,KAAD,CAAvC;EACA,OAAOA,KAAP;AACD,CARM"}
@@ -11,7 +11,7 @@ export interface SkiaValue<T = number> {
11
11
  /**
12
12
  * Invalidates the value. Has different meaning depending on the type of the value.
13
13
  */
14
- __invalidate: () => void;
14
+ dispose: () => void;
15
15
  /**
16
16
  * Field to make typechecking easier
17
17
  */
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["export interface SkiaValue<T = number> {\n /**\n * Gets the value hold by the Value object\n */\n readonly current: T;\n /**\n * Adds a listener that is called when value changes.\n * Returns unsubscribe method.\n */\n addListener: (cb: (value: T) => void) => () => void;\n /**\n * Invalidates the value. Has different meaning depending on the type of the value.\n */\n __invalidate: () => void;\n /**\n * Field to make typechecking easier\n */\n __typename__: \"RNSkValue\";\n}\n\nexport interface SkiaMutableValue<T = number> extends SkiaValue<T> {\n /**\n * Get/sets the value hold by the Value object\n */\n current: T;\n /**\n * Get/sets the animation controlling the value\n * */\n animation: SkiaAnimation | undefined;\n}\n\nexport interface SkiaClockValue extends SkiaValue<number> {\n start: () => void;\n stop: () => void;\n}\n\nexport interface SkiaAnimation extends SkiaClockValue {\n cancel: () => void;\n}\n\nexport interface AnimationState {\n current: number;\n finished: boolean;\n}\n\nexport interface ISkiaValueApi {\n /**\n * Creates a new value that holds the initial value and that\n * can be changed.\n */\n createValue: <T>(initialValue: T) => SkiaMutableValue<T>;\n /**\n * Creates a computed value. This is a calculated value that returns the result of\n * a function that is called with the values of the dependencies.\n */\n createComputedValue: <R>(\n cb: () => R,\n values: Array<SkiaValue<unknown>>\n ) => SkiaValue<R>;\n /**\n * Creates a clock value where the value is the number of milliseconds elapsed\n * since the clock was created\n */\n createClockValue: () => SkiaClockValue;\n /**\n * Creates an animation that is driven from a clock and updated every frame.\n * @param cb Callback to calculate next value from time.\n * @returns An animation object that can control a value.\n */\n createAnimation: <S extends AnimationState = AnimationState>(\n cb: (t: number, state: S | undefined) => S\n ) => SkiaAnimation;\n}\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["export interface SkiaValue<T = number> {\n /**\n * Gets the value hold by the Value object\n */\n readonly current: T;\n /**\n * Adds a listener that is called when value changes.\n * Returns unsubscribe method.\n */\n addListener: (cb: (value: T) => void) => () => void;\n /**\n * Invalidates the value. Has different meaning depending on the type of the value.\n */\n dispose: () => void;\n /**\n * Field to make typechecking easier\n */\n __typename__: \"RNSkValue\";\n}\n\nexport interface SkiaMutableValue<T = number> extends SkiaValue<T> {\n /**\n * Get/sets the value hold by the Value object\n */\n current: T;\n /**\n * Get/sets the animation controlling the value\n * */\n animation: SkiaAnimation | undefined;\n}\n\nexport interface SkiaClockValue extends SkiaValue<number> {\n start: () => void;\n stop: () => void;\n}\n\nexport interface SkiaAnimation extends SkiaClockValue {\n cancel: () => void;\n}\n\nexport interface AnimationState {\n current: number;\n finished: boolean;\n}\n\nexport interface ISkiaValueApi {\n /**\n * Creates a new value that holds the initial value and that\n * can be changed.\n */\n createValue: <T>(initialValue: T) => SkiaMutableValue<T>;\n /**\n * Creates a computed value. This is a calculated value that returns the result of\n * a function that is called with the values of the dependencies.\n */\n createComputedValue: <R>(\n cb: () => R,\n values: Array<SkiaValue<unknown>>\n ) => SkiaValue<R>;\n /**\n * Creates a clock value where the value is the number of milliseconds elapsed\n * since the clock was created\n */\n createClockValue: () => SkiaClockValue;\n /**\n * Creates an animation that is driven from a clock and updated every frame.\n * @param cb Callback to calculate next value from time.\n * @returns An animation object that can control a value.\n */\n createAnimation: <S extends AnimationState = AnimationState>(\n cb: (t: number, state: S | undefined) => S\n ) => SkiaAnimation;\n}\n"],"mappings":""}
@@ -6,5 +6,5 @@ export declare class RNSkComputedValue<T> extends RNSkReadonlyValue<T> {
6
6
  private _callback;
7
7
  private _unsubscribers;
8
8
  unsubscribe(): void;
9
- __invalidate(): void;
9
+ dispose(): void;
10
10
  }
@@ -47,7 +47,7 @@ class RNSkComputedValue extends _RNSkReadonlyValue.RNSkReadonlyValue {
47
47
  this._unsubscribers = [];
48
48
  }
49
49
 
50
- __invalidate() {
50
+ dispose() {
51
51
  this._unsubscribers.forEach(unsubscribe => unsubscribe());
52
52
 
53
53
  this._unsubscribers = [];
@@ -1 +1 @@
1
- {"version":3,"names":["RNSkComputedValue","RNSkReadonlyValue","constructor","callback","dependencies","unsubscribers","notifyUpdateRef","current","undefined","forEach","dep","push","addListener","_unsubscribers","dependecyUpdated","bind","_callback","update","unsubscribe","__invalidate"],"sources":["RNSkComputedValue.ts"],"sourcesContent":["import type { DependencyList } from \"react\";\n\nimport { RNSkReadonlyValue } from \"./RNSkReadonlyValue\";\n\nexport class RNSkComputedValue<T> extends RNSkReadonlyValue<T> {\n constructor(callback: () => T, dependencies: DependencyList) {\n // Initialize dependencies - we can't call this yet, since\n // super if not called and it requires a start value to be set.\n const unsubscribers: Array<() => void> = [];\n const notifyUpdateRef: { current: (() => void) | undefined } = {\n current: undefined,\n };\n dependencies.forEach((dep) => {\n if (\n dep &&\n typeof dep === \"object\" &&\n \"__typename__\" in dep &&\n \"addListener\" in dep\n ) {\n unsubscribers.push(\n (dep as RNSkReadonlyValue<unknown>).addListener(() =>\n notifyUpdateRef.current?.()\n )\n );\n }\n });\n super(callback());\n this._unsubscribers = unsubscribers;\n notifyUpdateRef.current = this.dependecyUpdated.bind(this);\n this._callback = callback;\n }\n\n private dependecyUpdated() {\n this.update(this._callback());\n }\n\n private _callback: () => T;\n private _unsubscribers: Array<() => void>;\n\n public unsubscribe() {\n this._unsubscribers.forEach((unsubscribe) => unsubscribe());\n this._unsubscribers = [];\n }\n\n public __invalidate(): void {\n this._unsubscribers.forEach((unsubscribe) => unsubscribe());\n this._unsubscribers = [];\n }\n}\n"],"mappings":";;;;;;;AAEA;;;;AAEO,MAAMA,iBAAN,SAAmCC,oCAAnC,CAAwD;EAC7DC,WAAW,CAACC,QAAD,EAAoBC,YAApB,EAAkD;IAC3D;IACA;IACA,MAAMC,aAAgC,GAAG,EAAzC;IACA,MAAMC,eAAsD,GAAG;MAC7DC,OAAO,EAAEC;IADoD,CAA/D;IAGAJ,YAAY,CAACK,OAAb,CAAsBC,GAAD,IAAS;MAC5B,IACEA,GAAG,IACH,OAAOA,GAAP,KAAe,QADf,IAEA,kBAAkBA,GAFlB,IAGA,iBAAiBA,GAJnB,EAKE;QACAL,aAAa,CAACM,IAAd,CACGD,GAAD,CAAoCE,WAApC,CAAgD;UAAA;;UAAA,gCAC9CN,eAAe,CAACC,OAD8B,0DAC9C,2BAAAD,eAAe,CAD+B;QAAA,CAAhD,CADF;MAKD;IACF,CAbD;IAcA,MAAMH,QAAQ,EAAd;;IArB2D;;IAAA;;IAsB3D,KAAKU,cAAL,GAAsBR,aAAtB;IACAC,eAAe,CAACC,OAAhB,GAA0B,KAAKO,gBAAL,CAAsBC,IAAtB,CAA2B,IAA3B,CAA1B;IACA,KAAKC,SAAL,GAAiBb,QAAjB;EACD;;EAEOW,gBAAgB,GAAG;IACzB,KAAKG,MAAL,CAAY,KAAKD,SAAL,EAAZ;EACD;;EAKME,WAAW,GAAG;IACnB,KAAKL,cAAL,CAAoBJ,OAApB,CAA6BS,WAAD,IAAiBA,WAAW,EAAxD;;IACA,KAAKL,cAAL,GAAsB,EAAtB;EACD;;EAEMM,YAAY,GAAS;IAC1B,KAAKN,cAAL,CAAoBJ,OAApB,CAA6BS,WAAD,IAAiBA,WAAW,EAAxD;;IACA,KAAKL,cAAL,GAAsB,EAAtB;EACD;;AA3C4D"}
1
+ {"version":3,"names":["RNSkComputedValue","RNSkReadonlyValue","constructor","callback","dependencies","unsubscribers","notifyUpdateRef","current","undefined","forEach","dep","push","addListener","_unsubscribers","dependecyUpdated","bind","_callback","update","unsubscribe","dispose"],"sources":["RNSkComputedValue.ts"],"sourcesContent":["import type { DependencyList } from \"react\";\n\nimport { RNSkReadonlyValue } from \"./RNSkReadonlyValue\";\n\nexport class RNSkComputedValue<T> extends RNSkReadonlyValue<T> {\n constructor(callback: () => T, dependencies: DependencyList) {\n // Initialize dependencies - we can't call this yet, since\n // super if not called and it requires a start value to be set.\n const unsubscribers: Array<() => void> = [];\n const notifyUpdateRef: { current: (() => void) | undefined } = {\n current: undefined,\n };\n dependencies.forEach((dep) => {\n if (\n dep &&\n typeof dep === \"object\" &&\n \"__typename__\" in dep &&\n \"addListener\" in dep\n ) {\n unsubscribers.push(\n (dep as RNSkReadonlyValue<unknown>).addListener(() =>\n notifyUpdateRef.current?.()\n )\n );\n }\n });\n super(callback());\n this._unsubscribers = unsubscribers;\n notifyUpdateRef.current = this.dependecyUpdated.bind(this);\n this._callback = callback;\n }\n\n private dependecyUpdated() {\n this.update(this._callback());\n }\n\n private _callback: () => T;\n private _unsubscribers: Array<() => void>;\n\n public unsubscribe() {\n this._unsubscribers.forEach((unsubscribe) => unsubscribe());\n this._unsubscribers = [];\n }\n\n public dispose(): void {\n this._unsubscribers.forEach((unsubscribe) => unsubscribe());\n this._unsubscribers = [];\n }\n}\n"],"mappings":";;;;;;;AAEA;;;;AAEO,MAAMA,iBAAN,SAAmCC,oCAAnC,CAAwD;EAC7DC,WAAW,CAACC,QAAD,EAAoBC,YAApB,EAAkD;IAC3D;IACA;IACA,MAAMC,aAAgC,GAAG,EAAzC;IACA,MAAMC,eAAsD,GAAG;MAC7DC,OAAO,EAAEC;IADoD,CAA/D;IAGAJ,YAAY,CAACK,OAAb,CAAsBC,GAAD,IAAS;MAC5B,IACEA,GAAG,IACH,OAAOA,GAAP,KAAe,QADf,IAEA,kBAAkBA,GAFlB,IAGA,iBAAiBA,GAJnB,EAKE;QACAL,aAAa,CAACM,IAAd,CACGD,GAAD,CAAoCE,WAApC,CAAgD;UAAA;;UAAA,gCAC9CN,eAAe,CAACC,OAD8B,0DAC9C,2BAAAD,eAAe,CAD+B;QAAA,CAAhD,CADF;MAKD;IACF,CAbD;IAcA,MAAMH,QAAQ,EAAd;;IArB2D;;IAAA;;IAsB3D,KAAKU,cAAL,GAAsBR,aAAtB;IACAC,eAAe,CAACC,OAAhB,GAA0B,KAAKO,gBAAL,CAAsBC,IAAtB,CAA2B,IAA3B,CAA1B;IACA,KAAKC,SAAL,GAAiBb,QAAjB;EACD;;EAEOW,gBAAgB,GAAG;IACzB,KAAKG,MAAL,CAAY,KAAKD,SAAL,EAAZ;EACD;;EAKME,WAAW,GAAG;IACnB,KAAKL,cAAL,CAAoBJ,OAApB,CAA6BS,WAAD,IAAiBA,WAAW,EAAxD;;IACA,KAAKL,cAAL,GAAsB,EAAtB;EACD;;EAEMM,OAAO,GAAS;IACrB,KAAKN,cAAL,CAAoBJ,OAApB,CAA6BS,WAAD,IAAiBA,WAAW,EAAxD;;IACA,KAAKL,cAAL,GAAsB,EAAtB;EACD;;AA3C4D"}
@@ -8,5 +8,5 @@ export declare class RNSkReadonlyValue<T> implements SkiaValue<T> {
8
8
  readonly __typename__ = "RNSkValue";
9
9
  get current(): T;
10
10
  addListener(cb: (value: T) => void): () => void;
11
- __invalidate(): void;
11
+ dispose(): void;
12
12
  }
@@ -41,7 +41,7 @@ class RNSkReadonlyValue {
41
41
  };
42
42
  }
43
43
 
44
- __invalidate() {
44
+ dispose() {
45
45
  this._listeners = [];
46
46
  }
47
47
 
@@ -1 +1 @@
1
- {"version":3,"names":["RNSkReadonlyValue","constructor","value","_current","notifyListeners","_listeners","forEach","cb","update","nextValue","current","addListener","push","splice","indexOf","__invalidate"],"sources":["RNSkReadonlyValue.ts"],"sourcesContent":["import type { SkiaValue } from \"../types\";\n\nexport class RNSkReadonlyValue<T> implements SkiaValue<T> {\n constructor(value: T) {\n this._current = value;\n }\n\n private _current: T;\n private _listeners: Array<(value: T) => void> = [];\n\n private notifyListeners(): void {\n this._listeners.forEach((cb) => cb(this._current));\n }\n\n protected update(nextValue: T): void {\n if (this._current !== nextValue) {\n this._current = nextValue;\n this.notifyListeners();\n }\n }\n\n public readonly __typename__ = \"RNSkValue\";\n\n public get current(): T {\n return this._current;\n }\n\n public addListener(cb: (value: T) => void) {\n this._listeners.push(cb);\n return () => {\n this._listeners.splice(this._listeners.indexOf(cb), 1);\n };\n }\n\n public __invalidate(): void {\n this._listeners = [];\n }\n}\n"],"mappings":";;;;;;;;;AAEO,MAAMA,iBAAN,CAAmD;EACxDC,WAAW,CAACC,KAAD,EAAW;IAAA;;IAAA,oCAK0B,EAL1B;;IAAA,sCAkBS,WAlBT;;IACpB,KAAKC,QAAL,GAAgBD,KAAhB;EACD;;EAKOE,eAAe,GAAS;IAC9B,KAAKC,UAAL,CAAgBC,OAAhB,CAAyBC,EAAD,IAAQA,EAAE,CAAC,KAAKJ,QAAN,CAAlC;EACD;;EAESK,MAAM,CAACC,SAAD,EAAqB;IACnC,IAAI,KAAKN,QAAL,KAAkBM,SAAtB,EAAiC;MAC/B,KAAKN,QAAL,GAAgBM,SAAhB;MACA,KAAKL,eAAL;IACD;EACF;;EAIiB,IAAPM,OAAO,GAAM;IACtB,OAAO,KAAKP,QAAZ;EACD;;EAEMQ,WAAW,CAACJ,EAAD,EAAyB;IACzC,KAAKF,UAAL,CAAgBO,IAAhB,CAAqBL,EAArB;;IACA,OAAO,MAAM;MACX,KAAKF,UAAL,CAAgBQ,MAAhB,CAAuB,KAAKR,UAAL,CAAgBS,OAAhB,CAAwBP,EAAxB,CAAvB,EAAoD,CAApD;IACD,CAFD;EAGD;;EAEMQ,YAAY,GAAS;IAC1B,KAAKV,UAAL,GAAkB,EAAlB;EACD;;AAlCuD"}
1
+ {"version":3,"names":["RNSkReadonlyValue","constructor","value","_current","notifyListeners","_listeners","forEach","cb","update","nextValue","current","addListener","push","splice","indexOf","dispose"],"sources":["RNSkReadonlyValue.ts"],"sourcesContent":["import type { SkiaValue } from \"../types\";\n\nexport class RNSkReadonlyValue<T> implements SkiaValue<T> {\n constructor(value: T) {\n this._current = value;\n }\n\n private _current: T;\n private _listeners: Array<(value: T) => void> = [];\n\n private notifyListeners(): void {\n this._listeners.forEach((cb) => cb(this._current));\n }\n\n protected update(nextValue: T): void {\n if (this._current !== nextValue) {\n this._current = nextValue;\n this.notifyListeners();\n }\n }\n\n public readonly __typename__ = \"RNSkValue\";\n\n public get current(): T {\n return this._current;\n }\n\n public addListener(cb: (value: T) => void) {\n this._listeners.push(cb);\n return () => {\n this._listeners.splice(this._listeners.indexOf(cb), 1);\n };\n }\n\n public dispose(): void {\n this._listeners = [];\n }\n}\n"],"mappings":";;;;;;;;;AAEO,MAAMA,iBAAN,CAAmD;EACxDC,WAAW,CAACC,KAAD,EAAW;IAAA;;IAAA,oCAK0B,EAL1B;;IAAA,sCAkBS,WAlBT;;IACpB,KAAKC,QAAL,GAAgBD,KAAhB;EACD;;EAKOE,eAAe,GAAS;IAC9B,KAAKC,UAAL,CAAgBC,OAAhB,CAAyBC,EAAD,IAAQA,EAAE,CAAC,KAAKJ,QAAN,CAAlC;EACD;;EAESK,MAAM,CAACC,SAAD,EAAqB;IACnC,IAAI,KAAKN,QAAL,KAAkBM,SAAtB,EAAiC;MAC/B,KAAKN,QAAL,GAAgBM,SAAhB;MACA,KAAKL,eAAL;IACD;EACF;;EAIiB,IAAPM,OAAO,GAAM;IACtB,OAAO,KAAKP,QAAZ;EACD;;EAEMQ,WAAW,CAACJ,EAAD,EAAyB;IACzC,KAAKF,UAAL,CAAgBO,IAAhB,CAAqBL,EAArB;;IACA,OAAO,MAAM;MACX,KAAKF,UAAL,CAAgBQ,MAAhB,CAAuB,KAAKR,UAAL,CAAgBS,OAAhB,CAAwBP,EAAxB,CAAvB,EAAoD,CAApD;IACD,CAFD;EAGD;;EAEMQ,OAAO,GAAS;IACrB,KAAKV,UAAL,GAAkB,EAAlB;EACD;;AAlCuD"}
@@ -9,6 +9,8 @@ var _skia = require("../skia");
9
9
 
10
10
  var _DrawingContext = require("../dom/types/DrawingContext");
11
11
 
12
+ var _Animations = require("../renderer/processors/Animations/Animations");
13
+
12
14
  var _SkiaBaseWebView = require("./SkiaBaseWebView");
13
15
 
14
16
  class SkiaDomView extends _SkiaBaseWebView.SkiaBaseWebView {
@@ -26,10 +28,18 @@ class SkiaDomView extends _SkiaBaseWebView.SkiaBaseWebView {
26
28
  width,
27
29
  height
28
30
  } = this.getSize();
29
- this.props.onSize.current = {
30
- width,
31
- height
32
- };
31
+
32
+ if ((0, _Animations.isValue)(this.props.onSize)) {
33
+ this.props.onSize.current = {
34
+ width,
35
+ height
36
+ };
37
+ } else {
38
+ this.props.onSize.value = {
39
+ width,
40
+ height
41
+ };
42
+ }
33
43
  }
34
44
 
35
45
  if (this.props.root) {
@@ -1 +1 @@
1
- {"version":3,"names":["SkiaDomView","SkiaBaseWebView","constructor","props","renderInCanvas","canvas","touches","onTouch","onSize","width","height","getSize","current","root","ctx","JsiDrawingContext","Skia","render"],"sources":["SkiaDomView.web.tsx"],"sourcesContent":["import { Skia } from \"../skia\";\nimport type { SkCanvas } from \"../skia/types\";\nimport { JsiDrawingContext } from \"../dom/types/DrawingContext\";\n\nimport { SkiaBaseWebView } from \"./SkiaBaseWebView\";\nimport type { SkiaDomViewProps, TouchInfo } from \"./types\";\n\nexport class SkiaDomView extends SkiaBaseWebView<SkiaDomViewProps> {\n constructor(props: SkiaDomViewProps) {\n super(props);\n }\n\n protected renderInCanvas(canvas: SkCanvas, touches: TouchInfo[]): void {\n if (this.props.onTouch) {\n this.props.onTouch([touches]);\n }\n if (this.props.onSize) {\n const { width, height } = this.getSize();\n this.props.onSize.current = { width, height };\n }\n if (this.props.root) {\n const ctx = new JsiDrawingContext(Skia, canvas);\n this.props.root.render(ctx);\n }\n }\n}\n"],"mappings":";;;;;;;AAAA;;AAEA;;AAEA;;AAGO,MAAMA,WAAN,SAA0BC,gCAA1B,CAA4D;EACjEC,WAAW,CAACC,KAAD,EAA0B;IACnC,MAAMA,KAAN;EACD;;EAESC,cAAc,CAACC,MAAD,EAAmBC,OAAnB,EAA+C;IACrE,IAAI,KAAKH,KAAL,CAAWI,OAAf,EAAwB;MACtB,KAAKJ,KAAL,CAAWI,OAAX,CAAmB,CAACD,OAAD,CAAnB;IACD;;IACD,IAAI,KAAKH,KAAL,CAAWK,MAAf,EAAuB;MACrB,MAAM;QAAEC,KAAF;QAASC;MAAT,IAAoB,KAAKC,OAAL,EAA1B;MACA,KAAKR,KAAL,CAAWK,MAAX,CAAkBI,OAAlB,GAA4B;QAAEH,KAAF;QAASC;MAAT,CAA5B;IACD;;IACD,IAAI,KAAKP,KAAL,CAAWU,IAAf,EAAqB;MACnB,MAAMC,GAAG,GAAG,IAAIC,iCAAJ,CAAsBC,UAAtB,EAA4BX,MAA5B,CAAZ;MACA,KAAKF,KAAL,CAAWU,IAAX,CAAgBI,MAAhB,CAAuBH,GAAvB;IACD;EACF;;AAjBgE"}
1
+ {"version":3,"names":["SkiaDomView","SkiaBaseWebView","constructor","props","renderInCanvas","canvas","touches","onTouch","onSize","width","height","getSize","isValue","current","value","root","ctx","JsiDrawingContext","Skia","render"],"sources":["SkiaDomView.web.tsx"],"sourcesContent":["import { Skia } from \"../skia\";\nimport type { SkCanvas } from \"../skia/types\";\nimport { JsiDrawingContext } from \"../dom/types/DrawingContext\";\nimport { isValue } from \"../renderer/processors/Animations/Animations\";\n\nimport { SkiaBaseWebView } from \"./SkiaBaseWebView\";\nimport type { SkiaDomViewProps, TouchInfo } from \"./types\";\n\nexport class SkiaDomView extends SkiaBaseWebView<SkiaDomViewProps> {\n constructor(props: SkiaDomViewProps) {\n super(props);\n }\n\n protected renderInCanvas(canvas: SkCanvas, touches: TouchInfo[]): void {\n if (this.props.onTouch) {\n this.props.onTouch([touches]);\n }\n if (this.props.onSize) {\n const { width, height } = this.getSize();\n if (isValue(this.props.onSize)) {\n this.props.onSize.current = { width, height };\n } else {\n this.props.onSize.value = { width, height };\n }\n }\n if (this.props.root) {\n const ctx = new JsiDrawingContext(Skia, canvas);\n this.props.root.render(ctx);\n }\n }\n}\n"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;;AAGO,MAAMA,WAAN,SAA0BC,gCAA1B,CAA4D;EACjEC,WAAW,CAACC,KAAD,EAA0B;IACnC,MAAMA,KAAN;EACD;;EAESC,cAAc,CAACC,MAAD,EAAmBC,OAAnB,EAA+C;IACrE,IAAI,KAAKH,KAAL,CAAWI,OAAf,EAAwB;MACtB,KAAKJ,KAAL,CAAWI,OAAX,CAAmB,CAACD,OAAD,CAAnB;IACD;;IACD,IAAI,KAAKH,KAAL,CAAWK,MAAf,EAAuB;MACrB,MAAM;QAAEC,KAAF;QAASC;MAAT,IAAoB,KAAKC,OAAL,EAA1B;;MACA,IAAI,IAAAC,mBAAA,EAAQ,KAAKT,KAAL,CAAWK,MAAnB,CAAJ,EAAgC;QAC9B,KAAKL,KAAL,CAAWK,MAAX,CAAkBK,OAAlB,GAA4B;UAAEJ,KAAF;UAASC;QAAT,CAA5B;MACD,CAFD,MAEO;QACL,KAAKP,KAAL,CAAWK,MAAX,CAAkBM,KAAlB,GAA0B;UAAEL,KAAF;UAASC;QAAT,CAA1B;MACD;IACF;;IACD,IAAI,KAAKP,KAAL,CAAWY,IAAf,EAAqB;MACnB,MAAMC,GAAG,GAAG,IAAIC,iCAAJ,CAAsBC,UAAtB,EAA4Bb,MAA5B,CAAZ;MACA,KAAKF,KAAL,CAAWY,IAAX,CAAgBI,MAAhB,CAAuBH,GAAvB;IACD;EACF;;AArBgE"}
@@ -2,6 +2,7 @@ import type { ViewProps } from "react-native";
2
2
  import type { GroupProps, RenderNode } from "../dom/types";
3
3
  import type { SkCanvas, SkImage, SkPicture, SkRect, SkSize } from "../skia/types";
4
4
  import type { SkiaMutableValue, SkiaValue } from "../values";
5
+ import type { SharedValueType } from "../renderer/processors/Animations/Animations";
5
6
  export declare type DrawMode = "continuous" | "default";
6
7
  export declare type NativeSkiaViewProps = ViewProps & {
7
8
  mode?: DrawMode;
@@ -70,7 +71,7 @@ export interface SkiaBaseViewProps extends ViewProps {
70
71
  * Pass an animated value to the onSize property to get updates when
71
72
  * the Skia view is resized.
72
73
  */
73
- onSize?: SkiaMutableValue<SkSize>;
74
+ onSize?: SkiaMutableValue<SkSize> | SharedValueType<SkSize>;
74
75
  }
75
76
  export interface SkiaDrawViewProps extends SkiaBaseViewProps {
76
77
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["TouchType"],"sources":["types.ts"],"sourcesContent":["import type { ViewProps } from \"react-native\";\n\nimport type { GroupProps, RenderNode } from \"../dom/types\";\nimport type {\n SkCanvas,\n SkImage,\n SkPicture,\n SkRect,\n SkSize,\n} from \"../skia/types\";\nimport type { SkiaMutableValue, SkiaValue } from \"../values\";\n\nexport type DrawMode = \"continuous\" | \"default\";\n\nexport type NativeSkiaViewProps = ViewProps & {\n mode?: DrawMode;\n debug?: boolean;\n};\n\nexport enum TouchType {\n Start,\n Active,\n End,\n Cancelled,\n}\n\nexport interface TouchInfo {\n x: number;\n y: number;\n force: number;\n type: TouchType;\n id: number;\n timestamp: number;\n}\n\nexport interface DrawingInfo {\n width: number;\n height: number;\n timestamp: number;\n touches: Array<Array<TouchInfo>>;\n}\n\nexport type ExtendedTouchInfo = TouchInfo & {\n // points per second\n velocityX: number;\n velocityY: number;\n};\n\nexport type TouchHandlers = {\n onStart?: (touchInfo: TouchInfo) => void;\n onActive?: (touchInfo: ExtendedTouchInfo) => void;\n onEnd?: (touchInfo: ExtendedTouchInfo) => void;\n};\n\nexport type TouchHandler = (touchInfo: Array<Array<TouchInfo>>) => void;\n\nexport type RNSkiaDrawCallback = (canvas: SkCanvas, info: DrawingInfo) => void;\n\n/**\n * Listener interface for value changes\n */\nexport interface ValueListener {\n addListener: (callback: () => void) => number;\n removeListener: (id: number) => void;\n}\n\nexport interface ISkiaViewApi {\n setJsiProperty: <T>(nativeId: number, name: string, value: T) => void;\n callJsiMethod: <T extends Array<unknown>>(\n nativeId: number,\n name: string,\n ...args: T\n ) => void;\n registerValuesInView: (\n nativeId: number,\n values: SkiaValue<unknown>[]\n ) => () => void;\n requestRedraw: (nativeId: number) => void;\n makeImageSnapshot: (nativeId: number, rect?: SkRect) => SkImage;\n}\n\nexport interface SkiaBaseViewProps extends ViewProps {\n /**\n * Sets the drawing mode for the skia view. There are two drawing\n * modes, \"continuous\" and \"default\", where the continuous mode will\n * continuously redraw the view, and the default mode will only\n * redraw when any of the regular react properties are changed like\n * sizes and margins.\n */\n mode?: DrawMode;\n /**\n * When set to true the view will display information about the\n * average time it takes to render.\n */\n debug?: boolean;\n /**\n * Pass an animated value to the onSize property to get updates when\n * the Skia view is resized.\n */\n onSize?: SkiaMutableValue<SkSize>;\n}\n\nexport interface SkiaDrawViewProps extends SkiaBaseViewProps {\n /**\n * Draw callback. Will be called whenever the view is invalidated and\n * needs to redraw. This is either caused by a change in a react\n * property, a touch event, or a call to redraw. If the view is in\n * continuous mode the callback will be called 60 frames per second\n * by the native view.\n */\n onDraw?: RNSkiaDrawCallback;\n}\n\nexport interface SkiaPictureViewProps extends SkiaBaseViewProps {\n picture?: SkPicture;\n}\n\nexport interface SkiaDomViewProps extends SkiaBaseViewProps {\n root?: RenderNode<GroupProps>;\n onTouch?: TouchHandler;\n}\n"],"mappings":";;;;;;IAmBYA,S;;;WAAAA,S;EAAAA,S,CAAAA,S;EAAAA,S,CAAAA,S;EAAAA,S,CAAAA,S;EAAAA,S,CAAAA,S;GAAAA,S,yBAAAA,S"}
1
+ {"version":3,"names":["TouchType"],"sources":["types.ts"],"sourcesContent":["import type { ViewProps } from \"react-native\";\n\nimport type { GroupProps, RenderNode } from \"../dom/types\";\nimport type {\n SkCanvas,\n SkImage,\n SkPicture,\n SkRect,\n SkSize,\n} from \"../skia/types\";\nimport type { SkiaMutableValue, SkiaValue } from \"../values\";\nimport type { SharedValueType } from \"../renderer/processors/Animations/Animations\";\n\nexport type DrawMode = \"continuous\" | \"default\";\n\nexport type NativeSkiaViewProps = ViewProps & {\n mode?: DrawMode;\n debug?: boolean;\n};\n\nexport enum TouchType {\n Start,\n Active,\n End,\n Cancelled,\n}\n\nexport interface TouchInfo {\n x: number;\n y: number;\n force: number;\n type: TouchType;\n id: number;\n timestamp: number;\n}\n\nexport interface DrawingInfo {\n width: number;\n height: number;\n timestamp: number;\n touches: Array<Array<TouchInfo>>;\n}\n\nexport type ExtendedTouchInfo = TouchInfo & {\n // points per second\n velocityX: number;\n velocityY: number;\n};\n\nexport type TouchHandlers = {\n onStart?: (touchInfo: TouchInfo) => void;\n onActive?: (touchInfo: ExtendedTouchInfo) => void;\n onEnd?: (touchInfo: ExtendedTouchInfo) => void;\n};\n\nexport type TouchHandler = (touchInfo: Array<Array<TouchInfo>>) => void;\n\nexport type RNSkiaDrawCallback = (canvas: SkCanvas, info: DrawingInfo) => void;\n\n/**\n * Listener interface for value changes\n */\nexport interface ValueListener {\n addListener: (callback: () => void) => number;\n removeListener: (id: number) => void;\n}\n\nexport interface ISkiaViewApi {\n setJsiProperty: <T>(nativeId: number, name: string, value: T) => void;\n callJsiMethod: <T extends Array<unknown>>(\n nativeId: number,\n name: string,\n ...args: T\n ) => void;\n registerValuesInView: (\n nativeId: number,\n values: SkiaValue<unknown>[]\n ) => () => void;\n requestRedraw: (nativeId: number) => void;\n makeImageSnapshot: (nativeId: number, rect?: SkRect) => SkImage;\n}\n\nexport interface SkiaBaseViewProps extends ViewProps {\n /**\n * Sets the drawing mode for the skia view. There are two drawing\n * modes, \"continuous\" and \"default\", where the continuous mode will\n * continuously redraw the view, and the default mode will only\n * redraw when any of the regular react properties are changed like\n * sizes and margins.\n */\n mode?: DrawMode;\n /**\n * When set to true the view will display information about the\n * average time it takes to render.\n */\n debug?: boolean;\n /**\n * Pass an animated value to the onSize property to get updates when\n * the Skia view is resized.\n */\n onSize?: SkiaMutableValue<SkSize> | SharedValueType<SkSize>;\n}\n\nexport interface SkiaDrawViewProps extends SkiaBaseViewProps {\n /**\n * Draw callback. Will be called whenever the view is invalidated and\n * needs to redraw. This is either caused by a change in a react\n * property, a touch event, or a call to redraw. If the view is in\n * continuous mode the callback will be called 60 frames per second\n * by the native view.\n */\n onDraw?: RNSkiaDrawCallback;\n}\n\nexport interface SkiaPictureViewProps extends SkiaBaseViewProps {\n picture?: SkPicture;\n}\n\nexport interface SkiaDomViewProps extends SkiaBaseViewProps {\n root?: RenderNode<GroupProps>;\n onTouch?: TouchHandler;\n}\n"],"mappings":";;;;;;IAoBYA,S;;;WAAAA,S;EAAAA,S,CAAAA,S;EAAAA,S,CAAAA,S;EAAAA,S,CAAAA,S;EAAAA,S,CAAAA,S;GAAAA,S,yBAAAA,S"}
@@ -4,8 +4,10 @@ import React, { useEffect, useCallback, useMemo, forwardRef, useRef } from "reac
4
4
  import { SkiaDomView, SkiaView } from "../views";
5
5
  import { Skia } from "../skia/Skia";
6
6
  import { JsiDrawingContext } from "../dom/types";
7
+ import { useValue } from "../values";
7
8
  import { SkiaRoot } from "./Reconciler";
8
9
  import { NATIVE_DOM } from "./HostComponents";
10
+ import { isValue } from "./processors";
9
11
  export const useCanvasRef = () => useRef(null);
10
12
  export const Canvas = /*#__PURE__*/forwardRef((_ref, forwardedRef) => {
11
13
  let {
@@ -14,9 +16,21 @@ export const Canvas = /*#__PURE__*/forwardRef((_ref, forwardedRef) => {
14
16
  debug,
15
17
  mode,
16
18
  onTouch,
17
- onSize,
19
+ onSize: onSizeReanimatedOrSkia,
18
20
  ...props
19
21
  } = _ref;
22
+ const size = useValue({
23
+ width: 0,
24
+ height: 0
25
+ });
26
+ const onSize = isValue(onSizeReanimatedOrSkia) ? onSizeReanimatedOrSkia : size;
27
+ useEffect(() => {
28
+ if (!isValue(onSizeReanimatedOrSkia) && onSizeReanimatedOrSkia) {
29
+ return size.addListener(v => onSizeReanimatedOrSkia.value = v);
30
+ }
31
+
32
+ return undefined;
33
+ }, [onSizeReanimatedOrSkia, size]);
20
34
  const innerRef = useCanvasRef();
21
35
  const ref = useCombinedRefs(forwardedRef, innerRef);
22
36
  const redraw = useCallback(() => {
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","useCallback","useMemo","forwardRef","useRef","SkiaDomView","SkiaView","Skia","JsiDrawingContext","SkiaRoot","NATIVE_DOM","useCanvasRef","Canvas","forwardedRef","children","style","debug","mode","onTouch","onSize","props","innerRef","ref","useCombinedRefs","redraw","current","getNativeId","id","nativeId","registerValues","values","root","render","unmount","dom","canvas","info","touches","ctx","refs","targetRef","forEach"],"sources":["Canvas.tsx"],"sourcesContent":["import React, {\n useEffect,\n useCallback,\n useMemo,\n forwardRef,\n useRef,\n} from \"react\";\nimport type {\n RefObject,\n ReactNode,\n MutableRefObject,\n ForwardedRef,\n} from \"react\";\n\nimport { SkiaDomView, SkiaView } from \"../views\";\nimport { Skia } from \"../skia/Skia\";\nimport type { TouchHandler, SkiaBaseViewProps } from \"../views\";\nimport type { SkiaValue } from \"../values/types\";\nimport { JsiDrawingContext } from \"../dom/types\";\n\nimport { SkiaRoot } from \"./Reconciler\";\nimport { NATIVE_DOM } from \"./HostComponents\";\n\nexport const useCanvasRef = () => useRef<SkiaDomView>(null);\n\nexport interface CanvasProps extends SkiaBaseViewProps {\n ref?: RefObject<SkiaDomView>;\n children: ReactNode;\n onTouch?: TouchHandler;\n}\n\nexport const Canvas = forwardRef<SkiaDomView, CanvasProps>(\n (\n { children, style, debug, mode, onTouch, onSize, ...props },\n forwardedRef\n ) => {\n const innerRef = useCanvasRef();\n const ref = useCombinedRefs(forwardedRef, innerRef);\n const redraw = useCallback(() => {\n innerRef.current?.redraw();\n }, [innerRef]);\n const getNativeId = useCallback(() => {\n const id = innerRef.current?.nativeId ?? -1;\n return id;\n }, [innerRef]);\n\n const registerValues = useCallback(\n (values: Array<SkiaValue<unknown>>) => {\n if (ref.current !== null) {\n return ref.current.registerValues(values);\n }\n return () => {};\n },\n [ref]\n );\n const root = useMemo(\n () => new SkiaRoot(Skia, registerValues, redraw, getNativeId),\n [redraw, registerValues, getNativeId]\n );\n\n // Render effect\n useEffect(() => {\n root.render(children);\n }, [children, root, redraw]);\n\n useEffect(() => {\n return () => {\n root.unmount();\n };\n }, [root]);\n if (NATIVE_DOM) {\n return (\n <SkiaDomView\n ref={ref}\n style={style}\n root={root.dom}\n onTouch={onTouch}\n onSize={onSize}\n mode={mode}\n debug={debug}\n {...props}\n />\n );\n } else {\n return (\n <SkiaView\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ref={ref as any}\n style={style}\n mode={mode}\n debug={debug}\n onSize={onSize}\n onDraw={(canvas, info) => {\n onTouch && onTouch(info.touches);\n const ctx = new JsiDrawingContext(Skia, canvas);\n root.dom.render(ctx);\n }}\n {...props}\n />\n );\n }\n }\n) as React.FC<CanvasProps & React.RefAttributes<SkiaDomView>>;\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"],"mappings":"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"}
1
+ {"version":3,"names":["React","useEffect","useCallback","useMemo","forwardRef","useRef","SkiaDomView","SkiaView","Skia","JsiDrawingContext","useValue","SkiaRoot","NATIVE_DOM","isValue","useCanvasRef","Canvas","forwardedRef","children","style","debug","mode","onTouch","onSize","onSizeReanimatedOrSkia","props","size","width","height","addListener","v","value","undefined","innerRef","ref","useCombinedRefs","redraw","current","getNativeId","id","nativeId","registerValues","values","root","render","unmount","dom","canvas","info","touches","ctx","refs","targetRef","forEach"],"sources":["Canvas.tsx"],"sourcesContent":["import React, {\n useEffect,\n useCallback,\n useMemo,\n forwardRef,\n useRef,\n} from \"react\";\nimport type {\n RefObject,\n ReactNode,\n MutableRefObject,\n ForwardedRef,\n} from \"react\";\n\nimport { SkiaDomView, SkiaView } from \"../views\";\nimport { Skia } from \"../skia/Skia\";\nimport type { TouchHandler, SkiaBaseViewProps } from \"../views\";\nimport type { SkiaValue } from \"../values/types\";\nimport { JsiDrawingContext } from \"../dom/types\";\nimport { useValue } from \"../values\";\n\nimport { SkiaRoot } from \"./Reconciler\";\nimport { NATIVE_DOM } from \"./HostComponents\";\nimport { isValue } from \"./processors\";\n\nexport const useCanvasRef = () => useRef<SkiaDomView>(null);\n\nexport interface CanvasProps extends SkiaBaseViewProps {\n ref?: RefObject<SkiaDomView>;\n children: ReactNode;\n onTouch?: TouchHandler;\n}\n\nexport const Canvas = forwardRef<SkiaDomView, CanvasProps>(\n (\n {\n children,\n style,\n debug,\n mode,\n onTouch,\n onSize: onSizeReanimatedOrSkia,\n ...props\n },\n forwardedRef\n ) => {\n const size = useValue({ width: 0, height: 0 });\n const onSize = isValue(onSizeReanimatedOrSkia)\n ? onSizeReanimatedOrSkia\n : size;\n useEffect(() => {\n if (!isValue(onSizeReanimatedOrSkia) && onSizeReanimatedOrSkia) {\n return size.addListener((v) => (onSizeReanimatedOrSkia.value = v));\n }\n return undefined;\n }, [onSizeReanimatedOrSkia, size]);\n const innerRef = useCanvasRef();\n const ref = useCombinedRefs(forwardedRef, innerRef);\n const redraw = useCallback(() => {\n innerRef.current?.redraw();\n }, [innerRef]);\n const getNativeId = useCallback(() => {\n const id = innerRef.current?.nativeId ?? -1;\n return id;\n }, [innerRef]);\n\n const registerValues = useCallback(\n (values: Array<SkiaValue<unknown>>) => {\n if (ref.current !== null) {\n return ref.current.registerValues(values);\n }\n return () => {};\n },\n [ref]\n );\n const root = useMemo(\n () => new SkiaRoot(Skia, registerValues, redraw, getNativeId),\n [redraw, registerValues, getNativeId]\n );\n\n // Render effect\n useEffect(() => {\n root.render(children);\n }, [children, root, redraw]);\n\n useEffect(() => {\n return () => {\n root.unmount();\n };\n }, [root]);\n if (NATIVE_DOM) {\n return (\n <SkiaDomView\n ref={ref}\n style={style}\n root={root.dom}\n onTouch={onTouch}\n onSize={onSize}\n mode={mode}\n debug={debug}\n {...props}\n />\n );\n } else {\n return (\n <SkiaView\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ref={ref as any}\n style={style}\n mode={mode}\n debug={debug}\n onSize={onSize}\n onDraw={(canvas, info) => {\n onTouch && onTouch(info.touches);\n const ctx = new JsiDrawingContext(Skia, canvas);\n root.dom.render(ctx);\n }}\n {...props}\n />\n );\n }\n }\n) as React.FC<CanvasProps & React.RefAttributes<SkiaDomView>>;\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"],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import type { SkData, DataSourceParam, JsiDisposable } from "../types";
2
- export declare const useRawData: <T extends JsiDisposable>(source: DataSourceParam, factory: (data: SkData) => T | null, onError?: ((err: Error) => void) | undefined) => T | null;
1
+ import type { SkData, DataSourceParam, BaseSkJSIInstance } from "../types";
2
+ export declare const useRawData: <T extends BaseSkJSIInstance>(source: DataSourceParam, factory: (data: SkData) => T | null, onError?: ((err: Error) => void) | undefined) => T | null;
3
3
  export declare const useData: (source: DataSourceParam, onError?: ((err: Error) => void) | undefined) => SkData | null;
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useRef","useState","Skia","Platform","factoryWrapper","data2","factory","onError","factoryResult","Error","loadData","source","undefined","Promise","resolve","Uint8Array","Data","fromBytes","uri","resolveAsset","fromURI","then","d","useLoading","loader","mounted","data","setData","dataRef","current","value","dispose","useRawData","identity","useData"],"sources":["Data.ts"],"sourcesContent":["import { useEffect, useRef, useState } from \"react\";\n\nimport { Skia } from \"../Skia\";\nimport type { SkData, DataSourceParam, JsiDisposable } from \"../types\";\nimport { Platform } from \"../../Platform\";\n\nconst factoryWrapper = <T>(\n data2: SkData,\n factory: (data: SkData) => T,\n onError?: (err: Error) => void\n) => {\n const factoryResult = factory(data2);\n if (factoryResult === null) {\n onError && onError(new Error(\"Could not load data\"));\n return null;\n } else {\n return factoryResult;\n }\n};\n\nconst loadData = <T>(\n source: DataSourceParam,\n factory: (data: SkData) => T | null,\n onError?: (err: Error) => void\n): Promise<T | null> => {\n if (source === null || source === undefined) {\n return new Promise((resolve) => resolve(null));\n } else if (source instanceof Uint8Array) {\n return new Promise((resolve) =>\n resolve(factoryWrapper(Skia.Data.fromBytes(source), factory, onError))\n );\n } else {\n const uri =\n typeof source === \"string\" ? source : Platform.resolveAsset(source);\n return Skia.Data.fromURI(uri).then((d) =>\n factoryWrapper(d, factory, onError)\n );\n }\n};\nconst useLoading = <T extends JsiDisposable>(\n source: DataSourceParam,\n loader: () => Promise<T | null>\n) => {\n const mounted = useRef(false);\n const [data, setData] = useState<T | null>(null);\n const dataRef = useRef<T | null>(null);\n useEffect(() => {\n mounted.current = true;\n loader().then((value) => {\n if (mounted.current) {\n setData(value);\n dataRef.current = value;\n }\n });\n return () => {\n dataRef.current?.dispose();\n mounted.current = false;\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [source]);\n return data;\n};\n\nexport const useRawData = <T extends JsiDisposable>(\n source: DataSourceParam,\n factory: (data: SkData) => T | null,\n onError?: (err: Error) => void\n) => useLoading(source, () => loadData<T>(source, factory, onError));\n\nconst identity = (data: SkData) => data;\n\nexport const useData = (\n source: DataSourceParam,\n onError?: (err: Error) => void\n) => useRawData(source, identity, onError);\n"],"mappings":"AAAA,SAASA,SAAT,EAAoBC,MAApB,EAA4BC,QAA5B,QAA4C,OAA5C;AAEA,SAASC,IAAT,QAAqB,SAArB;AAEA,SAASC,QAAT,QAAyB,gBAAzB;;AAEA,MAAMC,cAAc,GAAG,CACrBC,KADqB,EAErBC,OAFqB,EAGrBC,OAHqB,KAIlB;EACH,MAAMC,aAAa,GAAGF,OAAO,CAACD,KAAD,CAA7B;;EACA,IAAIG,aAAa,KAAK,IAAtB,EAA4B;IAC1BD,OAAO,IAAIA,OAAO,CAAC,IAAIE,KAAJ,CAAU,qBAAV,CAAD,CAAlB;IACA,OAAO,IAAP;EACD,CAHD,MAGO;IACL,OAAOD,aAAP;EACD;AACF,CAZD;;AAcA,MAAME,QAAQ,GAAG,CACfC,MADe,EAEfL,OAFe,EAGfC,OAHe,KAIO;EACtB,IAAII,MAAM,KAAK,IAAX,IAAmBA,MAAM,KAAKC,SAAlC,EAA6C;IAC3C,OAAO,IAAIC,OAAJ,CAAaC,OAAD,IAAaA,OAAO,CAAC,IAAD,CAAhC,CAAP;EACD,CAFD,MAEO,IAAIH,MAAM,YAAYI,UAAtB,EAAkC;IACvC,OAAO,IAAIF,OAAJ,CAAaC,OAAD,IACjBA,OAAO,CAACV,cAAc,CAACF,IAAI,CAACc,IAAL,CAAUC,SAAV,CAAoBN,MAApB,CAAD,EAA8BL,OAA9B,EAAuCC,OAAvC,CAAf,CADF,CAAP;EAGD,CAJM,MAIA;IACL,MAAMW,GAAG,GACP,OAAOP,MAAP,KAAkB,QAAlB,GAA6BA,MAA7B,GAAsCR,QAAQ,CAACgB,YAAT,CAAsBR,MAAtB,CADxC;IAEA,OAAOT,IAAI,CAACc,IAAL,CAAUI,OAAV,CAAkBF,GAAlB,EAAuBG,IAAvB,CAA6BC,CAAD,IACjClB,cAAc,CAACkB,CAAD,EAAIhB,OAAJ,EAAaC,OAAb,CADT,CAAP;EAGD;AACF,CAlBD;;AAmBA,MAAMgB,UAAU,GAAG,CACjBZ,MADiB,EAEjBa,MAFiB,KAGd;EACH,MAAMC,OAAO,GAAGzB,MAAM,CAAC,KAAD,CAAtB;EACA,MAAM,CAAC0B,IAAD,EAAOC,OAAP,IAAkB1B,QAAQ,CAAW,IAAX,CAAhC;EACA,MAAM2B,OAAO,GAAG5B,MAAM,CAAW,IAAX,CAAtB;EACAD,SAAS,CAAC,MAAM;IACd0B,OAAO,CAACI,OAAR,GAAkB,IAAlB;IACAL,MAAM,GAAGH,IAAT,CAAeS,KAAD,IAAW;MACvB,IAAIL,OAAO,CAACI,OAAZ,EAAqB;QACnBF,OAAO,CAACG,KAAD,CAAP;QACAF,OAAO,CAACC,OAAR,GAAkBC,KAAlB;MACD;IACF,CALD;IAMA,OAAO,MAAM;MAAA;;MACX,oBAAAF,OAAO,CAACC,OAAR,sEAAiBE,OAAjB;MACAN,OAAO,CAACI,OAAR,GAAkB,KAAlB;IACD,CAHD,CARc,CAYd;EACD,CAbQ,EAaN,CAAClB,MAAD,CAbM,CAAT;EAcA,OAAOe,IAAP;AACD,CAtBD;;AAwBA,OAAO,MAAMM,UAAU,GAAG,CACxBrB,MADwB,EAExBL,OAFwB,EAGxBC,OAHwB,KAIrBgB,UAAU,CAACZ,MAAD,EAAS,MAAMD,QAAQ,CAAIC,MAAJ,EAAYL,OAAZ,EAAqBC,OAArB,CAAvB,CAJR;;AAMP,MAAM0B,QAAQ,GAAIP,IAAD,IAAkBA,IAAnC;;AAEA,OAAO,MAAMQ,OAAO,GAAG,CACrBvB,MADqB,EAErBJ,OAFqB,KAGlByB,UAAU,CAACrB,MAAD,EAASsB,QAAT,EAAmB1B,OAAnB,CAHR"}
1
+ {"version":3,"names":["useEffect","useRef","useState","Skia","Platform","factoryWrapper","data2","factory","onError","factoryResult","Error","loadData","source","undefined","Promise","resolve","Uint8Array","Data","fromBytes","uri","resolveAsset","fromURI","then","d","useLoading","loader","mounted","data","setData","dataRef","current","value","dispose","useRawData","identity","useData"],"sources":["Data.ts"],"sourcesContent":["import { useEffect, useRef, useState } from \"react\";\n\nimport { Skia } from \"../Skia\";\nimport type { SkData, DataSourceParam, BaseSkJSIInstance } from \"../types\";\nimport { Platform } from \"../../Platform\";\n\nconst factoryWrapper = <T>(\n data2: SkData,\n factory: (data: SkData) => T,\n onError?: (err: Error) => void\n) => {\n const factoryResult = factory(data2);\n if (factoryResult === null) {\n onError && onError(new Error(\"Could not load data\"));\n return null;\n } else {\n return factoryResult;\n }\n};\n\nconst loadData = <T>(\n source: DataSourceParam,\n factory: (data: SkData) => T | null,\n onError?: (err: Error) => void\n): Promise<T | null> => {\n if (source === null || source === undefined) {\n return new Promise((resolve) => resolve(null));\n } else if (source instanceof Uint8Array) {\n return new Promise((resolve) =>\n resolve(factoryWrapper(Skia.Data.fromBytes(source), factory, onError))\n );\n } else {\n const uri =\n typeof source === \"string\" ? source : Platform.resolveAsset(source);\n return Skia.Data.fromURI(uri).then((d) =>\n factoryWrapper(d, factory, onError)\n );\n }\n};\nconst useLoading = <T extends BaseSkJSIInstance>(\n source: DataSourceParam,\n loader: () => Promise<T | null>\n) => {\n const mounted = useRef(false);\n const [data, setData] = useState<T | null>(null);\n const dataRef = useRef<T | null>(null);\n useEffect(() => {\n mounted.current = true;\n loader().then((value) => {\n if (mounted.current) {\n setData(value);\n dataRef.current = value;\n }\n });\n return () => {\n dataRef.current?.dispose();\n mounted.current = false;\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [source]);\n return data;\n};\n\nexport const useRawData = <T extends BaseSkJSIInstance>(\n source: DataSourceParam,\n factory: (data: SkData) => T | null,\n onError?: (err: Error) => void\n) => useLoading(source, () => loadData<T>(source, factory, onError));\n\nconst identity = (data: SkData) => data;\n\nexport const useData = (\n source: DataSourceParam,\n onError?: (err: Error) => void\n) => useRawData(source, identity, onError);\n"],"mappings":"AAAA,SAASA,SAAT,EAAoBC,MAApB,EAA4BC,QAA5B,QAA4C,OAA5C;AAEA,SAASC,IAAT,QAAqB,SAArB;AAEA,SAASC,QAAT,QAAyB,gBAAzB;;AAEA,MAAMC,cAAc,GAAG,CACrBC,KADqB,EAErBC,OAFqB,EAGrBC,OAHqB,KAIlB;EACH,MAAMC,aAAa,GAAGF,OAAO,CAACD,KAAD,CAA7B;;EACA,IAAIG,aAAa,KAAK,IAAtB,EAA4B;IAC1BD,OAAO,IAAIA,OAAO,CAAC,IAAIE,KAAJ,CAAU,qBAAV,CAAD,CAAlB;IACA,OAAO,IAAP;EACD,CAHD,MAGO;IACL,OAAOD,aAAP;EACD;AACF,CAZD;;AAcA,MAAME,QAAQ,GAAG,CACfC,MADe,EAEfL,OAFe,EAGfC,OAHe,KAIO;EACtB,IAAII,MAAM,KAAK,IAAX,IAAmBA,MAAM,KAAKC,SAAlC,EAA6C;IAC3C,OAAO,IAAIC,OAAJ,CAAaC,OAAD,IAAaA,OAAO,CAAC,IAAD,CAAhC,CAAP;EACD,CAFD,MAEO,IAAIH,MAAM,YAAYI,UAAtB,EAAkC;IACvC,OAAO,IAAIF,OAAJ,CAAaC,OAAD,IACjBA,OAAO,CAACV,cAAc,CAACF,IAAI,CAACc,IAAL,CAAUC,SAAV,CAAoBN,MAApB,CAAD,EAA8BL,OAA9B,EAAuCC,OAAvC,CAAf,CADF,CAAP;EAGD,CAJM,MAIA;IACL,MAAMW,GAAG,GACP,OAAOP,MAAP,KAAkB,QAAlB,GAA6BA,MAA7B,GAAsCR,QAAQ,CAACgB,YAAT,CAAsBR,MAAtB,CADxC;IAEA,OAAOT,IAAI,CAACc,IAAL,CAAUI,OAAV,CAAkBF,GAAlB,EAAuBG,IAAvB,CAA6BC,CAAD,IACjClB,cAAc,CAACkB,CAAD,EAAIhB,OAAJ,EAAaC,OAAb,CADT,CAAP;EAGD;AACF,CAlBD;;AAmBA,MAAMgB,UAAU,GAAG,CACjBZ,MADiB,EAEjBa,MAFiB,KAGd;EACH,MAAMC,OAAO,GAAGzB,MAAM,CAAC,KAAD,CAAtB;EACA,MAAM,CAAC0B,IAAD,EAAOC,OAAP,IAAkB1B,QAAQ,CAAW,IAAX,CAAhC;EACA,MAAM2B,OAAO,GAAG5B,MAAM,CAAW,IAAX,CAAtB;EACAD,SAAS,CAAC,MAAM;IACd0B,OAAO,CAACI,OAAR,GAAkB,IAAlB;IACAL,MAAM,GAAGH,IAAT,CAAeS,KAAD,IAAW;MACvB,IAAIL,OAAO,CAACI,OAAZ,EAAqB;QACnBF,OAAO,CAACG,KAAD,CAAP;QACAF,OAAO,CAACC,OAAR,GAAkBC,KAAlB;MACD;IACF,CALD;IAMA,OAAO,MAAM;MAAA;;MACX,oBAAAF,OAAO,CAACC,OAAR,sEAAiBE,OAAjB;MACAN,OAAO,CAACI,OAAR,GAAkB,KAAlB;IACD,CAHD,CARc,CAYd;EACD,CAbQ,EAaN,CAAClB,MAAD,CAbM,CAAT;EAcA,OAAOe,IAAP;AACD,CAtBD;;AAwBA,OAAO,MAAMM,UAAU,GAAG,CACxBrB,MADwB,EAExBL,OAFwB,EAGxBC,OAHwB,KAIrBgB,UAAU,CAACZ,MAAD,EAAS,MAAMD,QAAQ,CAAIC,MAAJ,EAAYL,OAAZ,EAAqBC,OAArB,CAAvB,CAJR;;AAMP,MAAM0B,QAAQ,GAAIP,IAAD,IAAkBA,IAAnC;;AAEA,OAAO,MAAMQ,OAAO,GAAG,CACrBvB,MADqB,EAErBJ,OAFqB,KAGlByB,UAAU,CAACrB,MAAD,EAASsB,QAAT,EAAmB1B,OAAnB,CAHR"}
@@ -1,5 +1,5 @@
1
- import type { JsiDisposable, SkJSIInstance } from "../JsiInstance";
2
- export declare type SkData = SkJSIInstance<"Data"> & JsiDisposable;
1
+ import type { SkJSIInstance } from "../JsiInstance";
2
+ export declare type SkData = SkJSIInstance<"Data">;
3
3
  declare type RNModule = number;
4
4
  declare type ESModule = {
5
5
  __esModule: true;
@@ -1 +1 @@
1
- {"version":3,"names":["isRNModule","mod"],"sources":["Data.ts"],"sourcesContent":["import type { JsiDisposable, SkJSIInstance } from \"../JsiInstance\";\n\nexport type SkData = SkJSIInstance<\"Data\"> & JsiDisposable;\n\ntype RNModule = number;\ntype ESModule = {\n __esModule: true;\n default: string;\n};\nexport type DataModule = RNModule | ESModule;\nexport type DataSource = DataModule | string | Uint8Array;\nexport type DataSourceParam = DataSource | null | undefined;\n\nexport const isRNModule = (mod: DataModule): mod is RNModule =>\n typeof mod === \"number\";\n"],"mappings":"AAaA,OAAO,MAAMA,UAAU,GAAIC,GAAD,IACxB,OAAOA,GAAP,KAAe,QADV"}
1
+ {"version":3,"names":["isRNModule","mod"],"sources":["Data.ts"],"sourcesContent":["import type { SkJSIInstance } from \"../JsiInstance\";\n\nexport type SkData = SkJSIInstance<\"Data\">;\n\ntype RNModule = number;\ntype ESModule = {\n __esModule: true;\n default: string;\n};\nexport type DataModule = RNModule | ESModule;\nexport type DataSource = DataModule | string | Uint8Array;\nexport type DataSourceParam = DataSource | null | undefined;\n\nexport const isRNModule = (mod: DataModule): mod is RNModule =>\n typeof mod === \"number\";\n"],"mappings":"AAaA,OAAO,MAAMA,UAAU,GAAIC,GAAD,IACxB,OAAOA,GAAP,KAAe,QADV"}
@@ -1,5 +1,5 @@
1
1
  import type { SkMatrix } from "../Matrix";
2
- import type { JsiDisposable, SkJSIInstance } from "../JsiInstance";
2
+ import type { SkJSIInstance } from "../JsiInstance";
3
3
  import type { TileMode } from "../ImageFilter";
4
4
  import type { SkShader } from "../Shader";
5
5
  export declare enum FilterMode {
@@ -16,7 +16,7 @@ export declare enum ImageFormat {
16
16
  PNG = 4,
17
17
  WEBP = 6
18
18
  }
19
- export interface SkImage extends SkJSIInstance<"Image">, JsiDisposable {
19
+ export interface SkImage extends SkJSIInstance<"Image"> {
20
20
  /**
21
21
  * Returns the possibly scaled height of the image.
22
22
  */
@@ -1 +1 @@
1
- {"version":3,"names":["FilterMode","MipmapMode","ImageFormat"],"sources":["Image.ts"],"sourcesContent":["import type { SkMatrix } from \"../Matrix\";\nimport type { JsiDisposable, SkJSIInstance } from \"../JsiInstance\";\nimport type { TileMode } from \"../ImageFilter\";\nimport type { SkShader } from \"../Shader\";\n\nexport enum FilterMode {\n Nearest,\n Linear,\n}\n\nexport enum MipmapMode {\n None,\n Nearest,\n Linear,\n}\n\nexport enum ImageFormat {\n JPEG = 3,\n PNG = 4,\n WEBP = 6,\n}\n\nexport interface SkImage extends SkJSIInstance<\"Image\">, JsiDisposable {\n /**\n * Returns the possibly scaled height of the image.\n */\n height(): number;\n\n /**\n * Returns the possibly scaled width of the image.\n */\n width(): number;\n\n /**\n * Returns this image as a shader with the specified tiling. It will use cubic sampling.\n * @param tx - tile mode in the x direction.\n * @param ty - tile mode in the y direction.\n * @param fm - The filter mode. (default nearest)\n * @param mm - The mipmap mode. Note: for settings other than None, the image must have mipmaps (default none)\n * calculated with makeCopyWithDefaultMipmaps;\n * @param localMatrix\n */\n makeShaderOptions(\n tx: TileMode,\n ty: TileMode,\n fm: FilterMode,\n mm: MipmapMode,\n localMatrix?: SkMatrix\n ): SkShader;\n\n /**\n * Returns this image as a shader with the specified tiling. It will use cubic sampling.\n * @param tx - tile mode in the x direction.\n * @param ty - tile mode in the y direction.\n * @param B - See CubicResampler in SkSamplingOptions.h for more information\n * @param C - See CubicResampler in SkSamplingOptions.h for more information\n * @param localMatrix\n */\n makeShaderCubic(\n tx: TileMode,\n ty: TileMode,\n B: number,\n C: number,\n localMatrix?: SkMatrix\n ): SkShader;\n\n /** Encodes Image pixels, returning result as UInt8Array. Returns existing\n encoded data if present; otherwise, SkImage is encoded with\n SkEncodedImageFormat::kPNG. Skia must be built with SK_ENCODE_PNG to encode\n SkImage.\n\n Returns nullptr if existing encoded data is missing or invalid, and\n encoding fails.\n\n @param fmt - PNG is the default value.\n @param quality - a value from 0 to 100; 100 is the least lossy. May be ignored.\n\n @return Uint8Array with data\n */\n encodeToBytes(fmt?: ImageFormat, quality?: number): Uint8Array;\n\n /** Encodes Image pixels, returning result as a base64 encoded string. Returns existing\n encoded data if present; otherwise, SkImage is encoded with\n SkEncodedImageFormat::kPNG. Skia must be built with SK_ENCODE_PNG to encode\n SkImage.\n\n Returns nullptr if existing encoded data is missing or invalid, and\n encoding fails.\n\n @param fmt - PNG is the default value.\n @param quality - a value from 0 to 100; 100 is the least lossy. May be ignored.\n\n @return base64 encoded string of data\n */\n encodeToBase64(fmt?: ImageFormat, quality?: number): string;\n\n /**\n * Returns raster image or lazy image. Copies SkImage backed by GPU texture\n * into CPU memory if needed. Returns original SkImage if decoded in raster\n * bitmap, or if encoded in a stream.\n */\n makeNonTextureImage(): SkImage;\n}\n"],"mappings":"AAKA,WAAYA,UAAZ;;WAAYA,U;EAAAA,U,CAAAA,U;EAAAA,U,CAAAA,U;GAAAA,U,KAAAA,U;;AAKZ,WAAYC,UAAZ;;WAAYA,U;EAAAA,U,CAAAA,U;EAAAA,U,CAAAA,U;EAAAA,U,CAAAA,U;GAAAA,U,KAAAA,U;;AAMZ,WAAYC,WAAZ;;WAAYA,W;EAAAA,W,CAAAA,W;EAAAA,W,CAAAA,W;EAAAA,W,CAAAA,W;GAAAA,W,KAAAA,W"}
1
+ {"version":3,"names":["FilterMode","MipmapMode","ImageFormat"],"sources":["Image.ts"],"sourcesContent":["import type { SkMatrix } from \"../Matrix\";\nimport type { SkJSIInstance } from \"../JsiInstance\";\nimport type { TileMode } from \"../ImageFilter\";\nimport type { SkShader } from \"../Shader\";\n\nexport enum FilterMode {\n Nearest,\n Linear,\n}\n\nexport enum MipmapMode {\n None,\n Nearest,\n Linear,\n}\n\nexport enum ImageFormat {\n JPEG = 3,\n PNG = 4,\n WEBP = 6,\n}\n\nexport interface SkImage extends SkJSIInstance<\"Image\"> {\n /**\n * Returns the possibly scaled height of the image.\n */\n height(): number;\n\n /**\n * Returns the possibly scaled width of the image.\n */\n width(): number;\n\n /**\n * Returns this image as a shader with the specified tiling. It will use cubic sampling.\n * @param tx - tile mode in the x direction.\n * @param ty - tile mode in the y direction.\n * @param fm - The filter mode. (default nearest)\n * @param mm - The mipmap mode. Note: for settings other than None, the image must have mipmaps (default none)\n * calculated with makeCopyWithDefaultMipmaps;\n * @param localMatrix\n */\n makeShaderOptions(\n tx: TileMode,\n ty: TileMode,\n fm: FilterMode,\n mm: MipmapMode,\n localMatrix?: SkMatrix\n ): SkShader;\n\n /**\n * Returns this image as a shader with the specified tiling. It will use cubic sampling.\n * @param tx - tile mode in the x direction.\n * @param ty - tile mode in the y direction.\n * @param B - See CubicResampler in SkSamplingOptions.h for more information\n * @param C - See CubicResampler in SkSamplingOptions.h for more information\n * @param localMatrix\n */\n makeShaderCubic(\n tx: TileMode,\n ty: TileMode,\n B: number,\n C: number,\n localMatrix?: SkMatrix\n ): SkShader;\n\n /** Encodes Image pixels, returning result as UInt8Array. Returns existing\n encoded data if present; otherwise, SkImage is encoded with\n SkEncodedImageFormat::kPNG. Skia must be built with SK_ENCODE_PNG to encode\n SkImage.\n\n Returns nullptr if existing encoded data is missing or invalid, and\n encoding fails.\n\n @param fmt - PNG is the default value.\n @param quality - a value from 0 to 100; 100 is the least lossy. May be ignored.\n\n @return Uint8Array with data\n */\n encodeToBytes(fmt?: ImageFormat, quality?: number): Uint8Array;\n\n /** Encodes Image pixels, returning result as a base64 encoded string. Returns existing\n encoded data if present; otherwise, SkImage is encoded with\n SkEncodedImageFormat::kPNG. Skia must be built with SK_ENCODE_PNG to encode\n SkImage.\n\n Returns nullptr if existing encoded data is missing or invalid, and\n encoding fails.\n\n @param fmt - PNG is the default value.\n @param quality - a value from 0 to 100; 100 is the least lossy. May be ignored.\n\n @return base64 encoded string of data\n */\n encodeToBase64(fmt?: ImageFormat, quality?: number): string;\n\n /**\n * Returns raster image or lazy image. Copies SkImage backed by GPU texture\n * into CPU memory if needed. Returns original SkImage if decoded in raster\n * bitmap, or if encoded in a stream.\n */\n makeNonTextureImage(): SkImage;\n}\n"],"mappings":"AAKA,WAAYA,UAAZ;;WAAYA,U;EAAAA,U,CAAAA,U;EAAAA,U,CAAAA,U;GAAAA,U,KAAAA,U;;AAKZ,WAAYC,UAAZ;;WAAYA,U;EAAAA,U,CAAAA,U;EAAAA,U,CAAAA,U;EAAAA,U,CAAAA,U;GAAAA,U,KAAAA,U;;AAMZ,WAAYC,WAAZ;;WAAYA,W;EAAAA,W,CAAAA,W;EAAAA,W,CAAAA,W;EAAAA,W,CAAAA,W;GAAAA,W,KAAAA,W"}
@@ -1,6 +1,6 @@
1
- export interface SkJSIInstance<T extends string> {
2
- __typename__: T;
3
- }
4
- export interface JsiDisposable {
1
+ export interface BaseSkJSIInstance {
5
2
  dispose: () => void;
6
3
  }
4
+ export interface SkJSIInstance<T extends string> extends BaseSkJSIInstance {
5
+ __typename__: T;
6
+ }
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["JsiInstance.ts"],"sourcesContent":["export interface SkJSIInstance<T extends string> {\n __typename__: T;\n}\n\nexport interface JsiDisposable {\n dispose: () => void;\n}\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["JsiInstance.ts"],"sourcesContent":["export interface BaseSkJSIInstance {\n dispose: () => void;\n}\n\nexport interface SkJSIInstance<T extends string> extends BaseSkJSIInstance {\n __typename__: T;\n}\n"],"mappings":""}
@@ -1,5 +1,5 @@
1
- import type { JsiDisposable, SkJSIInstance } from "../JsiInstance";
2
- export interface SkSVG extends SkJSIInstance<"SVG">, JsiDisposable {
1
+ import type { SkJSIInstance } from "../JsiInstance";
2
+ export interface SkSVG extends SkJSIInstance<"SVG"> {
3
3
  width(): number;
4
4
  height(): number;
5
5
  }
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["SVG.ts"],"sourcesContent":["import type { JsiDisposable, SkJSIInstance } from \"../JsiInstance\";\n\nexport interface SkSVG extends SkJSIInstance<\"SVG\">, JsiDisposable {\n width(): number;\n height(): number;\n}\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["SVG.ts"],"sourcesContent":["import type { SkJSIInstance } from \"../JsiInstance\";\n\nexport interface SkSVG extends SkJSIInstance<\"SVG\"> {\n width(): number;\n height(): number;\n}\n"],"mappings":""}
@@ -1,2 +1,2 @@
1
- import type { JsiDisposable, SkJSIInstance } from "../JsiInstance";
2
- export declare type SkTypeface = SkJSIInstance<"Typeface"> & JsiDisposable;
1
+ import type { SkJSIInstance } from "../JsiInstance";
2
+ export declare type SkTypeface = SkJSIInstance<"Typeface">;
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["Typeface.ts"],"sourcesContent":["import type { JsiDisposable, SkJSIInstance } from \"../JsiInstance\";\n\nexport type SkTypeface = SkJSIInstance<\"Typeface\"> & JsiDisposable;\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["Typeface.ts"],"sourcesContent":["import type { SkJSIInstance } from \"../JsiInstance\";\n\nexport type SkTypeface = SkJSIInstance<\"Typeface\">;\n"],"mappings":""}
@@ -11,6 +11,7 @@ export declare abstract class BaseHostObject<T, N extends string> extends Host i
11
11
  readonly __typename__: N;
12
12
  ref: T;
13
13
  constructor(CanvasKit: CanvasKit, ref: T, typename: N);
14
+ abstract dispose: () => void;
14
15
  }
15
16
  export declare abstract class HostObject<T, N extends string> extends BaseHostObject<T, N> {
16
17
  static fromValue<T>(value: SkJSIInstance<string>): T;
@@ -22,6 +22,8 @@ export class BaseHostObject extends Host {
22
22
 
23
23
  _defineProperty(this, "ref", void 0);
24
24
 
25
+ _defineProperty(this, "dispose", void 0);
26
+
25
27
  this.ref = ref;
26
28
  this.__typename__ = typename;
27
29
  }
@@ -1 +1 @@
1
- {"version":3,"names":["NotImplementedOnRNWeb","Error","constructor","msg","Host","CanvasKit","BaseHostObject","ref","typename","__typename__","HostObject","fromValue","value","ckEnum","optEnum","undefined"],"sources":["Host.ts"],"sourcesContent":["import type { CanvasKit, EmbindEnumEntity } from \"canvaskit-wasm\";\n\nimport type { SkJSIInstance } from \"../types\";\n\nexport class NotImplementedOnRNWeb extends Error {\n constructor(msg?: string) {\n super(msg ?? \"Not implemented on React Native Web\");\n }\n}\n\nexport abstract class Host {\n readonly CanvasKit: CanvasKit;\n\n constructor(CanvasKit: CanvasKit) {\n this.CanvasKit = CanvasKit;\n }\n}\n\nexport abstract class BaseHostObject<T, N extends string>\n extends Host\n implements SkJSIInstance<N>\n{\n readonly __typename__: N;\n ref: T;\n\n constructor(CanvasKit: CanvasKit, ref: T, typename: N) {\n super(CanvasKit);\n this.ref = ref;\n this.__typename__ = typename;\n }\n}\n\nexport abstract class HostObject<T, N extends string> extends BaseHostObject<\n T,\n N\n> {\n static fromValue<T>(value: SkJSIInstance<string>) {\n return (value as HostObject<T, string>).ref;\n }\n}\n\nexport const ckEnum = (value: number): EmbindEnumEntity => ({ value });\nexport const optEnum = (\n value: number | undefined\n): EmbindEnumEntity | undefined =>\n value === undefined ? undefined : { value };\n"],"mappings":";;AAIA,OAAO,MAAMA,qBAAN,SAAoCC,KAApC,CAA0C;EAC/CC,WAAW,CAACC,GAAD,EAAe;IACxB,MAAMA,GAAN,aAAMA,GAAN,cAAMA,GAAN,GAAa,qCAAb;EACD;;AAH8C;AAMjD,OAAO,MAAeC,IAAf,CAAoB;EAGzBF,WAAW,CAACG,SAAD,EAAuB;IAAA;;IAChC,KAAKA,SAAL,GAAiBA,SAAjB;EACD;;AALwB;AAQ3B,OAAO,MAAeC,cAAf,SACGF,IADH,CAGP;EAIEF,WAAW,CAACG,SAAD,EAAuBE,GAAvB,EAA+BC,QAA/B,EAA4C;IACrD,MAAMH,SAAN;;IADqD;;IAAA;;IAErD,KAAKE,GAAL,GAAWA,GAAX;IACA,KAAKE,YAAL,GAAoBD,QAApB;EACD;;AARH;AAWA,OAAO,MAAeE,UAAf,SAAuDJ,cAAvD,CAGL;EACgB,OAATK,SAAS,CAAIC,KAAJ,EAAkC;IAChD,OAAQA,KAAD,CAAiCL,GAAxC;EACD;;AAHD;AAMF,OAAO,MAAMM,MAAM,GAAID,KAAD,KAAsC;EAAEA;AAAF,CAAtC,CAAf;AACP,OAAO,MAAME,OAAO,GAClBF,KADqB,IAGrBA,KAAK,KAAKG,SAAV,GAAsBA,SAAtB,GAAkC;EAAEH;AAAF,CAH7B"}
1
+ {"version":3,"names":["NotImplementedOnRNWeb","Error","constructor","msg","Host","CanvasKit","BaseHostObject","ref","typename","__typename__","HostObject","fromValue","value","ckEnum","optEnum","undefined"],"sources":["Host.ts"],"sourcesContent":["import type { CanvasKit, EmbindEnumEntity } from \"canvaskit-wasm\";\n\nimport type { SkJSIInstance } from \"../types\";\n\nexport class NotImplementedOnRNWeb extends Error {\n constructor(msg?: string) {\n super(msg ?? \"Not implemented on React Native Web\");\n }\n}\n\nexport abstract class Host {\n readonly CanvasKit: CanvasKit;\n\n constructor(CanvasKit: CanvasKit) {\n this.CanvasKit = CanvasKit;\n }\n}\n\nexport abstract class BaseHostObject<T, N extends string>\n extends Host\n implements SkJSIInstance<N>\n{\n readonly __typename__: N;\n ref: T;\n\n constructor(CanvasKit: CanvasKit, ref: T, typename: N) {\n super(CanvasKit);\n this.ref = ref;\n this.__typename__ = typename;\n }\n\n abstract dispose: () => void;\n}\n\nexport abstract class HostObject<T, N extends string> extends BaseHostObject<\n T,\n N\n> {\n static fromValue<T>(value: SkJSIInstance<string>) {\n return (value as HostObject<T, string>).ref;\n }\n}\n\nexport const ckEnum = (value: number): EmbindEnumEntity => ({ value });\nexport const optEnum = (\n value: number | undefined\n): EmbindEnumEntity | undefined =>\n value === undefined ? undefined : { value };\n"],"mappings":";;AAIA,OAAO,MAAMA,qBAAN,SAAoCC,KAApC,CAA0C;EAC/CC,WAAW,CAACC,GAAD,EAAe;IACxB,MAAMA,GAAN,aAAMA,GAAN,cAAMA,GAAN,GAAa,qCAAb;EACD;;AAH8C;AAMjD,OAAO,MAAeC,IAAf,CAAoB;EAGzBF,WAAW,CAACG,SAAD,EAAuB;IAAA;;IAChC,KAAKA,SAAL,GAAiBA,SAAjB;EACD;;AALwB;AAQ3B,OAAO,MAAeC,cAAf,SACGF,IADH,CAGP;EAIEF,WAAW,CAACG,SAAD,EAAuBE,GAAvB,EAA+BC,QAA/B,EAA4C;IACrD,MAAMH,SAAN;;IADqD;;IAAA;;IAAA;;IAErD,KAAKE,GAAL,GAAWA,GAAX;IACA,KAAKE,YAAL,GAAoBD,QAApB;EACD;;AARH;AAaA,OAAO,MAAeE,UAAf,SAAuDJ,cAAvD,CAGL;EACgB,OAATK,SAAS,CAAIC,KAAJ,EAAkC;IAChD,OAAQA,KAAD,CAAiCL,GAAxC;EACD;;AAHD;AAMF,OAAO,MAAMM,MAAM,GAAID,KAAD,KAAsC;EAAEA;AAAF,CAAtC,CAAf;AACP,OAAO,MAAME,OAAO,GAClBF,KADqB,IAGrBA,KAAK,KAAKG,SAAV,GAAsBA,SAAtB,GAAkC;EAAEH;AAAF,CAH7B"}
@@ -3,6 +3,7 @@ import type { BlendMode, ClipOp, FilterMode, MipmapMode, PointMode, SaveLayerFla
3
3
  import { HostObject } from "./Host";
4
4
  export declare class JsiSkCanvas extends HostObject<Canvas, "Canvas"> implements SkCanvas {
5
5
  constructor(CanvasKit: CanvasKit, ref: Canvas);
6
+ dispose: () => void;
6
7
  drawRect(rect: SkRect, paint: SkPaint): void;
7
8
  drawImage(image: SkImage, x: number, y: number, paint?: SkPaint): void;
8
9
  drawImageRect(img: SkImage, src: SkRect, dest: SkRect, paint: SkPaint, fastSample?: boolean): void;
@@ -1,3 +1,5 @@
1
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+
1
3
  import { ckEnum, HostObject } from "./Host";
2
4
  import { JsiSkPaint } from "./JsiSkPaint";
3
5
  import { JsiSkRect } from "./JsiSkRect";
@@ -14,6 +16,10 @@ import { JsiSkPoint } from "./JsiSkPoint";
14
16
  export class JsiSkCanvas extends HostObject {
15
17
  constructor(CanvasKit, ref) {
16
18
  super(CanvasKit, ref, "Canvas");
19
+
20
+ _defineProperty(this, "dispose", () => {
21
+ this.ref.delete();
22
+ });
17
23
  }
18
24
 
19
25
  drawRect(rect, paint) {
@@ -1 +1 @@
1
- {"version":3,"names":["ckEnum","HostObject","JsiSkPaint","JsiSkRect","JsiSkRRect","JsiSkImage","JsiSkVertices","JsiSkPath","JsiSkFont","JsiSkTextBlob","JsiSkPicture","JsiSkMatrix","JsiSkImageFilter","JsiSkPoint","JsiSkCanvas","constructor","CanvasKit","ref","drawRect","rect","paint","fromValue","drawImage","image","x","y","drawImageRect","img","src","dest","fastSample","drawImageCubic","left","top","B","C","drawImageOptions","fm","mm","drawImageNine","center","filter","Array","from","drawImageRectCubic","drawImageRectOptions","drawPaint","drawLine","x0","y0","x1","y1","drawCircle","cx","cy","radius","drawVertices","verts","mode","drawPatch","cubics","colors","texs","map","flat","flatMap","p","undefined","restoreToCount","saveCount","drawPoints","points","drawArc","oval","startAngle","sweepAngle","useCenter","drawRRect","rrect","drawDRRect","outer","inner","drawOval","drawPath","path","drawText","str","font","drawTextBlob","blob","drawGlyphs","glyphs","positions","drawSvg","_svgDom","_width","_height","Error","save","saveLayer","bounds","backdrop","flags","restore","rotate","rotationInDegrees","rx","ry","scale","sx","sy","skew","translate","dx","dy","drawColor","color","blendMode","clear","clipPath","op","doAntiAlias","clipRect","clipRRect","concat","m","drawPicture","skp"],"sources":["JsiSkCanvas.ts"],"sourcesContent":["import type { Canvas, CanvasKit } from \"canvaskit-wasm\";\n\nimport type {\n BlendMode,\n ClipOp,\n FilterMode,\n MipmapMode,\n PointMode,\n SaveLayerFlag,\n SkCanvas,\n SkColor,\n SkFont,\n SkImage,\n SkImageFilter,\n SkMatrix,\n SkPaint,\n SkPath,\n SkPicture,\n SkPoint,\n SkRect,\n SkRRect,\n SkSVG,\n SkTextBlob,\n SkVertices,\n} from \"../types\";\n\nimport { ckEnum, HostObject } from \"./Host\";\nimport { JsiSkPaint } from \"./JsiSkPaint\";\nimport { JsiSkRect } from \"./JsiSkRect\";\nimport { JsiSkRRect } from \"./JsiSkRRect\";\nimport { JsiSkImage } from \"./JsiSkImage\";\nimport { JsiSkVertices } from \"./JsiSkVertices\";\nimport { JsiSkPath } from \"./JsiSkPath\";\nimport { JsiSkFont } from \"./JsiSkFont\";\nimport { JsiSkTextBlob } from \"./JsiSkTextBlob\";\nimport { JsiSkPicture } from \"./JsiSkPicture\";\nimport { JsiSkMatrix } from \"./JsiSkMatrix\";\nimport { JsiSkImageFilter } from \"./JsiSkImageFilter\";\nimport { JsiSkPoint } from \"./JsiSkPoint\";\n\nexport class JsiSkCanvas\n extends HostObject<Canvas, \"Canvas\">\n implements SkCanvas\n{\n constructor(CanvasKit: CanvasKit, ref: Canvas) {\n super(CanvasKit, ref, \"Canvas\");\n }\n\n drawRect(rect: SkRect, paint: SkPaint) {\n this.ref.drawRect(\n JsiSkRect.fromValue(this.CanvasKit, rect),\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawImage(image: SkImage, x: number, y: number, paint?: SkPaint) {\n this.ref.drawImage(\n JsiSkImage.fromValue(image),\n x,\n y,\n paint ? JsiSkPaint.fromValue(paint) : paint\n );\n }\n\n drawImageRect(\n img: SkImage,\n src: SkRect,\n dest: SkRect,\n paint: SkPaint,\n fastSample?: boolean\n ) {\n this.ref.drawImageRect(\n JsiSkImage.fromValue(img),\n JsiSkRect.fromValue(this.CanvasKit, src),\n JsiSkRect.fromValue(this.CanvasKit, dest),\n JsiSkPaint.fromValue(paint),\n fastSample\n );\n }\n\n drawImageCubic(\n img: SkImage,\n left: number,\n top: number,\n B: number,\n C: number,\n paint?: SkPaint | null\n ) {\n this.ref.drawImageCubic(\n JsiSkImage.fromValue(img),\n left,\n top,\n B,\n C,\n paint ? JsiSkPaint.fromValue(paint) : paint\n );\n }\n\n drawImageOptions(\n img: SkImage,\n left: number,\n top: number,\n fm: FilterMode,\n mm: MipmapMode,\n paint?: SkPaint | null\n ) {\n this.ref.drawImageOptions(\n JsiSkImage.fromValue(img),\n left,\n top,\n ckEnum(fm),\n ckEnum(mm),\n paint ? JsiSkPaint.fromValue(paint) : paint\n );\n }\n\n drawImageNine(\n img: SkImage,\n center: SkRect,\n dest: SkRect,\n filter: FilterMode,\n paint?: SkPaint | null\n ) {\n this.ref.drawImageNine(\n JsiSkImage.fromValue(img),\n Array.from(JsiSkRect.fromValue(this.CanvasKit, center)),\n JsiSkRect.fromValue(this.CanvasKit, dest),\n ckEnum(filter),\n paint ? JsiSkPaint.fromValue(paint) : paint\n );\n }\n\n drawImageRectCubic(\n img: SkImage,\n src: SkRect,\n dest: SkRect,\n B: number,\n C: number,\n paint?: SkPaint | null\n ) {\n this.ref.drawImageRectCubic(\n JsiSkImage.fromValue(img),\n JsiSkRect.fromValue(this.CanvasKit, src),\n JsiSkRect.fromValue(this.CanvasKit, dest),\n B,\n C,\n paint ? JsiSkPaint.fromValue(paint) : paint\n );\n }\n\n drawImageRectOptions(\n img: SkImage,\n src: SkRect,\n dest: SkRect,\n fm: FilterMode,\n mm: MipmapMode,\n paint?: SkPaint | null\n ) {\n this.ref.drawImageRectOptions(\n JsiSkImage.fromValue(img),\n JsiSkRect.fromValue(this.CanvasKit, src),\n JsiSkRect.fromValue(this.CanvasKit, dest),\n ckEnum(fm),\n ckEnum(mm),\n paint ? JsiSkPaint.fromValue(paint) : paint\n );\n }\n\n drawPaint(paint: SkPaint) {\n this.ref.drawPaint(JsiSkPaint.fromValue(paint));\n }\n\n drawLine(x0: number, y0: number, x1: number, y1: number, paint: SkPaint) {\n this.ref.drawLine(x0, y0, x1, y1, JsiSkPaint.fromValue(paint));\n }\n\n drawCircle(cx: number, cy: number, radius: number, paint: SkPaint) {\n this.ref.drawCircle(cx, cy, radius, JsiSkPaint.fromValue(paint));\n }\n\n drawVertices(verts: SkVertices, mode: BlendMode, paint: SkPaint) {\n this.ref.drawVertices(\n JsiSkVertices.fromValue(verts),\n ckEnum(mode),\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawPatch(\n cubics: SkPoint[],\n colors?: SkColor[] | null,\n texs?: SkPoint[] | null,\n mode?: BlendMode | null,\n paint?: SkPaint\n ) {\n this.ref.drawPatch(\n cubics.map(({ x, y }) => [x, y]).flat(),\n colors,\n texs ? texs.flatMap((p) => Array.from(JsiSkPoint.fromValue(p))) : texs,\n mode ? ckEnum(mode) : null,\n paint ? JsiSkPaint.fromValue(paint) : undefined\n );\n }\n\n restoreToCount(saveCount: number) {\n this.ref.restoreToCount(saveCount);\n }\n\n drawPoints(mode: PointMode, points: SkPoint[], paint: SkPaint) {\n this.ref.drawPoints(\n ckEnum(mode),\n points.map(({ x, y }) => [x, y]).flat(),\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawArc(\n oval: SkRect,\n startAngle: number,\n sweepAngle: number,\n useCenter: boolean,\n paint: SkPaint\n ) {\n this.ref.drawArc(\n JsiSkRect.fromValue(this.CanvasKit, oval),\n startAngle,\n sweepAngle,\n useCenter,\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawRRect(rrect: SkRRect, paint: SkPaint) {\n this.ref.drawRRect(\n JsiSkRRect.fromValue(this.CanvasKit, rrect),\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawDRRect(outer: SkRRect, inner: SkRRect, paint: SkPaint) {\n this.ref.drawDRRect(\n JsiSkRRect.fromValue(this.CanvasKit, outer),\n JsiSkRRect.fromValue(this.CanvasKit, inner),\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawOval(oval: SkRect, paint: SkPaint) {\n this.ref.drawOval(\n JsiSkRect.fromValue(this.CanvasKit, oval),\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawPath(path: SkPath, paint: SkPaint) {\n this.ref.drawPath(JsiSkPath.fromValue(path), JsiSkPaint.fromValue(paint));\n }\n\n drawText(str: string, x: number, y: number, paint: SkPaint, font: SkFont) {\n this.ref.drawText(\n str,\n x,\n y,\n JsiSkPaint.fromValue(paint),\n JsiSkFont.fromValue(font)\n );\n }\n\n drawTextBlob(blob: SkTextBlob, x: number, y: number, paint: SkPaint) {\n this.ref.drawTextBlob(\n JsiSkTextBlob.fromValue(blob),\n x,\n y,\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawGlyphs(\n glyphs: number[],\n positions: SkPoint[],\n x: number,\n y: number,\n font: SkFont,\n paint: SkPaint\n ) {\n this.ref.drawGlyphs(\n glyphs,\n positions.map((p) => [p.x, p.y]).flat(),\n x,\n y,\n JsiSkFont.fromValue(font),\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawSvg(_svgDom: SkSVG, _width?: number, _height?: number) {\n throw new Error(\"drawSvg is not implemented on React Native Web\");\n }\n\n save() {\n return this.ref.save();\n }\n\n saveLayer(\n paint?: SkPaint,\n bounds?: SkRect | null,\n backdrop?: SkImageFilter | null,\n flags?: SaveLayerFlag\n ) {\n return this.ref.saveLayer(\n paint ? JsiSkPaint.fromValue(paint) : undefined,\n bounds ? JsiSkRect.fromValue(this.CanvasKit, bounds) : bounds,\n backdrop ? JsiSkImageFilter.fromValue(backdrop) : backdrop,\n flags\n );\n }\n\n restore() {\n this.ref.restore();\n }\n\n rotate(rotationInDegrees: number, rx: number, ry: number) {\n this.ref.rotate(rotationInDegrees, rx, ry);\n }\n\n scale(sx: number, sy: number) {\n this.ref.scale(sx, sy);\n }\n\n skew(sx: number, sy: number) {\n this.ref.skew(sx, sy);\n }\n\n translate(dx: number, dy: number) {\n this.ref.translate(dx, dy);\n }\n\n drawColor(color: SkColor, blendMode?: BlendMode) {\n this.ref.drawColor(color, blendMode ? ckEnum(blendMode) : undefined);\n }\n\n clear(color: SkColor) {\n this.ref.clear(color);\n }\n\n clipPath(path: SkPath, op: ClipOp, doAntiAlias: boolean) {\n this.ref.clipPath(JsiSkPath.fromValue(path), ckEnum(op), doAntiAlias);\n }\n\n clipRect(rect: SkRect, op: ClipOp, doAntiAlias: boolean) {\n this.ref.clipRect(\n JsiSkRect.fromValue(this.CanvasKit, rect),\n ckEnum(op),\n doAntiAlias\n );\n }\n\n clipRRect(rrect: SkRRect, op: ClipOp, doAntiAlias: boolean) {\n this.ref.clipRRect(\n JsiSkRRect.fromValue(this.CanvasKit, rrect),\n ckEnum(op),\n doAntiAlias\n );\n }\n\n concat(m: SkMatrix) {\n this.ref.concat(JsiSkMatrix.fromValue(m));\n }\n\n drawPicture(skp: SkPicture) {\n this.ref.drawPicture(JsiSkPicture.fromValue(skp));\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["ckEnum","HostObject","JsiSkPaint","JsiSkRect","JsiSkRRect","JsiSkImage","JsiSkVertices","JsiSkPath","JsiSkFont","JsiSkTextBlob","JsiSkPicture","JsiSkMatrix","JsiSkImageFilter","JsiSkPoint","JsiSkCanvas","constructor","CanvasKit","ref","delete","drawRect","rect","paint","fromValue","drawImage","image","x","y","drawImageRect","img","src","dest","fastSample","drawImageCubic","left","top","B","C","drawImageOptions","fm","mm","drawImageNine","center","filter","Array","from","drawImageRectCubic","drawImageRectOptions","drawPaint","drawLine","x0","y0","x1","y1","drawCircle","cx","cy","radius","drawVertices","verts","mode","drawPatch","cubics","colors","texs","map","flat","flatMap","p","undefined","restoreToCount","saveCount","drawPoints","points","drawArc","oval","startAngle","sweepAngle","useCenter","drawRRect","rrect","drawDRRect","outer","inner","drawOval","drawPath","path","drawText","str","font","drawTextBlob","blob","drawGlyphs","glyphs","positions","drawSvg","_svgDom","_width","_height","Error","save","saveLayer","bounds","backdrop","flags","restore","rotate","rotationInDegrees","rx","ry","scale","sx","sy","skew","translate","dx","dy","drawColor","color","blendMode","clear","clipPath","op","doAntiAlias","clipRect","clipRRect","concat","m","drawPicture","skp"],"sources":["JsiSkCanvas.ts"],"sourcesContent":["import type { Canvas, CanvasKit } from \"canvaskit-wasm\";\n\nimport type {\n BlendMode,\n ClipOp,\n FilterMode,\n MipmapMode,\n PointMode,\n SaveLayerFlag,\n SkCanvas,\n SkColor,\n SkFont,\n SkImage,\n SkImageFilter,\n SkMatrix,\n SkPaint,\n SkPath,\n SkPicture,\n SkPoint,\n SkRect,\n SkRRect,\n SkSVG,\n SkTextBlob,\n SkVertices,\n} from \"../types\";\n\nimport { ckEnum, HostObject } from \"./Host\";\nimport { JsiSkPaint } from \"./JsiSkPaint\";\nimport { JsiSkRect } from \"./JsiSkRect\";\nimport { JsiSkRRect } from \"./JsiSkRRect\";\nimport { JsiSkImage } from \"./JsiSkImage\";\nimport { JsiSkVertices } from \"./JsiSkVertices\";\nimport { JsiSkPath } from \"./JsiSkPath\";\nimport { JsiSkFont } from \"./JsiSkFont\";\nimport { JsiSkTextBlob } from \"./JsiSkTextBlob\";\nimport { JsiSkPicture } from \"./JsiSkPicture\";\nimport { JsiSkMatrix } from \"./JsiSkMatrix\";\nimport { JsiSkImageFilter } from \"./JsiSkImageFilter\";\nimport { JsiSkPoint } from \"./JsiSkPoint\";\n\nexport class JsiSkCanvas\n extends HostObject<Canvas, \"Canvas\">\n implements SkCanvas\n{\n constructor(CanvasKit: CanvasKit, ref: Canvas) {\n super(CanvasKit, ref, \"Canvas\");\n }\n\n dispose = () => {\n this.ref.delete();\n };\n\n drawRect(rect: SkRect, paint: SkPaint) {\n this.ref.drawRect(\n JsiSkRect.fromValue(this.CanvasKit, rect),\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawImage(image: SkImage, x: number, y: number, paint?: SkPaint) {\n this.ref.drawImage(\n JsiSkImage.fromValue(image),\n x,\n y,\n paint ? JsiSkPaint.fromValue(paint) : paint\n );\n }\n\n drawImageRect(\n img: SkImage,\n src: SkRect,\n dest: SkRect,\n paint: SkPaint,\n fastSample?: boolean\n ) {\n this.ref.drawImageRect(\n JsiSkImage.fromValue(img),\n JsiSkRect.fromValue(this.CanvasKit, src),\n JsiSkRect.fromValue(this.CanvasKit, dest),\n JsiSkPaint.fromValue(paint),\n fastSample\n );\n }\n\n drawImageCubic(\n img: SkImage,\n left: number,\n top: number,\n B: number,\n C: number,\n paint?: SkPaint | null\n ) {\n this.ref.drawImageCubic(\n JsiSkImage.fromValue(img),\n left,\n top,\n B,\n C,\n paint ? JsiSkPaint.fromValue(paint) : paint\n );\n }\n\n drawImageOptions(\n img: SkImage,\n left: number,\n top: number,\n fm: FilterMode,\n mm: MipmapMode,\n paint?: SkPaint | null\n ) {\n this.ref.drawImageOptions(\n JsiSkImage.fromValue(img),\n left,\n top,\n ckEnum(fm),\n ckEnum(mm),\n paint ? JsiSkPaint.fromValue(paint) : paint\n );\n }\n\n drawImageNine(\n img: SkImage,\n center: SkRect,\n dest: SkRect,\n filter: FilterMode,\n paint?: SkPaint | null\n ) {\n this.ref.drawImageNine(\n JsiSkImage.fromValue(img),\n Array.from(JsiSkRect.fromValue(this.CanvasKit, center)),\n JsiSkRect.fromValue(this.CanvasKit, dest),\n ckEnum(filter),\n paint ? JsiSkPaint.fromValue(paint) : paint\n );\n }\n\n drawImageRectCubic(\n img: SkImage,\n src: SkRect,\n dest: SkRect,\n B: number,\n C: number,\n paint?: SkPaint | null\n ) {\n this.ref.drawImageRectCubic(\n JsiSkImage.fromValue(img),\n JsiSkRect.fromValue(this.CanvasKit, src),\n JsiSkRect.fromValue(this.CanvasKit, dest),\n B,\n C,\n paint ? JsiSkPaint.fromValue(paint) : paint\n );\n }\n\n drawImageRectOptions(\n img: SkImage,\n src: SkRect,\n dest: SkRect,\n fm: FilterMode,\n mm: MipmapMode,\n paint?: SkPaint | null\n ) {\n this.ref.drawImageRectOptions(\n JsiSkImage.fromValue(img),\n JsiSkRect.fromValue(this.CanvasKit, src),\n JsiSkRect.fromValue(this.CanvasKit, dest),\n ckEnum(fm),\n ckEnum(mm),\n paint ? JsiSkPaint.fromValue(paint) : paint\n );\n }\n\n drawPaint(paint: SkPaint) {\n this.ref.drawPaint(JsiSkPaint.fromValue(paint));\n }\n\n drawLine(x0: number, y0: number, x1: number, y1: number, paint: SkPaint) {\n this.ref.drawLine(x0, y0, x1, y1, JsiSkPaint.fromValue(paint));\n }\n\n drawCircle(cx: number, cy: number, radius: number, paint: SkPaint) {\n this.ref.drawCircle(cx, cy, radius, JsiSkPaint.fromValue(paint));\n }\n\n drawVertices(verts: SkVertices, mode: BlendMode, paint: SkPaint) {\n this.ref.drawVertices(\n JsiSkVertices.fromValue(verts),\n ckEnum(mode),\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawPatch(\n cubics: SkPoint[],\n colors?: SkColor[] | null,\n texs?: SkPoint[] | null,\n mode?: BlendMode | null,\n paint?: SkPaint\n ) {\n this.ref.drawPatch(\n cubics.map(({ x, y }) => [x, y]).flat(),\n colors,\n texs ? texs.flatMap((p) => Array.from(JsiSkPoint.fromValue(p))) : texs,\n mode ? ckEnum(mode) : null,\n paint ? JsiSkPaint.fromValue(paint) : undefined\n );\n }\n\n restoreToCount(saveCount: number) {\n this.ref.restoreToCount(saveCount);\n }\n\n drawPoints(mode: PointMode, points: SkPoint[], paint: SkPaint) {\n this.ref.drawPoints(\n ckEnum(mode),\n points.map(({ x, y }) => [x, y]).flat(),\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawArc(\n oval: SkRect,\n startAngle: number,\n sweepAngle: number,\n useCenter: boolean,\n paint: SkPaint\n ) {\n this.ref.drawArc(\n JsiSkRect.fromValue(this.CanvasKit, oval),\n startAngle,\n sweepAngle,\n useCenter,\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawRRect(rrect: SkRRect, paint: SkPaint) {\n this.ref.drawRRect(\n JsiSkRRect.fromValue(this.CanvasKit, rrect),\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawDRRect(outer: SkRRect, inner: SkRRect, paint: SkPaint) {\n this.ref.drawDRRect(\n JsiSkRRect.fromValue(this.CanvasKit, outer),\n JsiSkRRect.fromValue(this.CanvasKit, inner),\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawOval(oval: SkRect, paint: SkPaint) {\n this.ref.drawOval(\n JsiSkRect.fromValue(this.CanvasKit, oval),\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawPath(path: SkPath, paint: SkPaint) {\n this.ref.drawPath(JsiSkPath.fromValue(path), JsiSkPaint.fromValue(paint));\n }\n\n drawText(str: string, x: number, y: number, paint: SkPaint, font: SkFont) {\n this.ref.drawText(\n str,\n x,\n y,\n JsiSkPaint.fromValue(paint),\n JsiSkFont.fromValue(font)\n );\n }\n\n drawTextBlob(blob: SkTextBlob, x: number, y: number, paint: SkPaint) {\n this.ref.drawTextBlob(\n JsiSkTextBlob.fromValue(blob),\n x,\n y,\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawGlyphs(\n glyphs: number[],\n positions: SkPoint[],\n x: number,\n y: number,\n font: SkFont,\n paint: SkPaint\n ) {\n this.ref.drawGlyphs(\n glyphs,\n positions.map((p) => [p.x, p.y]).flat(),\n x,\n y,\n JsiSkFont.fromValue(font),\n JsiSkPaint.fromValue(paint)\n );\n }\n\n drawSvg(_svgDom: SkSVG, _width?: number, _height?: number) {\n throw new Error(\"drawSvg is not implemented on React Native Web\");\n }\n\n save() {\n return this.ref.save();\n }\n\n saveLayer(\n paint?: SkPaint,\n bounds?: SkRect | null,\n backdrop?: SkImageFilter | null,\n flags?: SaveLayerFlag\n ) {\n return this.ref.saveLayer(\n paint ? JsiSkPaint.fromValue(paint) : undefined,\n bounds ? JsiSkRect.fromValue(this.CanvasKit, bounds) : bounds,\n backdrop ? JsiSkImageFilter.fromValue(backdrop) : backdrop,\n flags\n );\n }\n\n restore() {\n this.ref.restore();\n }\n\n rotate(rotationInDegrees: number, rx: number, ry: number) {\n this.ref.rotate(rotationInDegrees, rx, ry);\n }\n\n scale(sx: number, sy: number) {\n this.ref.scale(sx, sy);\n }\n\n skew(sx: number, sy: number) {\n this.ref.skew(sx, sy);\n }\n\n translate(dx: number, dy: number) {\n this.ref.translate(dx, dy);\n }\n\n drawColor(color: SkColor, blendMode?: BlendMode) {\n this.ref.drawColor(color, blendMode ? ckEnum(blendMode) : undefined);\n }\n\n clear(color: SkColor) {\n this.ref.clear(color);\n }\n\n clipPath(path: SkPath, op: ClipOp, doAntiAlias: boolean) {\n this.ref.clipPath(JsiSkPath.fromValue(path), ckEnum(op), doAntiAlias);\n }\n\n clipRect(rect: SkRect, op: ClipOp, doAntiAlias: boolean) {\n this.ref.clipRect(\n JsiSkRect.fromValue(this.CanvasKit, rect),\n ckEnum(op),\n doAntiAlias\n );\n }\n\n clipRRect(rrect: SkRRect, op: ClipOp, doAntiAlias: boolean) {\n this.ref.clipRRect(\n JsiSkRRect.fromValue(this.CanvasKit, rrect),\n ckEnum(op),\n doAntiAlias\n );\n }\n\n concat(m: SkMatrix) {\n this.ref.concat(JsiSkMatrix.fromValue(m));\n }\n\n drawPicture(skp: SkPicture) {\n this.ref.drawPicture(JsiSkPicture.fromValue(skp));\n }\n}\n"],"mappings":"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"}
@@ -3,4 +3,5 @@ import type { SkColorFilter } from "../types";
3
3
  import { HostObject } from "./Host";
4
4
  export declare class JsiSkColorFilter extends HostObject<ColorFilter, "ColorFilter"> implements SkColorFilter {
5
5
  constructor(CanvasKit: CanvasKit, ref: ColorFilter);
6
+ dispose: () => void;
6
7
  }
@@ -1,7 +1,13 @@
1
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+
1
3
  import { HostObject } from "./Host";
2
4
  export class JsiSkColorFilter extends HostObject {
3
5
  constructor(CanvasKit, ref) {
4
6
  super(CanvasKit, ref, "ColorFilter");
7
+
8
+ _defineProperty(this, "dispose", () => {
9
+ this.ref.delete();
10
+ });
5
11
  }
6
12
 
7
13
  }
@@ -1 +1 @@
1
- {"version":3,"names":["HostObject","JsiSkColorFilter","constructor","CanvasKit","ref"],"sources":["JsiSkColorFilter.ts"],"sourcesContent":["import type { CanvasKit, ColorFilter } from \"canvaskit-wasm\";\n\nimport type { SkColorFilter } from \"../types\";\n\nimport { HostObject } from \"./Host\";\n\nexport class JsiSkColorFilter\n extends HostObject<ColorFilter, \"ColorFilter\">\n implements SkColorFilter\n{\n constructor(CanvasKit: CanvasKit, ref: ColorFilter) {\n super(CanvasKit, ref, \"ColorFilter\");\n }\n}\n"],"mappings":"AAIA,SAASA,UAAT,QAA2B,QAA3B;AAEA,OAAO,MAAMC,gBAAN,SACGD,UADH,CAGP;EACEE,WAAW,CAACC,SAAD,EAAuBC,GAAvB,EAAyC;IAClD,MAAMD,SAAN,EAAiBC,GAAjB,EAAsB,aAAtB;EACD;;AAHH"}
1
+ {"version":3,"names":["HostObject","JsiSkColorFilter","constructor","CanvasKit","ref","delete"],"sources":["JsiSkColorFilter.ts"],"sourcesContent":["import type { CanvasKit, ColorFilter } from \"canvaskit-wasm\";\n\nimport type { SkColorFilter } from \"../types\";\n\nimport { HostObject } from \"./Host\";\n\nexport class JsiSkColorFilter\n extends HostObject<ColorFilter, \"ColorFilter\">\n implements SkColorFilter\n{\n constructor(CanvasKit: CanvasKit, ref: ColorFilter) {\n super(CanvasKit, ref, \"ColorFilter\");\n }\n\n dispose = () => {\n this.ref.delete();\n };\n}\n"],"mappings":";;AAIA,SAASA,UAAT,QAA2B,QAA3B;AAEA,OAAO,MAAMC,gBAAN,SACGD,UADH,CAGP;EACEE,WAAW,CAACC,SAAD,EAAuBC,GAAvB,EAAyC;IAClD,MAAMD,SAAN,EAAiBC,GAAjB,EAAsB,aAAtB;;IADkD,iCAI1C,MAAM;MACd,KAAKA,GAAL,CAASC,MAAT;IACD,CANmD;EAEnD;;AAHH"}