@shopify/react-native-skia 1.3.12 → 1.4.0
Sign up to get free protection for your applications and to get access to all the features.
- package/android/CMakeLists.txt +9 -4
- package/android/cpp/rnskia-android/RNSkAndroidPlatformContext.h +6 -0
- package/android/cpp/rnskia-android/SkiaOpenGLSurfaceFactory.cpp +81 -0
- package/android/cpp/rnskia-android/SkiaOpenGLSurfaceFactory.h +40 -0
- package/cpp/api/JsiSkApi.h +2 -0
- package/cpp/api/JsiSkPath.h +29 -19
- package/cpp/api/JsiSkRuntimeEffect.h +7 -0
- package/cpp/api/JsiSkiaContext.h +79 -0
- package/cpp/rnskia/RNSkPlatformContext.h +4 -0
- package/cpp/rnskia/SkiaContext.h +22 -0
- package/cpp/skia/include/android/GrAHardwareBufferUtils.h +2 -2
- package/cpp/skia/include/android/SkImageAndroid.h +1 -1
- package/cpp/skia/include/android/SkSurfaceAndroid.h +1 -1
- package/cpp/skia/include/codec/SkAndroidCodec.h +13 -9
- package/cpp/skia/include/codec/SkCodec.h +28 -5
- package/cpp/skia/include/core/SkArc.h +69 -0
- package/cpp/skia/include/core/SkBitmap.h +10 -0
- package/cpp/skia/include/core/SkBlender.h +2 -3
- package/cpp/skia/include/core/SkCanvas.h +86 -16
- package/cpp/skia/include/core/SkCapabilities.h +0 -4
- package/cpp/skia/include/core/SkColorFilter.h +4 -4
- package/cpp/skia/include/core/SkColorPriv.h +5 -7
- package/cpp/skia/include/core/SkColorType.h +2 -0
- package/cpp/skia/include/core/SkFlattenable.h +1 -1
- package/cpp/skia/include/core/SkFontArguments.h +3 -1
- package/cpp/skia/include/core/SkFontParameters.h +3 -2
- package/cpp/skia/include/core/SkFourByteTag.h +19 -0
- package/cpp/skia/include/core/SkImage.h +41 -1
- package/cpp/skia/include/core/SkImageGenerator.h +0 -5
- package/cpp/skia/include/core/SkImageInfo.h +20 -0
- package/cpp/skia/include/core/SkM44.h +1 -1
- package/cpp/skia/include/core/SkMatrix.h +2 -1
- package/cpp/skia/include/core/SkMilestone.h +1 -1
- package/cpp/skia/include/core/SkPaint.h +1 -1
- package/cpp/skia/include/core/SkPath.h +20 -6
- package/cpp/skia/include/core/SkPathMeasure.h +1 -0
- package/cpp/skia/include/core/SkPicture.h +5 -5
- package/cpp/skia/include/core/SkPoint3.h +2 -12
- package/cpp/skia/include/core/SkRRect.h +5 -0
- package/cpp/skia/include/core/SkRect.h +5 -16
- package/cpp/skia/include/core/SkRefCnt.h +2 -0
- package/cpp/skia/include/core/SkScalar.h +20 -32
- package/cpp/skia/include/core/SkShader.h +17 -0
- package/cpp/skia/include/core/SkSize.h +2 -1
- package/cpp/skia/include/core/SkStream.h +2 -3
- package/cpp/skia/include/core/SkStrokeRec.h +6 -1
- package/cpp/skia/include/core/SkSurface.h +13 -4
- package/cpp/skia/include/core/SkSurfaceProps.h +5 -0
- package/cpp/skia/include/core/SkSwizzle.h +3 -1
- package/cpp/skia/include/core/SkTypeface.h +1 -0
- package/cpp/skia/include/core/SkTypes.h +1 -19
- package/cpp/skia/include/core/SkUnPreMultiply.h +4 -5
- package/cpp/skia/include/core/SkVertices.h +4 -2
- package/cpp/skia/include/docs/SkPDFDocument.h +11 -14
- package/cpp/skia/include/effects/SkHighContrastFilter.h +6 -6
- package/cpp/skia/include/effects/SkImageFilters.h +49 -23
- package/cpp/skia/include/effects/SkRuntimeEffect.h +51 -70
- package/cpp/skia/include/effects/SkShaderMaskFilter.h +2 -0
- package/cpp/skia/include/effects/SkTableMaskFilter.h +2 -0
- package/cpp/skia/include/gpu/GrBackendSemaphore.h +2 -120
- package/cpp/skia/include/gpu/GrBackendSurface.h +2 -466
- package/cpp/skia/include/gpu/GrContextOptions.h +2 -368
- package/cpp/skia/include/gpu/GrContextThreadSafeProxy.h +2 -179
- package/cpp/skia/include/gpu/GrDirectContext.h +2 -1011
- package/cpp/skia/include/gpu/GrDriverBugWorkarounds.h +2 -47
- package/cpp/skia/include/gpu/GrDriverBugWorkaroundsAutogen.h +2 -41
- package/cpp/skia/include/gpu/GrRecordingContext.h +2 -279
- package/cpp/skia/include/gpu/GrTypes.h +2 -238
- package/cpp/skia/include/gpu/GrYUVABackendTextures.h +2 -118
- package/cpp/skia/include/gpu/d3d/GrD3DBackendContext.h +2 -29
- package/cpp/skia/include/gpu/d3d/GrD3DTypes.h +2 -242
- package/cpp/skia/include/gpu/ganesh/GrBackendSemaphore.h +80 -0
- package/cpp/skia/include/gpu/ganesh/GrBackendSurface.h +412 -0
- package/cpp/skia/include/gpu/ganesh/GrContextOptions.h +386 -0
- package/cpp/skia/include/gpu/ganesh/GrContextThreadSafeProxy.h +175 -0
- package/cpp/skia/include/gpu/ganesh/GrDirectContext.h +993 -0
- package/cpp/skia/include/gpu/ganesh/GrDriverBugWorkarounds.h +53 -0
- package/cpp/skia/include/gpu/ganesh/GrDriverBugWorkaroundsAutogen.h +45 -0
- package/cpp/skia/include/gpu/ganesh/GrExternalTextureGenerator.h +1 -1
- package/cpp/skia/include/gpu/ganesh/GrRecordingContext.h +285 -0
- package/cpp/skia/include/gpu/ganesh/GrTypes.h +177 -0
- package/cpp/skia/include/gpu/ganesh/GrYUVABackendTextures.h +130 -0
- package/cpp/skia/include/gpu/ganesh/SkImageGanesh.h +1 -1
- package/cpp/skia/include/gpu/ganesh/SkSurfaceGanesh.h +1 -1
- package/cpp/skia/include/gpu/ganesh/d3d/GrD3DBackendContext.h +35 -0
- package/cpp/skia/include/gpu/ganesh/d3d/GrD3DTypes.h +248 -0
- package/cpp/skia/include/gpu/ganesh/gl/GrGLAssembleHelpers.h +17 -0
- package/cpp/skia/include/gpu/ganesh/gl/GrGLAssembleInterface.h +45 -0
- package/cpp/skia/include/gpu/ganesh/gl/GrGLBackendSurface.h +1 -1
- package/cpp/skia/include/gpu/ganesh/gl/GrGLConfig.h +69 -0
- package/cpp/skia/include/gpu/ganesh/gl/GrGLExtensions.h +79 -0
- package/cpp/skia/include/gpu/ganesh/gl/GrGLFunctions.h +306 -0
- package/cpp/skia/include/gpu/ganesh/gl/GrGLInterface.h +338 -0
- package/cpp/skia/include/gpu/ganesh/gl/GrGLMakeWebGLInterface.h +19 -0
- package/cpp/skia/include/gpu/ganesh/gl/GrGLTypes.h +219 -0
- package/cpp/skia/include/gpu/{gl → ganesh/gl}/egl/GrGLMakeEGLInterface.h +2 -2
- package/cpp/skia/include/gpu/ganesh/gl/epoxy/GrGLMakeEpoxyEGLInterface.h +20 -0
- package/cpp/skia/include/gpu/ganesh/gl/ios/GrGLMakeIOSInterface.h +20 -0
- package/cpp/skia/include/gpu/ganesh/gl/mac/GrGLMakeMacInterface.h +20 -0
- package/cpp/skia/include/gpu/ganesh/gl/win/GrGLMakeWinInterface.h +20 -0
- package/cpp/skia/include/gpu/ganesh/mock/GrMockTypes.h +166 -0
- package/cpp/skia/include/gpu/{mtl → ganesh/mtl}/GrMtlBackendContext.h +2 -2
- package/cpp/skia/include/gpu/ganesh/mtl/GrMtlBackendSemaphore.h +23 -0
- package/cpp/skia/include/gpu/ganesh/mtl/GrMtlBackendSurface.h +44 -0
- package/cpp/skia/include/gpu/ganesh/mtl/GrMtlDirectContext.h +30 -0
- package/cpp/skia/include/gpu/{mtl → ganesh/mtl}/GrMtlTypes.h +1 -3
- package/cpp/skia/include/gpu/ganesh/mtl/SkSurfaceMetal.h +2 -2
- package/cpp/skia/include/gpu/ganesh/vk/GrBackendDrawableInfo.h +2 -2
- package/cpp/skia/include/gpu/ganesh/vk/GrVkBackendSemaphore.h +1 -1
- package/cpp/skia/include/gpu/ganesh/vk/GrVkBackendSurface.h +7 -3
- package/cpp/skia/include/gpu/ganesh/vk/GrVkDirectContext.h +6 -3
- package/cpp/skia/include/gpu/ganesh/vk/GrVkTypes.h +101 -0
- package/cpp/skia/include/gpu/gl/GrGLAssembleHelpers.h +2 -9
- package/cpp/skia/include/gpu/gl/GrGLAssembleInterface.h +2 -38
- package/cpp/skia/include/gpu/gl/GrGLConfig.h +2 -73
- package/cpp/skia/include/gpu/gl/GrGLExtensions.h +2 -72
- package/cpp/skia/include/gpu/gl/GrGLFunctions.h +2 -301
- package/cpp/skia/include/gpu/gl/GrGLInterface.h +2 -332
- package/cpp/skia/include/gpu/gl/GrGLTypes.h +2 -213
- package/cpp/skia/include/gpu/graphite/BackendSemaphore.h +20 -41
- package/cpp/skia/include/gpu/graphite/BackendTexture.h +18 -118
- package/cpp/skia/include/gpu/graphite/Context.h +122 -44
- package/cpp/skia/include/gpu/graphite/ContextOptions.h +30 -3
- package/cpp/skia/include/gpu/graphite/GraphiteTypes.h +45 -17
- package/cpp/skia/include/gpu/graphite/Image.h +56 -54
- package/cpp/skia/include/gpu/graphite/Recorder.h +68 -14
- package/cpp/skia/include/gpu/graphite/Recording.h +3 -3
- package/cpp/skia/include/gpu/graphite/Surface.h +6 -2
- package/cpp/skia/include/gpu/graphite/TextureInfo.h +36 -117
- package/cpp/skia/include/gpu/graphite/dawn/DawnTypes.h +108 -6
- package/cpp/skia/include/gpu/graphite/mtl/MtlBackendContext.h +4 -1
- package/cpp/skia/include/gpu/graphite/mtl/MtlGraphiteTypes.h +41 -25
- package/cpp/skia/include/gpu/graphite/precompile/PaintOptions.h +197 -0
- package/cpp/skia/include/gpu/graphite/precompile/Precompile.h +48 -0
- package/cpp/skia/include/gpu/graphite/precompile/PrecompileBase.h +84 -0
- package/cpp/skia/include/gpu/graphite/precompile/PrecompileBlender.h +56 -0
- package/cpp/skia/include/gpu/graphite/precompile/PrecompileColorFilter.h +85 -0
- package/cpp/skia/include/gpu/graphite/precompile/PrecompileImageFilter.h +119 -0
- package/cpp/skia/include/gpu/graphite/precompile/PrecompileMaskFilter.h +51 -0
- package/cpp/skia/include/gpu/graphite/precompile/PrecompileRuntimeEffect.h +47 -0
- package/cpp/skia/include/gpu/graphite/precompile/PrecompileShader.h +170 -0
- package/cpp/skia/include/gpu/graphite/vk/VulkanGraphiteTypes.h +24 -2
- package/cpp/skia/include/gpu/mock/GrMockTypes.h +2 -157
- package/cpp/skia/include/gpu/mtl/MtlMemoryAllocator.h +2 -0
- package/cpp/skia/include/gpu/vk/GrVkTypes.h +2 -101
- package/cpp/skia/include/gpu/vk/VulkanBackendContext.h +13 -8
- package/cpp/skia/include/gpu/vk/VulkanExtensions.h +9 -3
- package/cpp/skia/include/gpu/vk/VulkanMemoryAllocator.h +4 -1
- package/cpp/skia/include/gpu/vk/VulkanTypes.h +25 -8
- package/cpp/skia/include/ports/SkFontMgr_Fontations.h +20 -0
- package/cpp/skia/include/ports/SkFontMgr_android.h +7 -0
- package/cpp/skia/include/ports/SkImageGeneratorCG.h +3 -1
- package/cpp/skia/include/ports/SkTypeface_win.h +0 -17
- package/cpp/skia/include/private/SkEncodedInfo.h +8 -2
- package/cpp/skia/include/private/SkExif.h +28 -75
- package/cpp/skia/include/private/SkGainmapInfo.h +47 -7
- package/cpp/skia/include/private/SkJpegMetadataDecoder.h +12 -0
- package/cpp/skia/include/private/SkPathRef.h +52 -44
- package/cpp/skia/include/private/SkXmp.h +13 -4
- package/cpp/skia/include/private/base/SkASAN.h +56 -0
- package/cpp/skia/include/private/base/SkAlign.h +5 -0
- package/cpp/skia/include/private/base/SkContainers.h +10 -2
- package/cpp/skia/include/private/base/SkFeatures.h +22 -1
- package/cpp/skia/include/private/base/SkFloatingPoint.h +51 -65
- package/cpp/skia/include/private/base/SkMacros.h +67 -0
- package/cpp/skia/include/private/base/SkMalloc.h +8 -0
- package/cpp/skia/include/private/base/SkPoint_impl.h +2 -11
- package/cpp/skia/include/private/base/SkTArray.h +108 -23
- package/cpp/skia/include/private/base/SkTFitsIn.h +1 -12
- package/cpp/skia/include/private/chromium/GrDeferredDisplayList.h +1 -1
- package/cpp/skia/include/private/chromium/GrDeferredDisplayListRecorder.h +0 -39
- package/cpp/skia/include/private/chromium/GrPromiseImageTexture.h +1 -1
- package/cpp/skia/include/private/chromium/GrSurfaceCharacterization.h +3 -3
- package/cpp/skia/include/private/chromium/SkChromeRemoteGlyphCache.h +1 -4
- package/cpp/skia/include/private/chromium/Slug.h +5 -11
- package/cpp/skia/include/private/gpu/ganesh/GrContext_Base.h +1 -1
- package/cpp/skia/include/private/gpu/ganesh/GrD3DTypesMinimal.h +2 -2
- package/cpp/skia/include/private/gpu/ganesh/GrTextureGenerator.h +1 -1
- package/cpp/skia/include/private/gpu/ganesh/GrTypesPriv.h +21 -93
- package/cpp/skia/include/private/gpu/vk/SkiaVulkan.h +2 -2
- package/cpp/skia/include/utils/SkCustomTypeface.h +1 -0
- package/cpp/skia/include/utils/SkNWayCanvas.h +1 -1
- package/cpp/skia/include/utils/SkParse.h +0 -1
- package/cpp/skia/modules/skcms/src/Transform_inl.h +59 -56
- package/cpp/skia/modules/skcms/src/skcms_Transform.h +3 -0
- package/cpp/skia/modules/skcms/src/skcms_internals.h +2 -0
- package/cpp/skia/modules/skcms/src/skcms_public.h +46 -14
- package/cpp/skia/modules/skparagraph/include/ParagraphBuilder.h +15 -1
- package/cpp/skia/modules/skparagraph/include/TextStyle.h +2 -2
- package/cpp/skia/modules/skparagraph/include/TypefaceFontProvider.h +2 -4
- package/cpp/skia/modules/skresources/include/SkResources.h +1 -1
- package/cpp/skia/modules/skshaper/include/SkShaper.h +316 -0
- package/cpp/skia/modules/skshaper/include/SkShaper_coretext.h +19 -0
- package/cpp/skia/modules/skshaper/include/SkShaper_factory.h +41 -0
- package/cpp/skia/modules/skshaper/include/SkShaper_harfbuzz.h +39 -0
- package/cpp/skia/modules/skshaper/include/SkShaper_skunicode.h +28 -0
- package/cpp/skia/modules/skunicode/include/SkUnicode.h +6 -23
- package/cpp/skia/modules/svg/include/SkSVGAttribute.h +0 -3
- package/cpp/skia/modules/svg/include/SkSVGAttributeParser.h +12 -2
- package/cpp/skia/modules/svg/include/SkSVGCircle.h +13 -0
- package/cpp/skia/modules/svg/include/SkSVGClipPath.h +6 -0
- package/cpp/skia/modules/svg/include/SkSVGContainer.h +17 -1
- package/cpp/skia/modules/svg/include/SkSVGDOM.h +25 -15
- package/cpp/skia/modules/svg/include/SkSVGEllipse.h +13 -2
- package/cpp/skia/modules/svg/include/SkSVGFe.h +11 -2
- package/cpp/skia/modules/svg/include/SkSVGFeBlend.h +9 -0
- package/cpp/skia/modules/svg/include/SkSVGFeColorMatrix.h +9 -0
- package/cpp/skia/modules/svg/include/SkSVGFeComponentTransfer.h +82 -0
- package/cpp/skia/modules/svg/include/SkSVGFeComposite.h +10 -1
- package/cpp/skia/modules/svg/include/SkSVGFeDisplacementMap.h +10 -0
- package/cpp/skia/modules/svg/include/SkSVGFeFlood.h +10 -0
- package/cpp/skia/modules/svg/include/SkSVGFeGaussianBlur.h +9 -0
- package/cpp/skia/modules/svg/include/SkSVGFeImage.h +9 -0
- package/cpp/skia/modules/svg/include/SkSVGFeLightSource.h +5 -0
- package/cpp/skia/modules/svg/include/SkSVGFeLighting.h +11 -0
- package/cpp/skia/modules/svg/include/SkSVGFeMerge.h +63 -0
- package/cpp/skia/modules/svg/include/SkSVGFeMorphology.h +8 -0
- package/cpp/skia/modules/svg/include/SkSVGFeOffset.h +9 -0
- package/cpp/skia/modules/svg/include/SkSVGFeTurbulence.h +9 -0
- package/cpp/skia/modules/svg/include/SkSVGFilter.h +9 -0
- package/cpp/skia/modules/svg/include/SkSVGFilterContext.h +3 -3
- package/cpp/skia/modules/svg/include/SkSVGGradient.h +10 -2
- package/cpp/skia/modules/svg/include/SkSVGImage.h +9 -0
- package/cpp/skia/modules/svg/include/SkSVGLine.h +11 -0
- package/cpp/skia/modules/svg/include/SkSVGLinearGradient.h +10 -0
- package/cpp/skia/modules/svg/include/SkSVGMask.h +6 -0
- package/cpp/skia/modules/svg/include/SkSVGNode.h +13 -2
- package/cpp/skia/modules/svg/include/SkSVGOpenTypeSVGDecoder.h +5 -0
- package/cpp/skia/modules/svg/include/SkSVGPath.h +10 -0
- package/cpp/skia/modules/svg/include/SkSVGPattern.h +5 -0
- package/cpp/skia/modules/svg/include/SkSVGPoly.h +11 -0
- package/cpp/skia/modules/svg/include/SkSVGRadialGradient.h +11 -0
- package/cpp/skia/modules/svg/include/SkSVGRect.h +11 -0
- package/cpp/skia/modules/svg/include/SkSVGRenderContext.h +43 -7
- package/cpp/skia/modules/svg/include/SkSVGSVG.h +7 -0
- package/cpp/skia/modules/svg/include/SkSVGShape.h +8 -2
- package/cpp/skia/modules/svg/include/SkSVGStop.h +5 -3
- package/cpp/skia/modules/svg/include/SkSVGText.h +8 -2
- package/cpp/skia/modules/svg/include/SkSVGTransformableNode.h +8 -0
- package/cpp/skia/modules/svg/include/SkSVGTypes.h +9 -0
- package/cpp/skia/modules/svg/include/SkSVGUse.h +7 -0
- package/cpp/skia/src/base/SkMathPriv.h +337 -0
- package/cpp/skia/src/base/SkTLazy.h +208 -0
- package/cpp/skia/src/core/SkTHash.h +58 -7
- package/cpp/skia/src/gpu/ganesh/gl/GrGLDefines.h +3 -0
- package/ios/RNSkia-iOS/RNSkiOSPlatformContext.h +3 -0
- package/ios/RNSkia-iOS/RNSkiOSPlatformContext.mm +7 -0
- package/ios/RNSkia-iOS/SkiaCVPixelBufferUtils.mm +7 -2
- package/ios/RNSkia-iOS/SkiaMetalSurfaceFactory.h +78 -0
- package/ios/RNSkia-iOS/SkiaMetalSurfaceFactory.mm +20 -4
- package/lib/commonjs/__tests__/globalSetup.d.ts +9 -0
- package/lib/commonjs/__tests__/globalTeardown.d.ts +2 -0
- package/lib/commonjs/__tests__/setup.d.ts +18 -0
- package/lib/commonjs/dom/__tests__/Compose.spec.d.ts +1 -0
- package/lib/commonjs/dom/__tests__/Demos.spec.d.ts +1 -0
- package/lib/commonjs/dom/__tests__/DrawingContext.spec.d.ts +1 -0
- package/lib/commonjs/dom/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/commonjs/dom/__tests__/Group.spec.d.ts +1 -0
- package/lib/commonjs/dom/__tests__/Paint.spec.d.ts +1 -0
- package/lib/commonjs/dom/__tests__/RenderNodes.spec.d.ts +1 -0
- package/lib/commonjs/dom/__tests__/Shaders.spec.d.ts +1 -0
- package/lib/commonjs/renderer/HostConfig.js.map +1 -1
- package/lib/commonjs/renderer/__tests__/Data.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/FitBox.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Glyphs.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Image.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Paths.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Picture.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Simple.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/SkiaDOM.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Surfaces.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Text.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/TouchHandler.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Transform.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/documentation/Group.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/documentation/getting-started/HelloWorld.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/documentation/paint/Overview.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/documentation/shapes/Box.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/AnimatedImages.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Atlas.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/BackdropFilters.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Blending.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Blur.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Box.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/ColorFilters.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Composition/ColorFilterComposition.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/CoonPatch.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/DataEncoding.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Drawings.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/FontMgr.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Gradient.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Group.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Image.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/ImageEncoding.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/ImageFilters.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Mask.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Matrix4.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/NativeBuffer.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Offscreen.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Opacity.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Paint.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/ParagraphPaint.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Paragraphs.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/PathEffects.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Paths.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Picture.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Point.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Rect.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/RuntimeShader.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/SDF.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/SVG.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Shader.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Snapshot.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Surfaces.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Text.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/TextPath.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Transforms.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Vertices.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Video.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/setup/Paragraph.d.ts +19 -0
- package/lib/commonjs/renderer/__tests__/e2e/setup/SVG.d.ts +12 -0
- package/lib/commonjs/renderer/__tests__/e2e/setup/SkiaObject.d.ts +11 -0
- package/lib/commonjs/renderer/__tests__/e2e/setup/index.d.ts +3 -0
- package/lib/commonjs/renderer/__tests__/examples/BlendModes.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/setup.d.ts +66 -0
- package/lib/commonjs/skia/__tests__/ColorFilter.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Data.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Enums.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Geometry.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/ImageFilter.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Mock.spec.d.ts +0 -0
- package/lib/commonjs/skia/__tests__/Paint.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Path.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/RuntimeEffect.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Shader.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Text.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Transform.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Vertices.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/setup.d.ts +19 -0
- package/lib/commonjs/skia/types/Paragraph/TextStyle.d.ts +2 -2
- package/lib/commonjs/skia/types/Paragraph/TextStyle.js.map +1 -1
- package/lib/commonjs/skia/types/Skia.d.ts +6 -1
- package/lib/commonjs/skia/types/Skia.js.map +1 -1
- package/lib/commonjs/skia/web/JsiSkia.js +4 -1
- package/lib/commonjs/skia/web/JsiSkia.js.map +1 -1
- package/lib/commonjs/web/WithSkiaWeb.d.ts +11 -4
- package/lib/commonjs/web/WithSkiaWeb.js +3 -2
- package/lib/commonjs/web/WithSkiaWeb.js.map +1 -1
- package/lib/module/__tests__/globalSetup.d.ts +9 -0
- package/lib/module/__tests__/globalTeardown.d.ts +2 -0
- package/lib/module/__tests__/setup.d.ts +18 -0
- package/lib/module/dom/__tests__/Compose.spec.d.ts +1 -0
- package/lib/module/dom/__tests__/Demos.spec.d.ts +1 -0
- package/lib/module/dom/__tests__/DrawingContext.spec.d.ts +1 -0
- package/lib/module/dom/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/module/dom/__tests__/Group.spec.d.ts +1 -0
- package/lib/module/dom/__tests__/Paint.spec.d.ts +1 -0
- package/lib/module/dom/__tests__/RenderNodes.spec.d.ts +1 -0
- package/lib/module/dom/__tests__/Shaders.spec.d.ts +1 -0
- package/lib/module/renderer/HostConfig.js.map +1 -1
- package/lib/module/renderer/__tests__/Data.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/FitBox.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Glyphs.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Image.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Paths.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Picture.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Simple.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/SkiaDOM.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Surfaces.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Text.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/TouchHandler.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Transform.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/documentation/Group.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/documentation/getting-started/HelloWorld.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/documentation/paint/Overview.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/documentation/shapes/Box.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/AnimatedImages.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Atlas.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/BackdropFilters.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Blending.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Blur.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Box.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/ColorFilters.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Composition/ColorFilterComposition.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/CoonPatch.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/DataEncoding.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Drawings.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/FontMgr.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Gradient.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Group.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Image.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/ImageEncoding.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/ImageFilters.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Mask.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Matrix4.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/NativeBuffer.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Offscreen.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Opacity.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Paint.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/ParagraphPaint.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Paragraphs.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/PathEffects.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Paths.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Picture.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Point.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Rect.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/RuntimeShader.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/SDF.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/SVG.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Shader.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Snapshot.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Surfaces.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Text.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/TextPath.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Transforms.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Vertices.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Video.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/setup/Paragraph.d.ts +19 -0
- package/lib/module/renderer/__tests__/e2e/setup/SVG.d.ts +12 -0
- package/lib/module/renderer/__tests__/e2e/setup/SkiaObject.d.ts +11 -0
- package/lib/module/renderer/__tests__/e2e/setup/index.d.ts +3 -0
- package/lib/module/renderer/__tests__/examples/BlendModes.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/setup.d.ts +66 -0
- package/lib/module/skia/__tests__/ColorFilter.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Data.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Enums.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Geometry.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/ImageFilter.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Mock.spec.d.ts +0 -0
- package/lib/module/skia/__tests__/Paint.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Path.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/RuntimeEffect.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Shader.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Text.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Transform.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Vertices.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/setup.d.ts +19 -0
- package/lib/module/skia/types/Paragraph/TextStyle.d.ts +2 -2
- package/lib/module/skia/types/Paragraph/TextStyle.js.map +1 -1
- package/lib/module/skia/types/Skia.d.ts +6 -1
- package/lib/module/skia/types/Skia.js.map +1 -1
- package/lib/module/skia/web/JsiSkia.js +4 -1
- package/lib/module/skia/web/JsiSkia.js.map +1 -1
- package/lib/module/web/WithSkiaWeb.d.ts +11 -4
- package/lib/module/web/WithSkiaWeb.js +3 -2
- package/lib/module/web/WithSkiaWeb.js.map +1 -1
- package/lib/typescript/lib/commonjs/skia/web/JsiSkia.d.ts +1 -0
- package/lib/typescript/lib/commonjs/web/WithSkiaWeb.d.ts +2 -1
- package/lib/typescript/lib/module/skia/Skia.web.d.ts +1 -0
- package/lib/typescript/lib/module/skia/web/JsiSkia.d.ts +1 -0
- package/lib/typescript/lib/module/web/WithSkiaWeb.d.ts +2 -1
- package/lib/typescript/src/__tests__/globalSetup.d.ts +9 -0
- package/lib/typescript/src/__tests__/globalTeardown.d.ts +2 -0
- package/lib/typescript/src/__tests__/setup.d.ts +18 -0
- package/lib/typescript/src/dom/__tests__/Compose.spec.d.ts +1 -0
- package/lib/typescript/src/dom/__tests__/Demos.spec.d.ts +1 -0
- package/lib/typescript/src/dom/__tests__/DrawingContext.spec.d.ts +1 -0
- package/lib/typescript/src/dom/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/typescript/src/dom/__tests__/Group.spec.d.ts +1 -0
- package/lib/typescript/src/dom/__tests__/Paint.spec.d.ts +1 -0
- package/lib/typescript/src/dom/__tests__/RenderNodes.spec.d.ts +1 -0
- package/lib/typescript/src/dom/__tests__/Shaders.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Data.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/FitBox.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Glyphs.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Image.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Paths.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Picture.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Simple.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/SkiaDOM.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Surfaces.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Text.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/TouchHandler.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Transform.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/documentation/Group.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/documentation/getting-started/HelloWorld.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/documentation/paint/Overview.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/documentation/shapes/Box.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/AnimatedImages.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Atlas.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/BackdropFilters.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Blending.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Blur.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Box.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/ColorFilters.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Composition/ColorFilterComposition.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/CoonPatch.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/DataEncoding.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Drawings.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/FontMgr.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Gradient.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Group.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Image.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/ImageEncoding.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/ImageFilters.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Mask.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Matrix4.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/NativeBuffer.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Offscreen.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Opacity.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Paint.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/ParagraphPaint.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Paragraphs.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/PathEffects.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Paths.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Picture.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Point.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Rect.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/RuntimeShader.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/SDF.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/SVG.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Shader.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Snapshot.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Surfaces.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Text.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/TextPath.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Transforms.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Vertices.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Video.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/setup/Paragraph.d.ts +19 -0
- package/lib/typescript/src/renderer/__tests__/e2e/setup/SVG.d.ts +12 -0
- package/lib/typescript/src/renderer/__tests__/e2e/setup/SkiaObject.d.ts +11 -0
- package/lib/typescript/src/renderer/__tests__/e2e/setup/index.d.ts +3 -0
- package/lib/typescript/src/renderer/__tests__/examples/BlendModes.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/setup.d.ts +66 -0
- package/lib/typescript/src/skia/__tests__/ColorFilter.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Data.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Enums.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Geometry.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/ImageFilter.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Mock.spec.d.ts +0 -0
- package/lib/typescript/src/skia/__tests__/Paint.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Path.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/RuntimeEffect.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Shader.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Text.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Transform.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Vertices.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/setup.d.ts +19 -0
- package/lib/typescript/src/skia/types/Paragraph/TextStyle.d.ts +2 -2
- package/lib/typescript/src/skia/types/Skia.d.ts +6 -1
- package/lib/typescript/src/web/WithSkiaWeb.d.ts +11 -4
- package/libs/android/arm64-v8a/libskia.a +0 -0
- package/libs/android/arm64-v8a/libskottie.a +0 -0
- package/libs/android/arm64-v8a/libskparagraph.a +0 -0
- package/libs/android/arm64-v8a/libsksg.a +0 -0
- package/libs/android/arm64-v8a/libskshaper.a +0 -0
- package/libs/android/arm64-v8a/libskunicode_core.a +0 -0
- package/libs/android/arm64-v8a/libskunicode_icu.a +0 -0
- package/libs/android/arm64-v8a/libsvg.a +0 -0
- package/libs/android/armeabi-v7a/libskia.a +0 -0
- package/libs/android/armeabi-v7a/libskottie.a +0 -0
- package/libs/android/armeabi-v7a/libskparagraph.a +0 -0
- package/libs/android/armeabi-v7a/libsksg.a +0 -0
- package/libs/android/armeabi-v7a/libskshaper.a +0 -0
- package/libs/android/armeabi-v7a/libskunicode_core.a +0 -0
- package/libs/android/armeabi-v7a/libskunicode_icu.a +0 -0
- package/libs/android/armeabi-v7a/libsvg.a +0 -0
- package/libs/android/x86/libskia.a +0 -0
- package/libs/android/x86/libskottie.a +0 -0
- package/libs/android/x86/libskparagraph.a +0 -0
- package/libs/android/x86/libsksg.a +0 -0
- package/libs/android/x86/libskshaper.a +0 -0
- package/libs/android/x86/libskunicode_core.a +0 -0
- package/libs/android/x86/libskunicode_icu.a +0 -0
- package/libs/android/x86/libsvg.a +0 -0
- package/libs/android/x86_64/libskia.a +0 -0
- package/libs/android/x86_64/libskottie.a +0 -0
- package/libs/android/x86_64/libskparagraph.a +0 -0
- package/libs/android/x86_64/libsksg.a +0 -0
- package/libs/android/x86_64/libskshaper.a +0 -0
- package/libs/android/x86_64/libskunicode_core.a +0 -0
- package/libs/android/x86_64/libskunicode_icu.a +0 -0
- package/libs/android/x86_64/libsvg.a +0 -0
- package/libs/ios/libskia.xcframework/Info.plist +46 -0
- package/libs/ios/libskia.xcframework/ios-arm64_arm64e/libskia.a +0 -0
- package/libs/ios/libskia.xcframework/ios-arm64_arm64e_x86_64-simulator/libskia.a +0 -0
- package/libs/ios/libskottie.xcframework/Info.plist +46 -0
- package/libs/ios/libskottie.xcframework/ios-arm64_arm64e/libskottie.a +0 -0
- package/libs/ios/libskottie.xcframework/ios-arm64_arm64e_x86_64-simulator/libskottie.a +0 -0
- package/libs/ios/libskparagraph.xcframework/Info.plist +46 -0
- package/libs/ios/libskparagraph.xcframework/ios-arm64_arm64e/libskparagraph.a +0 -0
- package/libs/ios/libskparagraph.xcframework/ios-arm64_arm64e_x86_64-simulator/libskparagraph.a +0 -0
- package/libs/ios/libsksg.xcframework/Info.plist +46 -0
- package/libs/ios/libsksg.xcframework/ios-arm64_arm64e/libsksg.a +0 -0
- package/libs/ios/libsksg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsksg.a +0 -0
- package/libs/ios/libskshaper.xcframework/Info.plist +46 -0
- package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e/libskshaper.a +0 -0
- package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e_x86_64-simulator/libskshaper.a +0 -0
- package/libs/ios/libsvg.xcframework/Info.plist +46 -0
- package/libs/ios/libsvg.xcframework/ios-arm64_arm64e/libsvg.a +0 -0
- package/libs/ios/libsvg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsvg.a +0 -0
- package/package.json +13 -18
- package/react-native-skia.podspec +2 -1
- package/src/__tests__/globalSetup.ts +51 -0
- package/src/__tests__/globalTeardown.ts +11 -0
- package/src/__tests__/setup.ts +129 -0
- package/src/__tests__/snapshots/animated-images/bird.png +0 -0
- package/src/__tests__/snapshots/animations/green.png +0 -0
- package/src/__tests__/snapshots/animations/lightblue.png +0 -0
- package/src/__tests__/snapshots/animations/quarter-lightblue.png +0 -0
- package/src/__tests__/snapshots/animations/red.png +0 -0
- package/src/__tests__/snapshots/atlas/identity.png +0 -0
- package/src/__tests__/snapshots/atlas/rsxform.png +0 -0
- package/src/__tests__/snapshots/atlas/rsxform1.png +0 -0
- package/src/__tests__/snapshots/atlas/simple.png +0 -0
- package/src/__tests__/snapshots/atlas/simple2.png +0 -0
- package/src/__tests__/snapshots/box/box-shadow.png +0 -0
- package/src/__tests__/snapshots/box/box-shadow2.png +0 -0
- package/src/__tests__/snapshots/box/box-shadow3.png +0 -0
- package/src/__tests__/snapshots/box/box-stroke.png +0 -0
- package/src/__tests__/snapshots/color-filter/color-filter-composition.png +0 -0
- package/src/__tests__/snapshots/color-filter/matrix1.png +0 -0
- package/src/__tests__/snapshots/color-filter/matrix3.png +0 -0
- package/src/__tests__/snapshots/color-filter/zurich-sepia.png +0 -0
- package/src/__tests__/snapshots/coons-patch/patch-with-opacity.png +0 -0
- package/src/__tests__/snapshots/coons-patch/simple.png +0 -0
- package/src/__tests__/snapshots/cyan-buffer.png +0 -0
- package/src/__tests__/snapshots/data/oslo.png +0 -0
- package/src/__tests__/snapshots/data/red.png +0 -0
- package/src/__tests__/snapshots/data/zurich.png +0 -0
- package/src/__tests__/snapshots/demos/apple-breathe.png +0 -0
- package/src/__tests__/snapshots/demos/apple-breathe1.png +0 -0
- package/src/__tests__/snapshots/demos/breathe.png +0 -0
- package/src/__tests__/snapshots/demos/breathe2.png +0 -0
- package/src/__tests__/snapshots/demos/product.png +0 -0
- package/src/__tests__/snapshots/demos/product2.png +0 -0
- package/src/__tests__/snapshots/demos/skia-neon.png +0 -0
- package/src/__tests__/snapshots/demos/skia-neon1.png +0 -0
- package/src/__tests__/snapshots/drawings/arc.png +0 -0
- package/src/__tests__/snapshots/drawings/blend-mode-multiply.png +0 -0
- package/src/__tests__/snapshots/drawings/blend-modes.png +0 -0
- package/src/__tests__/snapshots/drawings/blur-node.png +0 -0
- package/src/__tests__/snapshots/drawings/blur.png +0 -0
- package/src/__tests__/snapshots/drawings/blur2.png +0 -0
- package/src/__tests__/snapshots/drawings/custom-drawing.png +0 -0
- package/src/__tests__/snapshots/drawings/cyan-circle.png +0 -0
- package/src/__tests__/snapshots/drawings/cyan.png +0 -0
- package/src/__tests__/snapshots/drawings/default-props.png +0 -0
- package/src/__tests__/snapshots/drawings/hello-world.png +0 -0
- package/src/__tests__/snapshots/drawings/image-default-props.png +0 -0
- package/src/__tests__/snapshots/drawings/lightblue-quarter-circle.png +0 -0
- package/src/__tests__/snapshots/drawings/lightblue-rect.png +0 -0
- package/src/__tests__/snapshots/drawings/line.png +0 -0
- package/src/__tests__/snapshots/drawings/multiple-paints.png +0 -0
- package/src/__tests__/snapshots/drawings/nested-shader.png +0 -0
- package/src/__tests__/snapshots/drawings/nested-shader2.png +0 -0
- package/src/__tests__/snapshots/drawings/opacity-image.png +0 -0
- package/src/__tests__/snapshots/drawings/opacity-multiplication.png +0 -0
- package/src/__tests__/snapshots/drawings/opacity-multiplication2.png +0 -0
- package/src/__tests__/snapshots/drawings/points.png +0 -0
- package/src/__tests__/snapshots/drawings/purple.png +0 -0
- package/src/__tests__/snapshots/drawings/rotated-image.png +0 -0
- package/src/__tests__/snapshots/drawings/rotated-scaled-image.png +0 -0
- package/src/__tests__/snapshots/drawings/rrect-aa.png +0 -0
- package/src/__tests__/snapshots/drawings/rrect-no-aa.png +0 -0
- package/src/__tests__/snapshots/drawings/scaled-image.png +0 -0
- package/src/__tests__/snapshots/drawings/scaled-image2.png +0 -0
- package/src/__tests__/snapshots/drawings/shader-opacity-reference.png +0 -0
- package/src/__tests__/snapshots/drawings/skew-transform.png +0 -0
- package/src/__tests__/snapshots/drawings/skew-transform2.png +0 -0
- package/src/__tests__/snapshots/drawings/small-lightblue-rect.png +0 -0
- package/src/__tests__/snapshots/drawings/stroke.png +0 -0
- package/src/__tests__/snapshots/drawings/transform-origin.png +0 -0
- package/src/__tests__/snapshots/drawings/transparent.png +0 -0
- package/src/__tests__/snapshots/drawings/violet.png +0 -0
- package/src/__tests__/snapshots/font/green.png +0 -0
- package/src/__tests__/snapshots/font/red.png +0 -0
- package/src/__tests__/snapshots/glyphs/simple.png +0 -0
- package/src/__tests__/snapshots/gradient/linear-with-opacity.png +0 -0
- package/src/__tests__/snapshots/gradient/linear.png +0 -0
- package/src/__tests__/snapshots/green.png +0 -0
- package/src/__tests__/snapshots/image-filter/blur.png +0 -0
- package/src/__tests__/snapshots/image-filter/test-shadow.png +0 -0
- package/src/__tests__/snapshots/images/bundle-android.png +0 -0
- package/src/__tests__/snapshots/images/bundle-ios.png +0 -0
- package/src/__tests__/snapshots/images/bundle-node.png +0 -0
- package/src/__tests__/snapshots/images/bundle.png +0 -0
- package/src/__tests__/snapshots/images/filter.png +0 -0
- package/src/__tests__/snapshots/leak.png +0 -0
- package/src/__tests__/snapshots/matrix4/perspective.png +0 -0
- package/src/__tests__/snapshots/paint/blend-mode.png +0 -0
- package/src/__tests__/snapshots/paint/circle.png +0 -0
- package/src/__tests__/snapshots/paint/colors.png +0 -0
- package/src/__tests__/snapshots/paint/dither.png +0 -0
- package/src/__tests__/snapshots/paint/path-paint.png +0 -0
- package/src/__tests__/snapshots/paint/without-dither.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-auto-linebreaks-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-auto-linebreaks-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-bounding-box-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-bounding-box-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-bounding-box-node.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-ellipse-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-ellipse-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-linebreaks-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-linebreaks-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-center-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-center-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-justify-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-justify-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-left-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-left-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-right-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-right-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-rtl-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-rtl-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-colors-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-colors-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-decoration-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-decoration-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-shadow-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-shadow-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-style-android-box.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-style-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-style-ios-box.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-style-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-in-paragraph-style-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-in-paragraph-style-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/simple-paragraph-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/simple-paragraph-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/simple-paragraph-with-provider-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/simple-paragraph-with-provider-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/simple-paragraph-with-provider-node.png +0 -0
- package/src/__tests__/snapshots/path/interpolate.png +0 -0
- package/src/__tests__/snapshots/path/logo.png +0 -0
- package/src/__tests__/snapshots/path-effects/discrete.png +0 -0
- package/src/__tests__/snapshots/path-effects/sum.png +0 -0
- package/src/__tests__/snapshots/path-effects/sum2.png +0 -0
- package/src/__tests__/snapshots/paths/arc.png +0 -0
- package/src/__tests__/snapshots/paths/emptyPath.png +0 -0
- package/src/__tests__/snapshots/paths/interpolation1.png +0 -0
- package/src/__tests__/snapshots/paths/oval.png +0 -0
- package/src/__tests__/snapshots/paths/pattern.png +0 -0
- package/src/__tests__/snapshots/paths/poly.png +0 -0
- package/src/__tests__/snapshots/paths/rrect.png +0 -0
- package/src/__tests__/snapshots/paths/skia-trimmed.png +0 -0
- package/src/__tests__/snapshots/paths/skia.png +0 -0
- package/src/__tests__/snapshots/pictures/create-picture.png +0 -0
- package/src/__tests__/snapshots/pictures/green.png +0 -0
- package/src/__tests__/snapshots/pictures/hello-world.png +0 -0
- package/src/__tests__/snapshots/pictures/red.png +0 -0
- package/src/__tests__/snapshots/pictures/simple-picture.png +0 -0
- package/src/__tests__/snapshots/platform-buffer-bgra.png +0 -0
- package/src/__tests__/snapshots/platform-buffer.png +0 -0
- package/src/__tests__/snapshots/points/points.png +0 -0
- package/src/__tests__/snapshots/points/points2.png +0 -0
- package/src/__tests__/snapshots/render-nodes/simple.png +0 -0
- package/src/__tests__/snapshots/render-nodes/simple2.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/blend-color-burn.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/blend-color-burn2.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/blend-color-burn3.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/blend-color-dodge.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/blend-multiply.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/int-uniform.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/linear-gradient.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/linear-gradient2.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/small-spiral.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/spiral.png +0 -0
- package/src/__tests__/snapshots/runtime-shader/scaled-circle.png +0 -0
- package/src/__tests__/snapshots/runtime-shader/scaled-circle2.png +0 -0
- package/src/__tests__/snapshots/runtime-shader/simple.png +0 -0
- package/src/__tests__/snapshots/runtime-shader/spiral.png +0 -0
- package/src/__tests__/snapshots/runtime-shader/unscaled-image.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot1-android-ci.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot1-android.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot1-ios.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot2-android-ci.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot2-android.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot2-ios.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot3-android-ci.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot3-android.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot3-ios.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot4-android-ci.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot4-android.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot4-ios.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot5-android.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot5-ios.png +0 -0
- package/src/__tests__/snapshots/sdf/circle.png +0 -0
- package/src/__tests__/snapshots/sdf/heart.png +0 -0
- package/src/__tests__/snapshots/sdf/line.png +0 -0
- package/src/__tests__/snapshots/sdf/rectangle.png +0 -0
- package/src/__tests__/snapshots/shader/bilinear-interpolation.png +0 -0
- package/src/__tests__/snapshots/shader/hue.png +0 -0
- package/src/__tests__/snapshots/shader/hue2.png +0 -0
- package/src/__tests__/snapshots/shader/shader1.png +0 -0
- package/src/__tests__/snapshots/shader/shader2.png +0 -0
- package/src/__tests__/snapshots/shader/sweep-gradient.png +0 -0
- package/src/__tests__/snapshots/text/text-bounds-android.png +0 -0
- package/src/__tests__/snapshots/text/text-bounds-ios.png +0 -0
- package/src/__tests__/snapshots/text/text-default-font-android.png +0 -0
- package/src/__tests__/snapshots/text/text-default-font-ios.png +0 -0
- package/src/__tests__/snapshots/text/text-path-bug-android.png +0 -0
- package/src/__tests__/snapshots/text/text-path-bug-ios.png +0 -0
- package/src/__tests__/snapshots/text/text-path-bug-node.png +0 -0
- package/src/__tests__/snapshots/text/text-path1-android.png +0 -0
- package/src/__tests__/snapshots/text/text-path1-ios.png +0 -0
- package/src/__tests__/snapshots/text/text-path1-node.png +0 -0
- package/src/__tests__/snapshots/text/text-path2-android.png +0 -0
- package/src/__tests__/snapshots/text/text-path2-ios.png +0 -0
- package/src/__tests__/snapshots/text/text-path2-node.png +0 -0
- package/src/__tests__/snapshots/transform/rectangles.png +0 -0
- package/src/__tests__/snapshots/transform/rotate-radiants.png +0 -0
- package/src/__tests__/snapshots/transform/rotate.png +0 -0
- package/src/__tests__/snapshots/transform/scale-origin.png +0 -0
- package/src/__tests__/snapshots/transform/scale.png +0 -0
- package/src/__tests__/snapshots/transform/skew.png +0 -0
- package/src/__tests__/snapshots/transparent.png +0 -0
- package/src/__tests__/snapshots/vertices/billinear-gradient.png +0 -0
- package/src/__tests__/snapshots/vertices/strip.png +0 -0
- package/src/__tests__/snapshots/vertices/vertices.png +0 -0
- package/src/dom/__tests__/Compose.spec.tsx +42 -0
- package/src/dom/__tests__/Demos.spec.tsx +145 -0
- package/src/dom/__tests__/DrawingContext.spec.tsx +99 -0
- package/src/dom/__tests__/Drawings.spec.tsx +95 -0
- package/src/dom/__tests__/Group.spec.tsx +132 -0
- package/src/dom/__tests__/Paint.spec.tsx +100 -0
- package/src/dom/__tests__/RenderNodes.spec.tsx +44 -0
- package/src/dom/__tests__/Shaders.spec.tsx +123 -0
- package/src/renderer/HostConfig.ts +5 -1
- package/src/renderer/__tests__/Data.spec.tsx +67 -0
- package/src/renderer/__tests__/Drawings.spec.tsx +96 -0
- package/src/renderer/__tests__/FitBox.spec.tsx +126 -0
- package/src/renderer/__tests__/Glyphs.spec.tsx +46 -0
- package/src/renderer/__tests__/Image.spec.tsx +45 -0
- package/src/renderer/__tests__/Paths.spec.tsx +75 -0
- package/src/renderer/__tests__/Picture.spec.tsx +82 -0
- package/src/renderer/__tests__/Simple.spec.tsx +81 -0
- package/src/renderer/__tests__/SkiaDOM.spec.tsx +46 -0
- package/src/renderer/__tests__/Surfaces.spec.tsx +73 -0
- package/src/renderer/__tests__/Text.spec.tsx +134 -0
- package/src/renderer/__tests__/TouchHandler.spec.tsx +113 -0
- package/src/renderer/__tests__/Transform.spec.tsx +72 -0
- package/src/renderer/__tests__/documentation/Group.spec.tsx +171 -0
- package/src/renderer/__tests__/documentation/getting-started/HelloWorld.spec.tsx +51 -0
- package/src/renderer/__tests__/documentation/paint/Overview.spec.tsx +84 -0
- package/src/renderer/__tests__/documentation/shapes/Box.spec.tsx +46 -0
- package/src/renderer/__tests__/e2e/AnimatedImages.spec.tsx +88 -0
- package/src/renderer/__tests__/e2e/Atlas.spec.tsx +358 -0
- package/src/renderer/__tests__/e2e/BackdropFilters.spec.tsx +141 -0
- package/src/renderer/__tests__/e2e/Blending.spec.tsx +115 -0
- package/src/renderer/__tests__/e2e/Blur.spec.tsx +56 -0
- package/src/renderer/__tests__/e2e/Box.spec.tsx +83 -0
- package/src/renderer/__tests__/e2e/ColorFilters.spec.tsx +212 -0
- package/src/renderer/__tests__/e2e/Composition/ColorFilterComposition.spec.tsx +81 -0
- package/src/renderer/__tests__/e2e/CoonPatch.spec.tsx +74 -0
- package/src/renderer/__tests__/e2e/DataEncoding.spec.tsx +75 -0
- package/src/renderer/__tests__/e2e/Drawings.spec.tsx +209 -0
- package/src/renderer/__tests__/e2e/FontMgr.spec.tsx +150 -0
- package/src/renderer/__tests__/e2e/Gradient.spec.tsx +40 -0
- package/src/renderer/__tests__/e2e/Group.spec.tsx +129 -0
- package/src/renderer/__tests__/e2e/Image.spec.tsx +139 -0
- package/src/renderer/__tests__/e2e/ImageEncoding.spec.tsx +255 -0
- package/src/renderer/__tests__/e2e/ImageFilters.spec.tsx +233 -0
- package/src/renderer/__tests__/e2e/Mask.spec.tsx +85 -0
- package/src/renderer/__tests__/e2e/Matrix4.spec.tsx +275 -0
- package/src/renderer/__tests__/e2e/NativeBuffer.spec.tsx +156 -0
- package/src/renderer/__tests__/e2e/Offscreen.spec.tsx +109 -0
- package/src/renderer/__tests__/e2e/Opacity.spec.tsx +278 -0
- package/src/renderer/__tests__/e2e/Paint.spec.tsx +170 -0
- package/src/renderer/__tests__/e2e/ParagraphPaint.spec.tsx +262 -0
- package/src/renderer/__tests__/e2e/Paragraphs.spec.tsx +615 -0
- package/src/renderer/__tests__/e2e/PathEffects.spec.tsx +73 -0
- package/src/renderer/__tests__/e2e/Paths.spec.tsx +397 -0
- package/src/renderer/__tests__/e2e/Picture.spec.tsx +134 -0
- package/src/renderer/__tests__/e2e/Point.spec.tsx +35 -0
- package/src/renderer/__tests__/e2e/Rect.spec.tsx +139 -0
- package/src/renderer/__tests__/e2e/RuntimeShader.spec.tsx +324 -0
- package/src/renderer/__tests__/e2e/SDF.spec.tsx +148 -0
- package/src/renderer/__tests__/e2e/SVG.spec.tsx +191 -0
- package/src/renderer/__tests__/e2e/Shader.spec.tsx +260 -0
- package/src/renderer/__tests__/e2e/Snapshot.spec.tsx +29 -0
- package/src/renderer/__tests__/e2e/Surfaces.spec.tsx +17 -0
- package/src/renderer/__tests__/e2e/Text.spec.tsx +109 -0
- package/src/renderer/__tests__/e2e/TextPath.spec.tsx +45 -0
- package/src/renderer/__tests__/e2e/Transforms.spec.tsx +63 -0
- package/src/renderer/__tests__/e2e/Vertices.spec.tsx +30 -0
- package/src/renderer/__tests__/e2e/Video.ts +69 -0
- package/src/renderer/__tests__/e2e/setup/Paragraph.ts +56 -0
- package/src/renderer/__tests__/e2e/setup/SVG.ts +27 -0
- package/src/renderer/__tests__/e2e/setup/SkiaObject.ts +31 -0
- package/src/renderer/__tests__/e2e/setup/index.ts +3 -0
- package/src/renderer/__tests__/examples/BlendModes.spec.tsx +123 -0
- package/src/renderer/__tests__/setup.tsx +489 -0
- package/src/skia/__tests__/ColorFilter.spec.ts +67 -0
- package/src/skia/__tests__/Data.spec.ts +29 -0
- package/src/skia/__tests__/Drawings.spec.ts +119 -0
- package/src/skia/__tests__/Enums.spec.ts +114 -0
- package/src/skia/__tests__/Geometry.spec.ts +39 -0
- package/src/skia/__tests__/ImageFilter.spec.ts +19 -0
- package/src/skia/__tests__/Mock.spec.ts +7 -0
- package/src/skia/__tests__/Paint.spec.ts +25 -0
- package/src/skia/__tests__/Path.spec.ts +386 -0
- package/src/skia/__tests__/RuntimeEffect.spec.ts +66 -0
- package/src/skia/__tests__/Shader.spec.ts +96 -0
- package/src/skia/__tests__/Text.spec.ts +32 -0
- package/src/skia/__tests__/Transform.spec.ts +89 -0
- package/src/skia/__tests__/Vertices.spec.ts +40 -0
- package/src/skia/__tests__/assets/DIN-Medium.ttf +0 -0
- package/src/skia/__tests__/assets/NotoColorEmoji.ttf +0 -0
- package/src/skia/__tests__/assets/NotoSansSC-Regular.otf +0 -0
- package/src/skia/__tests__/assets/Pacifico-Regular.ttf +0 -0
- package/src/skia/__tests__/assets/Roboto-BlackItalic.ttf +0 -0
- package/src/skia/__tests__/assets/Roboto-Bold.ttf +0 -0
- package/src/skia/__tests__/assets/Roboto-Italic.ttf +0 -0
- package/src/skia/__tests__/assets/Roboto-Medium.ttf +0 -0
- package/src/skia/__tests__/assets/Roboto-Regular.ttf +0 -0
- package/src/skia/__tests__/assets/UberMove-Medium_mono.ttf +0 -0
- package/src/skia/__tests__/assets/bird.gif +0 -0
- package/src/skia/__tests__/assets/box.png +0 -0
- package/src/skia/__tests__/assets/box2.png +0 -0
- package/src/skia/__tests__/assets/card.png +0 -0
- package/src/skia/__tests__/assets/mask.png +0 -0
- package/src/skia/__tests__/assets/oslo.jpg +0 -0
- package/src/skia/__tests__/assets/product.png +0 -0
- package/src/skia/__tests__/assets/skia_logo.png +0 -0
- package/src/skia/__tests__/assets/skia_logo_jpeg.jpg +0 -0
- package/src/skia/__tests__/assets/tiger.svg +724 -0
- package/src/skia/__tests__/assets/zurich.jpg +0 -0
- package/src/skia/__tests__/setup.ts +77 -0
- package/src/skia/types/Paragraph/TextStyle.ts +2 -2
- package/src/skia/types/Skia.ts +7 -1
- package/src/skia/web/JsiSkia.ts +3 -0
- package/src/web/WithSkiaWeb.tsx +17 -6
- package/cpp/skia/include/core/SkDrawLooper.h +0 -135
- package/cpp/skia/include/effects/SkBlurDrawLooper.h +0 -26
- package/cpp/skia/include/effects/SkLayerDrawLooper.h +0 -161
- package/cpp/skia/include/gpu/gl/GrGLConfig_chrome.h +0 -14
- package/cpp/skia/include/gpu/vk/GrVkBackendContext.h +0 -84
- package/cpp/skia/include/gpu/vk/GrVkExtensions.h +0 -15
- package/cpp/skia/include/gpu/vk/GrVkMemoryAllocator.h +0 -15
- package/cpp/skia/include/ports/SkFontMgr_indirect.h +0 -102
- package/cpp/skia/include/ports/SkRemotableFontMgr.h +0 -139
- package/cpp/skia/include/private/base/SkFloatBits.h +0 -90
- package/cpp/skia/include/private/gpu/graphite/ContextOptionsPriv.h +0 -69
- package/cpp/skia/include/private/gpu/graphite/DawnTypesPriv.h +0 -54
- package/cpp/skia/include/private/gpu/graphite/MtlGraphiteTypesPriv.h +0 -95
- package/cpp/skia/include/private/gpu/graphite/VulkanGraphiteTypesPriv.h +0 -83
- package/cpp/skia/src/core/SkPathEnums.h +0 -25
- package/cpp/skia/src/core/SkPathPriv.h +0 -540
- package/libs/android/arm64-v8a/libskunicode.a +0 -0
- package/libs/android/armeabi-v7a/libskunicode.a +0 -0
- package/libs/android/x86/libskunicode.a +0 -0
- package/libs/android/x86_64/libskunicode.a +0 -0
- /package/cpp/skia/include/gpu/{gl → ganesh/gl}/glx/GrGLMakeGLXInterface.h +0 -0
@@ -0,0 +1,88 @@
|
|
1
|
+
import React from "react";
|
2
|
+
|
3
|
+
import { checkImage } from "../../../__tests__/setup";
|
4
|
+
import { Image } from "../../components";
|
5
|
+
import { BirdGIF, importSkia, surface } from "../setup";
|
6
|
+
|
7
|
+
describe("Animated Images", () => {
|
8
|
+
it("should decode gifs (1)", async () => {
|
9
|
+
const result = await surface.eval((Skia) => {
|
10
|
+
const data = Skia.Data.fromBase64(
|
11
|
+
"R0lGODlhAQABAIAAAGGqHwAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw=="
|
12
|
+
);
|
13
|
+
const animatedImage =
|
14
|
+
Skia.AnimatedImage.MakeAnimatedImageFromEncoded(data);
|
15
|
+
if (!animatedImage) {
|
16
|
+
return false;
|
17
|
+
}
|
18
|
+
|
19
|
+
if (animatedImage.getFrameCount() !== 1) {
|
20
|
+
return false;
|
21
|
+
}
|
22
|
+
|
23
|
+
animatedImage.decodeNextFrame();
|
24
|
+
animatedImage.getCurrentFrame();
|
25
|
+
animatedImage.currentFrameDuration();
|
26
|
+
return true;
|
27
|
+
});
|
28
|
+
expect(result).toEqual(true);
|
29
|
+
});
|
30
|
+
it("should decode gifs (2)", async () => {
|
31
|
+
const result = await surface.eval((Skia) => {
|
32
|
+
const data = Skia.Data.fromBase64(
|
33
|
+
"R0lGODlhAQABAIAAAGGqHwAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw=="
|
34
|
+
);
|
35
|
+
const animatedImage =
|
36
|
+
Skia.AnimatedImage.MakeAnimatedImageFromEncoded(data);
|
37
|
+
if (!animatedImage) {
|
38
|
+
return "";
|
39
|
+
}
|
40
|
+
const frame = animatedImage.getCurrentFrame();
|
41
|
+
if (!frame) {
|
42
|
+
return "";
|
43
|
+
}
|
44
|
+
return frame.encodeToBase64();
|
45
|
+
});
|
46
|
+
expect(result).toEqual(
|
47
|
+
// eslint-disable-next-line max-len
|
48
|
+
"iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAAXNSR0IArs4c6QAAAANzQklUCAgI2+FP4AAAAAxJREFUCJljSFwlDwACmgErMAA+hwAAAABJRU5ErkJggg=="
|
49
|
+
);
|
50
|
+
});
|
51
|
+
it("should decode the 3rd frame of the GIF", async () => {
|
52
|
+
const result = await surface.eval(
|
53
|
+
(Skia, { bird }) => {
|
54
|
+
const data = Skia.Data.fromBase64(bird);
|
55
|
+
const animatedImage =
|
56
|
+
Skia.AnimatedImage.MakeAnimatedImageFromEncoded(data);
|
57
|
+
if (!animatedImage) {
|
58
|
+
return "";
|
59
|
+
}
|
60
|
+
animatedImage.decodeNextFrame();
|
61
|
+
animatedImage.decodeNextFrame();
|
62
|
+
const frame = animatedImage.getCurrentFrame();
|
63
|
+
if (!frame) {
|
64
|
+
return "";
|
65
|
+
}
|
66
|
+
return frame.encodeToBase64();
|
67
|
+
},
|
68
|
+
{ bird: BirdGIF }
|
69
|
+
);
|
70
|
+
const { Skia } = importSkia();
|
71
|
+
const data = Skia.Data.fromBase64(result);
|
72
|
+
const frame = Skia.Image.MakeImageFromEncoded(data);
|
73
|
+
const { width, height } = surface;
|
74
|
+
const img = await surface.draw(
|
75
|
+
<>
|
76
|
+
<Image
|
77
|
+
image={frame}
|
78
|
+
x={0}
|
79
|
+
y={0}
|
80
|
+
width={width}
|
81
|
+
height={height}
|
82
|
+
fit="cover"
|
83
|
+
/>
|
84
|
+
</>
|
85
|
+
);
|
86
|
+
checkImage(img, "snapshots/animated-images/bird.png");
|
87
|
+
});
|
88
|
+
});
|
@@ -0,0 +1,358 @@
|
|
1
|
+
import React from "react";
|
2
|
+
|
3
|
+
import { checkImage, docPath } from "../../../__tests__/setup";
|
4
|
+
import { importSkia, surface } from "../setup";
|
5
|
+
import { Atlas, Circle, Group, Rect } from "../../components";
|
6
|
+
|
7
|
+
describe("Atlas", () => {
|
8
|
+
it("should read the RSXform properties", async () => {
|
9
|
+
const result = await surface.eval((Skia) => {
|
10
|
+
const transform = Skia.RSXform(1, 2, 3, 4);
|
11
|
+
return [transform.scos, transform.ssin, transform.tx, transform.ty];
|
12
|
+
});
|
13
|
+
expect(result).toEqual([1, 2, 3, 4]);
|
14
|
+
});
|
15
|
+
it("should draw the atlas using the imperative API", async () => {
|
16
|
+
const img = await surface.drawOffscreen((Skia, canvas) => {
|
17
|
+
const size = 200;
|
18
|
+
const texSurface = Skia.Surface.MakeOffscreen(size, size)!;
|
19
|
+
const texCanvas = texSurface.getCanvas();
|
20
|
+
texCanvas.drawColor(Skia.Color("red"));
|
21
|
+
const tex = texSurface.makeImageSnapshot();
|
22
|
+
const srcs = [
|
23
|
+
Skia.XYWHRect(0, 0, size, size),
|
24
|
+
Skia.XYWHRect(0, 0, size, size),
|
25
|
+
];
|
26
|
+
const dsts = [Skia.RSXform(0.5, 0, 0, 0), Skia.RSXform(0, 0.5, 200, 100)];
|
27
|
+
const paint = Skia.Paint();
|
28
|
+
canvas.drawAtlas(tex, srcs, dsts, paint);
|
29
|
+
});
|
30
|
+
checkImage(img, "snapshots/atlas/simple.png");
|
31
|
+
});
|
32
|
+
// it("should test the RSXforms (1)", async () => {
|
33
|
+
// const { Skia } = importSkia();
|
34
|
+
// const scos = Math.cos(Math.PI / 4);
|
35
|
+
// const ssin = Math.sin(Math.PI / 4);
|
36
|
+
// const px = 25;
|
37
|
+
// const py = 25;
|
38
|
+
// const tx = px - scos * px + ssin * py;
|
39
|
+
// const ty = py - ssin * px - scos * py;
|
40
|
+
// const f1 = Skia.RSXform(scos, ssin, tx, ty);
|
41
|
+
// const result = await surface.eval((Sk) => {
|
42
|
+
// const f2 = Sk.RSXformFromRadians(1, Math.PI / 4, 0, 0, 25, 25);
|
43
|
+
// return [f2.scos, f2.ssin, f2.tx, f2.ty];
|
44
|
+
// });
|
45
|
+
// expect(result).toEqual([f1.scos, f1.ssin, f1.tx, f1.ty]);
|
46
|
+
// });
|
47
|
+
it("should test the RSXforms (2)", async () => {
|
48
|
+
const { Skia } = importSkia();
|
49
|
+
const f1 = Skia.RSXformFromRadians(1, Math.PI / 4, 0, 0, 25, 25);
|
50
|
+
const result = await surface.eval((Sk) => {
|
51
|
+
const f2 = Sk.RSXformFromRadians(1, Math.PI / 4, 0, 0, 25, 25);
|
52
|
+
return [f2.scos, f2.ssin, f2.tx, f2.ty];
|
53
|
+
});
|
54
|
+
expect(result[0]).toBeCloseTo(f1.scos);
|
55
|
+
expect(result[1]).toBeCloseTo(f1.ssin);
|
56
|
+
expect(result[2]).toBeCloseTo(f1.tx);
|
57
|
+
expect(result[3]).toBeCloseTo(f1.ty);
|
58
|
+
});
|
59
|
+
it("should test the RSXforms (3)", async () => {
|
60
|
+
const { Skia } = importSkia();
|
61
|
+
const image = (() => {
|
62
|
+
const texSurface = Skia.Surface.MakeOffscreen(50, 50)!;
|
63
|
+
const texCanvas = texSurface.getCanvas();
|
64
|
+
texCanvas.drawColor(Skia.Color("cyan"));
|
65
|
+
return texSurface.makeImageSnapshot();
|
66
|
+
})();
|
67
|
+
const rct = Skia.XYWHRect(0, 0, 50, 50);
|
68
|
+
const scos = Math.cos(Math.PI / 4);
|
69
|
+
const ssin = Math.sin(Math.PI / 4);
|
70
|
+
const px = 25;
|
71
|
+
const py = 25;
|
72
|
+
const tx = px - scos * px + ssin * py;
|
73
|
+
const ty = py - ssin * px - scos * py;
|
74
|
+
const img = await surface.draw(
|
75
|
+
<Group>
|
76
|
+
<Atlas
|
77
|
+
image={image}
|
78
|
+
sprites={[rct, rct, rct, rct]}
|
79
|
+
transforms={[
|
80
|
+
Skia.RSXform(scos, ssin, tx, ty),
|
81
|
+
Skia.RSXformFromRadians(1, Math.PI / 4, 0, 0, 25, 25),
|
82
|
+
Skia.RSXform(scos, ssin, 100 + tx, ty),
|
83
|
+
Skia.RSXformFromRadians(1, Math.PI / 4, 100, 0, 125, 25),
|
84
|
+
]}
|
85
|
+
/>
|
86
|
+
<Circle r={5} color="red" cx={px} cy={py} />
|
87
|
+
</Group>
|
88
|
+
);
|
89
|
+
checkImage(img, "snapshots/atlas/rsxform1.png", {
|
90
|
+
maxPixelDiff: 500,
|
91
|
+
});
|
92
|
+
});
|
93
|
+
it("should test the RSXforms (4)", async () => {
|
94
|
+
const { Skia } = importSkia();
|
95
|
+
const image = (() => {
|
96
|
+
const texSurface = Skia.Surface.MakeOffscreen(50, 50)!;
|
97
|
+
const texCanvas = texSurface.getCanvas();
|
98
|
+
texCanvas.drawColor(Skia.Color("cyan"));
|
99
|
+
return texSurface.makeImageSnapshot();
|
100
|
+
})();
|
101
|
+
const rct = Skia.XYWHRect(0, 0, 50, 50);
|
102
|
+
const scos = Math.cos(Math.PI / 4);
|
103
|
+
const ssin = Math.sin(Math.PI / 4);
|
104
|
+
const px = 25;
|
105
|
+
const py = 25;
|
106
|
+
const tx = px - scos * px + ssin * py;
|
107
|
+
const ty = py - ssin * px - scos * py;
|
108
|
+
const img = await surface.draw(
|
109
|
+
<Atlas
|
110
|
+
image={image}
|
111
|
+
sprites={[rct, rct, rct, rct, rct]}
|
112
|
+
transforms={[
|
113
|
+
Skia.RSXform(1, 0, 0, 0),
|
114
|
+
Skia.RSXform(0.5, 0, 100, 12.5),
|
115
|
+
Skia.RSXform(scos, ssin, 200, 0),
|
116
|
+
Skia.RSXform(scos, ssin, 0, 200),
|
117
|
+
Skia.RSXform(scos, ssin, tx, 100 + ty),
|
118
|
+
]}
|
119
|
+
/>
|
120
|
+
);
|
121
|
+
checkImage(img, "snapshots/atlas/rsxform.png", {
|
122
|
+
maxPixelDiff: 500,
|
123
|
+
});
|
124
|
+
});
|
125
|
+
it("Simple Atlas", async () => {
|
126
|
+
const { Skia } = importSkia();
|
127
|
+
const image = (() => {
|
128
|
+
const texSurface = Skia.Surface.MakeOffscreen(75, 75)!;
|
129
|
+
const texCanvas = texSurface.getCanvas();
|
130
|
+
texCanvas.drawColor(Skia.Color("red"));
|
131
|
+
return texSurface.makeImageSnapshot();
|
132
|
+
})();
|
133
|
+
const img = await surface.draw(
|
134
|
+
<Atlas
|
135
|
+
image={image}
|
136
|
+
sprites={[Skia.XYWHRect(0, 0, 75, 75), Skia.XYWHRect(0, 0, 75, 75)]}
|
137
|
+
transforms={[Skia.RSXform(0.5, 0, 0, 0), Skia.RSXform(0, 0.5, 50, 50)]}
|
138
|
+
/>
|
139
|
+
);
|
140
|
+
checkImage(img, "snapshots/atlas/simple2.png", {
|
141
|
+
maxPixelDiff: 500,
|
142
|
+
});
|
143
|
+
});
|
144
|
+
it("Simple Atlas identity", async () => {
|
145
|
+
const { Skia } = importSkia();
|
146
|
+
const size = 75;
|
147
|
+
const texSurface = Skia.Surface.MakeOffscreen(size, size)!;
|
148
|
+
const texCanvas = texSurface.getCanvas();
|
149
|
+
texCanvas.drawColor(Skia.Color("red"));
|
150
|
+
const image = texSurface.makeImageSnapshot();
|
151
|
+
const img = await surface.draw(
|
152
|
+
<Atlas
|
153
|
+
image={image}
|
154
|
+
sprites={[
|
155
|
+
Skia.XYWHRect(0, 0, size, size),
|
156
|
+
Skia.XYWHRect(0, 0, size, size),
|
157
|
+
]}
|
158
|
+
transforms={[Skia.RSXform(1, 0, 0, 0), Skia.RSXform(1, 0, 0, 0)]}
|
159
|
+
/>
|
160
|
+
);
|
161
|
+
checkImage(img, "snapshots/atlas/identity.png");
|
162
|
+
});
|
163
|
+
it("Atlas documentation example", async () => {
|
164
|
+
const { Skia, rect, drawAsImage } = importSkia();
|
165
|
+
const size = { width: 25, height: 25 * 0.45 };
|
166
|
+
const strokeWidth = 2;
|
167
|
+
const textureSize = {
|
168
|
+
width: size.width + strokeWidth,
|
169
|
+
height: size.height + strokeWidth,
|
170
|
+
};
|
171
|
+
const texture = drawAsImage(
|
172
|
+
<Group>
|
173
|
+
<Rect
|
174
|
+
rect={rect(strokeWidth / 2, strokeWidth / 2, size.width, size.height)}
|
175
|
+
color="cyan"
|
176
|
+
/>
|
177
|
+
<Rect
|
178
|
+
rect={rect(strokeWidth / 2, strokeWidth / 2, size.width, size.height)}
|
179
|
+
color="blue"
|
180
|
+
style="stroke"
|
181
|
+
strokeWidth={strokeWidth}
|
182
|
+
/>
|
183
|
+
</Group>,
|
184
|
+
textureSize
|
185
|
+
);
|
186
|
+
const numberOfBoxes = 150;
|
187
|
+
const pos = { x: 128, y: 128 };
|
188
|
+
const width = 256;
|
189
|
+
const sprites = new Array(numberOfBoxes)
|
190
|
+
.fill(0)
|
191
|
+
.map(() => rect(0, 0, textureSize.width, textureSize.height));
|
192
|
+
const transforms = new Array(numberOfBoxes).fill(0).map((_, i) => {
|
193
|
+
const tx = 5 + ((i * size.width) % width);
|
194
|
+
const ty = 25 + Math.floor(i / (width / size.width)) * size.width;
|
195
|
+
const r = Math.atan2(pos.y - ty, pos.x - tx);
|
196
|
+
return Skia.RSXform(Math.cos(r), Math.sin(r), tx, ty);
|
197
|
+
});
|
198
|
+
|
199
|
+
const img = await surface.draw(
|
200
|
+
<Atlas image={texture} sprites={sprites} transforms={transforms} />
|
201
|
+
);
|
202
|
+
checkImage(img, docPath("atlas/hello-world.png"), {
|
203
|
+
maxPixelDiff: 500,
|
204
|
+
});
|
205
|
+
});
|
206
|
+
it("should use the colors property properly", async () => {
|
207
|
+
const { Skia, rect, drawAsImage } = importSkia();
|
208
|
+
const size = { width: 25, height: 25 * 0.45 };
|
209
|
+
const strokeWidth = 2;
|
210
|
+
const textureSize = {
|
211
|
+
width: size.width + strokeWidth,
|
212
|
+
height: size.height + strokeWidth,
|
213
|
+
};
|
214
|
+
const texture = drawAsImage(
|
215
|
+
<Group>
|
216
|
+
<Rect
|
217
|
+
rect={rect(strokeWidth / 2, strokeWidth / 2, size.width, size.height)}
|
218
|
+
color="black"
|
219
|
+
/>
|
220
|
+
</Group>,
|
221
|
+
textureSize
|
222
|
+
);
|
223
|
+
const numberOfBoxes = 150;
|
224
|
+
const pos = { x: 128, y: 128 };
|
225
|
+
const width = 256;
|
226
|
+
const sprites = new Array(numberOfBoxes)
|
227
|
+
.fill(0)
|
228
|
+
.map(() => rect(0, 0, textureSize.width, textureSize.height));
|
229
|
+
const transforms = new Array(numberOfBoxes).fill(0).map((_, i) => {
|
230
|
+
const tx = 5 + ((i * size.width) % width);
|
231
|
+
const ty = 25 + Math.floor(i / (width / size.width)) * size.width;
|
232
|
+
const r = Math.atan2(pos.y - ty, pos.x - tx);
|
233
|
+
return Skia.RSXform(Math.cos(r), Math.sin(r), tx, ty);
|
234
|
+
});
|
235
|
+
class SeededRandom {
|
236
|
+
private seed: number;
|
237
|
+
|
238
|
+
constructor(seed: number) {
|
239
|
+
this.seed = seed;
|
240
|
+
}
|
241
|
+
|
242
|
+
// Linear Congruential Generator
|
243
|
+
next(): number {
|
244
|
+
this.seed = (this.seed * 9301 + 49297) % 233280;
|
245
|
+
return this.seed / 233280;
|
246
|
+
}
|
247
|
+
}
|
248
|
+
|
249
|
+
function generateSeededRandomColor(seed: number): string {
|
250
|
+
const random = new SeededRandom(seed);
|
251
|
+
|
252
|
+
const red = Math.floor(random.next() * 256);
|
253
|
+
const green = Math.floor(random.next() * 256);
|
254
|
+
const blue = Math.floor(random.next() * 256);
|
255
|
+
|
256
|
+
const redHex = red.toString(16).padStart(2, "0");
|
257
|
+
const greenHex = green.toString(16).padStart(2, "0");
|
258
|
+
const blueHex = blue.toString(16).padStart(2, "0");
|
259
|
+
|
260
|
+
return `#${redHex}${greenHex}${blueHex}`;
|
261
|
+
}
|
262
|
+
|
263
|
+
const colors = new Array(numberOfBoxes)
|
264
|
+
.fill(0)
|
265
|
+
.map((_, i) => Skia.Color(generateSeededRandomColor(i)));
|
266
|
+
const img = await surface.draw(
|
267
|
+
<Atlas
|
268
|
+
image={texture}
|
269
|
+
sprites={sprites}
|
270
|
+
transforms={transforms}
|
271
|
+
colors={colors}
|
272
|
+
/>
|
273
|
+
);
|
274
|
+
checkImage(img, docPath("atlas/colors.png"), {
|
275
|
+
maxPixelDiff: 500,
|
276
|
+
});
|
277
|
+
});
|
278
|
+
it("should use the colors and blend mode property properly", async () => {
|
279
|
+
const { Skia, rect, drawAsImage } = importSkia();
|
280
|
+
const size = { width: 25, height: 25 * 0.45 };
|
281
|
+
const strokeWidth = 2;
|
282
|
+
const textureSize = {
|
283
|
+
width: size.width + strokeWidth,
|
284
|
+
height: size.height + strokeWidth,
|
285
|
+
};
|
286
|
+
const texture = drawAsImage(
|
287
|
+
<Group>
|
288
|
+
<Rect
|
289
|
+
rect={rect(strokeWidth / 2, strokeWidth / 2, size.width, size.height)}
|
290
|
+
color="rgb(36,43,56)"
|
291
|
+
/>
|
292
|
+
</Group>,
|
293
|
+
textureSize
|
294
|
+
);
|
295
|
+
const numberOfBoxes = 150;
|
296
|
+
const pos = { x: 128, y: 128 };
|
297
|
+
const width = 256;
|
298
|
+
const sprites = new Array(numberOfBoxes)
|
299
|
+
.fill(0)
|
300
|
+
.map(() => rect(0, 0, textureSize.width, textureSize.height));
|
301
|
+
const transforms = new Array(numberOfBoxes).fill(0).map((_, i) => {
|
302
|
+
const tx = 5 + ((i * size.width) % width);
|
303
|
+
const ty = 25 + Math.floor(i / (width / size.width)) * size.width;
|
304
|
+
const r = Math.atan2(pos.y - ty, pos.x - tx);
|
305
|
+
return Skia.RSXform(Math.cos(r), Math.sin(r), tx, ty);
|
306
|
+
});
|
307
|
+
const colors = new Array(numberOfBoxes)
|
308
|
+
.fill(0)
|
309
|
+
.map(() => Skia.Color("#61bea2"));
|
310
|
+
const img = await surface.draw(
|
311
|
+
<Atlas
|
312
|
+
image={texture}
|
313
|
+
sprites={sprites}
|
314
|
+
transforms={transforms}
|
315
|
+
colors={colors}
|
316
|
+
blendMode="screen"
|
317
|
+
/>
|
318
|
+
);
|
319
|
+
checkImage(img, docPath("atlas/colors-and-blend-mode.png"), {
|
320
|
+
maxPixelDiff: 500,
|
321
|
+
});
|
322
|
+
});
|
323
|
+
it("should accept null as a texture", async () => {
|
324
|
+
const { Skia, rect } = importSkia();
|
325
|
+
const size = { width: 25, height: 25 * 0.45 };
|
326
|
+
const textureSize = {
|
327
|
+
width: 0,
|
328
|
+
height: 0,
|
329
|
+
};
|
330
|
+
const numberOfBoxes = 150;
|
331
|
+
const pos = { x: 128, y: 128 };
|
332
|
+
const width = 256;
|
333
|
+
const sprites = new Array(numberOfBoxes)
|
334
|
+
.fill(0)
|
335
|
+
.map(() => rect(0, 0, textureSize.width, textureSize.height));
|
336
|
+
const transforms = new Array(numberOfBoxes).fill(0).map((_, i) => {
|
337
|
+
const tx = 5 + ((i * size.width) % width);
|
338
|
+
const ty = 25 + Math.floor(i / (width / size.width)) * size.width;
|
339
|
+
const r = Math.atan2(pos.y - ty, pos.x - tx);
|
340
|
+
return Skia.RSXform(Math.cos(r), Math.sin(r), tx, ty);
|
341
|
+
});
|
342
|
+
const colors = new Array(numberOfBoxes)
|
343
|
+
.fill(0)
|
344
|
+
.map(() => Skia.Color("#61bea2"));
|
345
|
+
const img = await surface.draw(
|
346
|
+
<Atlas
|
347
|
+
image={null}
|
348
|
+
sprites={sprites}
|
349
|
+
transforms={transforms}
|
350
|
+
colors={colors}
|
351
|
+
blendMode="screen"
|
352
|
+
/>
|
353
|
+
);
|
354
|
+
checkImage(img, docPath("atlas/null.png"), {
|
355
|
+
maxPixelDiff: 500,
|
356
|
+
});
|
357
|
+
});
|
358
|
+
});
|
@@ -0,0 +1,141 @@
|
|
1
|
+
import React from "react";
|
2
|
+
|
3
|
+
import { checkImage, docPath } from "../../../__tests__/setup";
|
4
|
+
import {
|
5
|
+
BackdropBlur,
|
6
|
+
BackdropFilter,
|
7
|
+
Blur,
|
8
|
+
Circle,
|
9
|
+
ColorMatrix,
|
10
|
+
Fill,
|
11
|
+
Image,
|
12
|
+
LinearGradient,
|
13
|
+
} from "../../components";
|
14
|
+
import { importSkia, surface, images } from "../setup";
|
15
|
+
import { Group } from "../../components/Group";
|
16
|
+
|
17
|
+
// https://kazzkiq.github.io/svg-color-filter/
|
18
|
+
const BLACK_AND_WHITE = [
|
19
|
+
0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0,
|
20
|
+
];
|
21
|
+
|
22
|
+
describe("Backdrop Filters", () => {
|
23
|
+
it("A black and white color filter as backdrop color filter", async () => {
|
24
|
+
const { oslo } = images;
|
25
|
+
const { width } = surface;
|
26
|
+
const size = width;
|
27
|
+
const img = await surface.draw(
|
28
|
+
<Group>
|
29
|
+
<Image
|
30
|
+
image={oslo}
|
31
|
+
x={0}
|
32
|
+
y={0}
|
33
|
+
width={width}
|
34
|
+
height={width}
|
35
|
+
fit="cover"
|
36
|
+
/>
|
37
|
+
<BackdropFilter
|
38
|
+
clip={{ x: 0, y: size / 2, width: size, height: size / 2 }}
|
39
|
+
filter={<ColorMatrix matrix={BLACK_AND_WHITE} />}
|
40
|
+
/>
|
41
|
+
</Group>
|
42
|
+
);
|
43
|
+
checkImage(img, docPath("black-and-white-backdrop-filter.png"));
|
44
|
+
});
|
45
|
+
it("Blur backdrop filter", async () => {
|
46
|
+
const { oslo } = images;
|
47
|
+
const { width } = surface;
|
48
|
+
const size = width;
|
49
|
+
const img = await surface.draw(
|
50
|
+
<Group>
|
51
|
+
<Fill color="white" />
|
52
|
+
<Image
|
53
|
+
image={oslo}
|
54
|
+
x={0}
|
55
|
+
y={0}
|
56
|
+
width={width}
|
57
|
+
height={width}
|
58
|
+
fit="cover"
|
59
|
+
/>
|
60
|
+
<BackdropBlur
|
61
|
+
blur={4 / 3}
|
62
|
+
clip={{ x: 0, y: size / 2, width: size, height: size / 2 }}
|
63
|
+
>
|
64
|
+
<Fill color="rgba(0, 0, 0, 0.5)" />
|
65
|
+
</BackdropBlur>
|
66
|
+
</Group>
|
67
|
+
);
|
68
|
+
checkImage(img, docPath("blur-backdrop-filter.png"));
|
69
|
+
});
|
70
|
+
it("should display the Aurora Example", async () => {
|
71
|
+
const { width, height } = surface;
|
72
|
+
const { vec } = importSkia();
|
73
|
+
const c = vec(width / 2, height / 2);
|
74
|
+
const r = c.x - 32 / 3;
|
75
|
+
const clip = { x: 0, y: c.y, width, height: c.y };
|
76
|
+
const img = await surface.draw(
|
77
|
+
<>
|
78
|
+
<Fill color="black" />
|
79
|
+
<Circle c={c} r={r}>
|
80
|
+
<LinearGradient
|
81
|
+
start={vec(c.x - r, c.y - r)}
|
82
|
+
end={vec(c.x + r, c.y + r)}
|
83
|
+
colors={["#FFF723", "#E70696"]}
|
84
|
+
/>
|
85
|
+
</Circle>
|
86
|
+
<BackdropFilter filter={<Blur blur={10 / 3} />} clip={clip}>
|
87
|
+
<Fill color="rgba(0, 0, 0, 0.3)" />
|
88
|
+
</BackdropFilter>
|
89
|
+
</>
|
90
|
+
);
|
91
|
+
checkImage(img, docPath("blur-backdrop-aurora.png"));
|
92
|
+
});
|
93
|
+
it("should display the Aurora Example with the BackdropBlur component", async () => {
|
94
|
+
const { width, height } = surface;
|
95
|
+
const { vec } = importSkia();
|
96
|
+
const c = vec(width / 2, height / 2);
|
97
|
+
const r = c.x - 32 / 3;
|
98
|
+
const clip = { x: 0, y: c.y, width, height: c.y };
|
99
|
+
const img = await surface.draw(
|
100
|
+
<>
|
101
|
+
<Fill color="black" />
|
102
|
+
<Circle c={c} r={r}>
|
103
|
+
<LinearGradient
|
104
|
+
start={vec(c.x - r, c.y - r)}
|
105
|
+
end={vec(c.x + r, c.y + r)}
|
106
|
+
colors={["#FFF723", "#E70696"]}
|
107
|
+
/>
|
108
|
+
</Circle>
|
109
|
+
<BackdropBlur blur={10 / 3} clip={clip}>
|
110
|
+
<Fill color="rgba(0, 0, 0, 0.3)" />
|
111
|
+
</BackdropBlur>
|
112
|
+
</>
|
113
|
+
);
|
114
|
+
checkImage(img, docPath("blur-backdrop-aurora.png"));
|
115
|
+
});
|
116
|
+
it("should display the Aurora Example with the BackdropBlur component and a string as clipping path", async () => {
|
117
|
+
const { width, height } = surface;
|
118
|
+
const { vec, Skia } = importSkia();
|
119
|
+
const c = vec(width / 2, height / 2);
|
120
|
+
const r = c.x - 32 / 3;
|
121
|
+
const path = Skia.Path.Make();
|
122
|
+
path.addRect(Skia.XYWHRect(0, c.y, width, c.y));
|
123
|
+
const clip = path.toSVGString();
|
124
|
+
const img = await surface.draw(
|
125
|
+
<>
|
126
|
+
<Fill color="black" />
|
127
|
+
<Circle c={c} r={r}>
|
128
|
+
<LinearGradient
|
129
|
+
start={vec(c.x - r, c.y - r)}
|
130
|
+
end={vec(c.x + r, c.y + r)}
|
131
|
+
colors={["#FFF723", "#E70696"]}
|
132
|
+
/>
|
133
|
+
</Circle>
|
134
|
+
<BackdropBlur blur={10 / 3} clip={clip}>
|
135
|
+
<Fill color="rgba(0, 0, 0, 0.3)" />
|
136
|
+
</BackdropBlur>
|
137
|
+
</>
|
138
|
+
);
|
139
|
+
checkImage(img, docPath("blur-backdrop-aurora.png"));
|
140
|
+
});
|
141
|
+
});
|
@@ -0,0 +1,115 @@
|
|
1
|
+
import React from "react";
|
2
|
+
|
3
|
+
import { importSkia, surface } from "../setup";
|
4
|
+
import { docPath, checkImage } from "../../../__tests__/setup";
|
5
|
+
import {
|
6
|
+
Blend,
|
7
|
+
ColorShader,
|
8
|
+
Fill,
|
9
|
+
Group,
|
10
|
+
LinearGradient,
|
11
|
+
RadialGradient,
|
12
|
+
} from "../../components";
|
13
|
+
|
14
|
+
describe("Test Blending", () => {
|
15
|
+
it("should display a linear gradient", async () => {
|
16
|
+
const { width, height } = surface;
|
17
|
+
const image = await surface.draw(
|
18
|
+
<Group>
|
19
|
+
<LinearGradient
|
20
|
+
colors={["cyan", "magenta", "yellow"]}
|
21
|
+
start={{ x: 0, y: 0 }}
|
22
|
+
end={{ x: width, y: height }}
|
23
|
+
/>
|
24
|
+
<Fill />
|
25
|
+
</Group>
|
26
|
+
);
|
27
|
+
checkImage(image, "snapshots/runtime-effects/linear-gradient.png");
|
28
|
+
});
|
29
|
+
|
30
|
+
it("should display a color", async () => {
|
31
|
+
const image = await surface.draw(
|
32
|
+
<Fill>
|
33
|
+
<ColorShader color="lightblue" />
|
34
|
+
</Fill>
|
35
|
+
);
|
36
|
+
checkImage(image, docPath("shaders/color.png"));
|
37
|
+
});
|
38
|
+
|
39
|
+
it("should blend cyan/magenta/yellow to black (multiply)", async () => {
|
40
|
+
const { vec } = importSkia();
|
41
|
+
const { width } = surface;
|
42
|
+
const r = width / 2;
|
43
|
+
const c = vec(r, r);
|
44
|
+
const image = await surface.draw(
|
45
|
+
<Fill>
|
46
|
+
<Blend mode="multiply">
|
47
|
+
<RadialGradient r={r} c={c} colors={["cyan", "magenta"]} />
|
48
|
+
<RadialGradient r={r} c={c} colors={["magenta", "yellow"]} />
|
49
|
+
<RadialGradient r={r} c={c} colors={["yellow", "cyan"]} />
|
50
|
+
</Blend>
|
51
|
+
</Fill>
|
52
|
+
);
|
53
|
+
checkImage(image, "snapshots/runtime-effects/blend-multiply.png");
|
54
|
+
});
|
55
|
+
|
56
|
+
it("should blend using color burn", async () => {
|
57
|
+
const { vec } = importSkia();
|
58
|
+
const { width } = surface;
|
59
|
+
const r = width / 2;
|
60
|
+
const c = vec(r, r);
|
61
|
+
let image = await surface.draw(
|
62
|
+
<Fill>
|
63
|
+
<Blend mode="colorBurn">
|
64
|
+
<RadialGradient r={r} c={c} colors={["magenta", "yellow"]} />
|
65
|
+
<RadialGradient r={r} c={c} colors={["magenta", "yellow"]} />
|
66
|
+
<RadialGradient r={r} c={c} colors={["yellow", "cyan"]} />
|
67
|
+
</Blend>
|
68
|
+
</Fill>
|
69
|
+
);
|
70
|
+
checkImage(image, "snapshots/runtime-effects/blend-color-burn.png", {
|
71
|
+
maxPixelDiff: 324,
|
72
|
+
});
|
73
|
+
image = await surface.draw(
|
74
|
+
<Fill>
|
75
|
+
<Blend mode="colorBurn">
|
76
|
+
<RadialGradient r={r} c={c} colors={["yellow", "cyan"]} />
|
77
|
+
<RadialGradient r={r} c={c} colors={["magenta", "yellow"]} />
|
78
|
+
<RadialGradient r={r} c={c} colors={["magenta", "yellow"]} />
|
79
|
+
</Blend>
|
80
|
+
</Fill>
|
81
|
+
);
|
82
|
+
checkImage(image, "snapshots/runtime-effects/blend-color-burn2.png", {
|
83
|
+
maxPixelDiff: 324,
|
84
|
+
});
|
85
|
+
});
|
86
|
+
|
87
|
+
it("should blend using multiply", async () => {
|
88
|
+
const { vec } = importSkia();
|
89
|
+
const { width } = surface;
|
90
|
+
const r = width / 2;
|
91
|
+
const c = vec(r, r);
|
92
|
+
let image = await surface.draw(
|
93
|
+
<Fill>
|
94
|
+
<Blend mode="colorBurn">
|
95
|
+
<RadialGradient r={r} c={c} colors={["yellow", "cyan"]} />
|
96
|
+
<RadialGradient r={r} c={c} colors={["cyan", "magenta"]} />
|
97
|
+
<RadialGradient r={r} c={c} colors={["magenta", "yellow"]} />
|
98
|
+
</Blend>
|
99
|
+
</Fill>
|
100
|
+
);
|
101
|
+
checkImage(image, "snapshots/runtime-effects/blend-color-burn3.png");
|
102
|
+
image = await surface.draw(
|
103
|
+
<Fill>
|
104
|
+
<Blend mode="colorBurn">
|
105
|
+
<RadialGradient r={r} c={c} colors={["yellow", "cyan"]} />
|
106
|
+
<Blend mode="colorBurn">
|
107
|
+
<RadialGradient r={r} c={c} colors={["cyan", "magenta"]} />
|
108
|
+
<RadialGradient r={r} c={c} colors={["magenta", "yellow"]} />
|
109
|
+
</Blend>
|
110
|
+
</Blend>
|
111
|
+
</Fill>
|
112
|
+
);
|
113
|
+
checkImage(image, "snapshots/runtime-effects/blend-color-burn3.png");
|
114
|
+
});
|
115
|
+
});
|