@shopify/react-native-skia 0.1.115

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1704) hide show
  1. package/LICENSE.md +7 -0
  2. package/README.md +7 -0
  3. package/android/CMakeLists.txt +132 -0
  4. package/android/README.md +14 -0
  5. package/android/build.gradle +196 -0
  6. package/android/cpp/jni/JniLoad.cpp +13 -0
  7. package/android/cpp/jni/JniPlatformContext.cpp +142 -0
  8. package/android/cpp/jni/JniSkiaDrawView.cpp +169 -0
  9. package/android/cpp/jni/JniSkiaManager.cpp +57 -0
  10. package/android/cpp/jni/SkiaOpenGLRenderer.cpp +340 -0
  11. package/android/cpp/jni/include/JniPlatformContext.h +75 -0
  12. package/android/cpp/jni/include/JniPlatformContextWrapper.h +54 -0
  13. package/android/cpp/jni/include/JniSkiaDrawView.h +82 -0
  14. package/android/cpp/jni/include/JniSkiaManager.h +81 -0
  15. package/android/cpp/jni/include/SkiaOpenGLRenderer.h +159 -0
  16. package/android/src/main/AndroidManifest.xml +6 -0
  17. package/android/src/main/java/com/shopify/reactnative/skia/PlatformContext.java +181 -0
  18. package/android/src/main/java/com/shopify/reactnative/skia/RNSkiaModule.java +88 -0
  19. package/android/src/main/java/com/shopify/reactnative/skia/RNSkiaPackage.java +24 -0
  20. package/android/src/main/java/com/shopify/reactnative/skia/RNSkiaViewManager.java +72 -0
  21. package/android/src/main/java/com/shopify/reactnative/skia/SkiaDrawView.java +137 -0
  22. package/android/src/main/java/com/shopify/reactnative/skia/SkiaManager.java +66 -0
  23. package/cpp/api/JsiSkApi.h +97 -0
  24. package/cpp/api/JsiSkCanvas.h +532 -0
  25. package/cpp/api/JsiSkColorFilter.h +43 -0
  26. package/cpp/api/JsiSkColorFilterFactory.h +98 -0
  27. package/cpp/api/JsiSkContourMeasure.h +102 -0
  28. package/cpp/api/JsiSkContourMeasureIter.h +90 -0
  29. package/cpp/api/JsiSkData.h +46 -0
  30. package/cpp/api/JsiSkDataFactory.h +92 -0
  31. package/cpp/api/JsiSkFont.h +326 -0
  32. package/cpp/api/JsiSkFontMgr.h +84 -0
  33. package/cpp/api/JsiSkFontMgrFactory.h +48 -0
  34. package/cpp/api/JsiSkHostObjects.h +83 -0
  35. package/cpp/api/JsiSkImage.h +141 -0
  36. package/cpp/api/JsiSkImageFactory.h +50 -0
  37. package/cpp/api/JsiSkImageFilter.h +47 -0
  38. package/cpp/api/JsiSkImageFilterFactory.h +217 -0
  39. package/cpp/api/JsiSkImageInfo.h +57 -0
  40. package/cpp/api/JsiSkMaskFilter.h +45 -0
  41. package/cpp/api/JsiSkMaskFilterFactory.h +42 -0
  42. package/cpp/api/JsiSkMatrix.h +64 -0
  43. package/cpp/api/JsiSkPaint.h +227 -0
  44. package/cpp/api/JsiSkPath.h +557 -0
  45. package/cpp/api/JsiSkPathEffect.h +45 -0
  46. package/cpp/api/JsiSkPathEffectFactory.h +123 -0
  47. package/cpp/api/JsiSkPathFactory.h +64 -0
  48. package/cpp/api/JsiSkPoint.h +81 -0
  49. package/cpp/api/JsiSkRRect.h +93 -0
  50. package/cpp/api/JsiSkRSXform.h +105 -0
  51. package/cpp/api/JsiSkRect.h +119 -0
  52. package/cpp/api/JsiSkRuntimeEffect.h +217 -0
  53. package/cpp/api/JsiSkRuntimeEffectFactory.h +41 -0
  54. package/cpp/api/JsiSkSVG.h +43 -0
  55. package/cpp/api/JsiSkSVGFactory.h +48 -0
  56. package/cpp/api/JsiSkShader.h +45 -0
  57. package/cpp/api/JsiSkShaderFactory.h +214 -0
  58. package/cpp/api/JsiSkSurface.h +67 -0
  59. package/cpp/api/JsiSkSurfaceFactory.h +44 -0
  60. package/cpp/api/JsiSkTextBlob.h +50 -0
  61. package/cpp/api/JsiSkTextBlobFactory.h +109 -0
  62. package/cpp/api/JsiSkTypeface.h +76 -0
  63. package/cpp/api/JsiSkTypefaceFactory.h +30 -0
  64. package/cpp/api/JsiSkVertices.h +147 -0
  65. package/cpp/jsi/JsiHostObject.cpp +154 -0
  66. package/cpp/jsi/JsiHostObject.h +241 -0
  67. package/cpp/rnskia/RNSkAnimation.h +73 -0
  68. package/cpp/rnskia/RNSkDispatchQueue.cpp +84 -0
  69. package/cpp/rnskia/RNSkDispatchQueue.h +47 -0
  70. package/cpp/rnskia/RNSkDrawView.cpp +333 -0
  71. package/cpp/rnskia/RNSkDrawView.h +242 -0
  72. package/cpp/rnskia/RNSkInfoParameter.h +100 -0
  73. package/cpp/rnskia/RNSkJsiViewApi.h +305 -0
  74. package/cpp/rnskia/RNSkManager.cpp +81 -0
  75. package/cpp/rnskia/RNSkManager.h +81 -0
  76. package/cpp/rnskia/RNSkPlatformContext.h +196 -0
  77. package/cpp/rnskia/RNSkValueApi.h +69 -0
  78. package/cpp/rnskia/values/RNSkClockValue.h +133 -0
  79. package/cpp/rnskia/values/RNSkDerivedValue.h +92 -0
  80. package/cpp/rnskia/values/RNSkReadonlyValue.h +140 -0
  81. package/cpp/rnskia/values/RNSkValue.h +112 -0
  82. package/cpp/skia/include/android/SkAndroidFrameworkUtils.h +61 -0
  83. package/cpp/skia/include/android/SkAnimatedImage.h +179 -0
  84. package/cpp/skia/include/c/sk_canvas.h +159 -0
  85. package/cpp/skia/include/c/sk_colorspace.h +25 -0
  86. package/cpp/skia/include/c/sk_data.h +65 -0
  87. package/cpp/skia/include/c/sk_image.h +71 -0
  88. package/cpp/skia/include/c/sk_imageinfo.h +62 -0
  89. package/cpp/skia/include/c/sk_maskfilter.h +47 -0
  90. package/cpp/skia/include/c/sk_matrix.h +49 -0
  91. package/cpp/skia/include/c/sk_paint.h +145 -0
  92. package/cpp/skia/include/c/sk_path.h +102 -0
  93. package/cpp/skia/include/c/sk_picture.h +70 -0
  94. package/cpp/skia/include/c/sk_shader.h +143 -0
  95. package/cpp/skia/include/c/sk_surface.h +73 -0
  96. package/cpp/skia/include/c/sk_types.h +278 -0
  97. package/cpp/skia/include/codec/SkAndroidCodec.h +263 -0
  98. package/cpp/skia/include/codec/SkCodec.h +992 -0
  99. package/cpp/skia/include/codec/SkCodecAnimation.h +61 -0
  100. package/cpp/skia/include/codec/SkEncodedOrigin.h +54 -0
  101. package/cpp/skia/include/config/SkUserConfig.h +89 -0
  102. package/cpp/skia/include/core/SkAnnotation.h +50 -0
  103. package/cpp/skia/include/core/SkBBHFactory.h +63 -0
  104. package/cpp/skia/include/core/SkBitmap.h +1212 -0
  105. package/cpp/skia/include/core/SkBlendMode.h +110 -0
  106. package/cpp/skia/include/core/SkBlender.h +33 -0
  107. package/cpp/skia/include/core/SkBlurTypes.h +22 -0
  108. package/cpp/skia/include/core/SkCanvas.h +2583 -0
  109. package/cpp/skia/include/core/SkCanvasVirtualEnforcer.h +61 -0
  110. package/cpp/skia/include/core/SkClipOp.h +19 -0
  111. package/cpp/skia/include/core/SkColor.h +438 -0
  112. package/cpp/skia/include/core/SkColorFilter.h +90 -0
  113. package/cpp/skia/include/core/SkColorPriv.h +152 -0
  114. package/cpp/skia/include/core/SkColorSpace.h +245 -0
  115. package/cpp/skia/include/core/SkContourMeasure.h +131 -0
  116. package/cpp/skia/include/core/SkCoverageMode.h +30 -0
  117. package/cpp/skia/include/core/SkCubicMap.h +45 -0
  118. package/cpp/skia/include/core/SkCustomMesh.h +202 -0
  119. package/cpp/skia/include/core/SkData.h +188 -0
  120. package/cpp/skia/include/core/SkDataTable.h +118 -0
  121. package/cpp/skia/include/core/SkDeferredDisplayList.h +110 -0
  122. package/cpp/skia/include/core/SkDeferredDisplayListRecorder.h +97 -0
  123. package/cpp/skia/include/core/SkDocument.h +91 -0
  124. package/cpp/skia/include/core/SkDrawLooper.h +135 -0
  125. package/cpp/skia/include/core/SkDrawable.h +160 -0
  126. package/cpp/skia/include/core/SkEncodedImageFormat.h +35 -0
  127. package/cpp/skia/include/core/SkExecutor.h +41 -0
  128. package/cpp/skia/include/core/SkFlattenable.h +113 -0
  129. package/cpp/skia/include/core/SkFont.h +534 -0
  130. package/cpp/skia/include/core/SkFontArguments.h +62 -0
  131. package/cpp/skia/include/core/SkFontMetrics.h +138 -0
  132. package/cpp/skia/include/core/SkFontMgr.h +157 -0
  133. package/cpp/skia/include/core/SkFontParameters.h +42 -0
  134. package/cpp/skia/include/core/SkFontStyle.h +81 -0
  135. package/cpp/skia/include/core/SkFontTypes.h +25 -0
  136. package/cpp/skia/include/core/SkGraphics.h +153 -0
  137. package/cpp/skia/include/core/SkICC.h +19 -0
  138. package/cpp/skia/include/core/SkImage.h +1302 -0
  139. package/cpp/skia/include/core/SkImageEncoder.h +72 -0
  140. package/cpp/skia/include/core/SkImageFilter.h +114 -0
  141. package/cpp/skia/include/core/SkImageGenerator.h +215 -0
  142. package/cpp/skia/include/core/SkImageInfo.h +721 -0
  143. package/cpp/skia/include/core/SkM44.h +426 -0
  144. package/cpp/skia/include/core/SkMallocPixelRef.h +42 -0
  145. package/cpp/skia/include/core/SkMaskFilter.h +50 -0
  146. package/cpp/skia/include/core/SkMath.h +54 -0
  147. package/cpp/skia/include/core/SkMatrix.h +1986 -0
  148. package/cpp/skia/include/core/SkMilestone.h +9 -0
  149. package/cpp/skia/include/core/SkOverdrawCanvas.h +68 -0
  150. package/cpp/skia/include/core/SkPaint.h +720 -0
  151. package/cpp/skia/include/core/SkPath.h +1891 -0
  152. package/cpp/skia/include/core/SkPathBuilder.h +268 -0
  153. package/cpp/skia/include/core/SkPathEffect.h +106 -0
  154. package/cpp/skia/include/core/SkPathMeasure.h +88 -0
  155. package/cpp/skia/include/core/SkPathTypes.h +59 -0
  156. package/cpp/skia/include/core/SkPicture.h +280 -0
  157. package/cpp/skia/include/core/SkPictureRecorder.h +115 -0
  158. package/cpp/skia/include/core/SkPixelRef.h +123 -0
  159. package/cpp/skia/include/core/SkPixmap.h +720 -0
  160. package/cpp/skia/include/core/SkPngChunkReader.h +45 -0
  161. package/cpp/skia/include/core/SkPoint.h +566 -0
  162. package/cpp/skia/include/core/SkPoint3.h +157 -0
  163. package/cpp/skia/include/core/SkPromiseImageTexture.h +46 -0
  164. package/cpp/skia/include/core/SkRRect.h +512 -0
  165. package/cpp/skia/include/core/SkRSXform.h +69 -0
  166. package/cpp/skia/include/core/SkRasterHandleAllocator.h +92 -0
  167. package/cpp/skia/include/core/SkRect.h +1378 -0
  168. package/cpp/skia/include/core/SkRefCnt.h +382 -0
  169. package/cpp/skia/include/core/SkRegion.h +672 -0
  170. package/cpp/skia/include/core/SkSamplingOptions.h +92 -0
  171. package/cpp/skia/include/core/SkScalar.h +194 -0
  172. package/cpp/skia/include/core/SkSerialProcs.h +73 -0
  173. package/cpp/skia/include/core/SkShader.h +148 -0
  174. package/cpp/skia/include/core/SkSize.h +90 -0
  175. package/cpp/skia/include/core/SkSpan.h +89 -0
  176. package/cpp/skia/include/core/SkStream.h +524 -0
  177. package/cpp/skia/include/core/SkString.h +302 -0
  178. package/cpp/skia/include/core/SkStringView.h +185 -0
  179. package/cpp/skia/include/core/SkStrokeRec.h +154 -0
  180. package/cpp/skia/include/core/SkSurface.h +1079 -0
  181. package/cpp/skia/include/core/SkSurfaceCharacterization.h +263 -0
  182. package/cpp/skia/include/core/SkSurfaceProps.h +92 -0
  183. package/cpp/skia/include/core/SkSwizzle.h +19 -0
  184. package/cpp/skia/include/core/SkTextBlob.h +503 -0
  185. package/cpp/skia/include/core/SkTileMode.h +41 -0
  186. package/cpp/skia/include/core/SkTime.h +63 -0
  187. package/cpp/skia/include/core/SkTraceMemoryDump.h +99 -0
  188. package/cpp/skia/include/core/SkTypeface.h +454 -0
  189. package/cpp/skia/include/core/SkTypes.h +621 -0
  190. package/cpp/skia/include/core/SkUnPreMultiply.h +56 -0
  191. package/cpp/skia/include/core/SkVertices.h +132 -0
  192. package/cpp/skia/include/core/SkYUVAInfo.h +304 -0
  193. package/cpp/skia/include/core/SkYUVAPixmaps.h +336 -0
  194. package/cpp/skia/include/docs/SkPDFDocument.h +196 -0
  195. package/cpp/skia/include/docs/SkXPSDocument.h +27 -0
  196. package/cpp/skia/include/effects/Sk1DPathEffect.h +35 -0
  197. package/cpp/skia/include/effects/Sk2DPathEffect.h +30 -0
  198. package/cpp/skia/include/effects/SkBlenders.h +27 -0
  199. package/cpp/skia/include/effects/SkBlurDrawLooper.h +26 -0
  200. package/cpp/skia/include/effects/SkBlurMaskFilter.h +35 -0
  201. package/cpp/skia/include/effects/SkColorMatrix.h +55 -0
  202. package/cpp/skia/include/effects/SkColorMatrixFilter.h +25 -0
  203. package/cpp/skia/include/effects/SkCornerPathEffect.h +28 -0
  204. package/cpp/skia/include/effects/SkDashPathEffect.h +39 -0
  205. package/cpp/skia/include/effects/SkDiscretePathEffect.h +37 -0
  206. package/cpp/skia/include/effects/SkGradientShader.h +264 -0
  207. package/cpp/skia/include/effects/SkHighContrastFilter.h +80 -0
  208. package/cpp/skia/include/effects/SkImageFilters.h +551 -0
  209. package/cpp/skia/include/effects/SkLayerDrawLooper.h +161 -0
  210. package/cpp/skia/include/effects/SkLumaColorFilter.h +34 -0
  211. package/cpp/skia/include/effects/SkOpPathEffect.h +39 -0
  212. package/cpp/skia/include/effects/SkOverdrawColorFilter.h +29 -0
  213. package/cpp/skia/include/effects/SkPerlinNoiseShader.h +54 -0
  214. package/cpp/skia/include/effects/SkRuntimeEffect.h +518 -0
  215. package/cpp/skia/include/effects/SkShaderMaskFilter.h +24 -0
  216. package/cpp/skia/include/effects/SkStrokeAndFillPathEffect.h +28 -0
  217. package/cpp/skia/include/effects/SkTableColorFilter.h +42 -0
  218. package/cpp/skia/include/effects/SkTableMaskFilter.h +37 -0
  219. package/cpp/skia/include/effects/SkTrimPathEffect.h +41 -0
  220. package/cpp/skia/include/encode/SkEncoder.h +42 -0
  221. package/cpp/skia/include/encode/SkJpegEncoder.h +97 -0
  222. package/cpp/skia/include/encode/SkPngEncoder.h +99 -0
  223. package/cpp/skia/include/encode/SkWebpEncoder.h +48 -0
  224. package/cpp/skia/include/gpu/GrBackendDrawableInfo.h +44 -0
  225. package/cpp/skia/include/gpu/GrBackendSemaphore.h +140 -0
  226. package/cpp/skia/include/gpu/GrBackendSurface.h +643 -0
  227. package/cpp/skia/include/gpu/GrBackendSurfaceMutableState.h +91 -0
  228. package/cpp/skia/include/gpu/GrConfig.h +53 -0
  229. package/cpp/skia/include/gpu/GrContextOptions.h +364 -0
  230. package/cpp/skia/include/gpu/GrContextThreadSafeProxy.h +159 -0
  231. package/cpp/skia/include/gpu/GrDirectContext.h +880 -0
  232. package/cpp/skia/include/gpu/GrDriverBugWorkarounds.h +52 -0
  233. package/cpp/skia/include/gpu/GrDriverBugWorkaroundsAutogen.h +45 -0
  234. package/cpp/skia/include/gpu/GrRecordingContext.h +275 -0
  235. package/cpp/skia/include/gpu/GrSurfaceInfo.h +166 -0
  236. package/cpp/skia/include/gpu/GrTypes.h +244 -0
  237. package/cpp/skia/include/gpu/GrYUVABackendTextures.h +124 -0
  238. package/cpp/skia/include/gpu/ShaderErrorHandler.h +36 -0
  239. package/cpp/skia/include/gpu/d3d/GrD3DBackendContext.h +35 -0
  240. package/cpp/skia/include/gpu/d3d/GrD3DTypes.h +248 -0
  241. package/cpp/skia/include/gpu/dawn/GrDawnTypes.h +95 -0
  242. package/cpp/skia/include/gpu/gl/GrGLAssembleHelpers.h +11 -0
  243. package/cpp/skia/include/gpu/gl/GrGLAssembleInterface.h +39 -0
  244. package/cpp/skia/include/gpu/gl/GrGLConfig.h +79 -0
  245. package/cpp/skia/include/gpu/gl/GrGLConfig_chrome.h +14 -0
  246. package/cpp/skia/include/gpu/gl/GrGLExtensions.h +78 -0
  247. package/cpp/skia/include/gpu/gl/GrGLFunctions.h +304 -0
  248. package/cpp/skia/include/gpu/gl/GrGLInterface.h +342 -0
  249. package/cpp/skia/include/gpu/gl/GrGLTypes.h +207 -0
  250. package/cpp/skia/include/gpu/gl/egl/GrGLMakeEGLInterface.h +14 -0
  251. package/cpp/skia/include/gpu/gl/glx/GrGLMakeGLXInterface.h +14 -0
  252. package/cpp/skia/include/gpu/mock/GrMockTypes.h +144 -0
  253. package/cpp/skia/include/gpu/mtl/GrMtlBackendContext.h +21 -0
  254. package/cpp/skia/include/gpu/mtl/GrMtlTypes.h +63 -0
  255. package/cpp/skia/include/gpu/vk/GrVkBackendContext.h +76 -0
  256. package/cpp/skia/include/gpu/vk/GrVkExtensions.h +63 -0
  257. package/cpp/skia/include/gpu/vk/GrVkMemoryAllocator.h +140 -0
  258. package/cpp/skia/include/gpu/vk/GrVkTypes.h +187 -0
  259. package/cpp/skia/include/gpu/vk/GrVkVulkan.h +32 -0
  260. package/cpp/skia/include/pathops/SkPathOps.h +113 -0
  261. package/cpp/skia/include/ports/SkCFObject.h +184 -0
  262. package/cpp/skia/include/ports/SkFontConfigInterface.h +115 -0
  263. package/cpp/skia/include/ports/SkFontMgr_FontConfigInterface.h +20 -0
  264. package/cpp/skia/include/ports/SkFontMgr_android.h +45 -0
  265. package/cpp/skia/include/ports/SkFontMgr_directory.h +21 -0
  266. package/cpp/skia/include/ports/SkFontMgr_empty.h +21 -0
  267. package/cpp/skia/include/ports/SkFontMgr_fontconfig.h +22 -0
  268. package/cpp/skia/include/ports/SkFontMgr_fuchsia.h +19 -0
  269. package/cpp/skia/include/ports/SkFontMgr_indirect.h +102 -0
  270. package/cpp/skia/include/ports/SkFontMgr_mac_ct.h +27 -0
  271. package/cpp/skia/include/ports/SkImageGeneratorCG.h +20 -0
  272. package/cpp/skia/include/ports/SkImageGeneratorNDK.h +40 -0
  273. package/cpp/skia/include/ports/SkImageGeneratorWIC.h +35 -0
  274. package/cpp/skia/include/ports/SkRemotableFontMgr.h +139 -0
  275. package/cpp/skia/include/ports/SkTypeface_mac.h +44 -0
  276. package/cpp/skia/include/ports/SkTypeface_win.h +79 -0
  277. package/cpp/skia/include/private/GrContext_Base.h +92 -0
  278. package/cpp/skia/include/private/GrD3DTypesMinimal.h +74 -0
  279. package/cpp/skia/include/private/GrDawnTypesPriv.h +26 -0
  280. package/cpp/skia/include/private/GrGLTypesPriv.h +107 -0
  281. package/cpp/skia/include/private/GrImageContext.h +55 -0
  282. package/cpp/skia/include/private/GrMockTypesPriv.h +31 -0
  283. package/cpp/skia/include/private/GrMtlTypesPriv.h +75 -0
  284. package/cpp/skia/include/private/GrSingleOwner.h +65 -0
  285. package/cpp/skia/include/private/GrTypesPriv.h +1354 -0
  286. package/cpp/skia/include/private/GrVkTypesPriv.h +107 -0
  287. package/cpp/skia/include/private/SkBitmaskEnum.h +59 -0
  288. package/cpp/skia/include/private/SkChecksum.h +66 -0
  289. package/cpp/skia/include/private/SkColorData.h +441 -0
  290. package/cpp/skia/include/private/SkDeque.h +141 -0
  291. package/cpp/skia/include/private/SkEncodedInfo.h +249 -0
  292. package/cpp/skia/include/private/SkFixed.h +141 -0
  293. package/cpp/skia/include/private/SkFloatBits.h +91 -0
  294. package/cpp/skia/include/private/SkFloatingPoint.h +272 -0
  295. package/cpp/skia/include/private/SkHalf.h +85 -0
  296. package/cpp/skia/include/private/SkIDChangeListener.h +75 -0
  297. package/cpp/skia/include/private/SkImageInfoPriv.h +193 -0
  298. package/cpp/skia/include/private/SkMacros.h +84 -0
  299. package/cpp/skia/include/private/SkMalloc.h +143 -0
  300. package/cpp/skia/include/private/SkMutex.h +56 -0
  301. package/cpp/skia/include/private/SkNoncopyable.h +30 -0
  302. package/cpp/skia/include/private/SkNx.h +430 -0
  303. package/cpp/skia/include/private/SkNx_neon.h +713 -0
  304. package/cpp/skia/include/private/SkNx_sse.h +823 -0
  305. package/cpp/skia/include/private/SkOnce.h +53 -0
  306. package/cpp/skia/include/private/SkOpts_spi.h +21 -0
  307. package/cpp/skia/include/private/SkPaintParamsKey.h +110 -0
  308. package/cpp/skia/include/private/SkPathRef.h +536 -0
  309. package/cpp/skia/include/private/SkSLDefines.h +56 -0
  310. package/cpp/skia/include/private/SkSLIRNode.h +63 -0
  311. package/cpp/skia/include/private/SkSLLayout.h +143 -0
  312. package/cpp/skia/include/private/SkSLModifiers.h +141 -0
  313. package/cpp/skia/include/private/SkSLProgramElement.h +77 -0
  314. package/cpp/skia/include/private/SkSLProgramKind.h +31 -0
  315. package/cpp/skia/include/private/SkSLSampleUsage.h +89 -0
  316. package/cpp/skia/include/private/SkSLStatement.h +87 -0
  317. package/cpp/skia/include/private/SkSLString.h +80 -0
  318. package/cpp/skia/include/private/SkSLSymbol.h +90 -0
  319. package/cpp/skia/include/private/SkSafe32.h +34 -0
  320. package/cpp/skia/include/private/SkSafe_math.h +52 -0
  321. package/cpp/skia/include/private/SkSemaphore.h +83 -0
  322. package/cpp/skia/include/private/SkShaderCodeDictionary.h +63 -0
  323. package/cpp/skia/include/private/SkShadowFlags.h +25 -0
  324. package/cpp/skia/include/private/SkSpinlock.h +57 -0
  325. package/cpp/skia/include/private/SkTArray.h +640 -0
  326. package/cpp/skia/include/private/SkTDArray.h +385 -0
  327. package/cpp/skia/include/private/SkTFitsIn.h +99 -0
  328. package/cpp/skia/include/private/SkTHash.h +548 -0
  329. package/cpp/skia/include/private/SkTLogic.h +86 -0
  330. package/cpp/skia/include/private/SkTOptional.h +362 -0
  331. package/cpp/skia/include/private/SkTPin.h +23 -0
  332. package/cpp/skia/include/private/SkTemplates.h +453 -0
  333. package/cpp/skia/include/private/SkThreadAnnotations.h +91 -0
  334. package/cpp/skia/include/private/SkThreadID.h +20 -0
  335. package/cpp/skia/include/private/SkTo.h +28 -0
  336. package/cpp/skia/include/private/SkUniquePaintParamsID.h +35 -0
  337. package/cpp/skia/include/private/SkVx.h +943 -0
  338. package/cpp/skia/include/private/SkWeakRefCnt.h +170 -0
  339. package/cpp/skia/include/private/chromium/GrSlug.h +41 -0
  340. package/cpp/skia/include/private/chromium/SkChromeRemoteGlyphCache.h +143 -0
  341. package/cpp/skia/include/sksl/DSL.h +34 -0
  342. package/cpp/skia/include/sksl/DSLBlock.h +67 -0
  343. package/cpp/skia/include/sksl/DSLCase.h +68 -0
  344. package/cpp/skia/include/sksl/DSLCore.h +488 -0
  345. package/cpp/skia/include/sksl/DSLExpression.h +299 -0
  346. package/cpp/skia/include/sksl/DSLFunction.h +116 -0
  347. package/cpp/skia/include/sksl/DSLLayout.h +94 -0
  348. package/cpp/skia/include/sksl/DSLModifiers.h +64 -0
  349. package/cpp/skia/include/sksl/DSLRuntimeEffects.h +32 -0
  350. package/cpp/skia/include/sksl/DSLStatement.h +111 -0
  351. package/cpp/skia/include/sksl/DSLSymbols.h +71 -0
  352. package/cpp/skia/include/sksl/DSLType.h +259 -0
  353. package/cpp/skia/include/sksl/DSLVar.h +310 -0
  354. package/cpp/skia/include/sksl/DSLWrapper.h +77 -0
  355. package/cpp/skia/include/sksl/SkSLDebugTrace.h +28 -0
  356. package/cpp/skia/include/sksl/SkSLErrorReporter.h +115 -0
  357. package/cpp/skia/include/svg/SkSVGCanvas.h +37 -0
  358. package/cpp/skia/include/third_party/skcms/LICENSE +29 -0
  359. package/cpp/skia/include/third_party/skcms/skcms.h +394 -0
  360. package/cpp/skia/include/third_party/vulkan/LICENSE +29 -0
  361. package/cpp/skia/include/third_party/vulkan/vulkan/vk_platform.h +84 -0
  362. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan.h +93 -0
  363. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_android.h +112 -0
  364. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_core.h +12620 -0
  365. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_ios.h +47 -0
  366. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_macos.h +47 -0
  367. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_win32.h +315 -0
  368. package/cpp/skia/include/third_party/vulkan/vulkan/vulkan_xcb.h +55 -0
  369. package/cpp/skia/include/utils/SkAnimCodecPlayer.h +60 -0
  370. package/cpp/skia/include/utils/SkBase64.h +51 -0
  371. package/cpp/skia/include/utils/SkCamera.h +107 -0
  372. package/cpp/skia/include/utils/SkCanvasStateUtils.h +78 -0
  373. package/cpp/skia/include/utils/SkCustomTypeface.h +48 -0
  374. package/cpp/skia/include/utils/SkEventTracer.h +79 -0
  375. package/cpp/skia/include/utils/SkNWayCanvas.h +92 -0
  376. package/cpp/skia/include/utils/SkNoDrawCanvas.h +80 -0
  377. package/cpp/skia/include/utils/SkNullCanvas.h +18 -0
  378. package/cpp/skia/include/utils/SkOrderedFontMgr.h +53 -0
  379. package/cpp/skia/include/utils/SkPaintFilterCanvas.h +107 -0
  380. package/cpp/skia/include/utils/SkParse.h +32 -0
  381. package/cpp/skia/include/utils/SkParsePath.h +25 -0
  382. package/cpp/skia/include/utils/SkRandom.h +169 -0
  383. package/cpp/skia/include/utils/SkShadowUtils.h +85 -0
  384. package/cpp/skia/include/utils/SkTextUtils.h +38 -0
  385. package/cpp/skia/include/utils/SkTraceEventPhase.h +19 -0
  386. package/cpp/skia/include/utils/mac/SkCGUtils.h +78 -0
  387. package/cpp/skia/modules/skresources/include/SkResources.h +254 -0
  388. package/cpp/skia/modules/svg/include/SkSVGAttribute.h +113 -0
  389. package/cpp/skia/modules/svg/include/SkSVGAttributeParser.h +134 -0
  390. package/cpp/skia/modules/svg/include/SkSVGCircle.h +43 -0
  391. package/cpp/skia/modules/svg/include/SkSVGClipPath.h +35 -0
  392. package/cpp/skia/modules/svg/include/SkSVGContainer.h +36 -0
  393. package/cpp/skia/modules/svg/include/SkSVGDOM.h +96 -0
  394. package/cpp/skia/modules/svg/include/SkSVGDefs.h +23 -0
  395. package/cpp/skia/modules/svg/include/SkSVGEllipse.h +41 -0
  396. package/cpp/skia/modules/svg/include/SkSVGFe.h +85 -0
  397. package/cpp/skia/modules/svg/include/SkSVGFeBlend.h +45 -0
  398. package/cpp/skia/modules/svg/include/SkSVGFeColorMatrix.h +46 -0
  399. package/cpp/skia/modules/svg/include/SkSVGFeComposite.h +46 -0
  400. package/cpp/skia/modules/svg/include/SkSVGFeDisplacementMap.h +46 -0
  401. package/cpp/skia/modules/svg/include/SkSVGFeFlood.h +32 -0
  402. package/cpp/skia/modules/svg/include/SkSVGFeGaussianBlur.h +41 -0
  403. package/cpp/skia/modules/svg/include/SkSVGFeImage.h +35 -0
  404. package/cpp/skia/modules/svg/include/SkSVGFeLightSource.h +89 -0
  405. package/cpp/skia/modules/svg/include/SkSVGFeLighting.h +121 -0
  406. package/cpp/skia/modules/svg/include/SkSVGFeMorphology.h +47 -0
  407. package/cpp/skia/modules/svg/include/SkSVGFeOffset.h +35 -0
  408. package/cpp/skia/modules/svg/include/SkSVGFeTurbulence.h +40 -0
  409. package/cpp/skia/modules/svg/include/SkSVGFilter.h +39 -0
  410. package/cpp/skia/modules/svg/include/SkSVGFilterContext.h +69 -0
  411. package/cpp/skia/modules/svg/include/SkSVGG.h +23 -0
  412. package/cpp/skia/modules/svg/include/SkSVGGradient.h +48 -0
  413. package/cpp/skia/modules/svg/include/SkSVGHiddenContainer.h +23 -0
  414. package/cpp/skia/modules/svg/include/SkSVGIDMapper.h +19 -0
  415. package/cpp/skia/modules/svg/include/SkSVGImage.h +58 -0
  416. package/cpp/skia/modules/svg/include/SkSVGLine.h +42 -0
  417. package/cpp/skia/modules/svg/include/SkSVGLinearGradient.h +37 -0
  418. package/cpp/skia/modules/svg/include/SkSVGMask.h +43 -0
  419. package/cpp/skia/modules/svg/include/SkSVGNode.h +223 -0
  420. package/cpp/skia/modules/svg/include/SkSVGPath.h +36 -0
  421. package/cpp/skia/modules/svg/include/SkSVGPattern.h +55 -0
  422. package/cpp/skia/modules/svg/include/SkSVGPoly.h +45 -0
  423. package/cpp/skia/modules/svg/include/SkSVGRadialGradient.h +38 -0
  424. package/cpp/skia/modules/svg/include/SkSVGRect.h +46 -0
  425. package/cpp/skia/modules/svg/include/SkSVGRenderContext.h +188 -0
  426. package/cpp/skia/modules/svg/include/SkSVGSVG.h +52 -0
  427. package/cpp/skia/modules/svg/include/SkSVGShape.h +33 -0
  428. package/cpp/skia/modules/svg/include/SkSVGStop.h +34 -0
  429. package/cpp/skia/modules/svg/include/SkSVGText.h +122 -0
  430. package/cpp/skia/modules/svg/include/SkSVGTransformableNode.h +36 -0
  431. package/cpp/skia/modules/svg/include/SkSVGTypes.h +691 -0
  432. package/cpp/skia/modules/svg/include/SkSVGUse.h +42 -0
  433. package/cpp/skia/modules/svg/include/SkSVGValue.h +85 -0
  434. package/cpp/skia/readme.txt +1 -0
  435. package/cpp/utils/RNSkLog.h +53 -0
  436. package/cpp/utils/RNSkMeasureTime.h +32 -0
  437. package/cpp/utils/RNSkTimingInfo.h +91 -0
  438. package/ios/RNSkia-iOS/DisplayLink.h +17 -0
  439. package/ios/RNSkia-iOS/DisplayLink.mm +36 -0
  440. package/ios/RNSkia-iOS/PlatformContext.h +50 -0
  441. package/ios/RNSkia-iOS/PlatformContext.mm +52 -0
  442. package/ios/RNSkia-iOS/RNSkDrawViewImpl.h +57 -0
  443. package/ios/RNSkia-iOS/RNSkDrawViewImpl.mm +98 -0
  444. package/ios/RNSkia-iOS/SkiaDrawView.h +23 -0
  445. package/ios/RNSkia-iOS/SkiaDrawView.mm +165 -0
  446. package/ios/RNSkia-iOS/SkiaDrawViewManager.h +7 -0
  447. package/ios/RNSkia-iOS/SkiaDrawViewManager.mm +42 -0
  448. package/ios/RNSkia-iOS/SkiaManager.h +17 -0
  449. package/ios/RNSkia-iOS/SkiaManager.mm +50 -0
  450. package/ios/RNSkiaModule.h +11 -0
  451. package/ios/RNSkiaModule.mm +42 -0
  452. package/ios/Rnskia.xcodeproj/project.pbxproj +281 -0
  453. package/ios/Rnskia.xcworkspace/contents.xcworkspacedata +7 -0
  454. package/lib/commonjs/external/index.js +19 -0
  455. package/lib/commonjs/external/index.js.map +1 -0
  456. package/lib/commonjs/external/reanimated/index.js +19 -0
  457. package/lib/commonjs/external/reanimated/index.js.map +1 -0
  458. package/lib/commonjs/external/reanimated/useSharedValueEffect.js +86 -0
  459. package/lib/commonjs/external/reanimated/useSharedValueEffect.js.map +1 -0
  460. package/lib/commonjs/index.js +73 -0
  461. package/lib/commonjs/index.js.map +1 -0
  462. package/lib/commonjs/renderer/Canvas.js +186 -0
  463. package/lib/commonjs/renderer/Canvas.js.map +1 -0
  464. package/lib/commonjs/renderer/DependencyManager.js +70 -0
  465. package/lib/commonjs/renderer/DependencyManager.js.map +1 -0
  466. package/lib/commonjs/renderer/DrawingContext.js +6 -0
  467. package/lib/commonjs/renderer/DrawingContext.js.map +1 -0
  468. package/lib/commonjs/renderer/HostConfig.js +272 -0
  469. package/lib/commonjs/renderer/HostConfig.js.map +1 -0
  470. package/lib/commonjs/renderer/components/Blend.js +46 -0
  471. package/lib/commonjs/renderer/components/Blend.js.map +1 -0
  472. package/lib/commonjs/renderer/components/Compose.js +41 -0
  473. package/lib/commonjs/renderer/components/Compose.js.map +1 -0
  474. package/lib/commonjs/renderer/components/Defs.js +30 -0
  475. package/lib/commonjs/renderer/components/Defs.js.map +1 -0
  476. package/lib/commonjs/renderer/components/Group.js +73 -0
  477. package/lib/commonjs/renderer/components/Group.js.map +1 -0
  478. package/lib/commonjs/renderer/components/Mask.js +58 -0
  479. package/lib/commonjs/renderer/components/Mask.js.map +1 -0
  480. package/lib/commonjs/renderer/components/Paint.js +54 -0
  481. package/lib/commonjs/renderer/components/Paint.js.map +1 -0
  482. package/lib/commonjs/renderer/components/backdrop/BackdropBlur.js +33 -0
  483. package/lib/commonjs/renderer/components/backdrop/BackdropBlur.js.map +1 -0
  484. package/lib/commonjs/renderer/components/backdrop/BackdropFilter.js +54 -0
  485. package/lib/commonjs/renderer/components/backdrop/BackdropFilter.js.map +1 -0
  486. package/lib/commonjs/renderer/components/backdrop/index.js +32 -0
  487. package/lib/commonjs/renderer/components/backdrop/index.js.map +1 -0
  488. package/lib/commonjs/renderer/components/colorFilters/BlendColor.js +40 -0
  489. package/lib/commonjs/renderer/components/colorFilters/BlendColor.js.map +1 -0
  490. package/lib/commonjs/renderer/components/colorFilters/Compose.js +24 -0
  491. package/lib/commonjs/renderer/components/colorFilters/Compose.js.map +1 -0
  492. package/lib/commonjs/renderer/components/colorFilters/Lerp.js +40 -0
  493. package/lib/commonjs/renderer/components/colorFilters/Lerp.js.map +1 -0
  494. package/lib/commonjs/renderer/components/colorFilters/LinearToSRGBGamma.js +33 -0
  495. package/lib/commonjs/renderer/components/colorFilters/LinearToSRGBGamma.js.map +1 -0
  496. package/lib/commonjs/renderer/components/colorFilters/LumaColorFilter.js +33 -0
  497. package/lib/commonjs/renderer/components/colorFilters/LumaColorFilter.js.map +1 -0
  498. package/lib/commonjs/renderer/components/colorFilters/Matrix.js +41 -0
  499. package/lib/commonjs/renderer/components/colorFilters/Matrix.js.map +1 -0
  500. package/lib/commonjs/renderer/components/colorFilters/SRGBToLinearGamma.js +33 -0
  501. package/lib/commonjs/renderer/components/colorFilters/SRGBToLinearGamma.js.map +1 -0
  502. package/lib/commonjs/renderer/components/colorFilters/index.js +84 -0
  503. package/lib/commonjs/renderer/components/colorFilters/index.js.map +1 -0
  504. package/lib/commonjs/renderer/components/image/BoxFit.js +162 -0
  505. package/lib/commonjs/renderer/components/image/BoxFit.js.map +1 -0
  506. package/lib/commonjs/renderer/components/image/Image.js +55 -0
  507. package/lib/commonjs/renderer/components/image/Image.js.map +1 -0
  508. package/lib/commonjs/renderer/components/image/ImageSVG.js +45 -0
  509. package/lib/commonjs/renderer/components/image/ImageSVG.js.map +1 -0
  510. package/lib/commonjs/renderer/components/image/ImageShader.js +82 -0
  511. package/lib/commonjs/renderer/components/image/ImageShader.js.map +1 -0
  512. package/lib/commonjs/renderer/components/image/index.js +58 -0
  513. package/lib/commonjs/renderer/components/image/index.js.map +1 -0
  514. package/lib/commonjs/renderer/components/imageFilters/Blur.js +43 -0
  515. package/lib/commonjs/renderer/components/imageFilters/Blur.js.map +1 -0
  516. package/lib/commonjs/renderer/components/imageFilters/DisplacementMap.js +53 -0
  517. package/lib/commonjs/renderer/components/imageFilters/DisplacementMap.js.map +1 -0
  518. package/lib/commonjs/renderer/components/imageFilters/DropShadow.js +45 -0
  519. package/lib/commonjs/renderer/components/imageFilters/DropShadow.js.map +1 -0
  520. package/lib/commonjs/renderer/components/imageFilters/InnerShadow.js +60 -0
  521. package/lib/commonjs/renderer/components/imageFilters/InnerShadow.js.map +1 -0
  522. package/lib/commonjs/renderer/components/imageFilters/Morphology.js +43 -0
  523. package/lib/commonjs/renderer/components/imageFilters/Morphology.js.map +1 -0
  524. package/lib/commonjs/renderer/components/imageFilters/Offset.js +39 -0
  525. package/lib/commonjs/renderer/components/imageFilters/Offset.js.map +1 -0
  526. package/lib/commonjs/renderer/components/imageFilters/getInput.js +33 -0
  527. package/lib/commonjs/renderer/components/imageFilters/getInput.js.map +1 -0
  528. package/lib/commonjs/renderer/components/imageFilters/index.js +84 -0
  529. package/lib/commonjs/renderer/components/imageFilters/index.js.map +1 -0
  530. package/lib/commonjs/renderer/components/index.js +214 -0
  531. package/lib/commonjs/renderer/components/index.js.map +1 -0
  532. package/lib/commonjs/renderer/components/maskFilters/Blur.js +42 -0
  533. package/lib/commonjs/renderer/components/maskFilters/Blur.js.map +1 -0
  534. package/lib/commonjs/renderer/components/maskFilters/index.js +19 -0
  535. package/lib/commonjs/renderer/components/maskFilters/index.js.map +1 -0
  536. package/lib/commonjs/renderer/components/pathEffects/Corner.js +46 -0
  537. package/lib/commonjs/renderer/components/pathEffects/Corner.js.map +1 -0
  538. package/lib/commonjs/renderer/components/pathEffects/Dash.js +43 -0
  539. package/lib/commonjs/renderer/components/pathEffects/Dash.js.map +1 -0
  540. package/lib/commonjs/renderer/components/pathEffects/Discrete.js +47 -0
  541. package/lib/commonjs/renderer/components/pathEffects/Discrete.js.map +1 -0
  542. package/lib/commonjs/renderer/components/pathEffects/Line2D.js +47 -0
  543. package/lib/commonjs/renderer/components/pathEffects/Line2D.js.map +1 -0
  544. package/lib/commonjs/renderer/components/pathEffects/Path1D.js +53 -0
  545. package/lib/commonjs/renderer/components/pathEffects/Path1D.js.map +1 -0
  546. package/lib/commonjs/renderer/components/pathEffects/Path2D.js +49 -0
  547. package/lib/commonjs/renderer/components/pathEffects/Path2D.js.map +1 -0
  548. package/lib/commonjs/renderer/components/pathEffects/Sum.js +32 -0
  549. package/lib/commonjs/renderer/components/pathEffects/Sum.js.map +1 -0
  550. package/lib/commonjs/renderer/components/pathEffects/index.js +97 -0
  551. package/lib/commonjs/renderer/components/pathEffects/index.js.map +1 -0
  552. package/lib/commonjs/renderer/components/shaders/Color.js +32 -0
  553. package/lib/commonjs/renderer/components/shaders/Color.js.map +1 -0
  554. package/lib/commonjs/renderer/components/shaders/FractalNoise.js +42 -0
  555. package/lib/commonjs/renderer/components/shaders/FractalNoise.js.map +1 -0
  556. package/lib/commonjs/renderer/components/shaders/Gradient.js +32 -0
  557. package/lib/commonjs/renderer/components/shaders/Gradient.js.map +1 -0
  558. package/lib/commonjs/renderer/components/shaders/LinearGradient.js +43 -0
  559. package/lib/commonjs/renderer/components/shaders/LinearGradient.js.map +1 -0
  560. package/lib/commonjs/renderer/components/shaders/RadialGradient.js +43 -0
  561. package/lib/commonjs/renderer/components/shaders/RadialGradient.js.map +1 -0
  562. package/lib/commonjs/renderer/components/shaders/Shader.js +80 -0
  563. package/lib/commonjs/renderer/components/shaders/Shader.js.map +1 -0
  564. package/lib/commonjs/renderer/components/shaders/ShaderLib.js +52 -0
  565. package/lib/commonjs/renderer/components/shaders/ShaderLib.js.map +1 -0
  566. package/lib/commonjs/renderer/components/shaders/SweepGradient.js +44 -0
  567. package/lib/commonjs/renderer/components/shaders/SweepGradient.js.map +1 -0
  568. package/lib/commonjs/renderer/components/shaders/Turbulence.js +42 -0
  569. package/lib/commonjs/renderer/components/shaders/Turbulence.js.map +1 -0
  570. package/lib/commonjs/renderer/components/shaders/TwoPointConicalGradient.js +45 -0
  571. package/lib/commonjs/renderer/components/shaders/TwoPointConicalGradient.js.map +1 -0
  572. package/lib/commonjs/renderer/components/shaders/index.js +123 -0
  573. package/lib/commonjs/renderer/components/shaders/index.js.map +1 -0
  574. package/lib/commonjs/renderer/components/shapes/Circle.js +42 -0
  575. package/lib/commonjs/renderer/components/shapes/Circle.js.map +1 -0
  576. package/lib/commonjs/renderer/components/shapes/DiffRect.js +35 -0
  577. package/lib/commonjs/renderer/components/shapes/DiffRect.js.map +1 -0
  578. package/lib/commonjs/renderer/components/shapes/Fill.js +31 -0
  579. package/lib/commonjs/renderer/components/shapes/Fill.js.map +1 -0
  580. package/lib/commonjs/renderer/components/shapes/FitBox.js +38 -0
  581. package/lib/commonjs/renderer/components/shapes/FitBox.js.map +1 -0
  582. package/lib/commonjs/renderer/components/shapes/Line.js +35 -0
  583. package/lib/commonjs/renderer/components/shapes/Line.js.map +1 -0
  584. package/lib/commonjs/renderer/components/shapes/Oval.js +38 -0
  585. package/lib/commonjs/renderer/components/shapes/Oval.js.map +1 -0
  586. package/lib/commonjs/renderer/components/shapes/Patch.js +52 -0
  587. package/lib/commonjs/renderer/components/shapes/Patch.js.map +1 -0
  588. package/lib/commonjs/renderer/components/shapes/Path.js +58 -0
  589. package/lib/commonjs/renderer/components/shapes/Path.js.map +1 -0
  590. package/lib/commonjs/renderer/components/shapes/Points.js +45 -0
  591. package/lib/commonjs/renderer/components/shapes/Points.js.map +1 -0
  592. package/lib/commonjs/renderer/components/shapes/Rect.js +34 -0
  593. package/lib/commonjs/renderer/components/shapes/Rect.js.map +1 -0
  594. package/lib/commonjs/renderer/components/shapes/RoundedRect.js +37 -0
  595. package/lib/commonjs/renderer/components/shapes/RoundedRect.js.map +1 -0
  596. package/lib/commonjs/renderer/components/shapes/Vertices.js +54 -0
  597. package/lib/commonjs/renderer/components/shapes/Vertices.js.map +1 -0
  598. package/lib/commonjs/renderer/components/shapes/index.js +162 -0
  599. package/lib/commonjs/renderer/components/shapes/index.js.map +1 -0
  600. package/lib/commonjs/renderer/components/text/Glyphs.js +60 -0
  601. package/lib/commonjs/renderer/components/text/Glyphs.js.map +1 -0
  602. package/lib/commonjs/renderer/components/text/Text.js +45 -0
  603. package/lib/commonjs/renderer/components/text/Text.js.map +1 -0
  604. package/lib/commonjs/renderer/components/text/TextBlob.js +40 -0
  605. package/lib/commonjs/renderer/components/text/TextBlob.js.map +1 -0
  606. package/lib/commonjs/renderer/components/text/TextPath.js +95 -0
  607. package/lib/commonjs/renderer/components/text/TextPath.js.map +1 -0
  608. package/lib/commonjs/renderer/components/text/index.js +58 -0
  609. package/lib/commonjs/renderer/components/text/index.js.map +1 -0
  610. package/lib/commonjs/renderer/index.js +45 -0
  611. package/lib/commonjs/renderer/index.js.map +1 -0
  612. package/lib/commonjs/renderer/nodes/Container.js +28 -0
  613. package/lib/commonjs/renderer/nodes/Container.js.map +1 -0
  614. package/lib/commonjs/renderer/nodes/Declaration.js +47 -0
  615. package/lib/commonjs/renderer/nodes/Declaration.js.map +1 -0
  616. package/lib/commonjs/renderer/nodes/Drawing.js +75 -0
  617. package/lib/commonjs/renderer/nodes/Drawing.js.map +1 -0
  618. package/lib/commonjs/renderer/nodes/Node.js +78 -0
  619. package/lib/commonjs/renderer/nodes/Node.js.map +1 -0
  620. package/lib/commonjs/renderer/nodes/index.js +58 -0
  621. package/lib/commonjs/renderer/nodes/index.js.map +1 -0
  622. package/lib/commonjs/renderer/processors/Animations/Animations.js +52 -0
  623. package/lib/commonjs/renderer/processors/Animations/Animations.js.map +1 -0
  624. package/lib/commonjs/renderer/processors/Animations/index.js +19 -0
  625. package/lib/commonjs/renderer/processors/Animations/index.js.map +1 -0
  626. package/lib/commonjs/renderer/processors/Circles.js +25 -0
  627. package/lib/commonjs/renderer/processors/Circles.js.map +1 -0
  628. package/lib/commonjs/renderer/processors/Clips.js +24 -0
  629. package/lib/commonjs/renderer/processors/Clips.js.map +1 -0
  630. package/lib/commonjs/renderer/processors/Font.js +39 -0
  631. package/lib/commonjs/renderer/processors/Font.js.map +1 -0
  632. package/lib/commonjs/renderer/processors/Paint.js +91 -0
  633. package/lib/commonjs/renderer/processors/Paint.js.map +1 -0
  634. package/lib/commonjs/renderer/processors/Paths.js +26 -0
  635. package/lib/commonjs/renderer/processors/Paths.js.map +1 -0
  636. package/lib/commonjs/renderer/processors/Radius.js +19 -0
  637. package/lib/commonjs/renderer/processors/Radius.js.map +1 -0
  638. package/lib/commonjs/renderer/processors/Rects.js +98 -0
  639. package/lib/commonjs/renderer/processors/Rects.js.map +1 -0
  640. package/lib/commonjs/renderer/processors/Transform.js +56 -0
  641. package/lib/commonjs/renderer/processors/Transform.js.map +1 -0
  642. package/lib/commonjs/renderer/processors/index.js +136 -0
  643. package/lib/commonjs/renderer/processors/index.js.map +1 -0
  644. package/lib/commonjs/renderer/processors/math/Coordinates.js +43 -0
  645. package/lib/commonjs/renderer/processors/math/Coordinates.js.map +1 -0
  646. package/lib/commonjs/renderer/processors/math/Math.js +11 -0
  647. package/lib/commonjs/renderer/processors/math/Math.js.map +1 -0
  648. package/lib/commonjs/renderer/processors/math/Matrix3.js +81 -0
  649. package/lib/commonjs/renderer/processors/math/Matrix3.js.map +1 -0
  650. package/lib/commonjs/renderer/processors/math/Transforms.js +22 -0
  651. package/lib/commonjs/renderer/processors/math/Transforms.js.map +1 -0
  652. package/lib/commonjs/renderer/processors/math/Vector.js +61 -0
  653. package/lib/commonjs/renderer/processors/math/Vector.js.map +1 -0
  654. package/lib/commonjs/renderer/processors/math/index.js +71 -0
  655. package/lib/commonjs/renderer/processors/math/index.js.map +1 -0
  656. package/lib/commonjs/renderer/typeddash.js +17 -0
  657. package/lib/commonjs/renderer/typeddash.js.map +1 -0
  658. package/lib/commonjs/skia/Canvas.js +22 -0
  659. package/lib/commonjs/skia/Canvas.js.map +1 -0
  660. package/lib/commonjs/skia/Color.js +77 -0
  661. package/lib/commonjs/skia/Color.js.map +1 -0
  662. package/lib/commonjs/skia/ColorFilter/ColorFilter.js +11 -0
  663. package/lib/commonjs/skia/ColorFilter/ColorFilter.js.map +1 -0
  664. package/lib/commonjs/skia/ColorFilter/ColorFilterFactory.js +6 -0
  665. package/lib/commonjs/skia/ColorFilter/ColorFilterFactory.js.map +1 -0
  666. package/lib/commonjs/skia/ColorFilter/index.js +32 -0
  667. package/lib/commonjs/skia/ColorFilter/index.js.map +1 -0
  668. package/lib/commonjs/skia/ContourMeasure.js +6 -0
  669. package/lib/commonjs/skia/ContourMeasure.js.map +1 -0
  670. package/lib/commonjs/skia/Data/Data.js +53 -0
  671. package/lib/commonjs/skia/Data/Data.js.map +1 -0
  672. package/lib/commonjs/skia/Data/DataFactory.js +6 -0
  673. package/lib/commonjs/skia/Data/DataFactory.js.map +1 -0
  674. package/lib/commonjs/skia/Data/index.js +32 -0
  675. package/lib/commonjs/skia/Data/index.js.map +1 -0
  676. package/lib/commonjs/skia/Font/Font.js +81 -0
  677. package/lib/commonjs/skia/Font/Font.js.map +1 -0
  678. package/lib/commonjs/skia/Font/index.js +32 -0
  679. package/lib/commonjs/skia/Font/index.js.map +1 -0
  680. package/lib/commonjs/skia/Font/useFont.js +36 -0
  681. package/lib/commonjs/skia/Font/useFont.js.map +1 -0
  682. package/lib/commonjs/skia/FontMgr/FontMgr.js +6 -0
  683. package/lib/commonjs/skia/FontMgr/FontMgr.js.map +1 -0
  684. package/lib/commonjs/skia/FontMgr/FontMgrFactory.js +6 -0
  685. package/lib/commonjs/skia/FontMgr/FontMgrFactory.js.map +1 -0
  686. package/lib/commonjs/skia/FontMgr/index.js +19 -0
  687. package/lib/commonjs/skia/FontMgr/index.js.map +1 -0
  688. package/lib/commonjs/skia/Image/Image.js +32 -0
  689. package/lib/commonjs/skia/Image/Image.js.map +1 -0
  690. package/lib/commonjs/skia/Image/ImageFactory.js +46 -0
  691. package/lib/commonjs/skia/Image/ImageFactory.js.map +1 -0
  692. package/lib/commonjs/skia/Image/index.js +45 -0
  693. package/lib/commonjs/skia/Image/index.js.map +1 -0
  694. package/lib/commonjs/skia/Image/useImage.js +18 -0
  695. package/lib/commonjs/skia/Image/useImage.js.map +1 -0
  696. package/lib/commonjs/skia/ImageFilter/ImageFilter.js +20 -0
  697. package/lib/commonjs/skia/ImageFilter/ImageFilter.js.map +1 -0
  698. package/lib/commonjs/skia/ImageFilter/ImageFilterFactory.js +16 -0
  699. package/lib/commonjs/skia/ImageFilter/ImageFilterFactory.js.map +1 -0
  700. package/lib/commonjs/skia/ImageFilter/index.js +32 -0
  701. package/lib/commonjs/skia/ImageFilter/index.js.map +1 -0
  702. package/lib/commonjs/skia/JsiInstance.js +2 -0
  703. package/lib/commonjs/skia/JsiInstance.js.map +1 -0
  704. package/lib/commonjs/skia/MaskFilter.js +20 -0
  705. package/lib/commonjs/skia/MaskFilter.js.map +1 -0
  706. package/lib/commonjs/skia/Matrix.js +21 -0
  707. package/lib/commonjs/skia/Matrix.js.map +1 -0
  708. package/lib/commonjs/skia/NativeSetup.js +19 -0
  709. package/lib/commonjs/skia/NativeSetup.js.map +1 -0
  710. package/lib/commonjs/skia/Paint/BlendMode.js +69 -0
  711. package/lib/commonjs/skia/Paint/BlendMode.js.map +1 -0
  712. package/lib/commonjs/skia/Paint/Paint.js +36 -0
  713. package/lib/commonjs/skia/Paint/Paint.js.map +1 -0
  714. package/lib/commonjs/skia/Paint/index.js +45 -0
  715. package/lib/commonjs/skia/Paint/index.js.map +1 -0
  716. package/lib/commonjs/skia/Paint/usePaint.js +28 -0
  717. package/lib/commonjs/skia/Paint/usePaint.js.map +1 -0
  718. package/lib/commonjs/skia/Path/Path.js +35 -0
  719. package/lib/commonjs/skia/Path/Path.js.map +1 -0
  720. package/lib/commonjs/skia/Path/PathFactory.js +6 -0
  721. package/lib/commonjs/skia/Path/PathFactory.js.map +1 -0
  722. package/lib/commonjs/skia/Path/index.js +45 -0
  723. package/lib/commonjs/skia/Path/index.js.map +1 -0
  724. package/lib/commonjs/skia/Path/usePath.js +60 -0
  725. package/lib/commonjs/skia/Path/usePath.js.map +1 -0
  726. package/lib/commonjs/skia/PathEffect.js +19 -0
  727. package/lib/commonjs/skia/PathEffect.js.map +1 -0
  728. package/lib/commonjs/skia/Point.js +15 -0
  729. package/lib/commonjs/skia/Point.js.map +1 -0
  730. package/lib/commonjs/skia/RRect.js +6 -0
  731. package/lib/commonjs/skia/RRect.js.map +1 -0
  732. package/lib/commonjs/skia/RSXform.js +6 -0
  733. package/lib/commonjs/skia/RSXform.js.map +1 -0
  734. package/lib/commonjs/skia/Rect.js +2 -0
  735. package/lib/commonjs/skia/Rect.js.map +1 -0
  736. package/lib/commonjs/skia/RuntimeEffect/RuntimeEffect.js +6 -0
  737. package/lib/commonjs/skia/RuntimeEffect/RuntimeEffect.js.map +1 -0
  738. package/lib/commonjs/skia/RuntimeEffect/RuntimeEffectFactory.js +6 -0
  739. package/lib/commonjs/skia/RuntimeEffect/RuntimeEffectFactory.js.map +1 -0
  740. package/lib/commonjs/skia/RuntimeEffect/index.js +32 -0
  741. package/lib/commonjs/skia/RuntimeEffect/index.js.map +1 -0
  742. package/lib/commonjs/skia/SVG/SVG.js +6 -0
  743. package/lib/commonjs/skia/SVG/SVG.js.map +1 -0
  744. package/lib/commonjs/skia/SVG/SVGFactory.js +6 -0
  745. package/lib/commonjs/skia/SVG/SVGFactory.js.map +1 -0
  746. package/lib/commonjs/skia/SVG/index.js +45 -0
  747. package/lib/commonjs/skia/SVG/index.js.map +1 -0
  748. package/lib/commonjs/skia/SVG/useSvg.js +15 -0
  749. package/lib/commonjs/skia/SVG/useSvg.js.map +1 -0
  750. package/lib/commonjs/skia/Shader/Shader.js +11 -0
  751. package/lib/commonjs/skia/Shader/Shader.js.map +1 -0
  752. package/lib/commonjs/skia/Shader/ShaderFactory.js +6 -0
  753. package/lib/commonjs/skia/Shader/ShaderFactory.js.map +1 -0
  754. package/lib/commonjs/skia/Shader/index.js +45 -0
  755. package/lib/commonjs/skia/Shader/index.js.map +1 -0
  756. package/lib/commonjs/skia/Shader/useShader.js +15 -0
  757. package/lib/commonjs/skia/Shader/useShader.js.map +1 -0
  758. package/lib/commonjs/skia/Skia.js +49 -0
  759. package/lib/commonjs/skia/Skia.js.map +1 -0
  760. package/lib/commonjs/skia/Surface/Surface.js +6 -0
  761. package/lib/commonjs/skia/Surface/Surface.js.map +1 -0
  762. package/lib/commonjs/skia/Surface/SurfaceFactory.js +6 -0
  763. package/lib/commonjs/skia/Surface/SurfaceFactory.js.map +1 -0
  764. package/lib/commonjs/skia/Surface/index.js +32 -0
  765. package/lib/commonjs/skia/Surface/index.js.map +1 -0
  766. package/lib/commonjs/skia/TextBlob.js +6 -0
  767. package/lib/commonjs/skia/TextBlob.js.map +1 -0
  768. package/lib/commonjs/skia/Typeface/Typeface.js +6 -0
  769. package/lib/commonjs/skia/Typeface/Typeface.js.map +1 -0
  770. package/lib/commonjs/skia/Typeface/TypefaceFactory.js +6 -0
  771. package/lib/commonjs/skia/Typeface/TypefaceFactory.js.map +1 -0
  772. package/lib/commonjs/skia/Typeface/index.js +45 -0
  773. package/lib/commonjs/skia/Typeface/index.js.map +1 -0
  774. package/lib/commonjs/skia/Typeface/useTypeface.js +18 -0
  775. package/lib/commonjs/skia/Typeface/useTypeface.js.map +1 -0
  776. package/lib/commonjs/skia/Vertices/Vertices.js +15 -0
  777. package/lib/commonjs/skia/Vertices/Vertices.js.map +1 -0
  778. package/lib/commonjs/skia/Vertices/index.js +19 -0
  779. package/lib/commonjs/skia/Vertices/index.js.map +1 -0
  780. package/lib/commonjs/skia/index.js +311 -0
  781. package/lib/commonjs/skia/index.js.map +1 -0
  782. package/lib/commonjs/values/animation/decay/decay.js +42 -0
  783. package/lib/commonjs/values/animation/decay/decay.js.map +1 -0
  784. package/lib/commonjs/values/animation/decay/index.js +14 -0
  785. package/lib/commonjs/values/animation/decay/index.js.map +1 -0
  786. package/lib/commonjs/values/animation/decay/runDecay.js +48 -0
  787. package/lib/commonjs/values/animation/decay/runDecay.js.map +1 -0
  788. package/lib/commonjs/values/animation/decay/types.js +6 -0
  789. package/lib/commonjs/values/animation/decay/types.js.map +1 -0
  790. package/lib/commonjs/values/animation/functions/index.js +28 -0
  791. package/lib/commonjs/values/animation/functions/index.js.map +1 -0
  792. package/lib/commonjs/values/animation/functions/interpolate.js +139 -0
  793. package/lib/commonjs/values/animation/functions/interpolate.js.map +1 -0
  794. package/lib/commonjs/values/animation/functions/interpolateColors.js +47 -0
  795. package/lib/commonjs/values/animation/functions/interpolateColors.js.map +1 -0
  796. package/lib/commonjs/values/animation/index.js +58 -0
  797. package/lib/commonjs/values/animation/index.js.map +1 -0
  798. package/lib/commonjs/values/animation/spring/Spring.js +77 -0
  799. package/lib/commonjs/values/animation/spring/Spring.js.map +1 -0
  800. package/lib/commonjs/values/animation/spring/functions/index.js +14 -0
  801. package/lib/commonjs/values/animation/spring/functions/index.js.map +1 -0
  802. package/lib/commonjs/values/animation/spring/functions/spring.js +94 -0
  803. package/lib/commonjs/values/animation/spring/functions/spring.js.map +1 -0
  804. package/lib/commonjs/values/animation/spring/index.js +30 -0
  805. package/lib/commonjs/values/animation/spring/index.js.map +1 -0
  806. package/lib/commonjs/values/animation/spring/runSpring.js +32 -0
  807. package/lib/commonjs/values/animation/spring/runSpring.js.map +1 -0
  808. package/lib/commonjs/values/animation/spring/types.js +2 -0
  809. package/lib/commonjs/values/animation/spring/types.js.map +1 -0
  810. package/lib/commonjs/values/animation/spring/useSpring.js +24 -0
  811. package/lib/commonjs/values/animation/spring/useSpring.js.map +1 -0
  812. package/lib/commonjs/values/animation/timing/Easing.js +108 -0
  813. package/lib/commonjs/values/animation/timing/Easing.js.map +1 -0
  814. package/lib/commonjs/values/animation/timing/createTiming.js +59 -0
  815. package/lib/commonjs/values/animation/timing/createTiming.js.map +1 -0
  816. package/lib/commonjs/values/animation/timing/functions/bezier.js +147 -0
  817. package/lib/commonjs/values/animation/timing/functions/bezier.js.map +1 -0
  818. package/lib/commonjs/values/animation/timing/functions/getResolvedParams.js +56 -0
  819. package/lib/commonjs/values/animation/timing/functions/getResolvedParams.js.map +1 -0
  820. package/lib/commonjs/values/animation/timing/functions/index.js +54 -0
  821. package/lib/commonjs/values/animation/timing/functions/index.js.map +1 -0
  822. package/lib/commonjs/values/animation/timing/functions/timing.js +50 -0
  823. package/lib/commonjs/values/animation/timing/functions/timing.js.map +1 -0
  824. package/lib/commonjs/values/animation/timing/functions/types.js +2 -0
  825. package/lib/commonjs/values/animation/timing/functions/types.js.map +1 -0
  826. package/lib/commonjs/values/animation/timing/index.js +38 -0
  827. package/lib/commonjs/values/animation/timing/index.js.map +1 -0
  828. package/lib/commonjs/values/animation/timing/runTiming.js +33 -0
  829. package/lib/commonjs/values/animation/timing/runTiming.js.map +1 -0
  830. package/lib/commonjs/values/animation/timing/useLoop.js +22 -0
  831. package/lib/commonjs/values/animation/timing/useLoop.js.map +1 -0
  832. package/lib/commonjs/values/animation/timing/useTiming.js +66 -0
  833. package/lib/commonjs/values/animation/timing/useTiming.js.map +1 -0
  834. package/lib/commonjs/values/animation/types.js +2 -0
  835. package/lib/commonjs/values/animation/types.js.map +1 -0
  836. package/lib/commonjs/values/api.js +20 -0
  837. package/lib/commonjs/values/api.js.map +1 -0
  838. package/lib/commonjs/values/hooks/index.js +58 -0
  839. package/lib/commonjs/values/hooks/index.js.map +1 -0
  840. package/lib/commonjs/values/hooks/useClockValue.js +27 -0
  841. package/lib/commonjs/values/hooks/useClockValue.js.map +1 -0
  842. package/lib/commonjs/values/hooks/useDerivedValue.js +25 -0
  843. package/lib/commonjs/values/hooks/useDerivedValue.js.map +1 -0
  844. package/lib/commonjs/values/hooks/useValue.js +23 -0
  845. package/lib/commonjs/values/hooks/useValue.js.map +1 -0
  846. package/lib/commonjs/values/hooks/useValueEffect.js +22 -0
  847. package/lib/commonjs/values/hooks/useValueEffect.js.map +1 -0
  848. package/lib/commonjs/values/index.js +58 -0
  849. package/lib/commonjs/values/index.js.map +1 -0
  850. package/lib/commonjs/values/types.js +2 -0
  851. package/lib/commonjs/values/types.js.map +1 -0
  852. package/lib/commonjs/views/SkiaView.js +163 -0
  853. package/lib/commonjs/views/SkiaView.js.map +1 -0
  854. package/lib/commonjs/views/index.js +58 -0
  855. package/lib/commonjs/views/index.js.map +1 -0
  856. package/lib/commonjs/views/types.js +16 -0
  857. package/lib/commonjs/views/types.js.map +1 -0
  858. package/lib/commonjs/views/useDrawCallback.js +23 -0
  859. package/lib/commonjs/views/useDrawCallback.js.map +1 -0
  860. package/lib/commonjs/views/useTouchHandler.js +75 -0
  861. package/lib/commonjs/views/useTouchHandler.js.map +1 -0
  862. package/lib/module/external/index.js +2 -0
  863. package/lib/module/external/index.js.map +1 -0
  864. package/lib/module/external/reanimated/index.js +2 -0
  865. package/lib/module/external/reanimated/index.js.map +1 -0
  866. package/lib/module/external/reanimated/useSharedValueEffect.js +81 -0
  867. package/lib/module/external/reanimated/useSharedValueEffect.js.map +1 -0
  868. package/lib/module/index.js +7 -0
  869. package/lib/module/index.js.map +1 -0
  870. package/lib/module/renderer/Canvas.js +149 -0
  871. package/lib/module/renderer/Canvas.js.map +1 -0
  872. package/lib/module/renderer/DependencyManager.js +60 -0
  873. package/lib/module/renderer/DependencyManager.js.map +1 -0
  874. package/lib/module/renderer/DrawingContext.js +2 -0
  875. package/lib/module/renderer/DrawingContext.js.map +1 -0
  876. package/lib/module/renderer/HostConfig.js +259 -0
  877. package/lib/module/renderer/HostConfig.js.map +1 -0
  878. package/lib/module/renderer/components/Blend.js +28 -0
  879. package/lib/module/renderer/components/Blend.js.map +1 -0
  880. package/lib/module/renderer/components/Compose.js +24 -0
  881. package/lib/module/renderer/components/Compose.js.map +1 -0
  882. package/lib/module/renderer/components/Defs.js +16 -0
  883. package/lib/module/renderer/components/Defs.js.map +1 -0
  884. package/lib/module/renderer/components/Group.js +58 -0
  885. package/lib/module/renderer/components/Group.js.map +1 -0
  886. package/lib/module/renderer/components/Mask.js +40 -0
  887. package/lib/module/renderer/components/Mask.js.map +1 -0
  888. package/lib/module/renderer/components/Paint.js +36 -0
  889. package/lib/module/renderer/components/Paint.js.map +1 -0
  890. package/lib/module/renderer/components/backdrop/BackdropBlur.js +19 -0
  891. package/lib/module/renderer/components/backdrop/BackdropBlur.js.map +1 -0
  892. package/lib/module/renderer/components/backdrop/BackdropFilter.js +39 -0
  893. package/lib/module/renderer/components/backdrop/BackdropFilter.js.map +1 -0
  894. package/lib/module/renderer/components/backdrop/index.js +3 -0
  895. package/lib/module/renderer/components/backdrop/index.js.map +1 -0
  896. package/lib/module/renderer/components/colorFilters/BlendColor.js +21 -0
  897. package/lib/module/renderer/components/colorFilters/BlendColor.js.map +1 -0
  898. package/lib/module/renderer/components/colorFilters/Compose.js +14 -0
  899. package/lib/module/renderer/components/colorFilters/Compose.js.map +1 -0
  900. package/lib/module/renderer/components/colorFilters/Lerp.js +21 -0
  901. package/lib/module/renderer/components/colorFilters/Lerp.js.map +1 -0
  902. package/lib/module/renderer/components/colorFilters/LinearToSRGBGamma.js +17 -0
  903. package/lib/module/renderer/components/colorFilters/LinearToSRGBGamma.js.map +1 -0
  904. package/lib/module/renderer/components/colorFilters/LumaColorFilter.js +17 -0
  905. package/lib/module/renderer/components/colorFilters/LumaColorFilter.js.map +1 -0
  906. package/lib/module/renderer/components/colorFilters/Matrix.js +20 -0
  907. package/lib/module/renderer/components/colorFilters/Matrix.js.map +1 -0
  908. package/lib/module/renderer/components/colorFilters/SRGBToLinearGamma.js +17 -0
  909. package/lib/module/renderer/components/colorFilters/SRGBToLinearGamma.js.map +1 -0
  910. package/lib/module/renderer/components/colorFilters/index.js +7 -0
  911. package/lib/module/renderer/components/colorFilters/index.js.map +1 -0
  912. package/lib/module/renderer/components/image/BoxFit.js +145 -0
  913. package/lib/module/renderer/components/image/BoxFit.js.map +1 -0
  914. package/lib/module/renderer/components/image/Image.js +39 -0
  915. package/lib/module/renderer/components/image/Image.js.map +1 -0
  916. package/lib/module/renderer/components/image/ImageSVG.js +30 -0
  917. package/lib/module/renderer/components/image/ImageSVG.js.map +1 -0
  918. package/lib/module/renderer/components/image/ImageShader.js +66 -0
  919. package/lib/module/renderer/components/image/ImageShader.js.map +1 -0
  920. package/lib/module/renderer/components/image/index.js +5 -0
  921. package/lib/module/renderer/components/image/index.js.map +1 -0
  922. package/lib/module/renderer/components/imageFilters/Blur.js +25 -0
  923. package/lib/module/renderer/components/imageFilters/Blur.js.map +1 -0
  924. package/lib/module/renderer/components/imageFilters/DisplacementMap.js +32 -0
  925. package/lib/module/renderer/components/imageFilters/DisplacementMap.js.map +1 -0
  926. package/lib/module/renderer/components/imageFilters/DropShadow.js +28 -0
  927. package/lib/module/renderer/components/imageFilters/DropShadow.js.map +1 -0
  928. package/lib/module/renderer/components/imageFilters/InnerShadow.js +38 -0
  929. package/lib/module/renderer/components/imageFilters/InnerShadow.js.map +1 -0
  930. package/lib/module/renderer/components/imageFilters/Morphology.js +26 -0
  931. package/lib/module/renderer/components/imageFilters/Morphology.js.map +1 -0
  932. package/lib/module/renderer/components/imageFilters/Offset.js +23 -0
  933. package/lib/module/renderer/components/imageFilters/Offset.js.map +1 -0
  934. package/lib/module/renderer/components/imageFilters/getInput.js +23 -0
  935. package/lib/module/renderer/components/imageFilters/getInput.js.map +1 -0
  936. package/lib/module/renderer/components/imageFilters/index.js +7 -0
  937. package/lib/module/renderer/components/imageFilters/index.js.map +1 -0
  938. package/lib/module/renderer/components/index.js +17 -0
  939. package/lib/module/renderer/components/index.js.map +1 -0
  940. package/lib/module/renderer/components/maskFilters/Blur.js +25 -0
  941. package/lib/module/renderer/components/maskFilters/Blur.js.map +1 -0
  942. package/lib/module/renderer/components/maskFilters/index.js +2 -0
  943. package/lib/module/renderer/components/maskFilters/index.js.map +1 -0
  944. package/lib/module/renderer/components/pathEffects/Corner.js +29 -0
  945. package/lib/module/renderer/components/pathEffects/Corner.js.map +1 -0
  946. package/lib/module/renderer/components/pathEffects/Dash.js +26 -0
  947. package/lib/module/renderer/components/pathEffects/Dash.js.map +1 -0
  948. package/lib/module/renderer/components/pathEffects/Discrete.js +30 -0
  949. package/lib/module/renderer/components/pathEffects/Discrete.js.map +1 -0
  950. package/lib/module/renderer/components/pathEffects/Line2D.js +30 -0
  951. package/lib/module/renderer/components/pathEffects/Line2D.js.map +1 -0
  952. package/lib/module/renderer/components/pathEffects/Path1D.js +34 -0
  953. package/lib/module/renderer/components/pathEffects/Path1D.js.map +1 -0
  954. package/lib/module/renderer/components/pathEffects/Path2D.js +31 -0
  955. package/lib/module/renderer/components/pathEffects/Path2D.js.map +1 -0
  956. package/lib/module/renderer/components/pathEffects/Sum.js +16 -0
  957. package/lib/module/renderer/components/pathEffects/Sum.js.map +1 -0
  958. package/lib/module/renderer/components/pathEffects/index.js +8 -0
  959. package/lib/module/renderer/components/pathEffects/index.js.map +1 -0
  960. package/lib/module/renderer/components/shaders/Color.js +17 -0
  961. package/lib/module/renderer/components/shaders/Color.js.map +1 -0
  962. package/lib/module/renderer/components/shaders/FractalNoise.js +27 -0
  963. package/lib/module/renderer/components/shaders/FractalNoise.js.map +1 -0
  964. package/lib/module/renderer/components/shaders/Gradient.js +20 -0
  965. package/lib/module/renderer/components/shaders/Gradient.js.map +1 -0
  966. package/lib/module/renderer/components/shaders/LinearGradient.js +27 -0
  967. package/lib/module/renderer/components/shaders/LinearGradient.js.map +1 -0
  968. package/lib/module/renderer/components/shaders/RadialGradient.js +27 -0
  969. package/lib/module/renderer/components/shaders/RadialGradient.js.map +1 -0
  970. package/lib/module/renderer/components/shaders/Shader.js +64 -0
  971. package/lib/module/renderer/components/shaders/Shader.js.map +1 -0
  972. package/lib/module/renderer/components/shaders/ShaderLib.js +45 -0
  973. package/lib/module/renderer/components/shaders/ShaderLib.js.map +1 -0
  974. package/lib/module/renderer/components/shaders/SweepGradient.js +28 -0
  975. package/lib/module/renderer/components/shaders/SweepGradient.js.map +1 -0
  976. package/lib/module/renderer/components/shaders/Turbulence.js +27 -0
  977. package/lib/module/renderer/components/shaders/Turbulence.js.map +1 -0
  978. package/lib/module/renderer/components/shaders/TwoPointConicalGradient.js +29 -0
  979. package/lib/module/renderer/components/shaders/TwoPointConicalGradient.js.map +1 -0
  980. package/lib/module/renderer/components/shaders/index.js +10 -0
  981. package/lib/module/renderer/components/shaders/index.js.map +1 -0
  982. package/lib/module/renderer/components/shapes/Circle.js +26 -0
  983. package/lib/module/renderer/components/shapes/Circle.js.map +1 -0
  984. package/lib/module/renderer/components/shapes/DiffRect.js +21 -0
  985. package/lib/module/renderer/components/shapes/DiffRect.js.map +1 -0
  986. package/lib/module/renderer/components/shapes/Fill.js +17 -0
  987. package/lib/module/renderer/components/shapes/Fill.js.map +1 -0
  988. package/lib/module/renderer/components/shapes/FitBox.js +22 -0
  989. package/lib/module/renderer/components/shapes/FitBox.js.map +1 -0
  990. package/lib/module/renderer/components/shapes/Line.js +21 -0
  991. package/lib/module/renderer/components/shapes/Line.js.map +1 -0
  992. package/lib/module/renderer/components/shapes/Oval.js +23 -0
  993. package/lib/module/renderer/components/shapes/Oval.js.map +1 -0
  994. package/lib/module/renderer/components/shapes/Patch.js +35 -0
  995. package/lib/module/renderer/components/shapes/Patch.js.map +1 -0
  996. package/lib/module/renderer/components/shapes/Path.js +43 -0
  997. package/lib/module/renderer/components/shapes/Path.js.map +1 -0
  998. package/lib/module/renderer/components/shapes/Points.js +27 -0
  999. package/lib/module/renderer/components/shapes/Points.js.map +1 -0
  1000. package/lib/module/renderer/components/shapes/Rect.js +19 -0
  1001. package/lib/module/renderer/components/shapes/Rect.js.map +1 -0
  1002. package/lib/module/renderer/components/shapes/RoundedRect.js +22 -0
  1003. package/lib/module/renderer/components/shapes/RoundedRect.js.map +1 -0
  1004. package/lib/module/renderer/components/shapes/Vertices.js +36 -0
  1005. package/lib/module/renderer/components/shapes/Vertices.js.map +1 -0
  1006. package/lib/module/renderer/components/shapes/index.js +13 -0
  1007. package/lib/module/renderer/components/shapes/index.js.map +1 -0
  1008. package/lib/module/renderer/components/text/Glyphs.js +45 -0
  1009. package/lib/module/renderer/components/text/Glyphs.js.map +1 -0
  1010. package/lib/module/renderer/components/text/Text.js +30 -0
  1011. package/lib/module/renderer/components/text/Text.js.map +1 -0
  1012. package/lib/module/renderer/components/text/TextBlob.js +26 -0
  1013. package/lib/module/renderer/components/text/TextBlob.js.map +1 -0
  1014. package/lib/module/renderer/components/text/TextPath.js +76 -0
  1015. package/lib/module/renderer/components/text/TextPath.js.map +1 -0
  1016. package/lib/module/renderer/components/text/index.js +5 -0
  1017. package/lib/module/renderer/components/text/index.js.map +1 -0
  1018. package/lib/module/renderer/index.js +4 -0
  1019. package/lib/module/renderer/index.js.map +1 -0
  1020. package/lib/module/renderer/nodes/Container.js +18 -0
  1021. package/lib/module/renderer/nodes/Container.js.map +1 -0
  1022. package/lib/module/renderer/nodes/Declaration.js +33 -0
  1023. package/lib/module/renderer/nodes/Declaration.js.map +1 -0
  1024. package/lib/module/renderer/nodes/Drawing.js +53 -0
  1025. package/lib/module/renderer/nodes/Drawing.js.map +1 -0
  1026. package/lib/module/renderer/nodes/Node.js +67 -0
  1027. package/lib/module/renderer/nodes/Node.js.map +1 -0
  1028. package/lib/module/renderer/nodes/index.js +5 -0
  1029. package/lib/module/renderer/nodes/index.js.map +1 -0
  1030. package/lib/module/renderer/processors/Animations/Animations.js +36 -0
  1031. package/lib/module/renderer/processors/Animations/Animations.js.map +1 -0
  1032. package/lib/module/renderer/processors/Animations/index.js +2 -0
  1033. package/lib/module/renderer/processors/Animations/index.js.map +1 -0
  1034. package/lib/module/renderer/processors/Circles.js +16 -0
  1035. package/lib/module/renderer/processors/Circles.js.map +1 -0
  1036. package/lib/module/renderer/processors/Clips.js +13 -0
  1037. package/lib/module/renderer/processors/Clips.js.map +1 -0
  1038. package/lib/module/renderer/processors/Font.js +26 -0
  1039. package/lib/module/renderer/processors/Font.js.map +1 -0
  1040. package/lib/module/renderer/processors/Paint.js +75 -0
  1041. package/lib/module/renderer/processors/Paint.js.map +1 -0
  1042. package/lib/module/renderer/processors/Paths.js +13 -0
  1043. package/lib/module/renderer/processors/Paths.js.map +1 -0
  1044. package/lib/module/renderer/processors/Radius.js +9 -0
  1045. package/lib/module/renderer/processors/Radius.js.map +1 -0
  1046. package/lib/module/renderer/processors/Rects.js +55 -0
  1047. package/lib/module/renderer/processors/Rects.js.map +1 -0
  1048. package/lib/module/renderer/processors/Transform.js +41 -0
  1049. package/lib/module/renderer/processors/Transform.js.map +1 -0
  1050. package/lib/module/renderer/processors/index.js +11 -0
  1051. package/lib/module/renderer/processors/index.js.map +1 -0
  1052. package/lib/module/renderer/processors/math/Coordinates.js +19 -0
  1053. package/lib/module/renderer/processors/math/Coordinates.js.map +1 -0
  1054. package/lib/module/renderer/processors/math/Math.js +2 -0
  1055. package/lib/module/renderer/processors/math/Math.js.map +1 -0
  1056. package/lib/module/renderer/processors/math/Matrix3.js +71 -0
  1057. package/lib/module/renderer/processors/math/Matrix3.js.map +1 -0
  1058. package/lib/module/renderer/processors/math/Transforms.js +12 -0
  1059. package/lib/module/renderer/processors/math/Transforms.js.map +1 -0
  1060. package/lib/module/renderer/processors/math/Vector.js +30 -0
  1061. package/lib/module/renderer/processors/math/Vector.js.map +1 -0
  1062. package/lib/module/renderer/processors/math/index.js +6 -0
  1063. package/lib/module/renderer/processors/math/index.js.map +1 -0
  1064. package/lib/module/renderer/typeddash.js +5 -0
  1065. package/lib/module/renderer/typeddash.js.map +1 -0
  1066. package/lib/module/skia/Canvas.js +14 -0
  1067. package/lib/module/skia/Canvas.js.map +1 -0
  1068. package/lib/module/skia/Color.js +48 -0
  1069. package/lib/module/skia/Color.js.map +1 -0
  1070. package/lib/module/skia/ColorFilter/ColorFilter.js +2 -0
  1071. package/lib/module/skia/ColorFilter/ColorFilter.js.map +1 -0
  1072. package/lib/module/skia/ColorFilter/ColorFilterFactory.js +2 -0
  1073. package/lib/module/skia/ColorFilter/ColorFilterFactory.js.map +1 -0
  1074. package/lib/module/skia/ColorFilter/index.js +3 -0
  1075. package/lib/module/skia/ColorFilter/index.js.map +1 -0
  1076. package/lib/module/skia/ContourMeasure.js +2 -0
  1077. package/lib/module/skia/ContourMeasure.js.map +1 -0
  1078. package/lib/module/skia/Data/Data.js +35 -0
  1079. package/lib/module/skia/Data/Data.js.map +1 -0
  1080. package/lib/module/skia/Data/DataFactory.js +2 -0
  1081. package/lib/module/skia/Data/DataFactory.js.map +1 -0
  1082. package/lib/module/skia/Data/index.js +3 -0
  1083. package/lib/module/skia/Data/index.js.map +1 -0
  1084. package/lib/module/skia/Font/Font.js +68 -0
  1085. package/lib/module/skia/Font/Font.js.map +1 -0
  1086. package/lib/module/skia/Font/index.js +3 -0
  1087. package/lib/module/skia/Font/index.js.map +1 -0
  1088. package/lib/module/skia/Font/useFont.js +24 -0
  1089. package/lib/module/skia/Font/useFont.js.map +1 -0
  1090. package/lib/module/skia/FontMgr/FontMgr.js +2 -0
  1091. package/lib/module/skia/FontMgr/FontMgr.js.map +1 -0
  1092. package/lib/module/skia/FontMgr/FontMgrFactory.js +2 -0
  1093. package/lib/module/skia/FontMgr/FontMgrFactory.js.map +1 -0
  1094. package/lib/module/skia/FontMgr/index.js +2 -0
  1095. package/lib/module/skia/FontMgr/index.js.map +1 -0
  1096. package/lib/module/skia/Image/Image.js +23 -0
  1097. package/lib/module/skia/Image/Image.js.map +1 -0
  1098. package/lib/module/skia/Image/ImageFactory.js +37 -0
  1099. package/lib/module/skia/Image/ImageFactory.js.map +1 -0
  1100. package/lib/module/skia/Image/index.js +4 -0
  1101. package/lib/module/skia/Image/index.js.map +1 -0
  1102. package/lib/module/skia/Image/useImage.js +8 -0
  1103. package/lib/module/skia/Image/useImage.js.map +1 -0
  1104. package/lib/module/skia/ImageFilter/ImageFilter.js +11 -0
  1105. package/lib/module/skia/ImageFilter/ImageFilter.js.map +1 -0
  1106. package/lib/module/skia/ImageFilter/ImageFilterFactory.js +9 -0
  1107. package/lib/module/skia/ImageFilter/ImageFilterFactory.js.map +1 -0
  1108. package/lib/module/skia/ImageFilter/index.js +3 -0
  1109. package/lib/module/skia/ImageFilter/index.js.map +1 -0
  1110. package/lib/module/skia/JsiInstance.js +2 -0
  1111. package/lib/module/skia/JsiInstance.js.map +1 -0
  1112. package/lib/module/skia/MaskFilter.js +11 -0
  1113. package/lib/module/skia/MaskFilter.js.map +1 -0
  1114. package/lib/module/skia/Matrix.js +14 -0
  1115. package/lib/module/skia/Matrix.js.map +1 -0
  1116. package/lib/module/skia/NativeSetup.js +17 -0
  1117. package/lib/module/skia/NativeSetup.js.map +1 -0
  1118. package/lib/module/skia/Paint/BlendMode.js +61 -0
  1119. package/lib/module/skia/Paint/BlendMode.js.map +1 -0
  1120. package/lib/module/skia/Paint/Paint.js +25 -0
  1121. package/lib/module/skia/Paint/Paint.js.map +1 -0
  1122. package/lib/module/skia/Paint/index.js +4 -0
  1123. package/lib/module/skia/Paint/index.js.map +1 -0
  1124. package/lib/module/skia/Paint/usePaint.js +17 -0
  1125. package/lib/module/skia/Paint/usePaint.js.map +1 -0
  1126. package/lib/module/skia/Path/Path.js +24 -0
  1127. package/lib/module/skia/Path/Path.js.map +1 -0
  1128. package/lib/module/skia/Path/PathFactory.js +2 -0
  1129. package/lib/module/skia/Path/PathFactory.js.map +1 -0
  1130. package/lib/module/skia/Path/index.js +4 -0
  1131. package/lib/module/skia/Path/index.js.map +1 -0
  1132. package/lib/module/skia/Path/usePath.js +44 -0
  1133. package/lib/module/skia/Path/usePath.js.map +1 -0
  1134. package/lib/module/skia/PathEffect.js +9 -0
  1135. package/lib/module/skia/PathEffect.js.map +1 -0
  1136. package/lib/module/skia/Point.js +8 -0
  1137. package/lib/module/skia/Point.js.map +1 -0
  1138. package/lib/module/skia/RRect.js +2 -0
  1139. package/lib/module/skia/RRect.js.map +1 -0
  1140. package/lib/module/skia/RSXform.js +2 -0
  1141. package/lib/module/skia/RSXform.js.map +1 -0
  1142. package/lib/module/skia/Rect.js +2 -0
  1143. package/lib/module/skia/Rect.js.map +1 -0
  1144. package/lib/module/skia/RuntimeEffect/RuntimeEffect.js +2 -0
  1145. package/lib/module/skia/RuntimeEffect/RuntimeEffect.js.map +1 -0
  1146. package/lib/module/skia/RuntimeEffect/RuntimeEffectFactory.js +2 -0
  1147. package/lib/module/skia/RuntimeEffect/RuntimeEffectFactory.js.map +1 -0
  1148. package/lib/module/skia/RuntimeEffect/index.js +3 -0
  1149. package/lib/module/skia/RuntimeEffect/index.js.map +1 -0
  1150. package/lib/module/skia/SVG/SVG.js +2 -0
  1151. package/lib/module/skia/SVG/SVG.js.map +1 -0
  1152. package/lib/module/skia/SVG/SVGFactory.js +2 -0
  1153. package/lib/module/skia/SVG/SVGFactory.js.map +1 -0
  1154. package/lib/module/skia/SVG/index.js +4 -0
  1155. package/lib/module/skia/SVG/index.js.map +1 -0
  1156. package/lib/module/skia/SVG/useSvg.js +4 -0
  1157. package/lib/module/skia/SVG/useSvg.js.map +1 -0
  1158. package/lib/module/skia/Shader/Shader.js +2 -0
  1159. package/lib/module/skia/Shader/Shader.js.map +1 -0
  1160. package/lib/module/skia/Shader/ShaderFactory.js +2 -0
  1161. package/lib/module/skia/Shader/ShaderFactory.js.map +1 -0
  1162. package/lib/module/skia/Shader/index.js +4 -0
  1163. package/lib/module/skia/Shader/index.js.map +1 -0
  1164. package/lib/module/skia/Shader/useShader.js +4 -0
  1165. package/lib/module/skia/Shader/useShader.js.map +1 -0
  1166. package/lib/module/skia/Skia.js +39 -0
  1167. package/lib/module/skia/Skia.js.map +1 -0
  1168. package/lib/module/skia/Surface/Surface.js +2 -0
  1169. package/lib/module/skia/Surface/Surface.js.map +1 -0
  1170. package/lib/module/skia/Surface/SurfaceFactory.js +2 -0
  1171. package/lib/module/skia/Surface/SurfaceFactory.js.map +1 -0
  1172. package/lib/module/skia/Surface/index.js +3 -0
  1173. package/lib/module/skia/Surface/index.js.map +1 -0
  1174. package/lib/module/skia/TextBlob.js +2 -0
  1175. package/lib/module/skia/TextBlob.js.map +1 -0
  1176. package/lib/module/skia/Typeface/Typeface.js +2 -0
  1177. package/lib/module/skia/Typeface/Typeface.js.map +1 -0
  1178. package/lib/module/skia/Typeface/TypefaceFactory.js +2 -0
  1179. package/lib/module/skia/Typeface/TypefaceFactory.js.map +1 -0
  1180. package/lib/module/skia/Typeface/index.js +4 -0
  1181. package/lib/module/skia/Typeface/index.js.map +1 -0
  1182. package/lib/module/skia/Typeface/useTypeface.js +8 -0
  1183. package/lib/module/skia/Typeface/useTypeface.js.map +1 -0
  1184. package/lib/module/skia/Vertices/Vertices.js +8 -0
  1185. package/lib/module/skia/Vertices/Vertices.js.map +1 -0
  1186. package/lib/module/skia/Vertices/index.js +2 -0
  1187. package/lib/module/skia/Vertices/index.js.map +1 -0
  1188. package/lib/module/skia/index.js +23 -0
  1189. package/lib/module/skia/index.js.map +1 -0
  1190. package/lib/module/values/animation/decay/decay.js +33 -0
  1191. package/lib/module/values/animation/decay/decay.js.map +1 -0
  1192. package/lib/module/values/animation/decay/index.js +2 -0
  1193. package/lib/module/values/animation/decay/index.js.map +1 -0
  1194. package/lib/module/values/animation/decay/runDecay.js +38 -0
  1195. package/lib/module/values/animation/decay/runDecay.js.map +1 -0
  1196. package/lib/module/values/animation/decay/types.js +2 -0
  1197. package/lib/module/values/animation/decay/types.js.map +1 -0
  1198. package/lib/module/values/animation/functions/index.js +3 -0
  1199. package/lib/module/values/animation/functions/index.js.map +1 -0
  1200. package/lib/module/values/animation/functions/interpolate.js +132 -0
  1201. package/lib/module/values/animation/functions/interpolate.js.map +1 -0
  1202. package/lib/module/values/animation/functions/interpolateColors.js +32 -0
  1203. package/lib/module/values/animation/functions/interpolateColors.js.map +1 -0
  1204. package/lib/module/values/animation/index.js +5 -0
  1205. package/lib/module/values/animation/index.js.map +1 -0
  1206. package/lib/module/values/animation/spring/Spring.js +69 -0
  1207. package/lib/module/values/animation/spring/Spring.js.map +1 -0
  1208. package/lib/module/values/animation/spring/functions/index.js +2 -0
  1209. package/lib/module/values/animation/spring/functions/index.js.map +1 -0
  1210. package/lib/module/values/animation/spring/functions/spring.js +85 -0
  1211. package/lib/module/values/animation/spring/functions/spring.js.map +1 -0
  1212. package/lib/module/values/animation/spring/index.js +4 -0
  1213. package/lib/module/values/animation/spring/index.js.map +1 -0
  1214. package/lib/module/values/animation/spring/runSpring.js +21 -0
  1215. package/lib/module/values/animation/spring/runSpring.js.map +1 -0
  1216. package/lib/module/values/animation/spring/types.js +2 -0
  1217. package/lib/module/values/animation/spring/types.js.map +1 -0
  1218. package/lib/module/values/animation/spring/useSpring.js +13 -0
  1219. package/lib/module/values/animation/spring/useSpring.js.map +1 -0
  1220. package/lib/module/values/animation/timing/Easing.js +98 -0
  1221. package/lib/module/values/animation/timing/Easing.js.map +1 -0
  1222. package/lib/module/values/animation/timing/createTiming.js +49 -0
  1223. package/lib/module/values/animation/timing/createTiming.js.map +1 -0
  1224. package/lib/module/values/animation/timing/functions/bezier.js +141 -0
  1225. package/lib/module/values/animation/timing/functions/bezier.js.map +1 -0
  1226. package/lib/module/values/animation/timing/functions/getResolvedParams.js +48 -0
  1227. package/lib/module/values/animation/timing/functions/getResolvedParams.js.map +1 -0
  1228. package/lib/module/values/animation/timing/functions/index.js +5 -0
  1229. package/lib/module/values/animation/timing/functions/index.js.map +1 -0
  1230. package/lib/module/values/animation/timing/functions/timing.js +41 -0
  1231. package/lib/module/values/animation/timing/functions/timing.js.map +1 -0
  1232. package/lib/module/values/animation/timing/functions/types.js +2 -0
  1233. package/lib/module/values/animation/timing/functions/types.js.map +1 -0
  1234. package/lib/module/values/animation/timing/index.js +5 -0
  1235. package/lib/module/values/animation/timing/index.js.map +1 -0
  1236. package/lib/module/values/animation/timing/runTiming.js +23 -0
  1237. package/lib/module/values/animation/timing/runTiming.js.map +1 -0
  1238. package/lib/module/values/animation/timing/useLoop.js +13 -0
  1239. package/lib/module/values/animation/timing/useLoop.js.map +1 -0
  1240. package/lib/module/values/animation/timing/useTiming.js +54 -0
  1241. package/lib/module/values/animation/timing/useTiming.js.map +1 -0
  1242. package/lib/module/values/animation/types.js +2 -0
  1243. package/lib/module/values/animation/types.js.map +1 -0
  1244. package/lib/module/values/api.js +11 -0
  1245. package/lib/module/values/api.js.map +1 -0
  1246. package/lib/module/values/hooks/index.js +5 -0
  1247. package/lib/module/values/hooks/index.js.map +1 -0
  1248. package/lib/module/values/hooks/useClockValue.js +17 -0
  1249. package/lib/module/values/hooks/useClockValue.js.map +1 -0
  1250. package/lib/module/values/hooks/useDerivedValue.js +14 -0
  1251. package/lib/module/values/hooks/useDerivedValue.js.map +1 -0
  1252. package/lib/module/values/hooks/useValue.js +13 -0
  1253. package/lib/module/values/hooks/useValue.js.map +1 -0
  1254. package/lib/module/values/hooks/useValueEffect.js +13 -0
  1255. package/lib/module/values/hooks/useValueEffect.js.map +1 -0
  1256. package/lib/module/values/index.js +5 -0
  1257. package/lib/module/values/index.js.map +1 -0
  1258. package/lib/module/values/types.js +2 -0
  1259. package/lib/module/values/types.js.map +1 -0
  1260. package/lib/module/views/SkiaView.js +149 -0
  1261. package/lib/module/views/SkiaView.js.map +1 -0
  1262. package/lib/module/views/index.js +5 -0
  1263. package/lib/module/views/index.js.map +1 -0
  1264. package/lib/module/views/types.js +9 -0
  1265. package/lib/module/views/types.js.map +1 -0
  1266. package/lib/module/views/useDrawCallback.js +14 -0
  1267. package/lib/module/views/useDrawCallback.js.map +1 -0
  1268. package/lib/module/views/useTouchHandler.js +64 -0
  1269. package/lib/module/views/useTouchHandler.js.map +1 -0
  1270. package/lib/typescript/index.d.ts +1 -0
  1271. package/lib/typescript/scripts/install-npm.d.ts +1 -0
  1272. package/lib/typescript/src/external/index.d.ts +1 -0
  1273. package/lib/typescript/src/external/reanimated/index.d.ts +1 -0
  1274. package/lib/typescript/src/external/reanimated/useSharedValueEffect.d.ts +11 -0
  1275. package/lib/typescript/src/index.d.ts +6 -0
  1276. package/lib/typescript/src/renderer/Canvas.d.ts +26 -0
  1277. package/lib/typescript/src/renderer/DependencyManager.d.ts +21 -0
  1278. package/lib/typescript/src/renderer/DrawingContext.d.ts +13 -0
  1279. package/lib/typescript/src/renderer/HostConfig.d.ts +27 -0
  1280. package/lib/typescript/src/renderer/components/Blend.d.ts +9 -0
  1281. package/lib/typescript/src/renderer/components/Compose.d.ts +6 -0
  1282. package/lib/typescript/src/renderer/components/Defs.d.ts +5 -0
  1283. package/lib/typescript/src/renderer/components/Group.d.ts +9 -0
  1284. package/lib/typescript/src/renderer/components/Mask.d.ts +15 -0
  1285. package/lib/typescript/src/renderer/components/Paint.d.ts +9 -0
  1286. package/lib/typescript/src/renderer/components/backdrop/BackdropBlur.d.ts +8 -0
  1287. package/lib/typescript/src/renderer/components/backdrop/BackdropFilter.d.ts +7 -0
  1288. package/lib/typescript/src/renderer/components/backdrop/index.d.ts +2 -0
  1289. package/lib/typescript/src/renderer/components/colorFilters/BlendColor.d.ts +10 -0
  1290. package/lib/typescript/src/renderer/components/colorFilters/Compose.d.ts +3 -0
  1291. package/lib/typescript/src/renderer/components/colorFilters/Lerp.d.ts +7 -0
  1292. package/lib/typescript/src/renderer/components/colorFilters/LinearToSRGBGamma.d.ts +5 -0
  1293. package/lib/typescript/src/renderer/components/colorFilters/LumaColorFilter.d.ts +5 -0
  1294. package/lib/typescript/src/renderer/components/colorFilters/Matrix.d.ts +9 -0
  1295. package/lib/typescript/src/renderer/components/colorFilters/SRGBToLinearGamma.d.ts +5 -0
  1296. package/lib/typescript/src/renderer/components/colorFilters/index.d.ts +6 -0
  1297. package/lib/typescript/src/renderer/components/image/BoxFit.d.ts +23 -0
  1298. package/lib/typescript/src/renderer/components/image/Image.d.ts +19 -0
  1299. package/lib/typescript/src/renderer/components/image/ImageSVG.d.ts +7 -0
  1300. package/lib/typescript/src/renderer/components/image/ImageShader.d.ts +26 -0
  1301. package/lib/typescript/src/renderer/components/image/index.d.ts +4 -0
  1302. package/lib/typescript/src/renderer/components/imageFilters/Blur.d.ts +15 -0
  1303. package/lib/typescript/src/renderer/components/imageFilters/DisplacementMap.d.ts +10 -0
  1304. package/lib/typescript/src/renderer/components/imageFilters/DropShadow.d.ts +11 -0
  1305. package/lib/typescript/src/renderer/components/imageFilters/InnerShadow.d.ts +12 -0
  1306. package/lib/typescript/src/renderer/components/imageFilters/Morphology.d.ts +13 -0
  1307. package/lib/typescript/src/renderer/components/imageFilters/Offset.d.ts +14 -0
  1308. package/lib/typescript/src/renderer/components/imageFilters/getInput.d.ts +2 -0
  1309. package/lib/typescript/src/renderer/components/imageFilters/index.d.ts +6 -0
  1310. package/lib/typescript/src/renderer/components/index.d.ts +16 -0
  1311. package/lib/typescript/src/renderer/components/maskFilters/Blur.d.ts +16 -0
  1312. package/lib/typescript/src/renderer/components/maskFilters/index.d.ts +1 -0
  1313. package/lib/typescript/src/renderer/components/pathEffects/Corner.d.ts +7 -0
  1314. package/lib/typescript/src/renderer/components/pathEffects/Dash.d.ts +8 -0
  1315. package/lib/typescript/src/renderer/components/pathEffects/Discrete.d.ts +14 -0
  1316. package/lib/typescript/src/renderer/components/pathEffects/Line2D.d.ts +9 -0
  1317. package/lib/typescript/src/renderer/components/pathEffects/Path1D.d.ts +13 -0
  1318. package/lib/typescript/src/renderer/components/pathEffects/Path2D.d.ts +10 -0
  1319. package/lib/typescript/src/renderer/components/pathEffects/Sum.d.ts +6 -0
  1320. package/lib/typescript/src/renderer/components/pathEffects/index.d.ts +7 -0
  1321. package/lib/typescript/src/renderer/components/shaders/Color.d.ts +7 -0
  1322. package/lib/typescript/src/renderer/components/shaders/FractalNoise.d.ts +18 -0
  1323. package/lib/typescript/src/renderer/components/shaders/Gradient.d.ts +17 -0
  1324. package/lib/typescript/src/renderer/components/shaders/LinearGradient.d.ts +8 -0
  1325. package/lib/typescript/src/renderer/components/shaders/RadialGradient.d.ts +8 -0
  1326. package/lib/typescript/src/renderer/components/shaders/Shader.d.ts +21 -0
  1327. package/lib/typescript/src/renderer/components/shaders/ShaderLib.d.ts +4 -0
  1328. package/lib/typescript/src/renderer/components/shaders/SweepGradient.d.ts +9 -0
  1329. package/lib/typescript/src/renderer/components/shaders/Turbulence.d.ts +18 -0
  1330. package/lib/typescript/src/renderer/components/shaders/TwoPointConicalGradient.d.ts +10 -0
  1331. package/lib/typescript/src/renderer/components/shaders/index.d.ts +9 -0
  1332. package/lib/typescript/src/renderer/components/shapes/Circle.d.ts +12 -0
  1333. package/lib/typescript/src/renderer/components/shapes/DiffRect.d.ts +9 -0
  1334. package/lib/typescript/src/renderer/components/shapes/Fill.d.ts +5 -0
  1335. package/lib/typescript/src/renderer/components/shapes/FitBox.d.ts +16 -0
  1336. package/lib/typescript/src/renderer/components/shapes/Line.d.ts +7 -0
  1337. package/lib/typescript/src/renderer/components/shapes/Oval.d.ts +10 -0
  1338. package/lib/typescript/src/renderer/components/shapes/Patch.d.ts +21 -0
  1339. package/lib/typescript/src/renderer/components/shapes/Path.d.ts +21 -0
  1340. package/lib/typescript/src/renderer/components/shapes/Points.d.ts +15 -0
  1341. package/lib/typescript/src/renderer/components/shapes/Rect.d.ts +4 -0
  1342. package/lib/typescript/src/renderer/components/shapes/RoundedRect.d.ts +9 -0
  1343. package/lib/typescript/src/renderer/components/shapes/Vertices.d.ts +18 -0
  1344. package/lib/typescript/src/renderer/components/shapes/index.d.ts +12 -0
  1345. package/lib/typescript/src/renderer/components/text/Glyphs.d.ts +20 -0
  1346. package/lib/typescript/src/renderer/components/text/Text.d.ts +15 -0
  1347. package/lib/typescript/src/renderer/components/text/TextBlob.d.ts +15 -0
  1348. package/lib/typescript/src/renderer/components/text/TextPath.d.ts +15 -0
  1349. package/lib/typescript/src/renderer/components/text/index.d.ts +4 -0
  1350. package/lib/typescript/src/renderer/index.d.ts +3 -0
  1351. package/lib/typescript/src/renderer/nodes/Container.d.ts +8 -0
  1352. package/lib/typescript/src/renderer/nodes/Declaration.d.ts +19 -0
  1353. package/lib/typescript/src/renderer/nodes/Drawing.d.ts +21 -0
  1354. package/lib/typescript/src/renderer/nodes/Node.d.ts +23 -0
  1355. package/lib/typescript/src/renderer/nodes/index.d.ts +4 -0
  1356. package/lib/typescript/src/renderer/processors/Animations/Animations.d.ts +9 -0
  1357. package/lib/typescript/src/renderer/processors/Animations/index.d.ts +1 -0
  1358. package/lib/typescript/src/renderer/processors/Circles.d.ts +13 -0
  1359. package/lib/typescript/src/renderer/processors/Clips.d.ts +5 -0
  1360. package/lib/typescript/src/renderer/processors/Font.d.ts +12 -0
  1361. package/lib/typescript/src/renderer/processors/Paint.d.ts +21 -0
  1362. package/lib/typescript/src/renderer/processors/Paths.d.ts +4 -0
  1363. package/lib/typescript/src/renderer/processors/Radius.d.ts +3 -0
  1364. package/lib/typescript/src/renderer/processors/Rects.d.ts +61 -0
  1365. package/lib/typescript/src/renderer/processors/Transform.d.ts +91 -0
  1366. package/lib/typescript/src/renderer/processors/index.d.ts +10 -0
  1367. package/lib/typescript/src/renderer/processors/math/Coordinates.d.ts +29 -0
  1368. package/lib/typescript/src/renderer/processors/math/Math.d.ts +1 -0
  1369. package/lib/typescript/src/renderer/processors/math/Matrix3.d.ts +13 -0
  1370. package/lib/typescript/src/renderer/processors/math/Transforms.d.ts +5 -0
  1371. package/lib/typescript/src/renderer/processors/math/Vector.d.ts +35 -0
  1372. package/lib/typescript/src/renderer/processors/math/index.d.ts +5 -0
  1373. package/lib/typescript/src/renderer/typeddash.d.ts +2 -0
  1374. package/lib/typescript/src/skia/Canvas.d.ts +375 -0
  1375. package/lib/typescript/src/skia/Color.d.ts +10 -0
  1376. package/lib/typescript/src/skia/ColorFilter/ColorFilter.d.ts +3 -0
  1377. package/lib/typescript/src/skia/ColorFilter/ColorFilterFactory.d.ts +43 -0
  1378. package/lib/typescript/src/skia/ColorFilter/index.d.ts +2 -0
  1379. package/lib/typescript/src/skia/ContourMeasure.d.ts +42 -0
  1380. package/lib/typescript/src/skia/Data/Data.d.ts +9 -0
  1381. package/lib/typescript/src/skia/Data/DataFactory.d.ts +18 -0
  1382. package/lib/typescript/src/skia/Data/index.d.ts +2 -0
  1383. package/lib/typescript/src/skia/Font/Font.d.ts +187 -0
  1384. package/lib/typescript/src/skia/Font/index.d.ts +2 -0
  1385. package/lib/typescript/src/skia/Font/useFont.d.ts +6 -0
  1386. package/lib/typescript/src/skia/FontMgr/FontMgr.d.ts +18 -0
  1387. package/lib/typescript/src/skia/FontMgr/FontMgrFactory.d.ts +4 -0
  1388. package/lib/typescript/src/skia/FontMgr/index.d.ts +1 -0
  1389. package/lib/typescript/src/skia/Image/Image.d.ts +75 -0
  1390. package/lib/typescript/src/skia/Image/ImageFactory.d.ts +62 -0
  1391. package/lib/typescript/src/skia/Image/index.d.ts +3 -0
  1392. package/lib/typescript/src/skia/Image/useImage.d.ts +5 -0
  1393. package/lib/typescript/src/skia/ImageFilter/ImageFilter.d.ts +23 -0
  1394. package/lib/typescript/src/skia/ImageFilter/ImageFilterFactory.d.ts +114 -0
  1395. package/lib/typescript/src/skia/ImageFilter/index.d.ts +2 -0
  1396. package/lib/typescript/src/skia/JsiInstance.d.ts +3 -0
  1397. package/lib/typescript/src/skia/MaskFilter.d.ts +21 -0
  1398. package/lib/typescript/src/skia/Matrix.d.ts +22 -0
  1399. package/lib/typescript/src/skia/NativeSetup.d.ts +1 -0
  1400. package/lib/typescript/src/skia/Paint/BlendMode.d.ts +58 -0
  1401. package/lib/typescript/src/skia/Paint/Paint.d.ts +127 -0
  1402. package/lib/typescript/src/skia/Paint/index.d.ts +3 -0
  1403. package/lib/typescript/src/skia/Paint/usePaint.d.ts +6 -0
  1404. package/lib/typescript/src/skia/Path/Path.d.ts +443 -0
  1405. package/lib/typescript/src/skia/Path/PathFactory.d.ts +18 -0
  1406. package/lib/typescript/src/skia/Path/index.d.ts +3 -0
  1407. package/lib/typescript/src/skia/Path/usePath.d.ts +22 -0
  1408. package/lib/typescript/src/skia/PathEffect.d.ts +75 -0
  1409. package/lib/typescript/src/skia/Point.d.ts +9 -0
  1410. package/lib/typescript/src/skia/RRect.d.ts +6 -0
  1411. package/lib/typescript/src/skia/RSXform.d.ts +2 -0
  1412. package/lib/typescript/src/skia/Rect.d.ts +6 -0
  1413. package/lib/typescript/src/skia/RuntimeEffect/RuntimeEffect.d.ts +47 -0
  1414. package/lib/typescript/src/skia/RuntimeEffect/RuntimeEffectFactory.d.ts +10 -0
  1415. package/lib/typescript/src/skia/RuntimeEffect/index.d.ts +2 -0
  1416. package/lib/typescript/src/skia/SVG/SVG.d.ts +2 -0
  1417. package/lib/typescript/src/skia/SVG/SVGFactory.d.ts +6 -0
  1418. package/lib/typescript/src/skia/SVG/index.d.ts +3 -0
  1419. package/lib/typescript/src/skia/SVG/useSvg.d.ts +2 -0
  1420. package/lib/typescript/src/skia/Shader/Shader.d.ts +3 -0
  1421. package/lib/typescript/src/skia/Shader/ShaderFactory.d.ts +104 -0
  1422. package/lib/typescript/src/skia/Shader/index.d.ts +3 -0
  1423. package/lib/typescript/src/skia/Shader/useShader.d.ts +1 -0
  1424. package/lib/typescript/src/skia/Skia.d.ts +101 -0
  1425. package/lib/typescript/src/skia/Surface/Surface.d.ts +25 -0
  1426. package/lib/typescript/src/skia/Surface/SurfaceFactory.d.ts +11 -0
  1427. package/lib/typescript/src/skia/Surface/index.d.ts +2 -0
  1428. package/lib/typescript/src/skia/TextBlob.d.ts +44 -0
  1429. package/lib/typescript/src/skia/Typeface/Typeface.d.ts +5 -0
  1430. package/lib/typescript/src/skia/Typeface/TypefaceFactory.d.ts +5 -0
  1431. package/lib/typescript/src/skia/Typeface/index.d.ts +3 -0
  1432. package/lib/typescript/src/skia/Typeface/useTypeface.d.ts +5 -0
  1433. package/lib/typescript/src/skia/Vertices/Vertices.d.ts +17 -0
  1434. package/lib/typescript/src/skia/Vertices/index.d.ts +1 -0
  1435. package/lib/typescript/src/skia/index.d.ts +22 -0
  1436. package/lib/typescript/src/values/animation/decay/decay.d.ts +2 -0
  1437. package/lib/typescript/src/values/animation/decay/index.d.ts +1 -0
  1438. package/lib/typescript/src/values/animation/decay/runDecay.d.ts +10 -0
  1439. package/lib/typescript/src/values/animation/decay/types.d.ts +21 -0
  1440. package/lib/typescript/src/values/animation/functions/index.d.ts +2 -0
  1441. package/lib/typescript/src/values/animation/functions/interpolate.d.ts +7 -0
  1442. package/lib/typescript/src/values/animation/functions/interpolateColors.d.ts +3 -0
  1443. package/lib/typescript/src/values/animation/index.d.ts +4 -0
  1444. package/lib/typescript/src/values/animation/spring/Spring.d.ts +65 -0
  1445. package/lib/typescript/src/values/animation/spring/functions/index.d.ts +1 -0
  1446. package/lib/typescript/src/values/animation/spring/functions/spring.d.ts +10 -0
  1447. package/lib/typescript/src/values/animation/spring/index.d.ts +3 -0
  1448. package/lib/typescript/src/values/animation/spring/runSpring.d.ts +16 -0
  1449. package/lib/typescript/src/values/animation/spring/types.d.ts +6 -0
  1450. package/lib/typescript/src/values/animation/spring/useSpring.d.ts +10 -0
  1451. package/lib/typescript/src/values/animation/timing/Easing.d.ts +19 -0
  1452. package/lib/typescript/src/values/animation/timing/createTiming.d.ts +17 -0
  1453. package/lib/typescript/src/values/animation/timing/functions/bezier.d.ts +1 -0
  1454. package/lib/typescript/src/values/animation/timing/functions/getResolvedParams.d.ts +7 -0
  1455. package/lib/typescript/src/values/animation/timing/functions/index.d.ts +4 -0
  1456. package/lib/typescript/src/values/animation/timing/functions/timing.d.ts +17 -0
  1457. package/lib/typescript/src/values/animation/timing/functions/types.d.ts +7 -0
  1458. package/lib/typescript/src/values/animation/timing/index.d.ts +4 -0
  1459. package/lib/typescript/src/values/animation/timing/runTiming.d.ts +16 -0
  1460. package/lib/typescript/src/values/animation/timing/useLoop.d.ts +8 -0
  1461. package/lib/typescript/src/values/animation/timing/useTiming.d.ts +10 -0
  1462. package/lib/typescript/src/values/animation/types.d.ts +18 -0
  1463. package/lib/typescript/src/values/api.d.ts +29 -0
  1464. package/lib/typescript/src/values/hooks/index.d.ts +4 -0
  1465. package/lib/typescript/src/values/hooks/useClockValue.d.ts +6 -0
  1466. package/lib/typescript/src/values/hooks/useDerivedValue.d.ts +8 -0
  1467. package/lib/typescript/src/values/hooks/useValue.d.ts +7 -0
  1468. package/lib/typescript/src/values/hooks/useValueEffect.d.ts +7 -0
  1469. package/lib/typescript/src/values/index.d.ts +4 -0
  1470. package/lib/typescript/src/values/types.d.ts +36 -0
  1471. package/lib/typescript/src/views/SkiaView.d.ts +55 -0
  1472. package/lib/typescript/src/views/index.d.ts +4 -0
  1473. package/lib/typescript/src/views/types.d.ts +67 -0
  1474. package/lib/typescript/src/views/useDrawCallback.d.ts +8 -0
  1475. package/lib/typescript/src/views/useTouchHandler.d.ts +12 -0
  1476. package/libs/android/arm64-v8a/libskia.a +0 -0
  1477. package/libs/android/arm64-v8a/libskshaper.a +0 -0
  1478. package/libs/android/arm64-v8a/libsvg.a +0 -0
  1479. package/libs/android/armeabi-v7a/libskia.a +0 -0
  1480. package/libs/android/armeabi-v7a/libskshaper.a +0 -0
  1481. package/libs/android/armeabi-v7a/libsvg.a +0 -0
  1482. package/libs/android/x86/libskia.a +0 -0
  1483. package/libs/android/x86/libskshaper.a +0 -0
  1484. package/libs/android/x86/libsvg.a +0 -0
  1485. package/libs/android/x86_64/libskia.a +0 -0
  1486. package/libs/android/x86_64/libskshaper.a +0 -0
  1487. package/libs/android/x86_64/libsvg.a +0 -0
  1488. package/libs/ios/libskia.xcframework/Info.plist +42 -0
  1489. package/libs/ios/libskia.xcframework/ios-arm64_arm64e/libskia.a +0 -0
  1490. package/libs/ios/libskia.xcframework/ios-arm64_arm64e_x86_64-simulator/libskia.a +0 -0
  1491. package/libs/ios/libskshaper.xcframework/Info.plist +42 -0
  1492. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e/libskshaper.a +0 -0
  1493. package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e_x86_64-simulator/libskshaper.a +0 -0
  1494. package/libs/ios/libsvg.xcframework/Info.plist +42 -0
  1495. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e/libsvg.a +0 -0
  1496. package/libs/ios/libsvg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsvg.a +0 -0
  1497. package/package.json +100 -0
  1498. package/react-native-skia.podspec +71 -0
  1499. package/scripts/install-npm.js +23 -0
  1500. package/src/external/index.ts +1 -0
  1501. package/src/external/reanimated/index.ts +1 -0
  1502. package/src/external/reanimated/useSharedValueEffect.ts +81 -0
  1503. package/src/index.ts +7 -0
  1504. package/src/renderer/Canvas.tsx +190 -0
  1505. package/src/renderer/DependencyManager.tsx +59 -0
  1506. package/src/renderer/DrawingContext.ts +16 -0
  1507. package/src/renderer/HostConfig.ts +321 -0
  1508. package/src/renderer/components/Blend.tsx +28 -0
  1509. package/src/renderer/components/Compose.tsx +28 -0
  1510. package/src/renderer/components/Defs.tsx +19 -0
  1511. package/src/renderer/components/Group.tsx +61 -0
  1512. package/src/renderer/components/Mask.tsx +43 -0
  1513. package/src/renderer/components/Paint.tsx +59 -0
  1514. package/src/renderer/components/backdrop/BackdropBlur.tsx +23 -0
  1515. package/src/renderer/components/backdrop/BackdropFilter.tsx +47 -0
  1516. package/src/renderer/components/backdrop/index.ts +2 -0
  1517. package/src/renderer/components/colorFilters/BlendColor.tsx +30 -0
  1518. package/src/renderer/components/colorFilters/Compose.ts +17 -0
  1519. package/src/renderer/components/colorFilters/Lerp.tsx +27 -0
  1520. package/src/renderer/components/colorFilters/LinearToSRGBGamma.tsx +21 -0
  1521. package/src/renderer/components/colorFilters/LumaColorFilter.tsx +19 -0
  1522. package/src/renderer/components/colorFilters/Matrix.tsx +47 -0
  1523. package/src/renderer/components/colorFilters/SRGBToLinearGamma.tsx +21 -0
  1524. package/src/renderer/components/colorFilters/index.ts +6 -0
  1525. package/src/renderer/components/image/BoxFit.ts +131 -0
  1526. package/src/renderer/components/image/Image.tsx +50 -0
  1527. package/src/renderer/components/image/ImageSVG.tsx +24 -0
  1528. package/src/renderer/components/image/ImageShader.tsx +81 -0
  1529. package/src/renderer/components/image/index.ts +4 -0
  1530. package/src/renderer/components/imageFilters/Blur.tsx +35 -0
  1531. package/src/renderer/components/imageFilters/DisplacementMap.tsx +35 -0
  1532. package/src/renderer/components/imageFilters/DropShadow.tsx +31 -0
  1533. package/src/renderer/components/imageFilters/InnerShadow.tsx +50 -0
  1534. package/src/renderer/components/imageFilters/Morphology.tsx +34 -0
  1535. package/src/renderer/components/imageFilters/Offset.tsx +27 -0
  1536. package/src/renderer/components/imageFilters/getInput.ts +19 -0
  1537. package/src/renderer/components/imageFilters/index.ts +6 -0
  1538. package/src/renderer/components/index.ts +17 -0
  1539. package/src/renderer/components/maskFilters/Blur.tsx +33 -0
  1540. package/src/renderer/components/maskFilters/index.ts +1 -0
  1541. package/src/renderer/components/pathEffects/Corner.tsx +32 -0
  1542. package/src/renderer/components/pathEffects/Dash.tsx +28 -0
  1543. package/src/renderer/components/pathEffects/Discrete.tsx +35 -0
  1544. package/src/renderer/components/pathEffects/Line2D.tsx +34 -0
  1545. package/src/renderer/components/pathEffects/Path1D.tsx +44 -0
  1546. package/src/renderer/components/pathEffects/Path2D.tsx +36 -0
  1547. package/src/renderer/components/pathEffects/Sum.tsx +20 -0
  1548. package/src/renderer/components/pathEffects/index.ts +7 -0
  1549. package/src/renderer/components/shaders/Color.tsx +18 -0
  1550. package/src/renderer/components/shaders/FractalNoise.tsx +37 -0
  1551. package/src/renderer/components/shaders/Gradient.ts +29 -0
  1552. package/src/renderer/components/shaders/LinearGradient.tsx +33 -0
  1553. package/src/renderer/components/shaders/RadialGradient.tsx +33 -0
  1554. package/src/renderer/components/shaders/Shader.tsx +84 -0
  1555. package/src/renderer/components/shaders/ShaderLib.ts +46 -0
  1556. package/src/renderer/components/shaders/SweepGradient.tsx +36 -0
  1557. package/src/renderer/components/shaders/Turbulence.tsx +37 -0
  1558. package/src/renderer/components/shaders/TwoPointConicalGradient.tsx +39 -0
  1559. package/src/renderer/components/shaders/index.ts +9 -0
  1560. package/src/renderer/components/shapes/Circle.tsx +25 -0
  1561. package/src/renderer/components/shapes/DiffRect.tsx +21 -0
  1562. package/src/renderer/components/shapes/Fill.tsx +15 -0
  1563. package/src/renderer/components/shapes/FitBox.tsx +26 -0
  1564. package/src/renderer/components/shapes/Line.tsx +16 -0
  1565. package/src/renderer/components/shapes/Oval.tsx +25 -0
  1566. package/src/renderer/components/shapes/Patch.tsx +68 -0
  1567. package/src/renderer/components/shapes/Path.tsx +49 -0
  1568. package/src/renderer/components/shapes/Points.tsx +28 -0
  1569. package/src/renderer/components/shapes/Rect.tsx +20 -0
  1570. package/src/renderer/components/shapes/RoundedRect.tsx +25 -0
  1571. package/src/renderer/components/shapes/Vertices.tsx +44 -0
  1572. package/src/renderer/components/shapes/index.ts +12 -0
  1573. package/src/renderer/components/text/Glyphs.tsx +49 -0
  1574. package/src/renderer/components/text/Text.tsx +32 -0
  1575. package/src/renderer/components/text/TextBlob.tsx +26 -0
  1576. package/src/renderer/components/text/TextPath.tsx +70 -0
  1577. package/src/renderer/components/text/index.ts +4 -0
  1578. package/src/renderer/index.ts +3 -0
  1579. package/src/renderer/nodes/Container.tsx +17 -0
  1580. package/src/renderer/nodes/Declaration.tsx +53 -0
  1581. package/src/renderer/nodes/Drawing.tsx +76 -0
  1582. package/src/renderer/nodes/Node.ts +60 -0
  1583. package/src/renderer/nodes/index.ts +4 -0
  1584. package/src/renderer/processors/Animations/Animations.ts +48 -0
  1585. package/src/renderer/processors/Animations/index.ts +1 -0
  1586. package/src/renderer/processors/Circles.ts +25 -0
  1587. package/src/renderer/processors/Clips.ts +19 -0
  1588. package/src/renderer/processors/Font.ts +25 -0
  1589. package/src/renderer/processors/Paint.ts +105 -0
  1590. package/src/renderer/processors/Paths.ts +19 -0
  1591. package/src/renderer/processors/Radius.ts +11 -0
  1592. package/src/renderer/processors/Rects.ts +86 -0
  1593. package/src/renderer/processors/Transform.ts +44 -0
  1594. package/src/renderer/processors/index.ts +10 -0
  1595. package/src/renderer/processors/math/Coordinates.ts +32 -0
  1596. package/src/renderer/processors/math/Math.ts +2 -0
  1597. package/src/renderer/processors/math/Matrix3.ts +150 -0
  1598. package/src/renderer/processors/math/Transforms.ts +7 -0
  1599. package/src/renderer/processors/math/Vector.ts +37 -0
  1600. package/src/renderer/processors/math/index.ts +5 -0
  1601. package/src/renderer/typeddash.ts +5 -0
  1602. package/src/skia/Canvas.ts +488 -0
  1603. package/src/skia/Color.ts +51 -0
  1604. package/src/skia/ColorFilter/ColorFilter.ts +7 -0
  1605. package/src/skia/ColorFilter/ColorFilterFactory.ts +52 -0
  1606. package/src/skia/ColorFilter/index.ts +2 -0
  1607. package/src/skia/ContourMeasure.tsx +49 -0
  1608. package/src/skia/Data/Data.ts +61 -0
  1609. package/src/skia/Data/DataFactory.ts +19 -0
  1610. package/src/skia/Data/index.ts +2 -0
  1611. package/src/skia/Font/Font.ts +230 -0
  1612. package/src/skia/Font/index.ts +2 -0
  1613. package/src/skia/Font/useFont.ts +27 -0
  1614. package/src/skia/FontMgr/FontMgr.ts +24 -0
  1615. package/src/skia/FontMgr/FontMgrFactory.ts +17 -0
  1616. package/src/skia/FontMgr/index.ts +1 -0
  1617. package/src/skia/Image/Image.ts +96 -0
  1618. package/src/skia/Image/ImageFactory.ts +78 -0
  1619. package/src/skia/Image/index.ts +3 -0
  1620. package/src/skia/Image/useImage.ts +9 -0
  1621. package/src/skia/ImageFilter/ImageFilter.ts +31 -0
  1622. package/src/skia/ImageFilter/ImageFilterFactory.ts +172 -0
  1623. package/src/skia/ImageFilter/index.ts +2 -0
  1624. package/src/skia/JsiInstance.ts +3 -0
  1625. package/src/skia/MaskFilter.ts +27 -0
  1626. package/src/skia/Matrix.ts +23 -0
  1627. package/src/skia/NativeSetup.ts +18 -0
  1628. package/src/skia/Paint/BlendMode.ts +61 -0
  1629. package/src/skia/Paint/Paint.ts +153 -0
  1630. package/src/skia/Paint/index.ts +3 -0
  1631. package/src/skia/Paint/usePaint.ts +23 -0
  1632. package/src/skia/Path/Path.ts +538 -0
  1633. package/src/skia/Path/PathFactory.ts +20 -0
  1634. package/src/skia/Path/index.ts +3 -0
  1635. package/src/skia/Path/usePath.ts +54 -0
  1636. package/src/skia/PathEffect.ts +93 -0
  1637. package/src/skia/Point.ts +10 -0
  1638. package/src/skia/RRect.ts +7 -0
  1639. package/src/skia/RSXform.ts +3 -0
  1640. package/src/skia/Rect.ts +6 -0
  1641. package/src/skia/RuntimeEffect/RuntimeEffect.ts +63 -0
  1642. package/src/skia/RuntimeEffect/RuntimeEffectFactory.ts +12 -0
  1643. package/src/skia/RuntimeEffect/index.ts +2 -0
  1644. package/src/skia/SVG/SVG.ts +3 -0
  1645. package/src/skia/SVG/SVGFactory.ts +8 -0
  1646. package/src/skia/SVG/index.ts +3 -0
  1647. package/src/skia/SVG/useSvg.ts +6 -0
  1648. package/src/skia/Shader/Shader.ts +6 -0
  1649. package/src/skia/Shader/ShaderFactory.ts +169 -0
  1650. package/src/skia/Shader/index.ts +3 -0
  1651. package/src/skia/Shader/useShader.ts +6 -0
  1652. package/src/skia/Skia.ts +120 -0
  1653. package/src/skia/Surface/Surface.ts +27 -0
  1654. package/src/skia/Surface/SurfaceFactory.ts +12 -0
  1655. package/src/skia/Surface/index.ts +2 -0
  1656. package/src/skia/TextBlob.ts +52 -0
  1657. package/src/skia/Typeface/Typeface.ts +6 -0
  1658. package/src/skia/Typeface/TypefaceFactory.ts +7 -0
  1659. package/src/skia/Typeface/index.ts +3 -0
  1660. package/src/skia/Typeface/useTypeface.ts +9 -0
  1661. package/src/skia/Vertices/Vertices.tsx +20 -0
  1662. package/src/skia/Vertices/index.ts +1 -0
  1663. package/src/skia/index.ts +22 -0
  1664. package/src/values/animation/decay/decay.ts +35 -0
  1665. package/src/values/animation/decay/index.ts +1 -0
  1666. package/src/values/animation/decay/runDecay.ts +37 -0
  1667. package/src/values/animation/decay/types.ts +24 -0
  1668. package/src/values/animation/functions/index.ts +2 -0
  1669. package/src/values/animation/functions/interpolate.ts +169 -0
  1670. package/src/values/animation/functions/interpolateColors.ts +62 -0
  1671. package/src/values/animation/index.ts +4 -0
  1672. package/src/values/animation/spring/Spring.ts +61 -0
  1673. package/src/values/animation/spring/functions/index.ts +1 -0
  1674. package/src/values/animation/spring/functions/spring.ts +86 -0
  1675. package/src/values/animation/spring/index.ts +3 -0
  1676. package/src/values/animation/spring/runSpring.ts +37 -0
  1677. package/src/values/animation/spring/types.ts +6 -0
  1678. package/src/values/animation/spring/useSpring.ts +28 -0
  1679. package/src/values/animation/timing/Easing.ts +102 -0
  1680. package/src/values/animation/timing/createTiming.ts +62 -0
  1681. package/src/values/animation/timing/functions/__tests__/timing.spec.ts +29 -0
  1682. package/src/values/animation/timing/functions/bezier.ts +165 -0
  1683. package/src/values/animation/timing/functions/getResolvedParams.ts +50 -0
  1684. package/src/values/animation/timing/functions/index.ts +4 -0
  1685. package/src/values/animation/timing/functions/timing.ts +44 -0
  1686. package/src/values/animation/timing/functions/types.ts +8 -0
  1687. package/src/values/animation/timing/index.ts +4 -0
  1688. package/src/values/animation/timing/runTiming.ts +33 -0
  1689. package/src/values/animation/timing/useLoop.ts +18 -0
  1690. package/src/values/animation/timing/useTiming.ts +68 -0
  1691. package/src/values/animation/types.ts +23 -0
  1692. package/src/values/api.ts +49 -0
  1693. package/src/values/hooks/index.ts +4 -0
  1694. package/src/values/hooks/useClockValue.ts +18 -0
  1695. package/src/values/hooks/useDerivedValue.ts +18 -0
  1696. package/src/values/hooks/useValue.ts +14 -0
  1697. package/src/values/hooks/useValueEffect.ts +18 -0
  1698. package/src/values/index.ts +4 -0
  1699. package/src/values/types.ts +40 -0
  1700. package/src/views/SkiaView.tsx +161 -0
  1701. package/src/views/index.ts +4 -0
  1702. package/src/views/types.ts +80 -0
  1703. package/src/views/useDrawCallback.ts +19 -0
  1704. package/src/views/useTouchHandler.ts +80 -0
@@ -0,0 +1,1079 @@
1
+ /*
2
+ * Copyright 2012 Google Inc.
3
+ *
4
+ * Use of this source code is governed by a BSD-style license that can be
5
+ * found in the LICENSE file.
6
+ */
7
+
8
+ #ifndef SkSurface_DEFINED
9
+ #define SkSurface_DEFINED
10
+
11
+ #include "include/core/SkImage.h"
12
+ #include "include/core/SkPixmap.h"
13
+ #include "include/core/SkRefCnt.h"
14
+ #include "include/core/SkSurfaceProps.h"
15
+
16
+ #if SK_SUPPORT_GPU
17
+ #include "include/gpu/GrTypes.h"
18
+ #endif
19
+
20
+ #if defined(SK_BUILD_FOR_ANDROID) && __ANDROID_API__ >= 26
21
+ #include <android/hardware_buffer.h>
22
+ #endif
23
+
24
+ #ifdef SK_METAL
25
+ #include "include/gpu/mtl/GrMtlTypes.h"
26
+ #endif
27
+
28
+ class SkCanvas;
29
+ class SkDeferredDisplayList;
30
+ class SkPaint;
31
+ class SkSurfaceCharacterization;
32
+ class GrBackendRenderTarget;
33
+ class GrBackendSemaphore;
34
+ class GrBackendSurfaceMutableState;
35
+ class GrBackendTexture;
36
+ class GrDirectContext;
37
+ class GrRecordingContext;
38
+ class GrRenderTarget;
39
+ enum GrSurfaceOrigin: int;
40
+
41
+ /** \class SkSurface
42
+ SkSurface is responsible for managing the pixels that a canvas draws into. The pixels can be
43
+ allocated either in CPU memory (a raster surface) or on the GPU (a GrRenderTarget surface).
44
+ SkSurface takes care of allocating a SkCanvas that will draw into the surface. Call
45
+ surface->getCanvas() to use that canvas (but don't delete it, it is owned by the surface).
46
+ SkSurface always has non-zero dimensions. If there is a request for a new surface, and either
47
+ of the requested dimensions are zero, then nullptr will be returned.
48
+ */
49
+ class SK_API SkSurface : public SkRefCnt {
50
+ public:
51
+
52
+ /** Allocates raster SkSurface. SkCanvas returned by SkSurface draws directly into pixels.
53
+
54
+ SkSurface is returned if all parameters are valid.
55
+ Valid parameters include:
56
+ info dimensions are greater than zero;
57
+ info contains SkColorType and SkAlphaType supported by raster surface;
58
+ pixels is not nullptr;
59
+ rowBytes is large enough to contain info width pixels of SkColorType.
60
+
61
+ Pixel buffer size should be info height times computed rowBytes.
62
+ Pixels are not initialized.
63
+ To access pixels after drawing, peekPixels() or readPixels().
64
+
65
+ @param imageInfo width, height, SkColorType, SkAlphaType, SkColorSpace,
66
+ of raster surface; width and height must be greater than zero
67
+ @param pixels pointer to destination pixels buffer
68
+ @param rowBytes interval from one SkSurface row to the next
69
+ @param surfaceProps LCD striping orientation and setting for device independent fonts;
70
+ may be nullptr
71
+ @return SkSurface if all parameters are valid; otherwise, nullptr
72
+ */
73
+ static sk_sp<SkSurface> MakeRasterDirect(const SkImageInfo& imageInfo, void* pixels,
74
+ size_t rowBytes,
75
+ const SkSurfaceProps* surfaceProps = nullptr);
76
+
77
+ static sk_sp<SkSurface> MakeRasterDirect(const SkPixmap& pm,
78
+ const SkSurfaceProps* props = nullptr) {
79
+ return MakeRasterDirect(pm.info(), pm.writable_addr(), pm.rowBytes(), props);
80
+ }
81
+
82
+ /** Allocates raster SkSurface. SkCanvas returned by SkSurface draws directly into pixels.
83
+ releaseProc is called with pixels and context when SkSurface is deleted.
84
+
85
+ SkSurface is returned if all parameters are valid.
86
+ Valid parameters include:
87
+ info dimensions are greater than zero;
88
+ info contains SkColorType and SkAlphaType supported by raster surface;
89
+ pixels is not nullptr;
90
+ rowBytes is large enough to contain info width pixels of SkColorType.
91
+
92
+ Pixel buffer size should be info height times computed rowBytes.
93
+ Pixels are not initialized.
94
+ To access pixels after drawing, call flush() or peekPixels().
95
+
96
+ @param imageInfo width, height, SkColorType, SkAlphaType, SkColorSpace,
97
+ of raster surface; width and height must be greater than zero
98
+ @param pixels pointer to destination pixels buffer
99
+ @param rowBytes interval from one SkSurface row to the next
100
+ @param releaseProc called when SkSurface is deleted; may be nullptr
101
+ @param context passed to releaseProc; may be nullptr
102
+ @param surfaceProps LCD striping orientation and setting for device independent fonts;
103
+ may be nullptr
104
+ @return SkSurface if all parameters are valid; otherwise, nullptr
105
+ */
106
+ static sk_sp<SkSurface> MakeRasterDirectReleaseProc(const SkImageInfo& imageInfo, void* pixels,
107
+ size_t rowBytes,
108
+ void (*releaseProc)(void* pixels, void* context),
109
+ void* context, const SkSurfaceProps* surfaceProps = nullptr);
110
+
111
+ /** Allocates raster SkSurface. SkCanvas returned by SkSurface draws directly into pixels.
112
+ Allocates and zeroes pixel memory. Pixel memory size is imageInfo.height() times
113
+ rowBytes, or times imageInfo.minRowBytes() if rowBytes is zero.
114
+ Pixel memory is deleted when SkSurface is deleted.
115
+
116
+ SkSurface is returned if all parameters are valid.
117
+ Valid parameters include:
118
+ info dimensions are greater than zero;
119
+ info contains SkColorType and SkAlphaType supported by raster surface;
120
+ rowBytes is large enough to contain info width pixels of SkColorType, or is zero.
121
+
122
+ If rowBytes is zero, a suitable value will be chosen internally.
123
+
124
+ @param imageInfo width, height, SkColorType, SkAlphaType, SkColorSpace,
125
+ of raster surface; width and height must be greater than zero
126
+ @param rowBytes interval from one SkSurface row to the next; may be zero
127
+ @param surfaceProps LCD striping orientation and setting for device independent fonts;
128
+ may be nullptr
129
+ @return SkSurface if all parameters are valid; otherwise, nullptr
130
+ */
131
+ static sk_sp<SkSurface> MakeRaster(const SkImageInfo& imageInfo, size_t rowBytes,
132
+ const SkSurfaceProps* surfaceProps);
133
+
134
+ /** Allocates raster SkSurface. SkCanvas returned by SkSurface draws directly into pixels.
135
+ Allocates and zeroes pixel memory. Pixel memory size is imageInfo.height() times
136
+ imageInfo.minRowBytes().
137
+ Pixel memory is deleted when SkSurface is deleted.
138
+
139
+ SkSurface is returned if all parameters are valid.
140
+ Valid parameters include:
141
+ info dimensions are greater than zero;
142
+ info contains SkColorType and SkAlphaType supported by raster surface.
143
+
144
+ @param imageInfo width, height, SkColorType, SkAlphaType, SkColorSpace,
145
+ of raster surface; width and height must be greater than zero
146
+ @param props LCD striping orientation and setting for device independent fonts;
147
+ may be nullptr
148
+ @return SkSurface if all parameters are valid; otherwise, nullptr
149
+ */
150
+ static sk_sp<SkSurface> MakeRaster(const SkImageInfo& imageInfo,
151
+ const SkSurfaceProps* props = nullptr) {
152
+ return MakeRaster(imageInfo, 0, props);
153
+ }
154
+
155
+ /** Allocates raster SkSurface. SkCanvas returned by SkSurface draws directly into pixels.
156
+ Allocates and zeroes pixel memory. Pixel memory size is height times width times
157
+ four. Pixel memory is deleted when SkSurface is deleted.
158
+
159
+ Internally, sets SkImageInfo to width, height, native color type, and
160
+ kPremul_SkAlphaType.
161
+
162
+ SkSurface is returned if width and height are greater than zero.
163
+
164
+ Use to create SkSurface that matches SkPMColor, the native pixel arrangement on
165
+ the platform. SkSurface drawn to output device skips converting its pixel format.
166
+
167
+ @param width pixel column count; must be greater than zero
168
+ @param height pixel row count; must be greater than zero
169
+ @param surfaceProps LCD striping orientation and setting for device independent
170
+ fonts; may be nullptr
171
+ @return SkSurface if all parameters are valid; otherwise, nullptr
172
+ */
173
+ static sk_sp<SkSurface> MakeRasterN32Premul(int width, int height,
174
+ const SkSurfaceProps* surfaceProps = nullptr);
175
+
176
+ /** Caller data passed to RenderTarget/TextureReleaseProc; may be nullptr. */
177
+ typedef void* ReleaseContext;
178
+
179
+ /** User function called when supplied render target may be deleted. */
180
+ typedef void (*RenderTargetReleaseProc)(ReleaseContext releaseContext);
181
+
182
+ /** User function called when supplied texture may be deleted. */
183
+ typedef void (*TextureReleaseProc)(ReleaseContext releaseContext);
184
+
185
+ /** Wraps a GPU-backed texture into SkSurface. Caller must ensure the texture is
186
+ valid for the lifetime of returned SkSurface. If sampleCnt greater than zero,
187
+ creates an intermediate MSAA SkSurface which is used for drawing backendTexture.
188
+
189
+ SkSurface is returned if all parameters are valid. backendTexture is valid if
190
+ its pixel configuration agrees with colorSpace and context; for instance, if
191
+ backendTexture has an sRGB configuration, then context must support sRGB,
192
+ and colorSpace must be present. Further, backendTexture width and height must
193
+ not exceed context capabilities, and the context must be able to support
194
+ back-end textures.
195
+
196
+ Upon success textureReleaseProc is called when it is safe to delete the texture in the
197
+ backend API (accounting only for use of the texture by this surface). If SkSurface creation
198
+ fails textureReleaseProc is called before this function returns.
199
+
200
+ If SK_SUPPORT_GPU is defined as zero, has no effect and returns nullptr.
201
+
202
+ @param context GPU context
203
+ @param backendTexture texture residing on GPU
204
+ @param sampleCnt samples per pixel, or 0 to disable full scene anti-aliasing
205
+ @param colorSpace range of colors; may be nullptr
206
+ @param surfaceProps LCD striping orientation and setting for device independent
207
+ fonts; may be nullptr
208
+ @param textureReleaseProc function called when texture can be released
209
+ @param releaseContext state passed to textureReleaseProc
210
+ @return SkSurface if all parameters are valid; otherwise, nullptr
211
+ */
212
+ static sk_sp<SkSurface> MakeFromBackendTexture(GrRecordingContext* context,
213
+ const GrBackendTexture& backendTexture,
214
+ GrSurfaceOrigin origin, int sampleCnt,
215
+ SkColorType colorType,
216
+ sk_sp<SkColorSpace> colorSpace,
217
+ const SkSurfaceProps* surfaceProps,
218
+ TextureReleaseProc textureReleaseProc = nullptr,
219
+ ReleaseContext releaseContext = nullptr);
220
+
221
+ /** Wraps a GPU-backed buffer into SkSurface. Caller must ensure backendRenderTarget
222
+ is valid for the lifetime of returned SkSurface.
223
+
224
+ SkSurface is returned if all parameters are valid. backendRenderTarget is valid if
225
+ its pixel configuration agrees with colorSpace and context; for instance, if
226
+ backendRenderTarget has an sRGB configuration, then context must support sRGB,
227
+ and colorSpace must be present. Further, backendRenderTarget width and height must
228
+ not exceed context capabilities, and the context must be able to support
229
+ back-end render targets.
230
+
231
+ Upon success releaseProc is called when it is safe to delete the render target in the
232
+ backend API (accounting only for use of the render target by this surface). If SkSurface
233
+ creation fails releaseProc is called before this function returns.
234
+
235
+ If SK_SUPPORT_GPU is defined as zero, has no effect and returns nullptr.
236
+
237
+ @param context GPU context
238
+ @param backendRenderTarget GPU intermediate memory buffer
239
+ @param colorSpace range of colors
240
+ @param surfaceProps LCD striping orientation and setting for device independent
241
+ fonts; may be nullptr
242
+ @param releaseProc function called when backendRenderTarget can be released
243
+ @param releaseContext state passed to releaseProc
244
+ @return SkSurface if all parameters are valid; otherwise, nullptr
245
+ */
246
+ static sk_sp<SkSurface> MakeFromBackendRenderTarget(GrRecordingContext* context,
247
+ const GrBackendRenderTarget& backendRenderTarget,
248
+ GrSurfaceOrigin origin,
249
+ SkColorType colorType,
250
+ sk_sp<SkColorSpace> colorSpace,
251
+ const SkSurfaceProps* surfaceProps,
252
+ RenderTargetReleaseProc releaseProc = nullptr,
253
+ ReleaseContext releaseContext = nullptr);
254
+
255
+ /** Returns SkSurface on GPU indicated by context. Allocates memory for
256
+ pixels, based on the width, height, and SkColorType in SkImageInfo. budgeted
257
+ selects whether allocation for pixels is tracked by context. imageInfo
258
+ describes the pixel format in SkColorType, and transparency in
259
+ SkAlphaType, and color matching in SkColorSpace.
260
+
261
+ sampleCount requests the number of samples per pixel.
262
+ Pass zero to disable multi-sample anti-aliasing. The request is rounded
263
+ up to the next supported count, or rounded down if it is larger than the
264
+ maximum supported count.
265
+
266
+ surfaceOrigin pins either the top-left or the bottom-left corner to the origin.
267
+
268
+ shouldCreateWithMips hints that SkImage returned by makeImageSnapshot() is mip map.
269
+
270
+ If SK_SUPPORT_GPU is defined as zero, has no effect and returns nullptr.
271
+
272
+ @param context GPU context
273
+ @param imageInfo width, height, SkColorType, SkAlphaType, SkColorSpace;
274
+ width, or height, or both, may be zero
275
+ @param sampleCount samples per pixel, or 0 to disable full scene anti-aliasing
276
+ @param surfaceProps LCD striping orientation and setting for device independent
277
+ fonts; may be nullptr
278
+ @param shouldCreateWithMips hint that SkSurface will host mip map images
279
+ @return SkSurface if all parameters are valid; otherwise, nullptr
280
+ */
281
+ static sk_sp<SkSurface> MakeRenderTarget(GrRecordingContext* context, SkBudgeted budgeted,
282
+ const SkImageInfo& imageInfo,
283
+ int sampleCount, GrSurfaceOrigin surfaceOrigin,
284
+ const SkSurfaceProps* surfaceProps,
285
+ bool shouldCreateWithMips = false);
286
+
287
+ /** Returns SkSurface on GPU indicated by context. Allocates memory for
288
+ pixels, based on the width, height, and SkColorType in SkImageInfo. budgeted
289
+ selects whether allocation for pixels is tracked by context. imageInfo
290
+ describes the pixel format in SkColorType, and transparency in
291
+ SkAlphaType, and color matching in SkColorSpace.
292
+
293
+ sampleCount requests the number of samples per pixel.
294
+ Pass zero to disable multi-sample anti-aliasing. The request is rounded
295
+ up to the next supported count, or rounded down if it is larger than the
296
+ maximum supported count.
297
+
298
+ SkSurface bottom-left corner is pinned to the origin.
299
+
300
+ @param context GPU context
301
+ @param imageInfo width, height, SkColorType, SkAlphaType, SkColorSpace,
302
+ of raster surface; width, or height, or both, may be zero
303
+ @param sampleCount samples per pixel, or 0 to disable multi-sample anti-aliasing
304
+ @param surfaceProps LCD striping orientation and setting for device independent
305
+ fonts; may be nullptr
306
+ @return SkSurface if all parameters are valid; otherwise, nullptr
307
+ */
308
+ static sk_sp<SkSurface> MakeRenderTarget(GrRecordingContext* context, SkBudgeted budgeted,
309
+ const SkImageInfo& imageInfo, int sampleCount,
310
+ const SkSurfaceProps* surfaceProps) {
311
+ #if SK_SUPPORT_GPU
312
+ return MakeRenderTarget(context, budgeted, imageInfo, sampleCount,
313
+ kBottomLeft_GrSurfaceOrigin, surfaceProps);
314
+ #else
315
+ // TODO(kjlubick, scroggo) Remove this once Android is updated.
316
+ return nullptr;
317
+ #endif
318
+ }
319
+
320
+ /** Returns SkSurface on GPU indicated by context. Allocates memory for
321
+ pixels, based on the width, height, and SkColorType in SkImageInfo. budgeted
322
+ selects whether allocation for pixels is tracked by context. imageInfo
323
+ describes the pixel format in SkColorType, and transparency in
324
+ SkAlphaType, and color matching in SkColorSpace.
325
+
326
+ SkSurface bottom-left corner is pinned to the origin.
327
+
328
+ @param context GPU context
329
+ @param imageInfo width, height, SkColorType, SkAlphaType, SkColorSpace,
330
+ of raster surface; width, or height, or both, may be zero
331
+ @return SkSurface if all parameters are valid; otherwise, nullptr
332
+ */
333
+ static sk_sp<SkSurface> MakeRenderTarget(GrRecordingContext* context, SkBudgeted budgeted,
334
+ const SkImageInfo& imageInfo) {
335
+ #if SK_SUPPORT_GPU
336
+ if (!imageInfo.width() || !imageInfo.height()) {
337
+ return nullptr;
338
+ }
339
+ return MakeRenderTarget(context, budgeted, imageInfo, 0, kBottomLeft_GrSurfaceOrigin,
340
+ nullptr);
341
+ #else
342
+ // TODO(kjlubick, scroggo) Remove this once Android is updated.
343
+ return nullptr;
344
+ #endif
345
+ }
346
+
347
+ /** Returns SkSurface on GPU indicated by context that is compatible with the provided
348
+ characterization. budgeted selects whether allocation for pixels is tracked by context.
349
+
350
+ @param context GPU context
351
+ @param characterization description of the desired SkSurface
352
+ @return SkSurface if all parameters are valid; otherwise, nullptr
353
+ */
354
+ static sk_sp<SkSurface> MakeRenderTarget(GrRecordingContext* context,
355
+ const SkSurfaceCharacterization& characterization,
356
+ SkBudgeted budgeted);
357
+
358
+
359
+ #if defined(SK_BUILD_FOR_ANDROID) && __ANDROID_API__ >= 26
360
+ /** Private.
361
+ Creates SkSurface from Android hardware buffer.
362
+ Returned SkSurface takes a reference on the buffer. The ref on the buffer will be released
363
+ when the SkSurface is destroyed and there is no pending work on the GPU involving the
364
+ buffer.
365
+
366
+ Only available on Android, when __ANDROID_API__ is defined to be 26 or greater.
367
+
368
+ Currently this is only supported for buffers that can be textured as well as rendered to.
369
+ In other words that must have both AHARDWAREBUFFER_USAGE_GPU_COLOR_OUTPUT and
370
+ AHARDWAREBUFFER_USAGE_GPU_SAMPLED_IMAGE usage bits.
371
+
372
+ @param context GPU context
373
+ @param hardwareBuffer AHardwareBuffer Android hardware buffer
374
+ @param colorSpace range of colors; may be nullptr
375
+ @param surfaceProps LCD striping orientation and setting for device independent
376
+ fonts; may be nullptr
377
+ @param fromWindow Whether or not the AHardwareBuffer is part of an Android Window.
378
+ Currently only used with Vulkan backend.
379
+ @return created SkSurface, or nullptr
380
+ */
381
+ static sk_sp<SkSurface> MakeFromAHardwareBuffer(GrDirectContext* context,
382
+ AHardwareBuffer* hardwareBuffer,
383
+ GrSurfaceOrigin origin,
384
+ sk_sp<SkColorSpace> colorSpace,
385
+ const SkSurfaceProps* surfaceProps
386
+ #ifdef SK_BUILD_FOR_ANDROID_FRAMEWORK
387
+ , bool fromWindow = false
388
+ #endif // SK_BUILD_FOR_ANDROID_FRAMEWORK
389
+ );
390
+ #endif
391
+
392
+ #ifdef SK_METAL
393
+ /** Creates SkSurface from CAMetalLayer.
394
+ Returned SkSurface takes a reference on the CAMetalLayer. The ref on the layer will be
395
+ released when the SkSurface is destroyed.
396
+
397
+ Only available when Metal API is enabled.
398
+
399
+ Will grab the current drawable from the layer and use its texture as a backendRT to
400
+ create a renderable surface.
401
+
402
+ @param context GPU context
403
+ @param layer GrMTLHandle (expected to be a CAMetalLayer*)
404
+ @param sampleCnt samples per pixel, or 0 to disable full scene anti-aliasing
405
+ @param colorSpace range of colors; may be nullptr
406
+ @param surfaceProps LCD striping orientation and setting for device independent
407
+ fonts; may be nullptr
408
+ @param drawable Pointer to drawable to be filled in when this surface is
409
+ instantiated; may not be nullptr
410
+ @return created SkSurface, or nullptr
411
+ */
412
+ static sk_sp<SkSurface> MakeFromCAMetalLayer(GrRecordingContext* context,
413
+ GrMTLHandle layer,
414
+ GrSurfaceOrigin origin,
415
+ int sampleCnt,
416
+ SkColorType colorType,
417
+ sk_sp<SkColorSpace> colorSpace,
418
+ const SkSurfaceProps* surfaceProps,
419
+ GrMTLHandle* drawable)
420
+ SK_API_AVAILABLE_CA_METAL_LAYER;
421
+
422
+ /** Creates SkSurface from MTKView.
423
+ Returned SkSurface takes a reference on the MTKView. The ref on the layer will be
424
+ released when the SkSurface is destroyed.
425
+
426
+ Only available when Metal API is enabled.
427
+
428
+ Will grab the current drawable from the layer and use its texture as a backendRT to
429
+ create a renderable surface.
430
+
431
+ @param context GPU context
432
+ @param layer GrMTLHandle (expected to be a MTKView*)
433
+ @param sampleCnt samples per pixel, or 0 to disable full scene anti-aliasing
434
+ @param colorSpace range of colors; may be nullptr
435
+ @param surfaceProps LCD striping orientation and setting for device independent
436
+ fonts; may be nullptr
437
+ @return created SkSurface, or nullptr
438
+ */
439
+ static sk_sp<SkSurface> MakeFromMTKView(GrRecordingContext* context,
440
+ GrMTLHandle mtkView,
441
+ GrSurfaceOrigin origin,
442
+ int sampleCnt,
443
+ SkColorType colorType,
444
+ sk_sp<SkColorSpace> colorSpace,
445
+ const SkSurfaceProps* surfaceProps)
446
+ SK_API_AVAILABLE(macos(10.11), ios(9.0));
447
+ #endif
448
+
449
+ /** Is this surface compatible with the provided characterization?
450
+
451
+ This method can be used to determine if an existing SkSurface is a viable destination
452
+ for an SkDeferredDisplayList.
453
+
454
+ @param characterization The characterization for which a compatibility check is desired
455
+ @return true if this surface is compatible with the characterization;
456
+ false otherwise
457
+ */
458
+ bool isCompatible(const SkSurfaceCharacterization& characterization) const;
459
+
460
+ /** Returns SkSurface without backing pixels. Drawing to SkCanvas returned from SkSurface
461
+ has no effect. Calling makeImageSnapshot() on returned SkSurface returns nullptr.
462
+
463
+ @param width one or greater
464
+ @param height one or greater
465
+ @return SkSurface if width and height are positive; otherwise, nullptr
466
+
467
+ example: https://fiddle.skia.org/c/@Surface_MakeNull
468
+ */
469
+ static sk_sp<SkSurface> MakeNull(int width, int height);
470
+
471
+ /** Returns pixel count in each row; may be zero or greater.
472
+
473
+ @return number of pixel columns
474
+ */
475
+ int width() const { return fWidth; }
476
+
477
+ /** Returns pixel row count; may be zero or greater.
478
+
479
+ @return number of pixel rows
480
+ */
481
+ int height() const { return fHeight; }
482
+
483
+ /** Returns an ImageInfo describing the surface.
484
+ */
485
+ SkImageInfo imageInfo();
486
+
487
+ /** Returns unique value identifying the content of SkSurface. Returned value changes
488
+ each time the content changes. Content is changed by drawing, or by calling
489
+ notifyContentWillChange().
490
+
491
+ @return unique content identifier
492
+
493
+ example: https://fiddle.skia.org/c/@Surface_notifyContentWillChange
494
+ */
495
+ uint32_t generationID();
496
+
497
+ /** \enum SkSurface::ContentChangeMode
498
+ ContentChangeMode members are parameters to notifyContentWillChange().
499
+ */
500
+ enum ContentChangeMode {
501
+ kDiscard_ContentChangeMode, //!< discards surface on change
502
+ kRetain_ContentChangeMode, //!< preserves surface on change
503
+ };
504
+
505
+ /** Notifies that SkSurface contents will be changed by code outside of Skia.
506
+ Subsequent calls to generationID() return a different value.
507
+
508
+ TODO: Can kRetain_ContentChangeMode be deprecated?
509
+
510
+ example: https://fiddle.skia.org/c/@Surface_notifyContentWillChange
511
+ */
512
+ void notifyContentWillChange(ContentChangeMode mode);
513
+
514
+ /** Returns the recording context being used by the SkSurface.
515
+
516
+ @return the recording context, if available; nullptr otherwise
517
+ */
518
+ GrRecordingContext* recordingContext();
519
+
520
+ #if SK_SUPPORT_GPU
521
+ enum BackendHandleAccess {
522
+ kFlushRead_BackendHandleAccess, //!< back-end object is readable
523
+ kFlushWrite_BackendHandleAccess, //!< back-end object is writable
524
+ kDiscardWrite_BackendHandleAccess, //!< back-end object must be overwritten
525
+ };
526
+
527
+ /** Deprecated.
528
+ */
529
+ static const BackendHandleAccess kFlushRead_TextureHandleAccess =
530
+ kFlushRead_BackendHandleAccess;
531
+
532
+ /** Deprecated.
533
+ */
534
+ static const BackendHandleAccess kFlushWrite_TextureHandleAccess =
535
+ kFlushWrite_BackendHandleAccess;
536
+
537
+ /** Deprecated.
538
+ */
539
+ static const BackendHandleAccess kDiscardWrite_TextureHandleAccess =
540
+ kDiscardWrite_BackendHandleAccess;
541
+
542
+ /** Retrieves the back-end texture. If SkSurface has no back-end texture, an invalid
543
+ object is returned. Call GrBackendTexture::isValid to determine if the result
544
+ is valid.
545
+
546
+ The returned GrBackendTexture should be discarded if the SkSurface is drawn to or deleted.
547
+
548
+ @return GPU texture reference; invalid on failure
549
+ */
550
+ GrBackendTexture getBackendTexture(BackendHandleAccess backendHandleAccess);
551
+
552
+ /** Retrieves the back-end render target. If SkSurface has no back-end render target, an invalid
553
+ object is returned. Call GrBackendRenderTarget::isValid to determine if the result
554
+ is valid.
555
+
556
+ The returned GrBackendRenderTarget should be discarded if the SkSurface is drawn to
557
+ or deleted.
558
+
559
+ @return GPU render target reference; invalid on failure
560
+ */
561
+ GrBackendRenderTarget getBackendRenderTarget(BackendHandleAccess backendHandleAccess);
562
+
563
+ /** If the surface was made via MakeFromBackendTexture then it's backing texture may be
564
+ substituted with a different texture. The contents of the previous backing texture are
565
+ copied into the new texture. SkCanvas state is preserved. The original sample count is
566
+ used. The GrBackendFormat and dimensions of replacement texture must match that of
567
+ the original.
568
+
569
+ Upon success textureReleaseProc is called when it is safe to delete the texture in the
570
+ backend API (accounting only for use of the texture by this surface). If SkSurface creation
571
+ fails textureReleaseProc is called before this function returns.
572
+
573
+ @param backendTexture the new backing texture for the surface
574
+ @param mode Retain or discard current Content
575
+ @param textureReleaseProc function called when texture can be released
576
+ @param releaseContext state passed to textureReleaseProc
577
+ */
578
+ bool replaceBackendTexture(const GrBackendTexture& backendTexture,
579
+ GrSurfaceOrigin origin,
580
+ ContentChangeMode mode = kRetain_ContentChangeMode,
581
+ TextureReleaseProc textureReleaseProc = nullptr,
582
+ ReleaseContext releaseContext = nullptr);
583
+ #endif
584
+
585
+ /** Returns SkCanvas that draws into SkSurface. Subsequent calls return the same SkCanvas.
586
+ SkCanvas returned is managed and owned by SkSurface, and is deleted when SkSurface
587
+ is deleted.
588
+
589
+ @return drawing SkCanvas for SkSurface
590
+
591
+ example: https://fiddle.skia.org/c/@Surface_getCanvas
592
+ */
593
+ SkCanvas* getCanvas();
594
+
595
+ /** Returns a compatible SkSurface, or nullptr. Returned SkSurface contains
596
+ the same raster, GPU, or null properties as the original. Returned SkSurface
597
+ does not share the same pixels.
598
+
599
+ Returns nullptr if imageInfo width or height are zero, or if imageInfo
600
+ is incompatible with SkSurface.
601
+
602
+ @param imageInfo width, height, SkColorType, SkAlphaType, SkColorSpace,
603
+ of SkSurface; width and height must be greater than zero
604
+ @return compatible SkSurface or nullptr
605
+
606
+ example: https://fiddle.skia.org/c/@Surface_makeSurface
607
+ */
608
+ sk_sp<SkSurface> makeSurface(const SkImageInfo& imageInfo);
609
+
610
+ /** Calls makeSurface(ImageInfo) with the same ImageInfo as this surface, but with the
611
+ * specified width and height.
612
+ */
613
+ sk_sp<SkSurface> makeSurface(int width, int height);
614
+
615
+ /** Returns SkImage capturing SkSurface contents. Subsequent drawing to SkSurface contents
616
+ are not captured. SkImage allocation is accounted for if SkSurface was created with
617
+ SkBudgeted::kYes.
618
+
619
+ @return SkImage initialized with SkSurface contents
620
+
621
+ example: https://fiddle.skia.org/c/@Surface_makeImageSnapshot
622
+ */
623
+ sk_sp<SkImage> makeImageSnapshot();
624
+
625
+ /**
626
+ * Like the no-parameter version, this returns an image of the current surface contents.
627
+ * This variant takes a rectangle specifying the subset of the surface that is of interest.
628
+ * These bounds will be sanitized before being used.
629
+ * - If bounds extends beyond the surface, it will be trimmed to just the intersection of
630
+ * it and the surface.
631
+ * - If bounds does not intersect the surface, then this returns nullptr.
632
+ * - If bounds == the surface, then this is the same as calling the no-parameter variant.
633
+
634
+ example: https://fiddle.skia.org/c/@Surface_makeImageSnapshot_2
635
+ */
636
+ sk_sp<SkImage> makeImageSnapshot(const SkIRect& bounds);
637
+
638
+ /** Draws SkSurface contents to canvas, with its top-left corner at (x, y).
639
+
640
+ If SkPaint paint is not nullptr, apply SkColorFilter, alpha, SkImageFilter, and SkBlendMode.
641
+
642
+ @param canvas SkCanvas drawn into
643
+ @param x horizontal offset in SkCanvas
644
+ @param y vertical offset in SkCanvas
645
+ @param sampling what technique to use when sampling the surface pixels
646
+ @param paint SkPaint containing SkBlendMode, SkColorFilter, SkImageFilter,
647
+ and so on; or nullptr
648
+
649
+ example: https://fiddle.skia.org/c/@Surface_draw
650
+ */
651
+ void draw(SkCanvas* canvas, SkScalar x, SkScalar y, const SkSamplingOptions& sampling,
652
+ const SkPaint* paint);
653
+
654
+ void draw(SkCanvas* canvas, SkScalar x, SkScalar y, const SkPaint* paint = nullptr) {
655
+ this->draw(canvas, x, y, SkSamplingOptions(), paint);
656
+ }
657
+
658
+ /** Copies SkSurface pixel address, row bytes, and SkImageInfo to SkPixmap, if address
659
+ is available, and returns true. If pixel address is not available, return
660
+ false and leave SkPixmap unchanged.
661
+
662
+ pixmap contents become invalid on any future change to SkSurface.
663
+
664
+ @param pixmap storage for pixel state if pixels are readable; otherwise, ignored
665
+ @return true if SkSurface has direct access to pixels
666
+
667
+ example: https://fiddle.skia.org/c/@Surface_peekPixels
668
+ */
669
+ bool peekPixels(SkPixmap* pixmap);
670
+
671
+ /** Copies SkRect of pixels to dst.
672
+
673
+ Source SkRect corners are (srcX, srcY) and SkSurface (width(), height()).
674
+ Destination SkRect corners are (0, 0) and (dst.width(), dst.height()).
675
+ Copies each readable pixel intersecting both rectangles, without scaling,
676
+ converting to dst.colorType() and dst.alphaType() if required.
677
+
678
+ Pixels are readable when SkSurface is raster, or backed by a GPU.
679
+
680
+ The destination pixel storage must be allocated by the caller.
681
+
682
+ Pixel values are converted only if SkColorType and SkAlphaType
683
+ do not match. Only pixels within both source and destination rectangles
684
+ are copied. dst contents outside SkRect intersection are unchanged.
685
+
686
+ Pass negative values for srcX or srcY to offset pixels across or down destination.
687
+
688
+ Does not copy, and returns false if:
689
+ - Source and destination rectangles do not intersect.
690
+ - SkPixmap pixels could not be allocated.
691
+ - dst.rowBytes() is too small to contain one row of pixels.
692
+
693
+ @param dst storage for pixels copied from SkSurface
694
+ @param srcX offset into readable pixels on x-axis; may be negative
695
+ @param srcY offset into readable pixels on y-axis; may be negative
696
+ @return true if pixels were copied
697
+
698
+ example: https://fiddle.skia.org/c/@Surface_readPixels
699
+ */
700
+ bool readPixels(const SkPixmap& dst, int srcX, int srcY);
701
+
702
+ /** Copies SkRect of pixels from SkCanvas into dstPixels.
703
+
704
+ Source SkRect corners are (srcX, srcY) and SkSurface (width(), height()).
705
+ Destination SkRect corners are (0, 0) and (dstInfo.width(), dstInfo.height()).
706
+ Copies each readable pixel intersecting both rectangles, without scaling,
707
+ converting to dstInfo.colorType() and dstInfo.alphaType() if required.
708
+
709
+ Pixels are readable when SkSurface is raster, or backed by a GPU.
710
+
711
+ The destination pixel storage must be allocated by the caller.
712
+
713
+ Pixel values are converted only if SkColorType and SkAlphaType
714
+ do not match. Only pixels within both source and destination rectangles
715
+ are copied. dstPixels contents outside SkRect intersection are unchanged.
716
+
717
+ Pass negative values for srcX or srcY to offset pixels across or down destination.
718
+
719
+ Does not copy, and returns false if:
720
+ - Source and destination rectangles do not intersect.
721
+ - SkSurface pixels could not be converted to dstInfo.colorType() or dstInfo.alphaType().
722
+ - dstRowBytes is too small to contain one row of pixels.
723
+
724
+ @param dstInfo width, height, SkColorType, and SkAlphaType of dstPixels
725
+ @param dstPixels storage for pixels; dstInfo.height() times dstRowBytes, or larger
726
+ @param dstRowBytes size of one destination row; dstInfo.width() times pixel size, or larger
727
+ @param srcX offset into readable pixels on x-axis; may be negative
728
+ @param srcY offset into readable pixels on y-axis; may be negative
729
+ @return true if pixels were copied
730
+ */
731
+ bool readPixels(const SkImageInfo& dstInfo, void* dstPixels, size_t dstRowBytes,
732
+ int srcX, int srcY);
733
+
734
+ /** Copies SkRect of pixels from SkSurface into bitmap.
735
+
736
+ Source SkRect corners are (srcX, srcY) and SkSurface (width(), height()).
737
+ Destination SkRect corners are (0, 0) and (bitmap.width(), bitmap.height()).
738
+ Copies each readable pixel intersecting both rectangles, without scaling,
739
+ converting to bitmap.colorType() and bitmap.alphaType() if required.
740
+
741
+ Pixels are readable when SkSurface is raster, or backed by a GPU.
742
+
743
+ The destination pixel storage must be allocated by the caller.
744
+
745
+ Pixel values are converted only if SkColorType and SkAlphaType
746
+ do not match. Only pixels within both source and destination rectangles
747
+ are copied. dst contents outside SkRect intersection are unchanged.
748
+
749
+ Pass negative values for srcX or srcY to offset pixels across or down destination.
750
+
751
+ Does not copy, and returns false if:
752
+ - Source and destination rectangles do not intersect.
753
+ - SkSurface pixels could not be converted to dst.colorType() or dst.alphaType().
754
+ - dst pixels could not be allocated.
755
+ - dst.rowBytes() is too small to contain one row of pixels.
756
+
757
+ @param dst storage for pixels copied from SkSurface
758
+ @param srcX offset into readable pixels on x-axis; may be negative
759
+ @param srcY offset into readable pixels on y-axis; may be negative
760
+ @return true if pixels were copied
761
+
762
+ example: https://fiddle.skia.org/c/@Surface_readPixels_3
763
+ */
764
+ bool readPixels(const SkBitmap& dst, int srcX, int srcY);
765
+
766
+ using AsyncReadResult = SkImage::AsyncReadResult;
767
+
768
+ /** Client-provided context that is passed to client-provided ReadPixelsContext. */
769
+ using ReadPixelsContext = void*;
770
+
771
+ /** Client-provided callback to asyncRescaleAndReadPixels() or
772
+ asyncRescaleAndReadPixelsYUV420() that is called when read result is ready or on failure.
773
+ */
774
+ using ReadPixelsCallback = void(ReadPixelsContext, std::unique_ptr<const AsyncReadResult>);
775
+
776
+ /** Controls the gamma that rescaling occurs in for asyncRescaleAndReadPixels() and
777
+ asyncRescaleAndReadPixelsYUV420().
778
+ */
779
+ using RescaleGamma = SkImage::RescaleGamma;
780
+ using RescaleMode = SkImage::RescaleMode;
781
+
782
+ /** Makes surface pixel data available to caller, possibly asynchronously. It can also rescale
783
+ the surface pixels.
784
+
785
+ Currently asynchronous reads are only supported on the GPU backend and only when the
786
+ underlying 3D API supports transfer buffers and CPU/GPU synchronization primitives. In all
787
+ other cases this operates synchronously.
788
+
789
+ Data is read from the source sub-rectangle, is optionally converted to a linear gamma, is
790
+ rescaled to the size indicated by 'info', is then converted to the color space, color type,
791
+ and alpha type of 'info'. A 'srcRect' that is not contained by the bounds of the surface
792
+ causes failure.
793
+
794
+ When the pixel data is ready the caller's ReadPixelsCallback is called with a
795
+ AsyncReadResult containing pixel data in the requested color type, alpha type, and color
796
+ space. The AsyncReadResult will have count() == 1. Upon failure the callback is called
797
+ with nullptr for AsyncReadResult. For a GPU surface this flushes work but a submit must
798
+ occur to guarantee a finite time before the callback is called.
799
+
800
+ The data is valid for the lifetime of AsyncReadResult with the exception that if the
801
+ SkSurface is GPU-backed the data is immediately invalidated if the context is abandoned
802
+ or destroyed.
803
+
804
+ @param info info of the requested pixels
805
+ @param srcRect subrectangle of surface to read
806
+ @param rescaleGamma controls whether rescaling is done in the surface's gamma or whether
807
+ the source data is transformed to a linear gamma before rescaling.
808
+ @param rescaleMode controls the technique of the rescaling
809
+ @param callback function to call with result of the read
810
+ @param context passed to callback
811
+ */
812
+ void asyncRescaleAndReadPixels(const SkImageInfo& info,
813
+ const SkIRect& srcRect,
814
+ RescaleGamma rescaleGamma,
815
+ RescaleMode rescaleMode,
816
+ ReadPixelsCallback callback,
817
+ ReadPixelsContext context);
818
+
819
+ /**
820
+ Similar to asyncRescaleAndReadPixels but performs an additional conversion to YUV. The
821
+ RGB->YUV conversion is controlled by 'yuvColorSpace'. The YUV data is returned as three
822
+ planes ordered y, u, v. The u and v planes are half the width and height of the resized
823
+ rectangle. The y, u, and v values are single bytes. Currently this fails if 'dstSize'
824
+ width and height are not even. A 'srcRect' that is not contained by the bounds of the
825
+ surface causes failure.
826
+
827
+ When the pixel data is ready the caller's ReadPixelsCallback is called with a
828
+ AsyncReadResult containing the planar data. The AsyncReadResult will have count() == 3.
829
+ Upon failure the callback is called with nullptr for AsyncReadResult. For a GPU surface this
830
+ flushes work but a submit must occur to guarantee a finite time before the callback is
831
+ called.
832
+
833
+ The data is valid for the lifetime of AsyncReadResult with the exception that if the
834
+ SkSurface is GPU-backed the data is immediately invalidated if the context is abandoned
835
+ or destroyed.
836
+
837
+ @param yuvColorSpace The transformation from RGB to YUV. Applied to the resized image
838
+ after it is converted to dstColorSpace.
839
+ @param dstColorSpace The color space to convert the resized image to, after rescaling.
840
+ @param srcRect The portion of the surface to rescale and convert to YUV planes.
841
+ @param dstSize The size to rescale srcRect to
842
+ @param rescaleGamma controls whether rescaling is done in the surface's gamma or whether
843
+ the source data is transformed to a linear gamma before rescaling.
844
+ @param rescaleMode controls the sampling technique of the rescaling
845
+ @param callback function to call with the planar read result
846
+ @param context passed to callback
847
+ */
848
+ void asyncRescaleAndReadPixelsYUV420(SkYUVColorSpace yuvColorSpace,
849
+ sk_sp<SkColorSpace> dstColorSpace,
850
+ const SkIRect& srcRect,
851
+ const SkISize& dstSize,
852
+ RescaleGamma rescaleGamma,
853
+ RescaleMode rescaleMode,
854
+ ReadPixelsCallback callback,
855
+ ReadPixelsContext context);
856
+
857
+ /** Copies SkRect of pixels from the src SkPixmap to the SkSurface.
858
+
859
+ Source SkRect corners are (0, 0) and (src.width(), src.height()).
860
+ Destination SkRect corners are (dstX, dstY) and
861
+ (dstX + Surface width(), dstY + Surface height()).
862
+
863
+ Copies each readable pixel intersecting both rectangles, without scaling,
864
+ converting to SkSurface colorType() and SkSurface alphaType() if required.
865
+
866
+ @param src storage for pixels to copy to SkSurface
867
+ @param dstX x-axis position relative to SkSurface to begin copy; may be negative
868
+ @param dstY y-axis position relative to SkSurface to begin copy; may be negative
869
+
870
+ example: https://fiddle.skia.org/c/@Surface_writePixels
871
+ */
872
+ void writePixels(const SkPixmap& src, int dstX, int dstY);
873
+
874
+ /** Copies SkRect of pixels from the src SkBitmap to the SkSurface.
875
+
876
+ Source SkRect corners are (0, 0) and (src.width(), src.height()).
877
+ Destination SkRect corners are (dstX, dstY) and
878
+ (dstX + Surface width(), dstY + Surface height()).
879
+
880
+ Copies each readable pixel intersecting both rectangles, without scaling,
881
+ converting to SkSurface colorType() and SkSurface alphaType() if required.
882
+
883
+ @param src storage for pixels to copy to SkSurface
884
+ @param dstX x-axis position relative to SkSurface to begin copy; may be negative
885
+ @param dstY y-axis position relative to SkSurface to begin copy; may be negative
886
+
887
+ example: https://fiddle.skia.org/c/@Surface_writePixels_2
888
+ */
889
+ void writePixels(const SkBitmap& src, int dstX, int dstY);
890
+
891
+ /** Returns SkSurfaceProps for surface.
892
+
893
+ @return LCD striping orientation and setting for device independent fonts
894
+ */
895
+ const SkSurfaceProps& props() const { return fProps; }
896
+
897
+ /** Call to ensure all reads/writes of the surface have been issued to the underlying 3D API.
898
+ Skia will correctly order its own draws and pixel operations. This must to be used to ensure
899
+ correct ordering when the surface backing store is accessed outside Skia (e.g. direct use of
900
+ the 3D API or a windowing system). GrDirectContext has additional flush and submit methods
901
+ that apply to all surfaces and images created from a GrDirectContext. This is equivalent to
902
+ calling SkSurface::flush with a default GrFlushInfo followed by
903
+ GrDirectContext::submit(syncCpu).
904
+ */
905
+ void flushAndSubmit(bool syncCpu = false);
906
+
907
+ enum class BackendSurfaceAccess {
908
+ kNoAccess, //!< back-end object will not be used by client
909
+ kPresent, //!< back-end surface will be used for presenting to screen
910
+ };
911
+
912
+ #if SK_SUPPORT_GPU
913
+ /** Issues pending SkSurface commands to the GPU-backed API objects and resolves any SkSurface
914
+ MSAA. A call to GrDirectContext::submit is always required to ensure work is actually sent
915
+ to the gpu. Some specific API details:
916
+ GL: Commands are actually sent to the driver, but glFlush is never called. Thus some
917
+ sync objects from the flush will not be valid until a submission occurs.
918
+
919
+ Vulkan/Metal/D3D/Dawn: Commands are recorded to the backend APIs corresponding command
920
+ buffer or encoder objects. However, these objects are not sent to the gpu until a
921
+ submission occurs.
922
+
923
+ The work that is submitted to the GPU will be dependent on the BackendSurfaceAccess that is
924
+ passed in.
925
+
926
+ If BackendSurfaceAccess::kNoAccess is passed in all commands will be issued to the GPU.
927
+
928
+ If BackendSurfaceAccess::kPresent is passed in and the backend API is not Vulkan, it is
929
+ treated the same as kNoAccess. If the backend API is Vulkan, the VkImage that backs the
930
+ SkSurface will be transferred back to its original queue. If the SkSurface was created by
931
+ wrapping a VkImage, the queue will be set to the queue which was originally passed in on
932
+ the GrVkImageInfo. Additionally, if the original queue was not external or foreign the
933
+ layout of the VkImage will be set to VK_IMAGE_LAYOUT_PRESENT_SRC_KHR.
934
+
935
+ The GrFlushInfo describes additional options to flush. Please see documentation at
936
+ GrFlushInfo for more info.
937
+
938
+ If the return is GrSemaphoresSubmitted::kYes, only initialized GrBackendSemaphores will be
939
+ submitted to the gpu during the next submit call (it is possible Skia failed to create a
940
+ subset of the semaphores). The client should not wait on these semaphores until after submit
941
+ has been called, but must keep them alive until then. If a submit flag was passed in with
942
+ the flush these valid semaphores can we waited on immediately. If this call returns
943
+ GrSemaphoresSubmitted::kNo, the GPU backend will not submit any semaphores to be signaled on
944
+ the GPU. Thus the client should not have the GPU wait on any of the semaphores passed in
945
+ with the GrFlushInfo. Regardless of whether semaphores were submitted to the GPU or not, the
946
+ client is still responsible for deleting any initialized semaphores.
947
+ Regardless of semaphore submission the context will still be flushed. It should be
948
+ emphasized that a return value of GrSemaphoresSubmitted::kNo does not mean the flush did not
949
+ happen. It simply means there were no semaphores submitted to the GPU. A caller should only
950
+ take this as a failure if they passed in semaphores to be submitted.
951
+
952
+ Pending surface commands are flushed regardless of the return result.
953
+
954
+ @param access type of access the call will do on the backend object after flush
955
+ @param info flush options
956
+ */
957
+ GrSemaphoresSubmitted flush(BackendSurfaceAccess access, const GrFlushInfo& info);
958
+
959
+ /** Issues pending SkSurface commands to the GPU-backed API objects and resolves any SkSurface
960
+ MSAA. A call to GrDirectContext::submit is always required to ensure work is actually sent
961
+ to the gpu. Some specific API details:
962
+ GL: Commands are actually sent to the driver, but glFlush is never called. Thus some
963
+ sync objects from the flush will not be valid until a submission occurs.
964
+
965
+ Vulkan/Metal/D3D/Dawn: Commands are recorded to the backend APIs corresponding command
966
+ buffer or encoder objects. However, these objects are not sent to the gpu until a
967
+ submission occurs.
968
+
969
+ The GrFlushInfo describes additional options to flush. Please see documentation at
970
+ GrFlushInfo for more info.
971
+
972
+ If a GrBackendSurfaceMutableState is passed in, at the end of the flush we will transition
973
+ the surface to be in the state requested by the GrBackendSurfaceMutableState. If the surface
974
+ (or SkImage or GrBackendSurface wrapping the same backend object) is used again after this
975
+ flush the state may be changed and no longer match what is requested here. This is often
976
+ used if the surface will be used for presenting or external use and the client wants backend
977
+ object to be prepped for that use. A finishedProc or semaphore on the GrFlushInfo will also
978
+ include the work for any requested state change.
979
+
980
+ If the backend API is Vulkan, the caller can set the GrBackendSurfaceMutableState's
981
+ VkImageLayout to VK_IMAGE_LAYOUT_UNDEFINED or queueFamilyIndex to VK_QUEUE_FAMILY_IGNORED to
982
+ tell Skia to not change those respective states.
983
+
984
+ If the return is GrSemaphoresSubmitted::kYes, only initialized GrBackendSemaphores will be
985
+ submitted to the gpu during the next submit call (it is possible Skia failed to create a
986
+ subset of the semaphores). The client should not wait on these semaphores until after submit
987
+ has been called, but must keep them alive until then. If a submit flag was passed in with
988
+ the flush these valid semaphores can we waited on immediately. If this call returns
989
+ GrSemaphoresSubmitted::kNo, the GPU backend will not submit any semaphores to be signaled on
990
+ the GPU. Thus the client should not have the GPU wait on any of the semaphores passed in
991
+ with the GrFlushInfo. Regardless of whether semaphores were submitted to the GPU or not, the
992
+ client is still responsible for deleting any initialized semaphores.
993
+ Regardleess of semaphore submission the context will still be flushed. It should be
994
+ emphasized that a return value of GrSemaphoresSubmitted::kNo does not mean the flush did not
995
+ happen. It simply means there were no semaphores submitted to the GPU. A caller should only
996
+ take this as a failure if they passed in semaphores to be submitted.
997
+
998
+ Pending surface commands are flushed regardless of the return result.
999
+
1000
+ @param info flush options
1001
+ @param access optional state change request after flush
1002
+ */
1003
+ GrSemaphoresSubmitted flush(const GrFlushInfo& info,
1004
+ const GrBackendSurfaceMutableState* newState = nullptr);
1005
+ #endif // SK_SUPPORT_GPU
1006
+
1007
+ void flush();
1008
+
1009
+ /** Inserts a list of GPU semaphores that the current GPU-backed API must wait on before
1010
+ executing any more commands on the GPU for this surface. If this call returns false, then
1011
+ the GPU back-end will not wait on any passed in semaphores, and the client will still own
1012
+ the semaphores, regardless of the value of deleteSemaphoresAfterWait.
1013
+
1014
+ If deleteSemaphoresAfterWait is false then Skia will not delete the semaphores. In this case
1015
+ it is the client's responsibility to not destroy or attempt to reuse the semaphores until it
1016
+ knows that Skia has finished waiting on them. This can be done by using finishedProcs
1017
+ on flush calls.
1018
+
1019
+ @param numSemaphores size of waitSemaphores array
1020
+ @param waitSemaphores array of semaphore containers
1021
+ @paramm deleteSemaphoresAfterWait who owns and should delete the semaphores
1022
+ @return true if GPU is waiting on semaphores
1023
+ */
1024
+ bool wait(int numSemaphores, const GrBackendSemaphore* waitSemaphores,
1025
+ bool deleteSemaphoresAfterWait = true);
1026
+
1027
+ /** Initializes SkSurfaceCharacterization that can be used to perform GPU back-end
1028
+ processing in a separate thread. Typically this is used to divide drawing
1029
+ into multiple tiles. SkDeferredDisplayListRecorder records the drawing commands
1030
+ for each tile.
1031
+
1032
+ Return true if SkSurface supports characterization. raster surface returns false.
1033
+
1034
+ @param characterization properties for parallel drawing
1035
+ @return true if supported
1036
+
1037
+ example: https://fiddle.skia.org/c/@Surface_characterize
1038
+ */
1039
+ bool characterize(SkSurfaceCharacterization* characterization) const;
1040
+
1041
+ /** Draws the deferred display list created via a SkDeferredDisplayListRecorder.
1042
+ If the deferred display list is not compatible with this SkSurface, the draw is skipped
1043
+ and false is return.
1044
+
1045
+ The xOffset and yOffset parameters are experimental and, if not both zero, will cause
1046
+ the draw to be ignored.
1047
+ When implemented, if xOffset or yOffset are non-zero, the DDL will be drawn offset by that
1048
+ amount into the surface.
1049
+
1050
+ @param deferredDisplayList drawing commands
1051
+ @param xOffset x-offset at which to draw the DDL
1052
+ @param yOffset y-offset at which to draw the DDL
1053
+ @return false if deferredDisplayList is not compatible
1054
+
1055
+ example: https://fiddle.skia.org/c/@Surface_draw_2
1056
+ */
1057
+ bool draw(sk_sp<const SkDeferredDisplayList> deferredDisplayList,
1058
+ int xOffset = 0,
1059
+ int yOffset = 0);
1060
+
1061
+ protected:
1062
+ SkSurface(int width, int height, const SkSurfaceProps* surfaceProps);
1063
+ SkSurface(const SkImageInfo& imageInfo, const SkSurfaceProps* surfaceProps);
1064
+
1065
+ // called by subclass if their contents have changed
1066
+ void dirtyGenerationID() {
1067
+ fGenerationID = 0;
1068
+ }
1069
+
1070
+ private:
1071
+ const SkSurfaceProps fProps;
1072
+ const int fWidth;
1073
+ const int fHeight;
1074
+ uint32_t fGenerationID;
1075
+
1076
+ using INHERITED = SkRefCnt;
1077
+ };
1078
+
1079
+ #endif