@shopify/react-native-skia 1.3.13 → 1.4.1
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/renderer/HostConfig.js.map +1 -1
- 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/renderer/HostConfig.js.map +1 -1
- 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/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 +5 -5
- 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 +5 -5
- 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/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 +5 -5
- 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/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 +5 -5
- 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 +3 -5
- package/react-native-skia.podspec +2 -1
- package/src/renderer/HostConfig.ts +5 -1
- package/src/renderer/__tests__/e2e/ImageFilters.spec.tsx +5 -2
- package/src/renderer/__tests__/e2e/Paths.spec.tsx +12 -5
- package/src/renderer/__tests__/e2e/SDF.spec.tsx +1 -1
- package/src/renderer/__tests__/e2e/Snapshot.spec.tsx +1 -1
- 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/libs/ios/libskunicode.xcframework/Info.plist +0 -46
- package/libs/ios/libskunicode.xcframework/ios-arm64_arm64e/libskunicode.a +0 -0
- package/libs/ios/libskunicode.xcframework/ios-arm64_arm64e_x86_64-simulator/libskunicode.a +0 -0
- /package/cpp/skia/include/gpu/{gl → ganesh/gl}/glx/GrGLMakeGLXInterface.h +0 -0
@@ -13,6 +13,11 @@
|
|
13
13
|
#import "include/core/SkColorSpace.h"
|
14
14
|
#import <include/gpu/GrBackendSurface.h>
|
15
15
|
#import <include/gpu/ganesh/SkImageGanesh.h>
|
16
|
+
#import <include/gpu/ganesh/mtl/GrMtlBackendContext.h>
|
17
|
+
#import <include/gpu/ganesh/mtl/GrMtlBackendSurface.h>
|
18
|
+
#import <include/gpu/ganesh/mtl/GrMtlDirectContext.h>
|
19
|
+
#import <include/gpu/ganesh/mtl/GrMtlTypes.h>
|
20
|
+
#import <include/gpu/ganesh/mtl/SkSurfaceMetal.h>
|
16
21
|
#pragma clang diagnostic pop
|
17
22
|
|
18
23
|
#include <TargetConditionals.h>
|
@@ -50,8 +55,8 @@ GrBackendTexture TextureHolder::toGrBackendTexture() {
|
|
50
55
|
GrMtlTextureInfo textureInfo;
|
51
56
|
textureInfo.fTexture.retain((__bridge void *)mtlTexture);
|
52
57
|
GrBackendTexture texture =
|
53
|
-
|
54
|
-
|
58
|
+
GrBackendTextures::MakeMtl((int)mtlTexture.width, (int)mtlTexture.height,
|
59
|
+
skgpu::Mipmapped::kNo, textureInfo);
|
55
60
|
return texture;
|
56
61
|
}
|
57
62
|
|
@@ -1,5 +1,10 @@
|
|
1
1
|
#import <MetalKit/MetalKit.h>
|
2
2
|
|
3
|
+
#include <memory>
|
4
|
+
|
5
|
+
#include "RNSkLog.h"
|
6
|
+
#include "SkiaContext.h"
|
7
|
+
|
3
8
|
#pragma clang diagnostic push
|
4
9
|
#pragma clang diagnostic ignored "-Wdocumentation"
|
5
10
|
|
@@ -21,6 +26,8 @@ public:
|
|
21
26
|
};
|
22
27
|
|
23
28
|
class SkiaMetalSurfaceFactory {
|
29
|
+
friend class IOSSkiaContext;
|
30
|
+
|
24
31
|
public:
|
25
32
|
static sk_sp<SkSurface> makeWindowedSurface(id<MTLTexture> texture, int width,
|
26
33
|
int height);
|
@@ -29,8 +36,79 @@ public:
|
|
29
36
|
static sk_sp<SkImage>
|
30
37
|
makeTextureFromCVPixelBuffer(CVPixelBufferRef pixelBuffer);
|
31
38
|
|
39
|
+
static std::shared_ptr<RNSkia::SkiaContext>
|
40
|
+
makeContext(CALayer *texture, int width, int height);
|
41
|
+
|
32
42
|
private:
|
33
43
|
static id<MTLDevice> device;
|
34
44
|
static bool
|
35
45
|
createSkiaDirectContextIfNecessary(SkiaMetalContext *threadContext);
|
36
46
|
};
|
47
|
+
|
48
|
+
class IOSSkiaContext : public RNSkia::SkiaContext {
|
49
|
+
public:
|
50
|
+
IOSSkiaContext(CALayer *layer, int width, int height) {
|
51
|
+
auto pd = 3;
|
52
|
+
#pragma clang diagnostic push
|
53
|
+
#pragma clang diagnostic ignored "-Wunguarded-availability-new"
|
54
|
+
_layer = (CAMetalLayer *)layer;
|
55
|
+
#pragma clang diagnostic pop
|
56
|
+
_layer.framebufferOnly = NO;
|
57
|
+
_layer.device = MTLCreateSystemDefaultDevice();
|
58
|
+
_layer.opaque = false;
|
59
|
+
_layer.contentsScale = pd;
|
60
|
+
_layer.pixelFormat = MTLPixelFormatBGRA8Unorm;
|
61
|
+
_layer.contentsGravity = kCAGravityBottomLeft;
|
62
|
+
|
63
|
+
_layer.frame = CGRectMake(0, 0, width, height);
|
64
|
+
_layer.drawableSize = CGSizeMake(width * pd, height * pd);
|
65
|
+
}
|
66
|
+
|
67
|
+
~IOSSkiaContext() {}
|
68
|
+
|
69
|
+
sk_sp<SkSurface> getSurface() override {
|
70
|
+
if (_skSurface) {
|
71
|
+
return _skSurface;
|
72
|
+
}
|
73
|
+
// Create the Skia Direct Context if it doesn't exist
|
74
|
+
if (!SkiaMetalSurfaceFactory::createSkiaDirectContextIfNecessary(
|
75
|
+
&ThreadContextHolder::ThreadSkiaMetalContext)) {
|
76
|
+
return nullptr;
|
77
|
+
}
|
78
|
+
|
79
|
+
// Get the next drawable from the CAMetalLayer
|
80
|
+
_currentDrawable = [_layer nextDrawable];
|
81
|
+
if (!_currentDrawable) {
|
82
|
+
RNSkia::RNSkLogger::logToConsole(
|
83
|
+
"Could not retrieve drawable from CAMetalLayer");
|
84
|
+
return nullptr;
|
85
|
+
}
|
86
|
+
|
87
|
+
// Get the texture from the drawable
|
88
|
+
_skSurface = SkiaMetalSurfaceFactory::makeWindowedSurface(
|
89
|
+
_currentDrawable.texture, _layer.drawableSize.width,
|
90
|
+
_layer.drawableSize.height);
|
91
|
+
return _skSurface;
|
92
|
+
}
|
93
|
+
|
94
|
+
void present() override {
|
95
|
+
if (auto dContext = GrAsDirectContext(_skSurface->recordingContext())) {
|
96
|
+
dContext->flushAndSubmit();
|
97
|
+
}
|
98
|
+
|
99
|
+
id<MTLCommandBuffer> commandBuffer(
|
100
|
+
[ThreadContextHolder::ThreadSkiaMetalContext
|
101
|
+
.commandQueue commandBuffer]);
|
102
|
+
[commandBuffer presentDrawable:_currentDrawable];
|
103
|
+
[commandBuffer commit];
|
104
|
+
_skSurface = nullptr;
|
105
|
+
}
|
106
|
+
|
107
|
+
private:
|
108
|
+
sk_sp<SkSurface> _skSurface = nullptr;
|
109
|
+
#pragma clang diagnostic push
|
110
|
+
#pragma clang diagnostic ignored "-Wunguarded-availability-new"
|
111
|
+
CAMetalLayer *_layer;
|
112
|
+
#pragma clang diagnostic pop
|
113
|
+
id<CAMetalDrawable> _currentDrawable = nil;
|
114
|
+
};
|
@@ -14,6 +14,9 @@
|
|
14
14
|
#import <include/gpu/GrDirectContext.h>
|
15
15
|
#import <include/gpu/ganesh/SkImageGanesh.h>
|
16
16
|
#import <include/gpu/ganesh/SkSurfaceGanesh.h>
|
17
|
+
#import <include/gpu/ganesh/mtl/GrMtlBackendContext.h>
|
18
|
+
#import <include/gpu/ganesh/mtl/GrMtlBackendSurface.h>
|
19
|
+
#import <include/gpu/ganesh/mtl/GrMtlDirectContext.h>
|
17
20
|
#import <include/gpu/ganesh/mtl/SkSurfaceMetal.h>
|
18
21
|
|
19
22
|
#pragma clang diagnostic pop
|
@@ -46,9 +49,15 @@ bool SkiaMetalSurfaceFactory::createSkiaDirectContextIfNecessary(
|
|
46
49
|
if (skiaMetalContext->skContext == nullptr) {
|
47
50
|
skiaMetalContext->commandQueue =
|
48
51
|
id<MTLCommandQueue>(CFRetain((GrMTLHandle)[device newCommandQueue]));
|
49
|
-
|
50
|
-
|
52
|
+
|
53
|
+
GrMtlBackendContext backendContext = {};
|
54
|
+
backendContext.fDevice.reset((__bridge void *)device);
|
55
|
+
backendContext.fQueue.reset(
|
51
56
|
(__bridge void *)skiaMetalContext->commandQueue);
|
57
|
+
GrContextOptions grContextOptions; // set different options here.
|
58
|
+
|
59
|
+
// Create the Skia Direct Context
|
60
|
+
skiaMetalContext->skContext = GrDirectContexts::MakeMetal(backendContext);
|
52
61
|
if (skiaMetalContext->skContext == nullptr) {
|
53
62
|
RNSkia::RNSkLogger::logToConsole("Couldn't create a Skia Metal Context");
|
54
63
|
return false;
|
@@ -57,6 +66,11 @@ bool SkiaMetalSurfaceFactory::createSkiaDirectContextIfNecessary(
|
|
57
66
|
return true;
|
58
67
|
}
|
59
68
|
|
69
|
+
std::shared_ptr<RNSkia::SkiaContext>
|
70
|
+
SkiaMetalSurfaceFactory::makeContext(CALayer *texture, int width, int height) {
|
71
|
+
return std::make_shared<IOSSkiaContext>(texture, width, height);
|
72
|
+
}
|
73
|
+
|
60
74
|
sk_sp<SkSurface>
|
61
75
|
SkiaMetalSurfaceFactory::makeWindowedSurface(id<MTLTexture> texture, int width,
|
62
76
|
int height) {
|
@@ -68,7 +82,8 @@ SkiaMetalSurfaceFactory::makeWindowedSurface(id<MTLTexture> texture, int width,
|
|
68
82
|
GrMtlTextureInfo fbInfo;
|
69
83
|
fbInfo.fTexture.retain((__bridge void *)texture);
|
70
84
|
|
71
|
-
GrBackendRenderTarget backendRT
|
85
|
+
GrBackendRenderTarget backendRT =
|
86
|
+
GrBackendRenderTargets::MakeMtl(width, height, fbInfo);
|
72
87
|
|
73
88
|
auto skSurface = SkSurfaces::WrapBackendRenderTarget(
|
74
89
|
ThreadContextHolder::ThreadSkiaMetalContext.skContext.get(), backendRT,
|
@@ -95,7 +110,8 @@ sk_sp<SkSurface> SkiaMetalSurfaceFactory::makeOffscreenSurface(int width,
|
|
95
110
|
// Create a GrBackendTexture from the Metal texture
|
96
111
|
GrMtlTextureInfo info;
|
97
112
|
info.fTexture.retain((__bridge void *)ctx->texture);
|
98
|
-
GrBackendTexture backendTexture
|
113
|
+
GrBackendTexture backendTexture =
|
114
|
+
GrBackendTextures::MakeMtl(width, height, skgpu::Mipmapped::kNo, info);
|
99
115
|
|
100
116
|
// Create a SkSurface from the GrBackendTexture
|
101
117
|
auto surface = SkSurfaces::WrapBackendTexture(
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_constants","require","_renderHelpers","_HostComponents","_typeddash","DEBUG","debug","args","console","log","exports","appendNode","parent","child","addChild","removeNode","unmounted","unbindReanimatedNode","removeChild","insertBefore","before","insertChildBefore","skHostConfig","now","Date","supportsMutation","isPrimaryRenderer","supportsPersistence","supportsHydration","scheduleTimeout","setTimeout","cancelTimeout","clearTimeout","noTimeout","appendChildToContainer","container","root","appendChild","getRootHostContext","_rootContainerInstance","getChildHostContext","_parentHostContext","_type","shouldSetTextContent","_props","createTextInstance","_text","_hostContext","_internalInstanceHandle","Error","createInstance","type","pristineProps","props","reanimatedProps","extractReanimatedProps","node","createNode","bindReanimatedProps","appendInitialChild","parentInstance","finalizeInitialChildren","commitMount","prepareForCommit","_containerInfo","resetAfterCommit","redraw","getPublicInstance","prepareUpdate","_instance","oldProps","newProps","rootContainerInstance","propsAreEqual","shallowEq","commitUpdate","instance","updatePayload","prevProps","nextProps","_internalHandle","setProps","commitTextUpdate","_textInstance","_oldText","_newText","clearContainer","children","forEach","preparePortalMount","removeChildFromContainer","insertInContainerBefore","getCurrentEventPriority","DefaultEventPriority","beforeActiveInstanceBlur","afterActiveInstanceBlur","detachDeletedInstance"],"sources":["HostConfig.ts"],"sourcesContent":["/*global NodeJS*/\nimport type { HostConfig } from \"react-reconciler\";\nimport { DefaultEventPriority } from \"react-reconciler/constants\";\n\nimport type { NodeType, Node } from \"../dom/types\";\nimport {\n bindReanimatedProps,\n extractReanimatedProps,\n unbindReanimatedNode,\n} from \"../external/reanimated/renderHelpers\";\n\nimport type { Container } from \"./Container\";\nimport { createNode } from \"./HostComponents\";\nimport { shallowEq } from \"./typeddash\";\n\nconst DEBUG = false;\nexport const debug = (...args: Parameters<typeof console.log>) => {\n if (DEBUG) {\n console.log(...args);\n }\n};\n\ntype Instance = Node<unknown>;\n\ntype Props = object;\ntype TextInstance = Node<unknown>;\ntype SuspenseInstance = Instance;\ntype HydratableInstance = Instance;\ntype PublicInstance = Instance;\ntype HostContext = null;\ntype UpdatePayload = Container;\ntype ChildSet = unknown;\ntype TimeoutHandle = NodeJS.Timeout;\ntype NoTimeout = -1;\n\ntype SkiaHostConfig = HostConfig<\n NodeType,\n Props,\n Container,\n Instance,\n TextInstance,\n SuspenseInstance,\n HydratableInstance,\n PublicInstance,\n HostContext,\n UpdatePayload,\n ChildSet,\n TimeoutHandle,\n NoTimeout\n>;\n\nconst appendNode = (parent: Node<unknown>, child: Node<unknown>) => {\n parent.addChild(child);\n};\n\nconst removeNode = (parent: Node<unknown>, child: Node<unknown>, unmounted = false) => {\n // If the drawing is unmounted we don't want to update it.\n // We can just stop the reanimated mappers\n unbindReanimatedNode(child);\n if (!unmounted) {\n parent.removeChild(child);\n }\n};\n\nconst insertBefore = (\n parent: Node<unknown>,\n child: Node<unknown>,\n before: Node<unknown>\n) => {\n parent.insertChildBefore(child, before);\n};\n\nexport const skHostConfig: SkiaHostConfig = {\n /**\n * This function is used by the reconciler in order to calculate current time for prioritising work.\n */\n now: Date.now,\n supportsMutation: true,\n isPrimaryRenderer: false,\n supportsPersistence: false,\n supportsHydration: false,\n //supportsMicrotask: true,\n\n scheduleTimeout: setTimeout,\n cancelTimeout: clearTimeout,\n noTimeout: -1,\n\n appendChildToContainer(container, child) {\n debug(\"appendChildToContainer\");\n appendNode(container.root, child);\n },\n\n appendChild(parent, child) {\n debug(\"appendChild\", parent, child);\n appendNode(parent, child);\n },\n\n getRootHostContext: (_rootContainerInstance: Container) => {\n debug(\"getRootHostContext\");\n return null;\n },\n\n getChildHostContext(_parentHostContext, _type, _rootContainerInstance) {\n debug(\"getChildHostContext\");\n return null;\n },\n\n shouldSetTextContent(_type, _props) {\n return false;\n },\n\n createTextInstance(\n _text,\n _rootContainerInstance,\n _hostContext,\n _internalInstanceHandle\n ) {\n debug(\"createTextInstance\");\n // return SpanNode({}, text) as SkNode;\n throw new Error(\"Text nodes are not supported yet\");\n },\n\n createInstance(\n type,\n pristineProps,\n container,\n _hostContext,\n _internalInstanceHandle\n ) {\n debug(\"createInstance\", type);\n const [props, reanimatedProps] = extractReanimatedProps(pristineProps);\n const node = createNode(container, type, props);\n bindReanimatedProps(container, node, reanimatedProps);\n return node;\n },\n\n appendInitialChild(parentInstance, child) {\n debug(\"appendInitialChild\");\n appendNode(parentInstance, child);\n },\n\n finalizeInitialChildren(\n parentInstance,\n _type,\n _props,\n _rootContainerInstance,\n _hostContext\n ) {\n debug(\"finalizeInitialChildren\", parentInstance);\n return false;\n },\n\n commitMount() {\n // if finalizeInitialChildren = true\n debug(\"commitMount\");\n },\n\n prepareForCommit(_containerInfo) {\n debug(\"prepareForCommit\");\n return null;\n },\n\n resetAfterCommit(container) {\n debug(\"resetAfterCommit\");\n container.redraw();\n },\n\n getPublicInstance(node: Instance) {\n debug(\"getPublicInstance\");\n return node;\n },\n\n prepareUpdate: (\n _instance,\n type,\n oldProps,\n newProps,\n rootContainerInstance,\n _hostContext\n ) => {\n debug(\"prepareUpdate\");\n const propsAreEqual = shallowEq(oldProps, newProps);\n if (propsAreEqual) {\n return null;\n }\n debug(\"update \", type);\n return rootContainerInstance;\n },\n\n commitUpdate(\n instance,\n updatePayload,\n type,\n prevProps,\n nextProps,\n _internalHandle\n ) {\n debug(\"commitUpdate: \", type);\n if (shallowEq(prevProps, nextProps)) {\n return;\n }\n const [props, reanimatedProps] = extractReanimatedProps(nextProps);\n instance.setProps(props);\n bindReanimatedProps(updatePayload, instance, reanimatedProps);\n },\n\n commitTextUpdate: (\n _textInstance: TextInstance,\n _oldText: string,\n _newText: string\n ) => {\n // textInstance.instance = newText;\n },\n\n clearContainer: (container) => {\n debug(\"clearContainer\");\n container.root.children().forEach((child) => {\n container.root.removeChild(child);\n });\n },\n\n preparePortalMount: () => {\n debug(\"preparePortalMount\");\n },\n\n removeChild: (parent, child) => {\n removeNode(parent, child);\n },\n\n removeChildFromContainer: (container, child) => {\n removeNode(container.root, child, container.unmounted);\n },\n\n insertInContainerBefore: (container, child, before) => {\n insertBefore(container.root, child, before);\n },\n\n insertBefore: (parent, child, before) => {\n insertBefore(parent, child, before);\n },\n // see https://github.com/pmndrs/react-three-fiber/pull/2360#discussion_r916356874\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n getCurrentEventPriority: () => DefaultEventPriority,\n beforeActiveInstanceBlur: () => {},\n afterActiveInstanceBlur: () => {},\n detachDeletedInstance: () => {},\n};\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["_constants","require","_renderHelpers","_HostComponents","_typeddash","DEBUG","debug","args","console","log","exports","appendNode","parent","child","addChild","removeNode","unmounted","unbindReanimatedNode","removeChild","insertBefore","before","insertChildBefore","skHostConfig","now","Date","supportsMutation","isPrimaryRenderer","supportsPersistence","supportsHydration","scheduleTimeout","setTimeout","cancelTimeout","clearTimeout","noTimeout","appendChildToContainer","container","root","appendChild","getRootHostContext","_rootContainerInstance","getChildHostContext","_parentHostContext","_type","shouldSetTextContent","_props","createTextInstance","_text","_hostContext","_internalInstanceHandle","Error","createInstance","type","pristineProps","props","reanimatedProps","extractReanimatedProps","node","createNode","bindReanimatedProps","appendInitialChild","parentInstance","finalizeInitialChildren","commitMount","prepareForCommit","_containerInfo","resetAfterCommit","redraw","getPublicInstance","prepareUpdate","_instance","oldProps","newProps","rootContainerInstance","propsAreEqual","shallowEq","commitUpdate","instance","updatePayload","prevProps","nextProps","_internalHandle","setProps","commitTextUpdate","_textInstance","_oldText","_newText","clearContainer","children","forEach","preparePortalMount","removeChildFromContainer","insertInContainerBefore","getCurrentEventPriority","DefaultEventPriority","beforeActiveInstanceBlur","afterActiveInstanceBlur","detachDeletedInstance"],"sources":["HostConfig.ts"],"sourcesContent":["/*global NodeJS*/\nimport type { HostConfig } from \"react-reconciler\";\nimport { DefaultEventPriority } from \"react-reconciler/constants\";\n\nimport type { NodeType, Node } from \"../dom/types\";\nimport {\n bindReanimatedProps,\n extractReanimatedProps,\n unbindReanimatedNode,\n} from \"../external/reanimated/renderHelpers\";\n\nimport type { Container } from \"./Container\";\nimport { createNode } from \"./HostComponents\";\nimport { shallowEq } from \"./typeddash\";\n\nconst DEBUG = false;\nexport const debug = (...args: Parameters<typeof console.log>) => {\n if (DEBUG) {\n console.log(...args);\n }\n};\n\ntype Instance = Node<unknown>;\n\ntype Props = object;\ntype TextInstance = Node<unknown>;\ntype SuspenseInstance = Instance;\ntype HydratableInstance = Instance;\ntype PublicInstance = Instance;\ntype HostContext = null;\ntype UpdatePayload = Container;\ntype ChildSet = unknown;\ntype TimeoutHandle = NodeJS.Timeout;\ntype NoTimeout = -1;\n\ntype SkiaHostConfig = HostConfig<\n NodeType,\n Props,\n Container,\n Instance,\n TextInstance,\n SuspenseInstance,\n HydratableInstance,\n PublicInstance,\n HostContext,\n UpdatePayload,\n ChildSet,\n TimeoutHandle,\n NoTimeout\n>;\n\nconst appendNode = (parent: Node<unknown>, child: Node<unknown>) => {\n parent.addChild(child);\n};\n\nconst removeNode = (\n parent: Node<unknown>,\n child: Node<unknown>,\n unmounted = false\n) => {\n // If the drawing is unmounted we don't want to update it.\n // We can just stop the reanimated mappers\n unbindReanimatedNode(child);\n if (!unmounted) {\n parent.removeChild(child);\n }\n};\n\nconst insertBefore = (\n parent: Node<unknown>,\n child: Node<unknown>,\n before: Node<unknown>\n) => {\n parent.insertChildBefore(child, before);\n};\n\nexport const skHostConfig: SkiaHostConfig = {\n /**\n * This function is used by the reconciler in order to calculate current time for prioritising work.\n */\n now: Date.now,\n supportsMutation: true,\n isPrimaryRenderer: false,\n supportsPersistence: false,\n supportsHydration: false,\n //supportsMicrotask: true,\n\n scheduleTimeout: setTimeout,\n cancelTimeout: clearTimeout,\n noTimeout: -1,\n\n appendChildToContainer(container, child) {\n debug(\"appendChildToContainer\");\n appendNode(container.root, child);\n },\n\n appendChild(parent, child) {\n debug(\"appendChild\", parent, child);\n appendNode(parent, child);\n },\n\n getRootHostContext: (_rootContainerInstance: Container) => {\n debug(\"getRootHostContext\");\n return null;\n },\n\n getChildHostContext(_parentHostContext, _type, _rootContainerInstance) {\n debug(\"getChildHostContext\");\n return null;\n },\n\n shouldSetTextContent(_type, _props) {\n return false;\n },\n\n createTextInstance(\n _text,\n _rootContainerInstance,\n _hostContext,\n _internalInstanceHandle\n ) {\n debug(\"createTextInstance\");\n // return SpanNode({}, text) as SkNode;\n throw new Error(\"Text nodes are not supported yet\");\n },\n\n createInstance(\n type,\n pristineProps,\n container,\n _hostContext,\n _internalInstanceHandle\n ) {\n debug(\"createInstance\", type);\n const [props, reanimatedProps] = extractReanimatedProps(pristineProps);\n const node = createNode(container, type, props);\n bindReanimatedProps(container, node, reanimatedProps);\n return node;\n },\n\n appendInitialChild(parentInstance, child) {\n debug(\"appendInitialChild\");\n appendNode(parentInstance, child);\n },\n\n finalizeInitialChildren(\n parentInstance,\n _type,\n _props,\n _rootContainerInstance,\n _hostContext\n ) {\n debug(\"finalizeInitialChildren\", parentInstance);\n return false;\n },\n\n commitMount() {\n // if finalizeInitialChildren = true\n debug(\"commitMount\");\n },\n\n prepareForCommit(_containerInfo) {\n debug(\"prepareForCommit\");\n return null;\n },\n\n resetAfterCommit(container) {\n debug(\"resetAfterCommit\");\n container.redraw();\n },\n\n getPublicInstance(node: Instance) {\n debug(\"getPublicInstance\");\n return node;\n },\n\n prepareUpdate: (\n _instance,\n type,\n oldProps,\n newProps,\n rootContainerInstance,\n _hostContext\n ) => {\n debug(\"prepareUpdate\");\n const propsAreEqual = shallowEq(oldProps, newProps);\n if (propsAreEqual) {\n return null;\n }\n debug(\"update \", type);\n return rootContainerInstance;\n },\n\n commitUpdate(\n instance,\n updatePayload,\n type,\n prevProps,\n nextProps,\n _internalHandle\n ) {\n debug(\"commitUpdate: \", type);\n if (shallowEq(prevProps, nextProps)) {\n return;\n }\n const [props, reanimatedProps] = extractReanimatedProps(nextProps);\n instance.setProps(props);\n bindReanimatedProps(updatePayload, instance, reanimatedProps);\n },\n\n commitTextUpdate: (\n _textInstance: TextInstance,\n _oldText: string,\n _newText: string\n ) => {\n // textInstance.instance = newText;\n },\n\n clearContainer: (container) => {\n debug(\"clearContainer\");\n container.root.children().forEach((child) => {\n container.root.removeChild(child);\n });\n },\n\n preparePortalMount: () => {\n debug(\"preparePortalMount\");\n },\n\n removeChild: (parent, child) => {\n removeNode(parent, child);\n },\n\n removeChildFromContainer: (container, child) => {\n removeNode(container.root, child, container.unmounted);\n },\n\n insertInContainerBefore: (container, child, before) => {\n insertBefore(container.root, child, before);\n },\n\n insertBefore: (parent, child, before) => {\n insertBefore(parent, child, before);\n },\n // see https://github.com/pmndrs/react-three-fiber/pull/2360#discussion_r916356874\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n getCurrentEventPriority: () => DefaultEventPriority,\n beforeActiveInstanceBlur: () => {},\n afterActiveInstanceBlur: () => {},\n detachDeletedInstance: () => {},\n};\n"],"mappings":"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","ignoreList":[]}
|
@@ -42,10 +42,10 @@ export declare enum TextBaseline {
|
|
42
42
|
export interface SkTextStyle {
|
43
43
|
backgroundColor?: SkColor;
|
44
44
|
color?: SkColor;
|
45
|
-
decoration?:
|
45
|
+
decoration?: TextDecoration;
|
46
46
|
decorationColor?: SkColor;
|
47
47
|
decorationThickness?: number;
|
48
|
-
decorationStyle?:
|
48
|
+
decorationStyle?: TextDecorationStyle;
|
49
49
|
fontFamilies?: string[];
|
50
50
|
fontFeatures?: SkTextFontFeatures[];
|
51
51
|
fontSize?: number;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["TextDecoration","exports","TextDecorationStyle","TextBaseline"],"sources":["TextStyle.ts"],"sourcesContent":["import type { SkColor } from \"../Color\";\nimport type { FontSlant, FontWeight, FontWidth } from \"../Font\";\nimport type { SkPoint } from \"../Point\";\n\nexport enum TextDecoration {\n NoDecoration = 0x0,\n Underline = 0x1,\n Overline = 0x2,\n LineThrough = 0x4,\n}\n\nexport enum TextDecorationStyle {\n Solid = 0,\n Double,\n Dotted,\n Dashed,\n Wavy,\n}\n\nexport interface SkTextShadow {\n color?: SkColor;\n /**\n * 2d array for x and y offset. Defaults to [0, 0]\n */\n offset?: SkPoint;\n blurRadius?: number;\n}\n\nexport interface SkTextFontFeatures {\n name: string;\n value: number;\n}\n\nexport interface SkTextFontStyle {\n weight?: FontWeight;\n width?: FontWidth;\n slant?: FontSlant;\n}\n\nexport interface SkTextFontVariations {\n axis: string;\n value: number;\n}\n\nexport enum TextBaseline {\n Alphabetic = 0,\n Ideographic,\n}\n\nexport interface SkTextStyle {\n backgroundColor?: SkColor;\n color?: SkColor;\n decoration?:
|
1
|
+
{"version":3,"names":["TextDecoration","exports","TextDecorationStyle","TextBaseline"],"sources":["TextStyle.ts"],"sourcesContent":["import type { SkColor } from \"../Color\";\nimport type { FontSlant, FontWeight, FontWidth } from \"../Font\";\nimport type { SkPoint } from \"../Point\";\n\nexport enum TextDecoration {\n NoDecoration = 0x0,\n Underline = 0x1,\n Overline = 0x2,\n LineThrough = 0x4,\n}\n\nexport enum TextDecorationStyle {\n Solid = 0,\n Double,\n Dotted,\n Dashed,\n Wavy,\n}\n\nexport interface SkTextShadow {\n color?: SkColor;\n /**\n * 2d array for x and y offset. Defaults to [0, 0]\n */\n offset?: SkPoint;\n blurRadius?: number;\n}\n\nexport interface SkTextFontFeatures {\n name: string;\n value: number;\n}\n\nexport interface SkTextFontStyle {\n weight?: FontWeight;\n width?: FontWidth;\n slant?: FontSlant;\n}\n\nexport interface SkTextFontVariations {\n axis: string;\n value: number;\n}\n\nexport enum TextBaseline {\n Alphabetic = 0,\n Ideographic,\n}\n\nexport interface SkTextStyle {\n backgroundColor?: SkColor;\n color?: SkColor;\n decoration?: TextDecoration;\n decorationColor?: SkColor;\n decorationThickness?: number;\n decorationStyle?: TextDecorationStyle;\n fontFamilies?: string[];\n fontFeatures?: SkTextFontFeatures[];\n fontSize?: number;\n fontStyle?: SkTextFontStyle;\n fontVariations?: SkTextFontVariations[];\n foregroundColor?: SkColor;\n heightMultiplier?: number;\n halfLeading?: boolean;\n letterSpacing?: number;\n locale?: string;\n shadows?: SkTextShadow[];\n textBaseline?: TextBaseline;\n wordSpacing?: number;\n}\n"],"mappings":";;;;;;IAIYA,cAAc,GAAAC,OAAA,CAAAD,cAAA,0BAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA;AAAA,IAOdE,mBAAmB,GAAAD,OAAA,CAAAC,mBAAA,0BAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAA,OAAnBA,mBAAmB;AAAA;AAAA,IAiCnBC,YAAY,GAAAF,OAAA,CAAAE,YAAA,0BAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAA,OAAZA,YAAY;AAAA","ignoreList":[]}
|
@@ -17,7 +17,7 @@ import type { SkVertices, VertexMode } from "./Vertices/Vertices";
|
|
17
17
|
import type { DataFactory } from "./Data";
|
18
18
|
import type { SVGFactory } from "./SVG";
|
19
19
|
import type { TextBlobFactory } from "./TextBlob";
|
20
|
-
import type { SurfaceFactory } from "./Surface";
|
20
|
+
import type { SkSurface, SurfaceFactory } from "./Surface";
|
21
21
|
import type { SkRSXform } from "./RSXform";
|
22
22
|
import type { SkPath } from "./Path/Path";
|
23
23
|
import type { SkContourMeasureIter } from "./ContourMeasure";
|
@@ -28,6 +28,10 @@ import type { AnimatedImageFactory } from "./AnimatedImage";
|
|
28
28
|
import type { ParagraphBuilderFactory } from "./Paragraph/ParagraphBuilder";
|
29
29
|
import type { Video } from "./Video";
|
30
30
|
import type { NativeBufferFactory } from "./NativeBuffer";
|
31
|
+
export interface SkiaContext {
|
32
|
+
getSurface(): SkSurface;
|
33
|
+
present(): void;
|
34
|
+
}
|
31
35
|
/**
|
32
36
|
* Declares the interface for the native Skia API
|
33
37
|
*/
|
@@ -74,5 +78,6 @@ export interface Skia {
|
|
74
78
|
Surface: SurfaceFactory;
|
75
79
|
ParagraphBuilder: ParagraphBuilderFactory;
|
76
80
|
Video: (url: string) => Promise<Video> | Video;
|
81
|
+
Context(surface: bigint, width: number, height: number): SkiaContext;
|
77
82
|
NativeBuffer: NativeBufferFactory;
|
78
83
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":[],"sources":["Skia.ts"],"sourcesContent":["import type { ImageFilterFactory } from \"./ImageFilter\";\nimport type { PathFactory } from \"./Path\";\nimport type { ColorFilterFactory } from \"./ColorFilter\";\nimport type { SkFont, FontMgrFactory } from \"./Font\";\nimport type { SkTypeface, TypefaceFactory } from \"./Typeface\";\nimport type { ImageFactory } from \"./Image\";\nimport type { MaskFilterFactory } from \"./MaskFilter\";\nimport type { SkPaint } from \"./Paint\";\nimport type { SkHostRect, SkRect } from \"./Rect\";\nimport type { SkRRect } from \"./RRect\";\nimport type {\n RuntimeEffectFactory,\n SkRuntimeEffect,\n SkRuntimeShaderBuilder,\n} from \"./RuntimeEffect\";\nimport type { ShaderFactory } from \"./Shader\";\nimport type { SkMatrix } from \"./Matrix\";\nimport type { PathEffectFactory } from \"./PathEffect\";\nimport type { SkPoint } from \"./Point\";\nimport type { SkVertices, VertexMode } from \"./Vertices/Vertices\";\nimport type { DataFactory } from \"./Data\";\nimport type { SVGFactory } from \"./SVG\";\nimport type { TextBlobFactory } from \"./TextBlob\";\nimport type { SurfaceFactory } from \"./Surface\";\nimport type { SkRSXform } from \"./RSXform\";\nimport type { SkPath } from \"./Path/Path\";\nimport type { SkContourMeasureIter } from \"./ContourMeasure\";\nimport type { PictureFactory, SkPictureRecorder } from \"./Picture\";\nimport type { Color, SkColor } from \"./Color\";\nimport type { TypefaceFontProviderFactory } from \"./Paragraph/TypefaceFontProviderFactory\";\nimport type { AnimatedImageFactory } from \"./AnimatedImage\";\nimport type { ParagraphBuilderFactory } from \"./Paragraph/ParagraphBuilder\";\nimport type { Video } from \"./Video\";\nimport type { NativeBufferFactory } from \"./NativeBuffer\";\n\n/**\n * Declares the interface for the native Skia API\n */\nexport interface Skia {\n Point: (x: number, y: number) => SkPoint;\n XYWHRect: (x: number, y: number, width: number, height: number) => SkHostRect;\n RuntimeShaderBuilder: (rt: SkRuntimeEffect) => SkRuntimeShaderBuilder;\n RRectXY: (rect: SkRect, rx: number, ry: number) => SkRRect;\n RSXform: (scos: number, ssin: number, tx: number, ty: number) => SkRSXform;\n RSXformFromRadians: (\n scale: number,\n radians: number,\n tx: number,\n ty: number,\n px: number,\n py: number\n ) => SkRSXform;\n Color: (color: Color) => SkColor;\n ContourMeasureIter: (\n path: SkPath,\n forceClosed: boolean,\n resScale: number\n ) => SkContourMeasureIter;\n Paint: () => SkPaint;\n PictureRecorder: () => SkPictureRecorder;\n Picture: PictureFactory;\n Path: PathFactory;\n Matrix: (matrix?: readonly number[]) => SkMatrix;\n ColorFilter: ColorFilterFactory;\n Font: (typeface?: SkTypeface, size?: number) => SkFont;\n Typeface: TypefaceFactory;\n TypefaceFontProvider: TypefaceFontProviderFactory;\n FontMgr: FontMgrFactory;\n MaskFilter: MaskFilterFactory;\n RuntimeEffect: RuntimeEffectFactory;\n ImageFilter: ImageFilterFactory;\n Shader: ShaderFactory;\n PathEffect: PathEffectFactory;\n /**\n * Returns an Vertices based on the given positions and optional parameters.\n * See SkVertices.h (especially the Builder) for more details.\n * @param mode\n * @param positions\n * @param textureCoordinates\n * @param colors - either a list of int colors or a flattened color array.\n * @param indices\n * @param isVolatile\n */\n MakeVertices(\n mode: VertexMode,\n positions: SkPoint[],\n textureCoordinates?: SkPoint[] | null,\n colors?: SkColor[],\n indices?: number[] | null,\n isVolatile?: boolean\n ): SkVertices;\n Data: DataFactory;\n Image: ImageFactory;\n AnimatedImage: AnimatedImageFactory;\n SVG: SVGFactory;\n TextBlob: TextBlobFactory;\n Surface: SurfaceFactory;\n ParagraphBuilder: ParagraphBuilderFactory;\n Video: (url: string) => Promise<Video> | Video;\n NativeBuffer: NativeBufferFactory;\n}\n"],"mappings":"","ignoreList":[]}
|
1
|
+
{"version":3,"names":[],"sources":["Skia.ts"],"sourcesContent":["import type { ImageFilterFactory } from \"./ImageFilter\";\nimport type { PathFactory } from \"./Path\";\nimport type { ColorFilterFactory } from \"./ColorFilter\";\nimport type { SkFont, FontMgrFactory } from \"./Font\";\nimport type { SkTypeface, TypefaceFactory } from \"./Typeface\";\nimport type { ImageFactory } from \"./Image\";\nimport type { MaskFilterFactory } from \"./MaskFilter\";\nimport type { SkPaint } from \"./Paint\";\nimport type { SkHostRect, SkRect } from \"./Rect\";\nimport type { SkRRect } from \"./RRect\";\nimport type {\n RuntimeEffectFactory,\n SkRuntimeEffect,\n SkRuntimeShaderBuilder,\n} from \"./RuntimeEffect\";\nimport type { ShaderFactory } from \"./Shader\";\nimport type { SkMatrix } from \"./Matrix\";\nimport type { PathEffectFactory } from \"./PathEffect\";\nimport type { SkPoint } from \"./Point\";\nimport type { SkVertices, VertexMode } from \"./Vertices/Vertices\";\nimport type { DataFactory } from \"./Data\";\nimport type { SVGFactory } from \"./SVG\";\nimport type { TextBlobFactory } from \"./TextBlob\";\nimport type { SkSurface, SurfaceFactory } from \"./Surface\";\nimport type { SkRSXform } from \"./RSXform\";\nimport type { SkPath } from \"./Path/Path\";\nimport type { SkContourMeasureIter } from \"./ContourMeasure\";\nimport type { PictureFactory, SkPictureRecorder } from \"./Picture\";\nimport type { Color, SkColor } from \"./Color\";\nimport type { TypefaceFontProviderFactory } from \"./Paragraph/TypefaceFontProviderFactory\";\nimport type { AnimatedImageFactory } from \"./AnimatedImage\";\nimport type { ParagraphBuilderFactory } from \"./Paragraph/ParagraphBuilder\";\nimport type { Video } from \"./Video\";\nimport type { NativeBufferFactory } from \"./NativeBuffer\";\n\nexport interface SkiaContext {\n getSurface(): SkSurface;\n present(): void;\n}\n\n/**\n * Declares the interface for the native Skia API\n */\nexport interface Skia {\n Point: (x: number, y: number) => SkPoint;\n XYWHRect: (x: number, y: number, width: number, height: number) => SkHostRect;\n RuntimeShaderBuilder: (rt: SkRuntimeEffect) => SkRuntimeShaderBuilder;\n RRectXY: (rect: SkRect, rx: number, ry: number) => SkRRect;\n RSXform: (scos: number, ssin: number, tx: number, ty: number) => SkRSXform;\n RSXformFromRadians: (\n scale: number,\n radians: number,\n tx: number,\n ty: number,\n px: number,\n py: number\n ) => SkRSXform;\n Color: (color: Color) => SkColor;\n ContourMeasureIter: (\n path: SkPath,\n forceClosed: boolean,\n resScale: number\n ) => SkContourMeasureIter;\n Paint: () => SkPaint;\n PictureRecorder: () => SkPictureRecorder;\n Picture: PictureFactory;\n Path: PathFactory;\n Matrix: (matrix?: readonly number[]) => SkMatrix;\n ColorFilter: ColorFilterFactory;\n Font: (typeface?: SkTypeface, size?: number) => SkFont;\n Typeface: TypefaceFactory;\n TypefaceFontProvider: TypefaceFontProviderFactory;\n FontMgr: FontMgrFactory;\n MaskFilter: MaskFilterFactory;\n RuntimeEffect: RuntimeEffectFactory;\n ImageFilter: ImageFilterFactory;\n Shader: ShaderFactory;\n PathEffect: PathEffectFactory;\n /**\n * Returns an Vertices based on the given positions and optional parameters.\n * See SkVertices.h (especially the Builder) for more details.\n * @param mode\n * @param positions\n * @param textureCoordinates\n * @param colors - either a list of int colors or a flattened color array.\n * @param indices\n * @param isVolatile\n */\n MakeVertices(\n mode: VertexMode,\n positions: SkPoint[],\n textureCoordinates?: SkPoint[] | null,\n colors?: SkColor[],\n indices?: number[] | null,\n isVolatile?: boolean\n ): SkVertices;\n Data: DataFactory;\n Image: ImageFactory;\n AnimatedImage: AnimatedImageFactory;\n SVG: SVGFactory;\n TextBlob: TextBlobFactory;\n Surface: SurfaceFactory;\n ParagraphBuilder: ParagraphBuilderFactory;\n Video: (url: string) => Promise<Video> | Video;\n Context(surface: bigint, width: number, height: number): SkiaContext;\n NativeBuffer: NativeBufferFactory;\n}\n"],"mappings":"","ignoreList":[]}
|
@@ -82,7 +82,10 @@ const JsiSkApi = CanvasKit => ({
|
|
82
82
|
FontMgr: new _JsiSkFontMgrFactory.JsiSkFontMgrFactory(CanvasKit),
|
83
83
|
ParagraphBuilder: new _JsiSkParagraphBuilderFactory.JsiSkParagraphBuilderFactory(CanvasKit),
|
84
84
|
NativeBuffer: new _JsiSkNativeBufferFactory.JsiSkNativeBufferFactory(CanvasKit),
|
85
|
-
Video: _JsiVideo.createVideo.bind(null, CanvasKit)
|
85
|
+
Video: _JsiVideo.createVideo.bind(null, CanvasKit),
|
86
|
+
Context: (_surface, _width, _height) => {
|
87
|
+
throw new Error("Not implemented on React Native Web");
|
88
|
+
}
|
86
89
|
});
|
87
90
|
exports.JsiSkApi = JsiSkApi;
|
88
91
|
//# sourceMappingURL=JsiSkia.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_JsiSkPoint","require","_JsiSkPaint","_JsiSkRect","_JsiSkColor","_JsiSkSurfaceFactory","_JsiSkRRect","_JsiSkRSXform","_JsiSkContourMeasureIter","_JsiSkPictureRecorder","_JsiSkPictureFactory","_JsiSkPathFactory","_JsiSkMatrix","_JsiSkColorFilterFactory","_JsiSkTypefaceFactory","_JsiSkMaskFilterFactory","_JsiSkRuntimeEffectFactory","_JsiSkImageFilterFactory","_JsiSkShaderFactory","_JsiSkPathEffectFactory","_JsiSkDataFactory","_JsiSkImageFactory","_JsiSkSVGFactory","_JsiSkTextBlobFactory","_JsiSkFont","_JsiSkVerticesFactory","_JsiSkPath","_JsiSkTypeface","_JsiSkTypefaceFontProviderFactory","_JsiSkFontMgrFactory","_JsiSkAnimatedImageFactory","_JsiSkParagraphBuilderFactory","_JsiSkNativeBufferFactory","_JsiVideo","JsiSkApi","CanvasKit","Point","x","y","JsiSkPoint","Float32Array","of","RuntimeShaderBuilder","_","Error","RRectXY","rect","rx","ry","JsiSkRRect","RSXform","scos","ssin","tx","ty","JsiSkRSXform","RSXformFromRadians","scale","r","px","py","s","Math","sin","c","cos","Color","ContourMeasureIter","path","forceClosed","resScale","JsiSkContourMeasureIter","JsiSkPath","fromValue","Paint","paint","JsiSkPaint","setAntiAlias","PictureRecorder","JsiSkPictureRecorder","Picture","JsiSkPictureFactory","Path","JsiSkPathFactory","Matrix","matrix","JsiSkMatrix","identity","ColorFilter","JsiSkColorFilterFactory","Font","typeface","size","JsiSkFont","undefined","JsiSkTypeface","Typeface","JsiSkTypefaceFactory","MaskFilter","JsiSkMaskFilterFactory","RuntimeEffect","JsiSkRuntimeEffectFactory","ImageFilter","JsiSkImageFilterFactory","Shader","JsiSkShaderFactory","PathEffect","JsiSkPathEffectFactory","MakeVertices","bind","Data","JsiSkDataFactory","Image","JsiSkImageFactory","AnimatedImage","JsiSkAnimatedImageFactory","SVG","JsiSkSVGFactory","TextBlob","JsiSkTextBlobFactory","XYWHRect","width","height","JsiSkRect","Surface","JsiSkSurfaceFactory","TypefaceFontProvider","JsiSkTypefaceFontProviderFactory","FontMgr","JsiSkFontMgrFactory","ParagraphBuilder","JsiSkParagraphBuilderFactory","NativeBuffer","JsiSkNativeBufferFactory","Video","createVideo","exports"],"sources":["JsiSkia.ts"],"sourcesContent":["import type { CanvasKit } from \"canvaskit-wasm\";\n\nimport type {\n SkContourMeasureIter,\n Skia,\n SkPath,\n SkRect,\n SkRuntimeEffect,\n SkRuntimeShaderBuilder,\n SkTypeface,\n} from \"../types\";\n\nimport { JsiSkPoint } from \"./JsiSkPoint\";\nimport { JsiSkPaint } from \"./JsiSkPaint\";\nimport { JsiSkRect } from \"./JsiSkRect\";\nimport { Color } from \"./JsiSkColor\";\nimport { JsiSkSurfaceFactory } from \"./JsiSkSurfaceFactory\";\nimport { JsiSkRRect } from \"./JsiSkRRect\";\nimport { JsiSkRSXform } from \"./JsiSkRSXform\";\nimport { JsiSkContourMeasureIter } from \"./JsiSkContourMeasureIter\";\nimport { JsiSkPictureRecorder } from \"./JsiSkPictureRecorder\";\nimport { JsiSkPictureFactory } from \"./JsiSkPictureFactory\";\nimport { JsiSkPathFactory } from \"./JsiSkPathFactory\";\nimport { JsiSkMatrix } from \"./JsiSkMatrix\";\nimport { JsiSkColorFilterFactory } from \"./JsiSkColorFilterFactory\";\nimport { JsiSkTypefaceFactory } from \"./JsiSkTypefaceFactory\";\nimport { JsiSkMaskFilterFactory } from \"./JsiSkMaskFilterFactory\";\nimport { JsiSkRuntimeEffectFactory } from \"./JsiSkRuntimeEffectFactory\";\nimport { JsiSkImageFilterFactory } from \"./JsiSkImageFilterFactory\";\nimport { JsiSkShaderFactory } from \"./JsiSkShaderFactory\";\nimport { JsiSkPathEffectFactory } from \"./JsiSkPathEffectFactory\";\nimport { JsiSkDataFactory } from \"./JsiSkDataFactory\";\nimport { JsiSkImageFactory } from \"./JsiSkImageFactory\";\nimport { JsiSkSVGFactory } from \"./JsiSkSVGFactory\";\nimport { JsiSkTextBlobFactory } from \"./JsiSkTextBlobFactory\";\nimport { JsiSkFont } from \"./JsiSkFont\";\nimport { MakeVertices } from \"./JsiSkVerticesFactory\";\nimport { JsiSkPath } from \"./JsiSkPath\";\nimport { JsiSkTypeface } from \"./JsiSkTypeface\";\nimport { JsiSkTypefaceFontProviderFactory } from \"./JsiSkTypefaceFontProviderFactory\";\nimport { JsiSkFontMgrFactory } from \"./JsiSkFontMgrFactory\";\nimport { JsiSkAnimatedImageFactory } from \"./JsiSkAnimatedImageFactory\";\nimport { JsiSkParagraphBuilderFactory } from \"./JsiSkParagraphBuilderFactory\";\nimport { JsiSkNativeBufferFactory } from \"./JsiSkNativeBufferFactory\";\nimport { createVideo } from \"./JsiVideo\";\n\nexport const JsiSkApi = (CanvasKit: CanvasKit): Skia => ({\n Point: (x: number, y: number) =>\n new JsiSkPoint(CanvasKit, Float32Array.of(x, y)),\n RuntimeShaderBuilder: (_: SkRuntimeEffect): SkRuntimeShaderBuilder => {\n throw new Error(\"Not implemented on React Native Web\");\n },\n RRectXY: (rect: SkRect, rx: number, ry: number) =>\n new JsiSkRRect(CanvasKit, rect, rx, ry),\n RSXform: (scos: number, ssin: number, tx: number, ty: number) =>\n new JsiSkRSXform(CanvasKit, Float32Array.of(scos, ssin, tx, ty)),\n RSXformFromRadians: (\n scale: number,\n r: number,\n tx: number,\n ty: number,\n px: number,\n py: number\n ) => {\n const s = Math.sin(r) * scale;\n const c = Math.cos(r) * scale;\n return new JsiSkRSXform(\n CanvasKit,\n Float32Array.of(c, s, tx - c * px + s * py, ty - s * px - c * py)\n );\n },\n Color,\n ContourMeasureIter: (\n path: SkPath,\n forceClosed: boolean,\n resScale: number\n ): SkContourMeasureIter =>\n new JsiSkContourMeasureIter(\n CanvasKit,\n new CanvasKit.ContourMeasureIter(\n JsiSkPath.fromValue(path),\n forceClosed,\n resScale\n )\n ),\n Paint: () => {\n const paint = new JsiSkPaint(CanvasKit, new CanvasKit.Paint());\n paint.setAntiAlias(true);\n return paint;\n },\n PictureRecorder: () =>\n new JsiSkPictureRecorder(CanvasKit, new CanvasKit.PictureRecorder()),\n Picture: new JsiSkPictureFactory(CanvasKit),\n Path: new JsiSkPathFactory(CanvasKit),\n Matrix: (matrix?: readonly number[]) =>\n new JsiSkMatrix(\n CanvasKit,\n matrix\n ? Float32Array.of(...matrix)\n : Float32Array.of(...CanvasKit.Matrix.identity())\n ),\n ColorFilter: new JsiSkColorFilterFactory(CanvasKit),\n Font: (typeface?: SkTypeface, size?: number) =>\n new JsiSkFont(\n CanvasKit,\n new CanvasKit.Font(\n typeface === undefined ? null : JsiSkTypeface.fromValue(typeface),\n size\n )\n ),\n Typeface: new JsiSkTypefaceFactory(CanvasKit),\n MaskFilter: new JsiSkMaskFilterFactory(CanvasKit),\n RuntimeEffect: new JsiSkRuntimeEffectFactory(CanvasKit),\n ImageFilter: new JsiSkImageFilterFactory(CanvasKit),\n Shader: new JsiSkShaderFactory(CanvasKit),\n PathEffect: new JsiSkPathEffectFactory(CanvasKit),\n MakeVertices: MakeVertices.bind(null, CanvasKit),\n Data: new JsiSkDataFactory(CanvasKit),\n Image: new JsiSkImageFactory(CanvasKit),\n AnimatedImage: new JsiSkAnimatedImageFactory(CanvasKit),\n SVG: new JsiSkSVGFactory(CanvasKit),\n TextBlob: new JsiSkTextBlobFactory(CanvasKit),\n XYWHRect: (x: number, y: number, width: number, height: number) => {\n return new JsiSkRect(CanvasKit, CanvasKit.XYWHRect(x, y, width, height));\n },\n Surface: new JsiSkSurfaceFactory(CanvasKit),\n TypefaceFontProvider: new JsiSkTypefaceFontProviderFactory(CanvasKit),\n FontMgr: new JsiSkFontMgrFactory(CanvasKit),\n ParagraphBuilder: new JsiSkParagraphBuilderFactory(CanvasKit),\n NativeBuffer: new JsiSkNativeBufferFactory(CanvasKit),\n Video: createVideo.bind(null, CanvasKit),\n});\n"],"mappings":";;;;;;AAYA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,oBAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,aAAA,GAAAN,OAAA;AACA,IAAAO,wBAAA,GAAAP,OAAA;AACA,IAAAQ,qBAAA,GAAAR,OAAA;AACA,IAAAS,oBAAA,GAAAT,OAAA;AACA,IAAAU,iBAAA,GAAAV,OAAA;AACA,IAAAW,YAAA,GAAAX,OAAA;AACA,IAAAY,wBAAA,GAAAZ,OAAA;AACA,IAAAa,qBAAA,GAAAb,OAAA;AACA,IAAAc,uBAAA,GAAAd,OAAA;AACA,IAAAe,0BAAA,GAAAf,OAAA;AACA,IAAAgB,wBAAA,GAAAhB,OAAA;AACA,IAAAiB,mBAAA,GAAAjB,OAAA;AACA,IAAAkB,uBAAA,GAAAlB,OAAA;AACA,IAAAmB,iBAAA,GAAAnB,OAAA;AACA,IAAAoB,kBAAA,GAAApB,OAAA;AACA,IAAAqB,gBAAA,GAAArB,OAAA;AACA,IAAAsB,qBAAA,GAAAtB,OAAA;AACA,IAAAuB,UAAA,GAAAvB,OAAA;AACA,IAAAwB,qBAAA,GAAAxB,OAAA;AACA,IAAAyB,UAAA,GAAAzB,OAAA;AACA,IAAA0B,cAAA,GAAA1B,OAAA;AACA,IAAA2B,iCAAA,GAAA3B,OAAA;AACA,IAAA4B,oBAAA,GAAA5B,OAAA;AACA,IAAA6B,0BAAA,GAAA7B,OAAA;AACA,IAAA8B,6BAAA,GAAA9B,OAAA;AACA,IAAA+B,yBAAA,GAAA/B,OAAA;AACA,IAAAgC,SAAA,GAAAhC,OAAA;AAEO,MAAMiC,QAAQ,GAAIC,SAAoB,KAAY;EACvDC,KAAK,EAAEA,CAACC,CAAS,EAAEC,CAAS,KAC1B,IAAIC,sBAAU,CAACJ,SAAS,EAAEK,YAAY,CAACC,EAAE,CAACJ,CAAC,EAAEC,CAAC,CAAC,CAAC;EAClDI,oBAAoB,EAAGC,CAAkB,IAA6B;IACpE,MAAM,IAAIC,KAAK,CAAC,qCAAqC,CAAC;EACxD,CAAC;EACDC,OAAO,EAAEA,CAACC,IAAY,EAAEC,EAAU,EAAEC,EAAU,KAC5C,IAAIC,sBAAU,CAACd,SAAS,EAAEW,IAAI,EAAEC,EAAE,EAAEC,EAAE,CAAC;EACzCE,OAAO,EAAEA,CAACC,IAAY,EAAEC,IAAY,EAAEC,EAAU,EAAEC,EAAU,KAC1D,IAAIC,0BAAY,CAACpB,SAAS,EAAEK,YAAY,CAACC,EAAE,CAACU,IAAI,EAAEC,IAAI,EAAEC,EAAE,EAAEC,EAAE,CAAC,CAAC;EAClEE,kBAAkB,EAAEA,CAClBC,KAAa,EACbC,CAAS,EACTL,EAAU,EACVC,EAAU,EACVK,EAAU,EACVC,EAAU,KACP;IACH,MAAMC,CAAC,GAAGC,IAAI,CAACC,GAAG,CAACL,CAAC,CAAC,GAAGD,KAAK;IAC7B,MAAMO,CAAC,GAAGF,IAAI,CAACG,GAAG,CAACP,CAAC,CAAC,GAAGD,KAAK;IAC7B,OAAO,IAAIF,0BAAY,CACrBpB,SAAS,EACTK,YAAY,CAACC,EAAE,CAACuB,CAAC,EAAEH,CAAC,EAAER,EAAE,GAAGW,CAAC,GAAGL,EAAE,GAAGE,CAAC,GAAGD,EAAE,EAAEN,EAAE,GAAGO,CAAC,GAAGF,EAAE,GAAGK,CAAC,GAAGJ,EAAE,CAClE,CAAC;EACH,CAAC;EACDM,KAAK,EAALA,iBAAK;EACLC,kBAAkB,EAAEA,CAClBC,IAAY,EACZC,WAAoB,EACpBC,QAAgB,KAEhB,IAAIC,gDAAuB,CACzBpC,SAAS,EACT,IAAIA,SAAS,CAACgC,kBAAkB,CAC9BK,oBAAS,CAACC,SAAS,CAACL,IAAI,CAAC,EACzBC,WAAW,EACXC,QACF,CACF,CAAC;EACHI,KAAK,EAAEA,CAAA,KAAM;IACX,MAAMC,KAAK,GAAG,IAAIC,sBAAU,CAACzC,SAAS,EAAE,IAAIA,SAAS,CAACuC,KAAK,CAAC,CAAC,CAAC;IAC9DC,KAAK,CAACE,YAAY,CAAC,IAAI,CAAC;IACxB,OAAOF,KAAK;EACd,CAAC;EACDG,eAAe,EAAEA,CAAA,KACf,IAAIC,0CAAoB,CAAC5C,SAAS,EAAE,IAAIA,SAAS,CAAC2C,eAAe,CAAC,CAAC,CAAC;EACtEE,OAAO,EAAE,IAAIC,wCAAmB,CAAC9C,SAAS,CAAC;EAC3C+C,IAAI,EAAE,IAAIC,kCAAgB,CAAChD,SAAS,CAAC;EACrCiD,MAAM,EAAGC,MAA0B,IACjC,IAAIC,wBAAW,CACbnD,SAAS,EACTkD,MAAM,GACF7C,YAAY,CAACC,EAAE,CAAC,GAAG4C,MAAM,CAAC,GAC1B7C,YAAY,CAACC,EAAE,CAAC,GAAGN,SAAS,CAACiD,MAAM,CAACG,QAAQ,CAAC,CAAC,CACpD,CAAC;EACHC,WAAW,EAAE,IAAIC,gDAAuB,CAACtD,SAAS,CAAC;EACnDuD,IAAI,EAAEA,CAACC,QAAqB,EAAEC,IAAa,KACzC,IAAIC,oBAAS,CACX1D,SAAS,EACT,IAAIA,SAAS,CAACuD,IAAI,CAChBC,QAAQ,KAAKG,SAAS,GAAG,IAAI,GAAGC,4BAAa,CAACtB,SAAS,CAACkB,QAAQ,CAAC,EACjEC,IACF,CACF,CAAC;EACHI,QAAQ,EAAE,IAAIC,0CAAoB,CAAC9D,SAAS,CAAC;EAC7C+D,UAAU,EAAE,IAAIC,8CAAsB,CAAChE,SAAS,CAAC;EACjDiE,aAAa,EAAE,IAAIC,oDAAyB,CAAClE,SAAS,CAAC;EACvDmE,WAAW,EAAE,IAAIC,gDAAuB,CAACpE,SAAS,CAAC;EACnDqE,MAAM,EAAE,IAAIC,sCAAkB,CAACtE,SAAS,CAAC;EACzCuE,UAAU,EAAE,IAAIC,8CAAsB,CAACxE,SAAS,CAAC;EACjDyE,YAAY,EAAEA,kCAAY,CAACC,IAAI,CAAC,IAAI,EAAE1E,SAAS,CAAC;EAChD2E,IAAI,EAAE,IAAIC,kCAAgB,CAAC5E,SAAS,CAAC;EACrC6E,KAAK,EAAE,IAAIC,oCAAiB,CAAC9E,SAAS,CAAC;EACvC+E,aAAa,EAAE,IAAIC,oDAAyB,CAAChF,SAAS,CAAC;EACvDiF,GAAG,EAAE,IAAIC,gCAAe,CAAClF,SAAS,CAAC;EACnCmF,QAAQ,EAAE,IAAIC,0CAAoB,CAACpF,SAAS,CAAC;EAC7CqF,QAAQ,EAAEA,CAACnF,CAAS,EAAEC,CAAS,EAAEmF,KAAa,EAAEC,MAAc,KAAK;IACjE,OAAO,IAAIC,oBAAS,CAACxF,SAAS,EAAEA,SAAS,CAACqF,QAAQ,CAACnF,CAAC,EAAEC,CAAC,EAAEmF,KAAK,EAAEC,MAAM,CAAC,CAAC;EAC1E,CAAC;EACDE,OAAO,EAAE,IAAIC,wCAAmB,CAAC1F,SAAS,CAAC;EAC3C2F,oBAAoB,EAAE,IAAIC,kEAAgC,CAAC5F,SAAS,CAAC;EACrE6F,OAAO,EAAE,IAAIC,wCAAmB,CAAC9F,SAAS,CAAC;EAC3C+F,gBAAgB,EAAE,IAAIC,0DAA4B,CAAChG,SAAS,CAAC;EAC7DiG,YAAY,EAAE,IAAIC,kDAAwB,CAAClG,SAAS,CAAC;EACrDmG,KAAK,EAAEC,qBAAW,CAAC1B,IAAI,CAAC,IAAI,EAAE1E,SAAS;AACzC,CAAC,CAAC;AAACqG,OAAA,CAAAtG,QAAA,GAAAA,QAAA","ignoreList":[]}
|
1
|
+
{"version":3,"names":["_JsiSkPoint","require","_JsiSkPaint","_JsiSkRect","_JsiSkColor","_JsiSkSurfaceFactory","_JsiSkRRect","_JsiSkRSXform","_JsiSkContourMeasureIter","_JsiSkPictureRecorder","_JsiSkPictureFactory","_JsiSkPathFactory","_JsiSkMatrix","_JsiSkColorFilterFactory","_JsiSkTypefaceFactory","_JsiSkMaskFilterFactory","_JsiSkRuntimeEffectFactory","_JsiSkImageFilterFactory","_JsiSkShaderFactory","_JsiSkPathEffectFactory","_JsiSkDataFactory","_JsiSkImageFactory","_JsiSkSVGFactory","_JsiSkTextBlobFactory","_JsiSkFont","_JsiSkVerticesFactory","_JsiSkPath","_JsiSkTypeface","_JsiSkTypefaceFontProviderFactory","_JsiSkFontMgrFactory","_JsiSkAnimatedImageFactory","_JsiSkParagraphBuilderFactory","_JsiSkNativeBufferFactory","_JsiVideo","JsiSkApi","CanvasKit","Point","x","y","JsiSkPoint","Float32Array","of","RuntimeShaderBuilder","_","Error","RRectXY","rect","rx","ry","JsiSkRRect","RSXform","scos","ssin","tx","ty","JsiSkRSXform","RSXformFromRadians","scale","r","px","py","s","Math","sin","c","cos","Color","ContourMeasureIter","path","forceClosed","resScale","JsiSkContourMeasureIter","JsiSkPath","fromValue","Paint","paint","JsiSkPaint","setAntiAlias","PictureRecorder","JsiSkPictureRecorder","Picture","JsiSkPictureFactory","Path","JsiSkPathFactory","Matrix","matrix","JsiSkMatrix","identity","ColorFilter","JsiSkColorFilterFactory","Font","typeface","size","JsiSkFont","undefined","JsiSkTypeface","Typeface","JsiSkTypefaceFactory","MaskFilter","JsiSkMaskFilterFactory","RuntimeEffect","JsiSkRuntimeEffectFactory","ImageFilter","JsiSkImageFilterFactory","Shader","JsiSkShaderFactory","PathEffect","JsiSkPathEffectFactory","MakeVertices","bind","Data","JsiSkDataFactory","Image","JsiSkImageFactory","AnimatedImage","JsiSkAnimatedImageFactory","SVG","JsiSkSVGFactory","TextBlob","JsiSkTextBlobFactory","XYWHRect","width","height","JsiSkRect","Surface","JsiSkSurfaceFactory","TypefaceFontProvider","JsiSkTypefaceFontProviderFactory","FontMgr","JsiSkFontMgrFactory","ParagraphBuilder","JsiSkParagraphBuilderFactory","NativeBuffer","JsiSkNativeBufferFactory","Video","createVideo","Context","_surface","_width","_height","exports"],"sources":["JsiSkia.ts"],"sourcesContent":["import type { CanvasKit } from \"canvaskit-wasm\";\n\nimport type {\n SkContourMeasureIter,\n Skia,\n SkPath,\n SkRect,\n SkRuntimeEffect,\n SkRuntimeShaderBuilder,\n SkTypeface,\n} from \"../types\";\n\nimport { JsiSkPoint } from \"./JsiSkPoint\";\nimport { JsiSkPaint } from \"./JsiSkPaint\";\nimport { JsiSkRect } from \"./JsiSkRect\";\nimport { Color } from \"./JsiSkColor\";\nimport { JsiSkSurfaceFactory } from \"./JsiSkSurfaceFactory\";\nimport { JsiSkRRect } from \"./JsiSkRRect\";\nimport { JsiSkRSXform } from \"./JsiSkRSXform\";\nimport { JsiSkContourMeasureIter } from \"./JsiSkContourMeasureIter\";\nimport { JsiSkPictureRecorder } from \"./JsiSkPictureRecorder\";\nimport { JsiSkPictureFactory } from \"./JsiSkPictureFactory\";\nimport { JsiSkPathFactory } from \"./JsiSkPathFactory\";\nimport { JsiSkMatrix } from \"./JsiSkMatrix\";\nimport { JsiSkColorFilterFactory } from \"./JsiSkColorFilterFactory\";\nimport { JsiSkTypefaceFactory } from \"./JsiSkTypefaceFactory\";\nimport { JsiSkMaskFilterFactory } from \"./JsiSkMaskFilterFactory\";\nimport { JsiSkRuntimeEffectFactory } from \"./JsiSkRuntimeEffectFactory\";\nimport { JsiSkImageFilterFactory } from \"./JsiSkImageFilterFactory\";\nimport { JsiSkShaderFactory } from \"./JsiSkShaderFactory\";\nimport { JsiSkPathEffectFactory } from \"./JsiSkPathEffectFactory\";\nimport { JsiSkDataFactory } from \"./JsiSkDataFactory\";\nimport { JsiSkImageFactory } from \"./JsiSkImageFactory\";\nimport { JsiSkSVGFactory } from \"./JsiSkSVGFactory\";\nimport { JsiSkTextBlobFactory } from \"./JsiSkTextBlobFactory\";\nimport { JsiSkFont } from \"./JsiSkFont\";\nimport { MakeVertices } from \"./JsiSkVerticesFactory\";\nimport { JsiSkPath } from \"./JsiSkPath\";\nimport { JsiSkTypeface } from \"./JsiSkTypeface\";\nimport { JsiSkTypefaceFontProviderFactory } from \"./JsiSkTypefaceFontProviderFactory\";\nimport { JsiSkFontMgrFactory } from \"./JsiSkFontMgrFactory\";\nimport { JsiSkAnimatedImageFactory } from \"./JsiSkAnimatedImageFactory\";\nimport { JsiSkParagraphBuilderFactory } from \"./JsiSkParagraphBuilderFactory\";\nimport { JsiSkNativeBufferFactory } from \"./JsiSkNativeBufferFactory\";\nimport { createVideo } from \"./JsiVideo\";\n\nexport const JsiSkApi = (CanvasKit: CanvasKit): Skia => ({\n Point: (x: number, y: number) =>\n new JsiSkPoint(CanvasKit, Float32Array.of(x, y)),\n RuntimeShaderBuilder: (_: SkRuntimeEffect): SkRuntimeShaderBuilder => {\n throw new Error(\"Not implemented on React Native Web\");\n },\n RRectXY: (rect: SkRect, rx: number, ry: number) =>\n new JsiSkRRect(CanvasKit, rect, rx, ry),\n RSXform: (scos: number, ssin: number, tx: number, ty: number) =>\n new JsiSkRSXform(CanvasKit, Float32Array.of(scos, ssin, tx, ty)),\n RSXformFromRadians: (\n scale: number,\n r: number,\n tx: number,\n ty: number,\n px: number,\n py: number\n ) => {\n const s = Math.sin(r) * scale;\n const c = Math.cos(r) * scale;\n return new JsiSkRSXform(\n CanvasKit,\n Float32Array.of(c, s, tx - c * px + s * py, ty - s * px - c * py)\n );\n },\n Color,\n ContourMeasureIter: (\n path: SkPath,\n forceClosed: boolean,\n resScale: number\n ): SkContourMeasureIter =>\n new JsiSkContourMeasureIter(\n CanvasKit,\n new CanvasKit.ContourMeasureIter(\n JsiSkPath.fromValue(path),\n forceClosed,\n resScale\n )\n ),\n Paint: () => {\n const paint = new JsiSkPaint(CanvasKit, new CanvasKit.Paint());\n paint.setAntiAlias(true);\n return paint;\n },\n PictureRecorder: () =>\n new JsiSkPictureRecorder(CanvasKit, new CanvasKit.PictureRecorder()),\n Picture: new JsiSkPictureFactory(CanvasKit),\n Path: new JsiSkPathFactory(CanvasKit),\n Matrix: (matrix?: readonly number[]) =>\n new JsiSkMatrix(\n CanvasKit,\n matrix\n ? Float32Array.of(...matrix)\n : Float32Array.of(...CanvasKit.Matrix.identity())\n ),\n ColorFilter: new JsiSkColorFilterFactory(CanvasKit),\n Font: (typeface?: SkTypeface, size?: number) =>\n new JsiSkFont(\n CanvasKit,\n new CanvasKit.Font(\n typeface === undefined ? null : JsiSkTypeface.fromValue(typeface),\n size\n )\n ),\n Typeface: new JsiSkTypefaceFactory(CanvasKit),\n MaskFilter: new JsiSkMaskFilterFactory(CanvasKit),\n RuntimeEffect: new JsiSkRuntimeEffectFactory(CanvasKit),\n ImageFilter: new JsiSkImageFilterFactory(CanvasKit),\n Shader: new JsiSkShaderFactory(CanvasKit),\n PathEffect: new JsiSkPathEffectFactory(CanvasKit),\n MakeVertices: MakeVertices.bind(null, CanvasKit),\n Data: new JsiSkDataFactory(CanvasKit),\n Image: new JsiSkImageFactory(CanvasKit),\n AnimatedImage: new JsiSkAnimatedImageFactory(CanvasKit),\n SVG: new JsiSkSVGFactory(CanvasKit),\n TextBlob: new JsiSkTextBlobFactory(CanvasKit),\n XYWHRect: (x: number, y: number, width: number, height: number) => {\n return new JsiSkRect(CanvasKit, CanvasKit.XYWHRect(x, y, width, height));\n },\n Surface: new JsiSkSurfaceFactory(CanvasKit),\n TypefaceFontProvider: new JsiSkTypefaceFontProviderFactory(CanvasKit),\n FontMgr: new JsiSkFontMgrFactory(CanvasKit),\n ParagraphBuilder: new JsiSkParagraphBuilderFactory(CanvasKit),\n NativeBuffer: new JsiSkNativeBufferFactory(CanvasKit),\n Video: createVideo.bind(null, CanvasKit),\n Context: (_surface: bigint, _width: number, _height: number) => {\n throw new Error(\"Not implemented on React Native Web\");\n }\n});\n"],"mappings":"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","ignoreList":[]}
|
@@ -1,12 +1,19 @@
|
|
1
1
|
import type { ComponentProps, ComponentType } from "react";
|
2
2
|
import React, { Suspense } from "react";
|
3
3
|
import { LoadSkiaWeb } from "./LoadSkiaWeb";
|
4
|
-
|
4
|
+
type NonOptionalKeys<T> = {
|
5
|
+
[k in keyof T]-?: undefined extends T[k] ? never : k;
|
6
|
+
}[keyof T];
|
7
|
+
type WithSkiaProps<TProps> = {
|
5
8
|
fallback?: ComponentProps<typeof Suspense>["fallback"];
|
6
9
|
getComponent: () => Promise<{
|
7
|
-
default: ComponentType
|
10
|
+
default: ComponentType<TProps>;
|
8
11
|
}>;
|
9
12
|
opts?: Parameters<typeof LoadSkiaWeb>[0];
|
10
|
-
}
|
11
|
-
|
13
|
+
} & (NonOptionalKeys<TProps> extends never ? {
|
14
|
+
componentProps?: TProps;
|
15
|
+
} : {
|
16
|
+
componentProps: TProps;
|
17
|
+
});
|
18
|
+
export declare const WithSkiaWeb: <TProps extends object>({ getComponent, fallback, opts, componentProps, }: WithSkiaProps<TProps>) => React.JSX.Element;
|
12
19
|
export {};
|
@@ -12,7 +12,8 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
|
|
12
12
|
const WithSkiaWeb = ({
|
13
13
|
getComponent,
|
14
14
|
fallback,
|
15
|
-
opts
|
15
|
+
opts,
|
16
|
+
componentProps
|
16
17
|
}) => {
|
17
18
|
const Inner = (0, _react.useMemo)(
|
18
19
|
// TODO: investigate
|
@@ -27,7 +28,7 @@ const WithSkiaWeb = ({
|
|
27
28
|
}), [getComponent, opts]);
|
28
29
|
return /*#__PURE__*/_react.default.createElement(_react.Suspense, {
|
29
30
|
fallback: fallback !== null && fallback !== void 0 ? fallback : null
|
30
|
-
}, /*#__PURE__*/_react.default.createElement(Inner,
|
31
|
+
}, /*#__PURE__*/_react.default.createElement(Inner, componentProps));
|
31
32
|
};
|
32
33
|
exports.WithSkiaWeb = WithSkiaWeb;
|
33
34
|
//# sourceMappingURL=WithSkiaWeb.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_Platform","_LoadSkiaWeb","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","WithSkiaWeb","getComponent","fallback","opts","Inner","useMemo","lazy","Platform","OS","LoadSkiaWeb","console","warn","createElement","Suspense","exports"],"sources":["WithSkiaWeb.tsx"],"sourcesContent":["import type { ComponentProps, ComponentType } from \"react\";\nimport React, { useMemo, lazy, Suspense } from \"react\";\n\nimport { Platform } from \"../Platform\";\n\nimport { LoadSkiaWeb } from \"./LoadSkiaWeb\";\n\
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_Platform","_LoadSkiaWeb","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","WithSkiaWeb","getComponent","fallback","opts","componentProps","Inner","useMemo","lazy","Platform","OS","LoadSkiaWeb","console","warn","createElement","Suspense","exports"],"sources":["WithSkiaWeb.tsx"],"sourcesContent":["import type { ComponentProps, ComponentType } from \"react\";\nimport React, { useMemo, lazy, Suspense } from \"react\";\n\nimport { Platform } from \"../Platform\";\n\nimport { LoadSkiaWeb } from \"./LoadSkiaWeb\";\n\ntype NonOptionalKeys<T> = {\n [k in keyof T]-?: undefined extends T[k] ? never : k;\n}[keyof T];\n\ntype WithSkiaProps<TProps> = {\n fallback?: ComponentProps<typeof Suspense>[\"fallback\"];\n getComponent: () => Promise<{ default: ComponentType<TProps> }>;\n opts?: Parameters<typeof LoadSkiaWeb>[0];\n} & (NonOptionalKeys<TProps> extends never\n ? {\n componentProps?: TProps;\n }\n : {\n componentProps: TProps;\n });\n\nexport const WithSkiaWeb = <TProps extends object>({\n getComponent,\n fallback,\n opts,\n componentProps,\n}: WithSkiaProps<TProps>) => {\n const Inner = useMemo(\n // TODO: investigate\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (): any =>\n lazy(async () => {\n if (Platform.OS === \"web\") {\n await LoadSkiaWeb(opts);\n } else {\n console.warn(\n \"<WithSkiaWeb /> is only necessary on web. Consider not using on native.\"\n );\n }\n return getComponent();\n }),\n [getComponent, opts]\n );\n return (\n <Suspense fallback={fallback ?? null}>\n <Inner {...componentProps} />\n </Suspense>\n );\n};\n"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAD,OAAA;AAEA,IAAAE,YAAA,GAAAF,OAAA;AAA4C,SAAAG,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAL,wBAAAK,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAkBrC,MAAMW,WAAW,GAAGA,CAAwB;EACjDC,YAAY;EACZC,QAAQ;EACRC,IAAI;EACJC;AACqB,CAAC,KAAK;EAC3B,MAAMC,KAAK,GAAG,IAAAC,cAAO;EACnB;EACA;EACA,mBACE,IAAAC,WAAI,EAAC,YAAY;IACf,IAAIC,kBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE;MACzB,MAAM,IAAAC,wBAAW,EAACP,IAAI,CAAC;IACzB,CAAC,MAAM;MACLQ,OAAO,CAACC,IAAI,CACV,yEACF,CAAC;IACH;IACA,OAAOX,YAAY,CAAC,CAAC;EACvB,CAAC,CAAC,EACJ,CAACA,YAAY,EAAEE,IAAI,CACrB,CAAC;EACD,oBACE5B,MAAA,CAAAW,OAAA,CAAA2B,aAAA,CAACtC,MAAA,CAAAuC,QAAQ;IAACZ,QAAQ,EAAEA,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GAAI;EAAK,gBACnC3B,MAAA,CAAAW,OAAA,CAAA2B,aAAA,CAACR,KAAK,EAAKD,cAAiB,CACpB,CAAC;AAEf,CAAC;AAACW,OAAA,CAAAf,WAAA,GAAAA,WAAA","ignoreList":[]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["DefaultEventPriority","bindReanimatedProps","extractReanimatedProps","unbindReanimatedNode","createNode","shallowEq","DEBUG","debug","args","console","log","appendNode","parent","child","addChild","removeNode","unmounted","removeChild","insertBefore","before","insertChildBefore","skHostConfig","now","Date","supportsMutation","isPrimaryRenderer","supportsPersistence","supportsHydration","scheduleTimeout","setTimeout","cancelTimeout","clearTimeout","noTimeout","appendChildToContainer","container","root","appendChild","getRootHostContext","_rootContainerInstance","getChildHostContext","_parentHostContext","_type","shouldSetTextContent","_props","createTextInstance","_text","_hostContext","_internalInstanceHandle","Error","createInstance","type","pristineProps","props","reanimatedProps","node","appendInitialChild","parentInstance","finalizeInitialChildren","commitMount","prepareForCommit","_containerInfo","resetAfterCommit","redraw","getPublicInstance","prepareUpdate","_instance","oldProps","newProps","rootContainerInstance","propsAreEqual","commitUpdate","instance","updatePayload","prevProps","nextProps","_internalHandle","setProps","commitTextUpdate","_textInstance","_oldText","_newText","clearContainer","children","forEach","preparePortalMount","removeChildFromContainer","insertInContainerBefore","getCurrentEventPriority","beforeActiveInstanceBlur","afterActiveInstanceBlur","detachDeletedInstance"],"sources":["HostConfig.ts"],"sourcesContent":["/*global NodeJS*/\nimport type { HostConfig } from \"react-reconciler\";\nimport { DefaultEventPriority } from \"react-reconciler/constants\";\n\nimport type { NodeType, Node } from \"../dom/types\";\nimport {\n bindReanimatedProps,\n extractReanimatedProps,\n unbindReanimatedNode,\n} from \"../external/reanimated/renderHelpers\";\n\nimport type { Container } from \"./Container\";\nimport { createNode } from \"./HostComponents\";\nimport { shallowEq } from \"./typeddash\";\n\nconst DEBUG = false;\nexport const debug = (...args: Parameters<typeof console.log>) => {\n if (DEBUG) {\n console.log(...args);\n }\n};\n\ntype Instance = Node<unknown>;\n\ntype Props = object;\ntype TextInstance = Node<unknown>;\ntype SuspenseInstance = Instance;\ntype HydratableInstance = Instance;\ntype PublicInstance = Instance;\ntype HostContext = null;\ntype UpdatePayload = Container;\ntype ChildSet = unknown;\ntype TimeoutHandle = NodeJS.Timeout;\ntype NoTimeout = -1;\n\ntype SkiaHostConfig = HostConfig<\n NodeType,\n Props,\n Container,\n Instance,\n TextInstance,\n SuspenseInstance,\n HydratableInstance,\n PublicInstance,\n HostContext,\n UpdatePayload,\n ChildSet,\n TimeoutHandle,\n NoTimeout\n>;\n\nconst appendNode = (parent: Node<unknown>, child: Node<unknown>) => {\n parent.addChild(child);\n};\n\nconst removeNode = (parent: Node<unknown>, child: Node<unknown>, unmounted = false) => {\n // If the drawing is unmounted we don't want to update it.\n // We can just stop the reanimated mappers\n unbindReanimatedNode(child);\n if (!unmounted) {\n parent.removeChild(child);\n }\n};\n\nconst insertBefore = (\n parent: Node<unknown>,\n child: Node<unknown>,\n before: Node<unknown>\n) => {\n parent.insertChildBefore(child, before);\n};\n\nexport const skHostConfig: SkiaHostConfig = {\n /**\n * This function is used by the reconciler in order to calculate current time for prioritising work.\n */\n now: Date.now,\n supportsMutation: true,\n isPrimaryRenderer: false,\n supportsPersistence: false,\n supportsHydration: false,\n //supportsMicrotask: true,\n\n scheduleTimeout: setTimeout,\n cancelTimeout: clearTimeout,\n noTimeout: -1,\n\n appendChildToContainer(container, child) {\n debug(\"appendChildToContainer\");\n appendNode(container.root, child);\n },\n\n appendChild(parent, child) {\n debug(\"appendChild\", parent, child);\n appendNode(parent, child);\n },\n\n getRootHostContext: (_rootContainerInstance: Container) => {\n debug(\"getRootHostContext\");\n return null;\n },\n\n getChildHostContext(_parentHostContext, _type, _rootContainerInstance) {\n debug(\"getChildHostContext\");\n return null;\n },\n\n shouldSetTextContent(_type, _props) {\n return false;\n },\n\n createTextInstance(\n _text,\n _rootContainerInstance,\n _hostContext,\n _internalInstanceHandle\n ) {\n debug(\"createTextInstance\");\n // return SpanNode({}, text) as SkNode;\n throw new Error(\"Text nodes are not supported yet\");\n },\n\n createInstance(\n type,\n pristineProps,\n container,\n _hostContext,\n _internalInstanceHandle\n ) {\n debug(\"createInstance\", type);\n const [props, reanimatedProps] = extractReanimatedProps(pristineProps);\n const node = createNode(container, type, props);\n bindReanimatedProps(container, node, reanimatedProps);\n return node;\n },\n\n appendInitialChild(parentInstance, child) {\n debug(\"appendInitialChild\");\n appendNode(parentInstance, child);\n },\n\n finalizeInitialChildren(\n parentInstance,\n _type,\n _props,\n _rootContainerInstance,\n _hostContext\n ) {\n debug(\"finalizeInitialChildren\", parentInstance);\n return false;\n },\n\n commitMount() {\n // if finalizeInitialChildren = true\n debug(\"commitMount\");\n },\n\n prepareForCommit(_containerInfo) {\n debug(\"prepareForCommit\");\n return null;\n },\n\n resetAfterCommit(container) {\n debug(\"resetAfterCommit\");\n container.redraw();\n },\n\n getPublicInstance(node: Instance) {\n debug(\"getPublicInstance\");\n return node;\n },\n\n prepareUpdate: (\n _instance,\n type,\n oldProps,\n newProps,\n rootContainerInstance,\n _hostContext\n ) => {\n debug(\"prepareUpdate\");\n const propsAreEqual = shallowEq(oldProps, newProps);\n if (propsAreEqual) {\n return null;\n }\n debug(\"update \", type);\n return rootContainerInstance;\n },\n\n commitUpdate(\n instance,\n updatePayload,\n type,\n prevProps,\n nextProps,\n _internalHandle\n ) {\n debug(\"commitUpdate: \", type);\n if (shallowEq(prevProps, nextProps)) {\n return;\n }\n const [props, reanimatedProps] = extractReanimatedProps(nextProps);\n instance.setProps(props);\n bindReanimatedProps(updatePayload, instance, reanimatedProps);\n },\n\n commitTextUpdate: (\n _textInstance: TextInstance,\n _oldText: string,\n _newText: string\n ) => {\n // textInstance.instance = newText;\n },\n\n clearContainer: (container) => {\n debug(\"clearContainer\");\n container.root.children().forEach((child) => {\n container.root.removeChild(child);\n });\n },\n\n preparePortalMount: () => {\n debug(\"preparePortalMount\");\n },\n\n removeChild: (parent, child) => {\n removeNode(parent, child);\n },\n\n removeChildFromContainer: (container, child) => {\n removeNode(container.root, child, container.unmounted);\n },\n\n insertInContainerBefore: (container, child, before) => {\n insertBefore(container.root, child, before);\n },\n\n insertBefore: (parent, child, before) => {\n insertBefore(parent, child, before);\n },\n // see https://github.com/pmndrs/react-three-fiber/pull/2360#discussion_r916356874\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n getCurrentEventPriority: () => DefaultEventPriority,\n beforeActiveInstanceBlur: () => {},\n afterActiveInstanceBlur: () => {},\n detachDeletedInstance: () => {},\n};\n"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["DefaultEventPriority","bindReanimatedProps","extractReanimatedProps","unbindReanimatedNode","createNode","shallowEq","DEBUG","debug","args","console","log","appendNode","parent","child","addChild","removeNode","unmounted","removeChild","insertBefore","before","insertChildBefore","skHostConfig","now","Date","supportsMutation","isPrimaryRenderer","supportsPersistence","supportsHydration","scheduleTimeout","setTimeout","cancelTimeout","clearTimeout","noTimeout","appendChildToContainer","container","root","appendChild","getRootHostContext","_rootContainerInstance","getChildHostContext","_parentHostContext","_type","shouldSetTextContent","_props","createTextInstance","_text","_hostContext","_internalInstanceHandle","Error","createInstance","type","pristineProps","props","reanimatedProps","node","appendInitialChild","parentInstance","finalizeInitialChildren","commitMount","prepareForCommit","_containerInfo","resetAfterCommit","redraw","getPublicInstance","prepareUpdate","_instance","oldProps","newProps","rootContainerInstance","propsAreEqual","commitUpdate","instance","updatePayload","prevProps","nextProps","_internalHandle","setProps","commitTextUpdate","_textInstance","_oldText","_newText","clearContainer","children","forEach","preparePortalMount","removeChildFromContainer","insertInContainerBefore","getCurrentEventPriority","beforeActiveInstanceBlur","afterActiveInstanceBlur","detachDeletedInstance"],"sources":["HostConfig.ts"],"sourcesContent":["/*global NodeJS*/\nimport type { HostConfig } from \"react-reconciler\";\nimport { DefaultEventPriority } from \"react-reconciler/constants\";\n\nimport type { NodeType, Node } from \"../dom/types\";\nimport {\n bindReanimatedProps,\n extractReanimatedProps,\n unbindReanimatedNode,\n} from \"../external/reanimated/renderHelpers\";\n\nimport type { Container } from \"./Container\";\nimport { createNode } from \"./HostComponents\";\nimport { shallowEq } from \"./typeddash\";\n\nconst DEBUG = false;\nexport const debug = (...args: Parameters<typeof console.log>) => {\n if (DEBUG) {\n console.log(...args);\n }\n};\n\ntype Instance = Node<unknown>;\n\ntype Props = object;\ntype TextInstance = Node<unknown>;\ntype SuspenseInstance = Instance;\ntype HydratableInstance = Instance;\ntype PublicInstance = Instance;\ntype HostContext = null;\ntype UpdatePayload = Container;\ntype ChildSet = unknown;\ntype TimeoutHandle = NodeJS.Timeout;\ntype NoTimeout = -1;\n\ntype SkiaHostConfig = HostConfig<\n NodeType,\n Props,\n Container,\n Instance,\n TextInstance,\n SuspenseInstance,\n HydratableInstance,\n PublicInstance,\n HostContext,\n UpdatePayload,\n ChildSet,\n TimeoutHandle,\n NoTimeout\n>;\n\nconst appendNode = (parent: Node<unknown>, child: Node<unknown>) => {\n parent.addChild(child);\n};\n\nconst removeNode = (\n parent: Node<unknown>,\n child: Node<unknown>,\n unmounted = false\n) => {\n // If the drawing is unmounted we don't want to update it.\n // We can just stop the reanimated mappers\n unbindReanimatedNode(child);\n if (!unmounted) {\n parent.removeChild(child);\n }\n};\n\nconst insertBefore = (\n parent: Node<unknown>,\n child: Node<unknown>,\n before: Node<unknown>\n) => {\n parent.insertChildBefore(child, before);\n};\n\nexport const skHostConfig: SkiaHostConfig = {\n /**\n * This function is used by the reconciler in order to calculate current time for prioritising work.\n */\n now: Date.now,\n supportsMutation: true,\n isPrimaryRenderer: false,\n supportsPersistence: false,\n supportsHydration: false,\n //supportsMicrotask: true,\n\n scheduleTimeout: setTimeout,\n cancelTimeout: clearTimeout,\n noTimeout: -1,\n\n appendChildToContainer(container, child) {\n debug(\"appendChildToContainer\");\n appendNode(container.root, child);\n },\n\n appendChild(parent, child) {\n debug(\"appendChild\", parent, child);\n appendNode(parent, child);\n },\n\n getRootHostContext: (_rootContainerInstance: Container) => {\n debug(\"getRootHostContext\");\n return null;\n },\n\n getChildHostContext(_parentHostContext, _type, _rootContainerInstance) {\n debug(\"getChildHostContext\");\n return null;\n },\n\n shouldSetTextContent(_type, _props) {\n return false;\n },\n\n createTextInstance(\n _text,\n _rootContainerInstance,\n _hostContext,\n _internalInstanceHandle\n ) {\n debug(\"createTextInstance\");\n // return SpanNode({}, text) as SkNode;\n throw new Error(\"Text nodes are not supported yet\");\n },\n\n createInstance(\n type,\n pristineProps,\n container,\n _hostContext,\n _internalInstanceHandle\n ) {\n debug(\"createInstance\", type);\n const [props, reanimatedProps] = extractReanimatedProps(pristineProps);\n const node = createNode(container, type, props);\n bindReanimatedProps(container, node, reanimatedProps);\n return node;\n },\n\n appendInitialChild(parentInstance, child) {\n debug(\"appendInitialChild\");\n appendNode(parentInstance, child);\n },\n\n finalizeInitialChildren(\n parentInstance,\n _type,\n _props,\n _rootContainerInstance,\n _hostContext\n ) {\n debug(\"finalizeInitialChildren\", parentInstance);\n return false;\n },\n\n commitMount() {\n // if finalizeInitialChildren = true\n debug(\"commitMount\");\n },\n\n prepareForCommit(_containerInfo) {\n debug(\"prepareForCommit\");\n return null;\n },\n\n resetAfterCommit(container) {\n debug(\"resetAfterCommit\");\n container.redraw();\n },\n\n getPublicInstance(node: Instance) {\n debug(\"getPublicInstance\");\n return node;\n },\n\n prepareUpdate: (\n _instance,\n type,\n oldProps,\n newProps,\n rootContainerInstance,\n _hostContext\n ) => {\n debug(\"prepareUpdate\");\n const propsAreEqual = shallowEq(oldProps, newProps);\n if (propsAreEqual) {\n return null;\n }\n debug(\"update \", type);\n return rootContainerInstance;\n },\n\n commitUpdate(\n instance,\n updatePayload,\n type,\n prevProps,\n nextProps,\n _internalHandle\n ) {\n debug(\"commitUpdate: \", type);\n if (shallowEq(prevProps, nextProps)) {\n return;\n }\n const [props, reanimatedProps] = extractReanimatedProps(nextProps);\n instance.setProps(props);\n bindReanimatedProps(updatePayload, instance, reanimatedProps);\n },\n\n commitTextUpdate: (\n _textInstance: TextInstance,\n _oldText: string,\n _newText: string\n ) => {\n // textInstance.instance = newText;\n },\n\n clearContainer: (container) => {\n debug(\"clearContainer\");\n container.root.children().forEach((child) => {\n container.root.removeChild(child);\n });\n },\n\n preparePortalMount: () => {\n debug(\"preparePortalMount\");\n },\n\n removeChild: (parent, child) => {\n removeNode(parent, child);\n },\n\n removeChildFromContainer: (container, child) => {\n removeNode(container.root, child, container.unmounted);\n },\n\n insertInContainerBefore: (container, child, before) => {\n insertBefore(container.root, child, before);\n },\n\n insertBefore: (parent, child, before) => {\n insertBefore(parent, child, before);\n },\n // see https://github.com/pmndrs/react-three-fiber/pull/2360#discussion_r916356874\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-expect-error\n getCurrentEventPriority: () => DefaultEventPriority,\n beforeActiveInstanceBlur: () => {},\n afterActiveInstanceBlur: () => {},\n detachDeletedInstance: () => {},\n};\n"],"mappings":"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","ignoreList":[]}
|
@@ -42,10 +42,10 @@ export declare enum TextBaseline {
|
|
42
42
|
export interface SkTextStyle {
|
43
43
|
backgroundColor?: SkColor;
|
44
44
|
color?: SkColor;
|
45
|
-
decoration?:
|
45
|
+
decoration?: TextDecoration;
|
46
46
|
decorationColor?: SkColor;
|
47
47
|
decorationThickness?: number;
|
48
|
-
decorationStyle?:
|
48
|
+
decorationStyle?: TextDecorationStyle;
|
49
49
|
fontFamilies?: string[];
|
50
50
|
fontFeatures?: SkTextFontFeatures[];
|
51
51
|
fontSize?: number;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["TextDecoration","TextDecorationStyle","TextBaseline"],"sources":["TextStyle.ts"],"sourcesContent":["import type { SkColor } from \"../Color\";\nimport type { FontSlant, FontWeight, FontWidth } from \"../Font\";\nimport type { SkPoint } from \"../Point\";\n\nexport enum TextDecoration {\n NoDecoration = 0x0,\n Underline = 0x1,\n Overline = 0x2,\n LineThrough = 0x4,\n}\n\nexport enum TextDecorationStyle {\n Solid = 0,\n Double,\n Dotted,\n Dashed,\n Wavy,\n}\n\nexport interface SkTextShadow {\n color?: SkColor;\n /**\n * 2d array for x and y offset. Defaults to [0, 0]\n */\n offset?: SkPoint;\n blurRadius?: number;\n}\n\nexport interface SkTextFontFeatures {\n name: string;\n value: number;\n}\n\nexport interface SkTextFontStyle {\n weight?: FontWeight;\n width?: FontWidth;\n slant?: FontSlant;\n}\n\nexport interface SkTextFontVariations {\n axis: string;\n value: number;\n}\n\nexport enum TextBaseline {\n Alphabetic = 0,\n Ideographic,\n}\n\nexport interface SkTextStyle {\n backgroundColor?: SkColor;\n color?: SkColor;\n decoration?:
|
1
|
+
{"version":3,"names":["TextDecoration","TextDecorationStyle","TextBaseline"],"sources":["TextStyle.ts"],"sourcesContent":["import type { SkColor } from \"../Color\";\nimport type { FontSlant, FontWeight, FontWidth } from \"../Font\";\nimport type { SkPoint } from \"../Point\";\n\nexport enum TextDecoration {\n NoDecoration = 0x0,\n Underline = 0x1,\n Overline = 0x2,\n LineThrough = 0x4,\n}\n\nexport enum TextDecorationStyle {\n Solid = 0,\n Double,\n Dotted,\n Dashed,\n Wavy,\n}\n\nexport interface SkTextShadow {\n color?: SkColor;\n /**\n * 2d array for x and y offset. Defaults to [0, 0]\n */\n offset?: SkPoint;\n blurRadius?: number;\n}\n\nexport interface SkTextFontFeatures {\n name: string;\n value: number;\n}\n\nexport interface SkTextFontStyle {\n weight?: FontWeight;\n width?: FontWidth;\n slant?: FontSlant;\n}\n\nexport interface SkTextFontVariations {\n axis: string;\n value: number;\n}\n\nexport enum TextBaseline {\n Alphabetic = 0,\n Ideographic,\n}\n\nexport interface SkTextStyle {\n backgroundColor?: SkColor;\n color?: SkColor;\n decoration?: TextDecoration;\n decorationColor?: SkColor;\n decorationThickness?: number;\n decorationStyle?: TextDecorationStyle;\n fontFamilies?: string[];\n fontFeatures?: SkTextFontFeatures[];\n fontSize?: number;\n fontStyle?: SkTextFontStyle;\n fontVariations?: SkTextFontVariations[];\n foregroundColor?: SkColor;\n heightMultiplier?: number;\n halfLeading?: boolean;\n letterSpacing?: number;\n locale?: string;\n shadows?: SkTextShadow[];\n textBaseline?: TextBaseline;\n wordSpacing?: number;\n}\n"],"mappings":"AAIA,WAAYA,cAAc,0BAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA;AAO1B,WAAYC,mBAAmB,0BAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAA,OAAnBA,mBAAmB;AAAA;AAiC/B,WAAYC,YAAY,0BAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAZA,YAAY,CAAZA,YAAY;EAAA,OAAZA,YAAY;AAAA","ignoreList":[]}
|
@@ -17,7 +17,7 @@ import type { SkVertices, VertexMode } from "./Vertices/Vertices";
|
|
17
17
|
import type { DataFactory } from "./Data";
|
18
18
|
import type { SVGFactory } from "./SVG";
|
19
19
|
import type { TextBlobFactory } from "./TextBlob";
|
20
|
-
import type { SurfaceFactory } from "./Surface";
|
20
|
+
import type { SkSurface, SurfaceFactory } from "./Surface";
|
21
21
|
import type { SkRSXform } from "./RSXform";
|
22
22
|
import type { SkPath } from "./Path/Path";
|
23
23
|
import type { SkContourMeasureIter } from "./ContourMeasure";
|
@@ -28,6 +28,10 @@ import type { AnimatedImageFactory } from "./AnimatedImage";
|
|
28
28
|
import type { ParagraphBuilderFactory } from "./Paragraph/ParagraphBuilder";
|
29
29
|
import type { Video } from "./Video";
|
30
30
|
import type { NativeBufferFactory } from "./NativeBuffer";
|
31
|
+
export interface SkiaContext {
|
32
|
+
getSurface(): SkSurface;
|
33
|
+
present(): void;
|
34
|
+
}
|
31
35
|
/**
|
32
36
|
* Declares the interface for the native Skia API
|
33
37
|
*/
|
@@ -74,5 +78,6 @@ export interface Skia {
|
|
74
78
|
Surface: SurfaceFactory;
|
75
79
|
ParagraphBuilder: ParagraphBuilderFactory;
|
76
80
|
Video: (url: string) => Promise<Video> | Video;
|
81
|
+
Context(surface: bigint, width: number, height: number): SkiaContext;
|
77
82
|
NativeBuffer: NativeBufferFactory;
|
78
83
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":[],"sources":["Skia.ts"],"sourcesContent":["import type { ImageFilterFactory } from \"./ImageFilter\";\nimport type { PathFactory } from \"./Path\";\nimport type { ColorFilterFactory } from \"./ColorFilter\";\nimport type { SkFont, FontMgrFactory } from \"./Font\";\nimport type { SkTypeface, TypefaceFactory } from \"./Typeface\";\nimport type { ImageFactory } from \"./Image\";\nimport type { MaskFilterFactory } from \"./MaskFilter\";\nimport type { SkPaint } from \"./Paint\";\nimport type { SkHostRect, SkRect } from \"./Rect\";\nimport type { SkRRect } from \"./RRect\";\nimport type {\n RuntimeEffectFactory,\n SkRuntimeEffect,\n SkRuntimeShaderBuilder,\n} from \"./RuntimeEffect\";\nimport type { ShaderFactory } from \"./Shader\";\nimport type { SkMatrix } from \"./Matrix\";\nimport type { PathEffectFactory } from \"./PathEffect\";\nimport type { SkPoint } from \"./Point\";\nimport type { SkVertices, VertexMode } from \"./Vertices/Vertices\";\nimport type { DataFactory } from \"./Data\";\nimport type { SVGFactory } from \"./SVG\";\nimport type { TextBlobFactory } from \"./TextBlob\";\nimport type { SurfaceFactory } from \"./Surface\";\nimport type { SkRSXform } from \"./RSXform\";\nimport type { SkPath } from \"./Path/Path\";\nimport type { SkContourMeasureIter } from \"./ContourMeasure\";\nimport type { PictureFactory, SkPictureRecorder } from \"./Picture\";\nimport type { Color, SkColor } from \"./Color\";\nimport type { TypefaceFontProviderFactory } from \"./Paragraph/TypefaceFontProviderFactory\";\nimport type { AnimatedImageFactory } from \"./AnimatedImage\";\nimport type { ParagraphBuilderFactory } from \"./Paragraph/ParagraphBuilder\";\nimport type { Video } from \"./Video\";\nimport type { NativeBufferFactory } from \"./NativeBuffer\";\n\n/**\n * Declares the interface for the native Skia API\n */\nexport interface Skia {\n Point: (x: number, y: number) => SkPoint;\n XYWHRect: (x: number, y: number, width: number, height: number) => SkHostRect;\n RuntimeShaderBuilder: (rt: SkRuntimeEffect) => SkRuntimeShaderBuilder;\n RRectXY: (rect: SkRect, rx: number, ry: number) => SkRRect;\n RSXform: (scos: number, ssin: number, tx: number, ty: number) => SkRSXform;\n RSXformFromRadians: (\n scale: number,\n radians: number,\n tx: number,\n ty: number,\n px: number,\n py: number\n ) => SkRSXform;\n Color: (color: Color) => SkColor;\n ContourMeasureIter: (\n path: SkPath,\n forceClosed: boolean,\n resScale: number\n ) => SkContourMeasureIter;\n Paint: () => SkPaint;\n PictureRecorder: () => SkPictureRecorder;\n Picture: PictureFactory;\n Path: PathFactory;\n Matrix: (matrix?: readonly number[]) => SkMatrix;\n ColorFilter: ColorFilterFactory;\n Font: (typeface?: SkTypeface, size?: number) => SkFont;\n Typeface: TypefaceFactory;\n TypefaceFontProvider: TypefaceFontProviderFactory;\n FontMgr: FontMgrFactory;\n MaskFilter: MaskFilterFactory;\n RuntimeEffect: RuntimeEffectFactory;\n ImageFilter: ImageFilterFactory;\n Shader: ShaderFactory;\n PathEffect: PathEffectFactory;\n /**\n * Returns an Vertices based on the given positions and optional parameters.\n * See SkVertices.h (especially the Builder) for more details.\n * @param mode\n * @param positions\n * @param textureCoordinates\n * @param colors - either a list of int colors or a flattened color array.\n * @param indices\n * @param isVolatile\n */\n MakeVertices(\n mode: VertexMode,\n positions: SkPoint[],\n textureCoordinates?: SkPoint[] | null,\n colors?: SkColor[],\n indices?: number[] | null,\n isVolatile?: boolean\n ): SkVertices;\n Data: DataFactory;\n Image: ImageFactory;\n AnimatedImage: AnimatedImageFactory;\n SVG: SVGFactory;\n TextBlob: TextBlobFactory;\n Surface: SurfaceFactory;\n ParagraphBuilder: ParagraphBuilderFactory;\n Video: (url: string) => Promise<Video> | Video;\n NativeBuffer: NativeBufferFactory;\n}\n"],"mappings":"","ignoreList":[]}
|
1
|
+
{"version":3,"names":[],"sources":["Skia.ts"],"sourcesContent":["import type { ImageFilterFactory } from \"./ImageFilter\";\nimport type { PathFactory } from \"./Path\";\nimport type { ColorFilterFactory } from \"./ColorFilter\";\nimport type { SkFont, FontMgrFactory } from \"./Font\";\nimport type { SkTypeface, TypefaceFactory } from \"./Typeface\";\nimport type { ImageFactory } from \"./Image\";\nimport type { MaskFilterFactory } from \"./MaskFilter\";\nimport type { SkPaint } from \"./Paint\";\nimport type { SkHostRect, SkRect } from \"./Rect\";\nimport type { SkRRect } from \"./RRect\";\nimport type {\n RuntimeEffectFactory,\n SkRuntimeEffect,\n SkRuntimeShaderBuilder,\n} from \"./RuntimeEffect\";\nimport type { ShaderFactory } from \"./Shader\";\nimport type { SkMatrix } from \"./Matrix\";\nimport type { PathEffectFactory } from \"./PathEffect\";\nimport type { SkPoint } from \"./Point\";\nimport type { SkVertices, VertexMode } from \"./Vertices/Vertices\";\nimport type { DataFactory } from \"./Data\";\nimport type { SVGFactory } from \"./SVG\";\nimport type { TextBlobFactory } from \"./TextBlob\";\nimport type { SkSurface, SurfaceFactory } from \"./Surface\";\nimport type { SkRSXform } from \"./RSXform\";\nimport type { SkPath } from \"./Path/Path\";\nimport type { SkContourMeasureIter } from \"./ContourMeasure\";\nimport type { PictureFactory, SkPictureRecorder } from \"./Picture\";\nimport type { Color, SkColor } from \"./Color\";\nimport type { TypefaceFontProviderFactory } from \"./Paragraph/TypefaceFontProviderFactory\";\nimport type { AnimatedImageFactory } from \"./AnimatedImage\";\nimport type { ParagraphBuilderFactory } from \"./Paragraph/ParagraphBuilder\";\nimport type { Video } from \"./Video\";\nimport type { NativeBufferFactory } from \"./NativeBuffer\";\n\nexport interface SkiaContext {\n getSurface(): SkSurface;\n present(): void;\n}\n\n/**\n * Declares the interface for the native Skia API\n */\nexport interface Skia {\n Point: (x: number, y: number) => SkPoint;\n XYWHRect: (x: number, y: number, width: number, height: number) => SkHostRect;\n RuntimeShaderBuilder: (rt: SkRuntimeEffect) => SkRuntimeShaderBuilder;\n RRectXY: (rect: SkRect, rx: number, ry: number) => SkRRect;\n RSXform: (scos: number, ssin: number, tx: number, ty: number) => SkRSXform;\n RSXformFromRadians: (\n scale: number,\n radians: number,\n tx: number,\n ty: number,\n px: number,\n py: number\n ) => SkRSXform;\n Color: (color: Color) => SkColor;\n ContourMeasureIter: (\n path: SkPath,\n forceClosed: boolean,\n resScale: number\n ) => SkContourMeasureIter;\n Paint: () => SkPaint;\n PictureRecorder: () => SkPictureRecorder;\n Picture: PictureFactory;\n Path: PathFactory;\n Matrix: (matrix?: readonly number[]) => SkMatrix;\n ColorFilter: ColorFilterFactory;\n Font: (typeface?: SkTypeface, size?: number) => SkFont;\n Typeface: TypefaceFactory;\n TypefaceFontProvider: TypefaceFontProviderFactory;\n FontMgr: FontMgrFactory;\n MaskFilter: MaskFilterFactory;\n RuntimeEffect: RuntimeEffectFactory;\n ImageFilter: ImageFilterFactory;\n Shader: ShaderFactory;\n PathEffect: PathEffectFactory;\n /**\n * Returns an Vertices based on the given positions and optional parameters.\n * See SkVertices.h (especially the Builder) for more details.\n * @param mode\n * @param positions\n * @param textureCoordinates\n * @param colors - either a list of int colors or a flattened color array.\n * @param indices\n * @param isVolatile\n */\n MakeVertices(\n mode: VertexMode,\n positions: SkPoint[],\n textureCoordinates?: SkPoint[] | null,\n colors?: SkColor[],\n indices?: number[] | null,\n isVolatile?: boolean\n ): SkVertices;\n Data: DataFactory;\n Image: ImageFactory;\n AnimatedImage: AnimatedImageFactory;\n SVG: SVGFactory;\n TextBlob: TextBlobFactory;\n Surface: SurfaceFactory;\n ParagraphBuilder: ParagraphBuilderFactory;\n Video: (url: string) => Promise<Video> | Video;\n Context(surface: bigint, width: number, height: number): SkiaContext;\n NativeBuffer: NativeBufferFactory;\n}\n"],"mappings":"","ignoreList":[]}
|