@shopify/react-native-skia 1.3.12 → 1.3.13
Sign up to get free protection for your applications and to get access to all the features.
- package/lib/commonjs/__tests__/globalSetup.d.ts +9 -0
- package/lib/commonjs/__tests__/globalTeardown.d.ts +2 -0
- package/lib/commonjs/__tests__/setup.d.ts +18 -0
- package/lib/commonjs/dom/__tests__/Compose.spec.d.ts +1 -0
- package/lib/commonjs/dom/__tests__/Demos.spec.d.ts +1 -0
- package/lib/commonjs/dom/__tests__/DrawingContext.spec.d.ts +1 -0
- package/lib/commonjs/dom/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/commonjs/dom/__tests__/Group.spec.d.ts +1 -0
- package/lib/commonjs/dom/__tests__/Paint.spec.d.ts +1 -0
- package/lib/commonjs/dom/__tests__/RenderNodes.spec.d.ts +1 -0
- package/lib/commonjs/dom/__tests__/Shaders.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Data.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/FitBox.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Glyphs.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Image.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Paths.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Picture.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Simple.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/SkiaDOM.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Surfaces.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Text.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/TouchHandler.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/Transform.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/documentation/Group.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/documentation/getting-started/HelloWorld.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/documentation/paint/Overview.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/documentation/shapes/Box.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/AnimatedImages.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Atlas.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/BackdropFilters.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Blending.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Blur.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Box.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/ColorFilters.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Composition/ColorFilterComposition.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/CoonPatch.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/DataEncoding.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Drawings.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/FontMgr.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Gradient.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Group.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Image.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/ImageEncoding.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/ImageFilters.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Mask.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Matrix4.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/NativeBuffer.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Offscreen.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Opacity.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Paint.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/ParagraphPaint.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Paragraphs.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/PathEffects.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Paths.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Picture.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Point.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Rect.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/RuntimeShader.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/SDF.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/SVG.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Shader.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Snapshot.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Surfaces.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Text.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/TextPath.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Transforms.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Vertices.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/Video.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/e2e/setup/Paragraph.d.ts +19 -0
- package/lib/commonjs/renderer/__tests__/e2e/setup/SVG.d.ts +12 -0
- package/lib/commonjs/renderer/__tests__/e2e/setup/SkiaObject.d.ts +11 -0
- package/lib/commonjs/renderer/__tests__/e2e/setup/index.d.ts +3 -0
- package/lib/commonjs/renderer/__tests__/examples/BlendModes.spec.d.ts +1 -0
- package/lib/commonjs/renderer/__tests__/setup.d.ts +66 -0
- package/lib/commonjs/skia/__tests__/ColorFilter.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Data.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Enums.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Geometry.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/ImageFilter.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Mock.spec.d.ts +0 -0
- package/lib/commonjs/skia/__tests__/Paint.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Path.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/RuntimeEffect.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Shader.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Text.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Transform.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/Vertices.spec.d.ts +1 -0
- package/lib/commonjs/skia/__tests__/setup.d.ts +19 -0
- package/lib/module/__tests__/globalSetup.d.ts +9 -0
- package/lib/module/__tests__/globalTeardown.d.ts +2 -0
- package/lib/module/__tests__/setup.d.ts +18 -0
- package/lib/module/dom/__tests__/Compose.spec.d.ts +1 -0
- package/lib/module/dom/__tests__/Demos.spec.d.ts +1 -0
- package/lib/module/dom/__tests__/DrawingContext.spec.d.ts +1 -0
- package/lib/module/dom/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/module/dom/__tests__/Group.spec.d.ts +1 -0
- package/lib/module/dom/__tests__/Paint.spec.d.ts +1 -0
- package/lib/module/dom/__tests__/RenderNodes.spec.d.ts +1 -0
- package/lib/module/dom/__tests__/Shaders.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Data.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/FitBox.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Glyphs.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Image.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Paths.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Picture.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Simple.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/SkiaDOM.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Surfaces.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Text.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/TouchHandler.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/Transform.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/documentation/Group.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/documentation/getting-started/HelloWorld.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/documentation/paint/Overview.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/documentation/shapes/Box.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/AnimatedImages.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Atlas.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/BackdropFilters.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Blending.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Blur.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Box.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/ColorFilters.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Composition/ColorFilterComposition.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/CoonPatch.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/DataEncoding.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Drawings.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/FontMgr.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Gradient.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Group.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Image.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/ImageEncoding.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/ImageFilters.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Mask.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Matrix4.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/NativeBuffer.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Offscreen.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Opacity.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Paint.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/ParagraphPaint.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Paragraphs.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/PathEffects.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Paths.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Picture.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Point.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Rect.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/RuntimeShader.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/SDF.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/SVG.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Shader.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Snapshot.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Surfaces.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Text.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/TextPath.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Transforms.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Vertices.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/Video.d.ts +1 -0
- package/lib/module/renderer/__tests__/e2e/setup/Paragraph.d.ts +19 -0
- package/lib/module/renderer/__tests__/e2e/setup/SVG.d.ts +12 -0
- package/lib/module/renderer/__tests__/e2e/setup/SkiaObject.d.ts +11 -0
- package/lib/module/renderer/__tests__/e2e/setup/index.d.ts +3 -0
- package/lib/module/renderer/__tests__/examples/BlendModes.spec.d.ts +1 -0
- package/lib/module/renderer/__tests__/setup.d.ts +66 -0
- package/lib/module/skia/__tests__/ColorFilter.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Data.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Enums.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Geometry.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/ImageFilter.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Mock.spec.d.ts +0 -0
- package/lib/module/skia/__tests__/Paint.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Path.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/RuntimeEffect.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Shader.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Text.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Transform.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/Vertices.spec.d.ts +1 -0
- package/lib/module/skia/__tests__/setup.d.ts +19 -0
- package/lib/typescript/src/__tests__/globalSetup.d.ts +9 -0
- package/lib/typescript/src/__tests__/globalTeardown.d.ts +2 -0
- package/lib/typescript/src/__tests__/setup.d.ts +18 -0
- package/lib/typescript/src/dom/__tests__/Compose.spec.d.ts +1 -0
- package/lib/typescript/src/dom/__tests__/Demos.spec.d.ts +1 -0
- package/lib/typescript/src/dom/__tests__/DrawingContext.spec.d.ts +1 -0
- package/lib/typescript/src/dom/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/typescript/src/dom/__tests__/Group.spec.d.ts +1 -0
- package/lib/typescript/src/dom/__tests__/Paint.spec.d.ts +1 -0
- package/lib/typescript/src/dom/__tests__/RenderNodes.spec.d.ts +1 -0
- package/lib/typescript/src/dom/__tests__/Shaders.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Data.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/FitBox.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Glyphs.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Image.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Paths.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Picture.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Simple.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/SkiaDOM.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Surfaces.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Text.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/TouchHandler.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/Transform.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/documentation/Group.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/documentation/getting-started/HelloWorld.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/documentation/paint/Overview.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/documentation/shapes/Box.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/AnimatedImages.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Atlas.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/BackdropFilters.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Blending.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Blur.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Box.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/ColorFilters.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Composition/ColorFilterComposition.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/CoonPatch.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/DataEncoding.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Drawings.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/FontMgr.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Gradient.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Group.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Image.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/ImageEncoding.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/ImageFilters.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Mask.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Matrix4.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/NativeBuffer.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Offscreen.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Opacity.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Paint.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/ParagraphPaint.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Paragraphs.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/PathEffects.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Paths.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Picture.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Point.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Rect.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/RuntimeShader.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/SDF.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/SVG.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Shader.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Snapshot.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Surfaces.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Text.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/TextPath.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Transforms.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Vertices.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/Video.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/e2e/setup/Paragraph.d.ts +19 -0
- package/lib/typescript/src/renderer/__tests__/e2e/setup/SVG.d.ts +12 -0
- package/lib/typescript/src/renderer/__tests__/e2e/setup/SkiaObject.d.ts +11 -0
- package/lib/typescript/src/renderer/__tests__/e2e/setup/index.d.ts +3 -0
- package/lib/typescript/src/renderer/__tests__/examples/BlendModes.spec.d.ts +1 -0
- package/lib/typescript/src/renderer/__tests__/setup.d.ts +66 -0
- package/lib/typescript/src/skia/__tests__/ColorFilter.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Data.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Drawings.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Enums.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Geometry.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/ImageFilter.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Mock.spec.d.ts +0 -0
- package/lib/typescript/src/skia/__tests__/Paint.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Path.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/RuntimeEffect.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Shader.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Text.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Transform.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/Vertices.spec.d.ts +1 -0
- package/lib/typescript/src/skia/__tests__/setup.d.ts +19 -0
- package/libs/ios/libskia.xcframework/Info.plist +46 -0
- package/libs/ios/libskia.xcframework/ios-arm64_arm64e/libskia.a +0 -0
- package/libs/ios/libskia.xcframework/ios-arm64_arm64e_x86_64-simulator/libskia.a +0 -0
- package/libs/ios/libskottie.xcframework/Info.plist +46 -0
- package/libs/ios/libskottie.xcframework/ios-arm64_arm64e/libskottie.a +0 -0
- package/libs/ios/libskottie.xcframework/ios-arm64_arm64e_x86_64-simulator/libskottie.a +0 -0
- package/libs/ios/libskparagraph.xcframework/Info.plist +46 -0
- package/libs/ios/libskparagraph.xcframework/ios-arm64_arm64e/libskparagraph.a +0 -0
- package/libs/ios/libskparagraph.xcframework/ios-arm64_arm64e_x86_64-simulator/libskparagraph.a +0 -0
- package/libs/ios/libsksg.xcframework/Info.plist +46 -0
- package/libs/ios/libsksg.xcframework/ios-arm64_arm64e/libsksg.a +0 -0
- package/libs/ios/libsksg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsksg.a +0 -0
- package/libs/ios/libskshaper.xcframework/Info.plist +46 -0
- package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e/libskshaper.a +0 -0
- package/libs/ios/libskshaper.xcframework/ios-arm64_arm64e_x86_64-simulator/libskshaper.a +0 -0
- package/libs/ios/libskunicode.xcframework/Info.plist +46 -0
- 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/libs/ios/libsvg.xcframework/Info.plist +46 -0
- package/libs/ios/libsvg.xcframework/ios-arm64_arm64e/libsvg.a +0 -0
- package/libs/ios/libsvg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsvg.a +0 -0
- package/package.json +11 -14
- package/src/__tests__/globalSetup.ts +51 -0
- package/src/__tests__/globalTeardown.ts +11 -0
- package/src/__tests__/setup.ts +129 -0
- package/src/__tests__/snapshots/animated-images/bird.png +0 -0
- package/src/__tests__/snapshots/animations/green.png +0 -0
- package/src/__tests__/snapshots/animations/lightblue.png +0 -0
- package/src/__tests__/snapshots/animations/quarter-lightblue.png +0 -0
- package/src/__tests__/snapshots/animations/red.png +0 -0
- package/src/__tests__/snapshots/atlas/identity.png +0 -0
- package/src/__tests__/snapshots/atlas/rsxform.png +0 -0
- package/src/__tests__/snapshots/atlas/rsxform1.png +0 -0
- package/src/__tests__/snapshots/atlas/simple.png +0 -0
- package/src/__tests__/snapshots/atlas/simple2.png +0 -0
- package/src/__tests__/snapshots/box/box-shadow.png +0 -0
- package/src/__tests__/snapshots/box/box-shadow2.png +0 -0
- package/src/__tests__/snapshots/box/box-shadow3.png +0 -0
- package/src/__tests__/snapshots/box/box-stroke.png +0 -0
- package/src/__tests__/snapshots/color-filter/color-filter-composition.png +0 -0
- package/src/__tests__/snapshots/color-filter/matrix1.png +0 -0
- package/src/__tests__/snapshots/color-filter/matrix3.png +0 -0
- package/src/__tests__/snapshots/color-filter/zurich-sepia.png +0 -0
- package/src/__tests__/snapshots/coons-patch/patch-with-opacity.png +0 -0
- package/src/__tests__/snapshots/coons-patch/simple.png +0 -0
- package/src/__tests__/snapshots/cyan-buffer.png +0 -0
- package/src/__tests__/snapshots/data/oslo.png +0 -0
- package/src/__tests__/snapshots/data/red.png +0 -0
- package/src/__tests__/snapshots/data/zurich.png +0 -0
- package/src/__tests__/snapshots/demos/apple-breathe.png +0 -0
- package/src/__tests__/snapshots/demos/apple-breathe1.png +0 -0
- package/src/__tests__/snapshots/demos/breathe.png +0 -0
- package/src/__tests__/snapshots/demos/breathe2.png +0 -0
- package/src/__tests__/snapshots/demos/product.png +0 -0
- package/src/__tests__/snapshots/demos/product2.png +0 -0
- package/src/__tests__/snapshots/demos/skia-neon.png +0 -0
- package/src/__tests__/snapshots/demos/skia-neon1.png +0 -0
- package/src/__tests__/snapshots/drawings/arc.png +0 -0
- package/src/__tests__/snapshots/drawings/blend-mode-multiply.png +0 -0
- package/src/__tests__/snapshots/drawings/blend-modes.png +0 -0
- package/src/__tests__/snapshots/drawings/blur-node.png +0 -0
- package/src/__tests__/snapshots/drawings/blur.png +0 -0
- package/src/__tests__/snapshots/drawings/blur2.png +0 -0
- package/src/__tests__/snapshots/drawings/custom-drawing.png +0 -0
- package/src/__tests__/snapshots/drawings/cyan-circle.png +0 -0
- package/src/__tests__/snapshots/drawings/cyan.png +0 -0
- package/src/__tests__/snapshots/drawings/default-props.png +0 -0
- package/src/__tests__/snapshots/drawings/hello-world.png +0 -0
- package/src/__tests__/snapshots/drawings/image-default-props.png +0 -0
- package/src/__tests__/snapshots/drawings/lightblue-quarter-circle.png +0 -0
- package/src/__tests__/snapshots/drawings/lightblue-rect.png +0 -0
- package/src/__tests__/snapshots/drawings/line.png +0 -0
- package/src/__tests__/snapshots/drawings/multiple-paints.png +0 -0
- package/src/__tests__/snapshots/drawings/nested-shader.png +0 -0
- package/src/__tests__/snapshots/drawings/nested-shader2.png +0 -0
- package/src/__tests__/snapshots/drawings/opacity-image.png +0 -0
- package/src/__tests__/snapshots/drawings/opacity-multiplication.png +0 -0
- package/src/__tests__/snapshots/drawings/opacity-multiplication2.png +0 -0
- package/src/__tests__/snapshots/drawings/points.png +0 -0
- package/src/__tests__/snapshots/drawings/purple.png +0 -0
- package/src/__tests__/snapshots/drawings/rotated-image.png +0 -0
- package/src/__tests__/snapshots/drawings/rotated-scaled-image.png +0 -0
- package/src/__tests__/snapshots/drawings/rrect-aa.png +0 -0
- package/src/__tests__/snapshots/drawings/rrect-no-aa.png +0 -0
- package/src/__tests__/snapshots/drawings/scaled-image.png +0 -0
- package/src/__tests__/snapshots/drawings/scaled-image2.png +0 -0
- package/src/__tests__/snapshots/drawings/shader-opacity-reference.png +0 -0
- package/src/__tests__/snapshots/drawings/skew-transform.png +0 -0
- package/src/__tests__/snapshots/drawings/skew-transform2.png +0 -0
- package/src/__tests__/snapshots/drawings/small-lightblue-rect.png +0 -0
- package/src/__tests__/snapshots/drawings/stroke.png +0 -0
- package/src/__tests__/snapshots/drawings/transform-origin.png +0 -0
- package/src/__tests__/snapshots/drawings/transparent.png +0 -0
- package/src/__tests__/snapshots/drawings/violet.png +0 -0
- package/src/__tests__/snapshots/font/green.png +0 -0
- package/src/__tests__/snapshots/font/red.png +0 -0
- package/src/__tests__/snapshots/glyphs/simple.png +0 -0
- package/src/__tests__/snapshots/gradient/linear-with-opacity.png +0 -0
- package/src/__tests__/snapshots/gradient/linear.png +0 -0
- package/src/__tests__/snapshots/green.png +0 -0
- package/src/__tests__/snapshots/image-filter/blur.png +0 -0
- package/src/__tests__/snapshots/image-filter/test-shadow.png +0 -0
- package/src/__tests__/snapshots/images/bundle-android.png +0 -0
- package/src/__tests__/snapshots/images/bundle-ios.png +0 -0
- package/src/__tests__/snapshots/images/bundle-node.png +0 -0
- package/src/__tests__/snapshots/images/bundle.png +0 -0
- package/src/__tests__/snapshots/images/filter.png +0 -0
- package/src/__tests__/snapshots/leak.png +0 -0
- package/src/__tests__/snapshots/matrix4/perspective.png +0 -0
- package/src/__tests__/snapshots/paint/blend-mode.png +0 -0
- package/src/__tests__/snapshots/paint/circle.png +0 -0
- package/src/__tests__/snapshots/paint/colors.png +0 -0
- package/src/__tests__/snapshots/paint/dither.png +0 -0
- package/src/__tests__/snapshots/paint/path-paint.png +0 -0
- package/src/__tests__/snapshots/paint/without-dither.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-auto-linebreaks-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-auto-linebreaks-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-bounding-box-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-bounding-box-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-bounding-box-node.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-ellipse-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-ellipse-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-linebreaks-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-linebreaks-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-center-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-center-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-justify-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-justify-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-left-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-left-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-right-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-right-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-rtl-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-align-rtl-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-colors-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-colors-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-decoration-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-decoration-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-shadow-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-shadow-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-style-android-box.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-style-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-style-ios-box.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-font-style-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-in-paragraph-style-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/paragraph-text-style-in-paragraph-style-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/simple-paragraph-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/simple-paragraph-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/simple-paragraph-with-provider-android.png +0 -0
- package/src/__tests__/snapshots/paragraph/simple-paragraph-with-provider-ios.png +0 -0
- package/src/__tests__/snapshots/paragraph/simple-paragraph-with-provider-node.png +0 -0
- package/src/__tests__/snapshots/path/interpolate.png +0 -0
- package/src/__tests__/snapshots/path/logo.png +0 -0
- package/src/__tests__/snapshots/path-effects/discrete.png +0 -0
- package/src/__tests__/snapshots/path-effects/sum.png +0 -0
- package/src/__tests__/snapshots/path-effects/sum2.png +0 -0
- package/src/__tests__/snapshots/paths/arc.png +0 -0
- package/src/__tests__/snapshots/paths/emptyPath.png +0 -0
- package/src/__tests__/snapshots/paths/interpolation1.png +0 -0
- package/src/__tests__/snapshots/paths/oval.png +0 -0
- package/src/__tests__/snapshots/paths/pattern.png +0 -0
- package/src/__tests__/snapshots/paths/poly.png +0 -0
- package/src/__tests__/snapshots/paths/rrect.png +0 -0
- package/src/__tests__/snapshots/paths/skia-trimmed.png +0 -0
- package/src/__tests__/snapshots/paths/skia.png +0 -0
- package/src/__tests__/snapshots/pictures/create-picture.png +0 -0
- package/src/__tests__/snapshots/pictures/green.png +0 -0
- package/src/__tests__/snapshots/pictures/hello-world.png +0 -0
- package/src/__tests__/snapshots/pictures/red.png +0 -0
- package/src/__tests__/snapshots/pictures/simple-picture.png +0 -0
- package/src/__tests__/snapshots/platform-buffer-bgra.png +0 -0
- package/src/__tests__/snapshots/platform-buffer.png +0 -0
- package/src/__tests__/snapshots/points/points.png +0 -0
- package/src/__tests__/snapshots/points/points2.png +0 -0
- package/src/__tests__/snapshots/render-nodes/simple.png +0 -0
- package/src/__tests__/snapshots/render-nodes/simple2.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/blend-color-burn.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/blend-color-burn2.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/blend-color-burn3.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/blend-color-dodge.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/blend-multiply.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/int-uniform.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/linear-gradient.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/linear-gradient2.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/small-spiral.png +0 -0
- package/src/__tests__/snapshots/runtime-effects/spiral.png +0 -0
- package/src/__tests__/snapshots/runtime-shader/scaled-circle.png +0 -0
- package/src/__tests__/snapshots/runtime-shader/scaled-circle2.png +0 -0
- package/src/__tests__/snapshots/runtime-shader/simple.png +0 -0
- package/src/__tests__/snapshots/runtime-shader/spiral.png +0 -0
- package/src/__tests__/snapshots/runtime-shader/unscaled-image.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot1-android-ci.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot1-android.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot1-ios.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot2-android-ci.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot2-android.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot2-ios.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot3-android-ci.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot3-android.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot3-ios.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot4-android-ci.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot4-android.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot4-ios.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot5-android.png +0 -0
- package/src/__tests__/snapshots/screens/snapshot5-ios.png +0 -0
- package/src/__tests__/snapshots/sdf/circle.png +0 -0
- package/src/__tests__/snapshots/sdf/heart.png +0 -0
- package/src/__tests__/snapshots/sdf/line.png +0 -0
- package/src/__tests__/snapshots/sdf/rectangle.png +0 -0
- package/src/__tests__/snapshots/shader/bilinear-interpolation.png +0 -0
- package/src/__tests__/snapshots/shader/hue.png +0 -0
- package/src/__tests__/snapshots/shader/hue2.png +0 -0
- package/src/__tests__/snapshots/shader/shader1.png +0 -0
- package/src/__tests__/snapshots/shader/shader2.png +0 -0
- package/src/__tests__/snapshots/shader/sweep-gradient.png +0 -0
- package/src/__tests__/snapshots/text/text-bounds-android.png +0 -0
- package/src/__tests__/snapshots/text/text-bounds-ios.png +0 -0
- package/src/__tests__/snapshots/text/text-default-font-android.png +0 -0
- package/src/__tests__/snapshots/text/text-default-font-ios.png +0 -0
- package/src/__tests__/snapshots/text/text-path-bug-android.png +0 -0
- package/src/__tests__/snapshots/text/text-path-bug-ios.png +0 -0
- package/src/__tests__/snapshots/text/text-path-bug-node.png +0 -0
- package/src/__tests__/snapshots/text/text-path1-android.png +0 -0
- package/src/__tests__/snapshots/text/text-path1-ios.png +0 -0
- package/src/__tests__/snapshots/text/text-path1-node.png +0 -0
- package/src/__tests__/snapshots/text/text-path2-android.png +0 -0
- package/src/__tests__/snapshots/text/text-path2-ios.png +0 -0
- package/src/__tests__/snapshots/text/text-path2-node.png +0 -0
- package/src/__tests__/snapshots/transform/rectangles.png +0 -0
- package/src/__tests__/snapshots/transform/rotate-radiants.png +0 -0
- package/src/__tests__/snapshots/transform/rotate.png +0 -0
- package/src/__tests__/snapshots/transform/scale-origin.png +0 -0
- package/src/__tests__/snapshots/transform/scale.png +0 -0
- package/src/__tests__/snapshots/transform/skew.png +0 -0
- package/src/__tests__/snapshots/transparent.png +0 -0
- package/src/__tests__/snapshots/vertices/billinear-gradient.png +0 -0
- package/src/__tests__/snapshots/vertices/strip.png +0 -0
- package/src/__tests__/snapshots/vertices/vertices.png +0 -0
- package/src/dom/__tests__/Compose.spec.tsx +42 -0
- package/src/dom/__tests__/Demos.spec.tsx +145 -0
- package/src/dom/__tests__/DrawingContext.spec.tsx +99 -0
- package/src/dom/__tests__/Drawings.spec.tsx +95 -0
- package/src/dom/__tests__/Group.spec.tsx +132 -0
- package/src/dom/__tests__/Paint.spec.tsx +100 -0
- package/src/dom/__tests__/RenderNodes.spec.tsx +44 -0
- package/src/dom/__tests__/Shaders.spec.tsx +123 -0
- package/src/renderer/__tests__/Data.spec.tsx +67 -0
- package/src/renderer/__tests__/Drawings.spec.tsx +96 -0
- package/src/renderer/__tests__/FitBox.spec.tsx +126 -0
- package/src/renderer/__tests__/Glyphs.spec.tsx +46 -0
- package/src/renderer/__tests__/Image.spec.tsx +45 -0
- package/src/renderer/__tests__/Paths.spec.tsx +75 -0
- package/src/renderer/__tests__/Picture.spec.tsx +82 -0
- package/src/renderer/__tests__/Simple.spec.tsx +81 -0
- package/src/renderer/__tests__/SkiaDOM.spec.tsx +46 -0
- package/src/renderer/__tests__/Surfaces.spec.tsx +73 -0
- package/src/renderer/__tests__/Text.spec.tsx +134 -0
- package/src/renderer/__tests__/TouchHandler.spec.tsx +113 -0
- package/src/renderer/__tests__/Transform.spec.tsx +72 -0
- package/src/renderer/__tests__/documentation/Group.spec.tsx +171 -0
- package/src/renderer/__tests__/documentation/getting-started/HelloWorld.spec.tsx +51 -0
- package/src/renderer/__tests__/documentation/paint/Overview.spec.tsx +84 -0
- package/src/renderer/__tests__/documentation/shapes/Box.spec.tsx +46 -0
- package/src/renderer/__tests__/e2e/AnimatedImages.spec.tsx +88 -0
- package/src/renderer/__tests__/e2e/Atlas.spec.tsx +358 -0
- package/src/renderer/__tests__/e2e/BackdropFilters.spec.tsx +141 -0
- package/src/renderer/__tests__/e2e/Blending.spec.tsx +115 -0
- package/src/renderer/__tests__/e2e/Blur.spec.tsx +56 -0
- package/src/renderer/__tests__/e2e/Box.spec.tsx +83 -0
- package/src/renderer/__tests__/e2e/ColorFilters.spec.tsx +212 -0
- package/src/renderer/__tests__/e2e/Composition/ColorFilterComposition.spec.tsx +81 -0
- package/src/renderer/__tests__/e2e/CoonPatch.spec.tsx +74 -0
- package/src/renderer/__tests__/e2e/DataEncoding.spec.tsx +75 -0
- package/src/renderer/__tests__/e2e/Drawings.spec.tsx +209 -0
- package/src/renderer/__tests__/e2e/FontMgr.spec.tsx +150 -0
- package/src/renderer/__tests__/e2e/Gradient.spec.tsx +40 -0
- package/src/renderer/__tests__/e2e/Group.spec.tsx +129 -0
- package/src/renderer/__tests__/e2e/Image.spec.tsx +139 -0
- package/src/renderer/__tests__/e2e/ImageEncoding.spec.tsx +255 -0
- package/src/renderer/__tests__/e2e/ImageFilters.spec.tsx +230 -0
- package/src/renderer/__tests__/e2e/Mask.spec.tsx +85 -0
- package/src/renderer/__tests__/e2e/Matrix4.spec.tsx +275 -0
- package/src/renderer/__tests__/e2e/NativeBuffer.spec.tsx +156 -0
- package/src/renderer/__tests__/e2e/Offscreen.spec.tsx +109 -0
- package/src/renderer/__tests__/e2e/Opacity.spec.tsx +278 -0
- package/src/renderer/__tests__/e2e/Paint.spec.tsx +170 -0
- package/src/renderer/__tests__/e2e/ParagraphPaint.spec.tsx +262 -0
- package/src/renderer/__tests__/e2e/Paragraphs.spec.tsx +615 -0
- package/src/renderer/__tests__/e2e/PathEffects.spec.tsx +73 -0
- package/src/renderer/__tests__/e2e/Paths.spec.tsx +390 -0
- package/src/renderer/__tests__/e2e/Picture.spec.tsx +134 -0
- package/src/renderer/__tests__/e2e/Point.spec.tsx +35 -0
- package/src/renderer/__tests__/e2e/Rect.spec.tsx +139 -0
- package/src/renderer/__tests__/e2e/RuntimeShader.spec.tsx +324 -0
- package/src/renderer/__tests__/e2e/SDF.spec.tsx +148 -0
- package/src/renderer/__tests__/e2e/SVG.spec.tsx +191 -0
- package/src/renderer/__tests__/e2e/Shader.spec.tsx +260 -0
- package/src/renderer/__tests__/e2e/Snapshot.spec.tsx +29 -0
- package/src/renderer/__tests__/e2e/Surfaces.spec.tsx +17 -0
- package/src/renderer/__tests__/e2e/Text.spec.tsx +109 -0
- package/src/renderer/__tests__/e2e/TextPath.spec.tsx +45 -0
- package/src/renderer/__tests__/e2e/Transforms.spec.tsx +63 -0
- package/src/renderer/__tests__/e2e/Vertices.spec.tsx +30 -0
- package/src/renderer/__tests__/e2e/Video.ts +69 -0
- package/src/renderer/__tests__/e2e/setup/Paragraph.ts +56 -0
- package/src/renderer/__tests__/e2e/setup/SVG.ts +27 -0
- package/src/renderer/__tests__/e2e/setup/SkiaObject.ts +31 -0
- package/src/renderer/__tests__/e2e/setup/index.ts +3 -0
- package/src/renderer/__tests__/examples/BlendModes.spec.tsx +123 -0
- package/src/renderer/__tests__/setup.tsx +489 -0
- package/src/skia/__tests__/ColorFilter.spec.ts +67 -0
- package/src/skia/__tests__/Data.spec.ts +29 -0
- package/src/skia/__tests__/Drawings.spec.ts +119 -0
- package/src/skia/__tests__/Enums.spec.ts +114 -0
- package/src/skia/__tests__/Geometry.spec.ts +39 -0
- package/src/skia/__tests__/ImageFilter.spec.ts +19 -0
- package/src/skia/__tests__/Mock.spec.ts +7 -0
- package/src/skia/__tests__/Paint.spec.ts +25 -0
- package/src/skia/__tests__/Path.spec.ts +386 -0
- package/src/skia/__tests__/RuntimeEffect.spec.ts +66 -0
- package/src/skia/__tests__/Shader.spec.ts +96 -0
- package/src/skia/__tests__/Text.spec.ts +32 -0
- package/src/skia/__tests__/Transform.spec.ts +89 -0
- package/src/skia/__tests__/Vertices.spec.ts +40 -0
- package/src/skia/__tests__/assets/DIN-Medium.ttf +0 -0
- package/src/skia/__tests__/assets/NotoColorEmoji.ttf +0 -0
- package/src/skia/__tests__/assets/NotoSansSC-Regular.otf +0 -0
- package/src/skia/__tests__/assets/Pacifico-Regular.ttf +0 -0
- package/src/skia/__tests__/assets/Roboto-BlackItalic.ttf +0 -0
- package/src/skia/__tests__/assets/Roboto-Bold.ttf +0 -0
- package/src/skia/__tests__/assets/Roboto-Italic.ttf +0 -0
- package/src/skia/__tests__/assets/Roboto-Medium.ttf +0 -0
- package/src/skia/__tests__/assets/Roboto-Regular.ttf +0 -0
- package/src/skia/__tests__/assets/UberMove-Medium_mono.ttf +0 -0
- package/src/skia/__tests__/assets/bird.gif +0 -0
- package/src/skia/__tests__/assets/box.png +0 -0
- package/src/skia/__tests__/assets/box2.png +0 -0
- package/src/skia/__tests__/assets/card.png +0 -0
- package/src/skia/__tests__/assets/mask.png +0 -0
- package/src/skia/__tests__/assets/oslo.jpg +0 -0
- package/src/skia/__tests__/assets/product.png +0 -0
- package/src/skia/__tests__/assets/skia_logo.png +0 -0
- package/src/skia/__tests__/assets/skia_logo_jpeg.jpg +0 -0
- package/src/skia/__tests__/assets/tiger.svg +724 -0
- package/src/skia/__tests__/assets/zurich.jpg +0 -0
- package/src/skia/__tests__/setup.ts +77 -0
@@ -0,0 +1,100 @@
|
|
1
|
+
import {
|
2
|
+
importSkia,
|
3
|
+
width,
|
4
|
+
height,
|
5
|
+
PIXEL_RATIO,
|
6
|
+
getSkDOM,
|
7
|
+
} from "../../renderer/__tests__/setup";
|
8
|
+
import { setupSkia } from "../../skia/__tests__/setup";
|
9
|
+
import { docPath, processResult } from "../../__tests__/setup";
|
10
|
+
import { JsiDrawingContext } from "../types/DrawingContext";
|
11
|
+
|
12
|
+
describe("Paint", () => {
|
13
|
+
it("should assign a paint directly", () => {
|
14
|
+
const size = width;
|
15
|
+
const { surface, canvas } = setupSkia(width, height);
|
16
|
+
const { Skia, vec } = importSkia();
|
17
|
+
const Sk = getSkDOM();
|
18
|
+
|
19
|
+
const r = size / 2;
|
20
|
+
|
21
|
+
const root = Sk.Group();
|
22
|
+
|
23
|
+
const paint = Skia.Paint();
|
24
|
+
paint.setColor(Skia.Color("lightblue"));
|
25
|
+
const circle = Sk.Circle({ c: vec(r, r), r, paint });
|
26
|
+
root.addChild(circle);
|
27
|
+
|
28
|
+
const ctx = new JsiDrawingContext(Skia, canvas);
|
29
|
+
root.render(ctx);
|
30
|
+
processResult(surface, docPath("paint/assignement.png"));
|
31
|
+
});
|
32
|
+
it("should draw the color fill and strokes properly", () => {
|
33
|
+
const { surface, canvas } = setupSkia(width, height);
|
34
|
+
const { vec, Skia } = importSkia();
|
35
|
+
const Sk = getSkDOM();
|
36
|
+
|
37
|
+
const strokeWidth = 10 * PIXEL_RATIO;
|
38
|
+
const c = vec(width / 2, height / 2);
|
39
|
+
const r = (width - strokeWidth) / 2;
|
40
|
+
const color = Skia.Color("red");
|
41
|
+
|
42
|
+
const root = Sk.Group({ color });
|
43
|
+
|
44
|
+
const circle = Sk.Circle({ c, r });
|
45
|
+
circle.addChild(Sk.Paint({ color: Skia.Color("lightblue") }));
|
46
|
+
circle.addChild(
|
47
|
+
Sk.Paint({
|
48
|
+
color: Skia.Color("#adbce6"),
|
49
|
+
style: "stroke",
|
50
|
+
strokeWidth,
|
51
|
+
})
|
52
|
+
);
|
53
|
+
circle.addChild(
|
54
|
+
Sk.Paint({
|
55
|
+
color: Skia.Color("#ade6d8"),
|
56
|
+
style: "stroke",
|
57
|
+
strokeWidth: strokeWidth / 2,
|
58
|
+
})
|
59
|
+
);
|
60
|
+
root.addChild(circle);
|
61
|
+
const ctx = new JsiDrawingContext(Skia, canvas);
|
62
|
+
root.render(ctx);
|
63
|
+
processResult(surface, docPath("paint/stroke.png"));
|
64
|
+
});
|
65
|
+
|
66
|
+
it("should use the opacity property properly", () => {
|
67
|
+
const { surface, canvas } = setupSkia(width, height);
|
68
|
+
const { vec, Skia } = importSkia();
|
69
|
+
const Sk = getSkDOM();
|
70
|
+
|
71
|
+
const strokeWidth = 30 * PIXEL_RATIO;
|
72
|
+
const r = width / 2 - strokeWidth / 2;
|
73
|
+
const c = vec(width / 2, height / 2);
|
74
|
+
const root = Sk.Group({ opacity: 0.5 });
|
75
|
+
|
76
|
+
const c1 = Sk.Group({ color: Skia.Color("red") });
|
77
|
+
c1.addChild(Sk.Circle({ c, r }));
|
78
|
+
root.addChild(c1);
|
79
|
+
|
80
|
+
const c2 = Sk.Group({
|
81
|
+
color: Skia.Color("lightblue"),
|
82
|
+
style: "stroke",
|
83
|
+
strokeWidth,
|
84
|
+
});
|
85
|
+
c2.addChild(Sk.Circle({ c, r }));
|
86
|
+
root.addChild(c2);
|
87
|
+
|
88
|
+
const c3 = Sk.Group({
|
89
|
+
color: Skia.Color("mint"),
|
90
|
+
style: "stroke",
|
91
|
+
strokeWidth: strokeWidth / 2,
|
92
|
+
});
|
93
|
+
c3.addChild(Sk.Circle({ c, r }));
|
94
|
+
root.addChild(c3);
|
95
|
+
|
96
|
+
const ctx = new JsiDrawingContext(Skia, canvas);
|
97
|
+
root.render(ctx);
|
98
|
+
processResult(surface, docPath("paint/opacity.png"));
|
99
|
+
});
|
100
|
+
});
|
@@ -0,0 +1,44 @@
|
|
1
|
+
import {
|
2
|
+
importSkia,
|
3
|
+
width,
|
4
|
+
height,
|
5
|
+
getSkDOM,
|
6
|
+
} from "../../renderer/__tests__/setup";
|
7
|
+
import { setupSkia } from "../../skia/__tests__/setup";
|
8
|
+
import { processResult } from "../../__tests__/setup";
|
9
|
+
import type { NodeType } from "../types";
|
10
|
+
import type { CircleProps } from "../types/Drawings";
|
11
|
+
import { JsiDrawingContext } from "../types/DrawingContext";
|
12
|
+
|
13
|
+
describe("Drawings", () => {
|
14
|
+
it("Hello World", () => {
|
15
|
+
// If there is a mismatch between the NodeType values and the intrasic element names,
|
16
|
+
// an static error will be thrown here.
|
17
|
+
const foo: JSX.IntrinsicElements[`${NodeType}`] = {};
|
18
|
+
expect(foo).toBeDefined();
|
19
|
+
const { surface, canvas } = setupSkia(width, height);
|
20
|
+
const { Skia, vec } = importSkia();
|
21
|
+
const Sk = getSkDOM();
|
22
|
+
const c = vec(width / 2, height / 2);
|
23
|
+
const c1 = Skia.Color("#61bea2");
|
24
|
+
const c2 = Skia.Color("#529ca0");
|
25
|
+
const R = width / 4;
|
26
|
+
//const color = Skia.Color("rgb(36,43,56)");
|
27
|
+
const root = Sk.Group({});
|
28
|
+
|
29
|
+
const circle = Sk.Circle({ c, r: R, color: c1 });
|
30
|
+
root.addChild(circle);
|
31
|
+
let ctx = new JsiDrawingContext(Skia, canvas);
|
32
|
+
root.render(ctx);
|
33
|
+
processResult(surface, "snapshots/render-nodes/simple.png");
|
34
|
+
|
35
|
+
// These cast won't be necessary once we clean up types such as CircleDef
|
36
|
+
circle.setProp("c" as keyof CircleProps, undefined);
|
37
|
+
circle.setProp("cx" as keyof CircleProps, 0);
|
38
|
+
circle.setProp("cy" as keyof CircleProps, 0);
|
39
|
+
circle.setProp("color", c2);
|
40
|
+
ctx = new JsiDrawingContext(Skia, canvas);
|
41
|
+
root.render(ctx);
|
42
|
+
processResult(surface, "snapshots/render-nodes/simple2.png");
|
43
|
+
});
|
44
|
+
});
|
@@ -0,0 +1,123 @@
|
|
1
|
+
import {
|
2
|
+
importSkia,
|
3
|
+
width,
|
4
|
+
height,
|
5
|
+
loadImage,
|
6
|
+
getSkDOM,
|
7
|
+
} from "../../renderer/__tests__/setup";
|
8
|
+
import { setupSkia } from "../../skia/__tests__/setup";
|
9
|
+
import { processResult } from "../../__tests__/setup";
|
10
|
+
import { fitRects, rect2rect } from "../nodes/datatypes";
|
11
|
+
import { JsiDrawingContext } from "../types";
|
12
|
+
|
13
|
+
describe("Drawings", () => {
|
14
|
+
it("Should display a simple shader", () => {
|
15
|
+
const { surface, canvas } = setupSkia(width, height);
|
16
|
+
const { Skia } = importSkia();
|
17
|
+
const Sk = getSkDOM();
|
18
|
+
const source = Skia.RuntimeEffect.Make(`
|
19
|
+
half4 main(float2 xy) {
|
20
|
+
return vec4(0.0, 1.0, 1.0, 1.0);
|
21
|
+
}`)!;
|
22
|
+
expect(source).toBeTruthy();
|
23
|
+
|
24
|
+
const root = Sk.Group();
|
25
|
+
const filter = Sk.Shader({
|
26
|
+
source,
|
27
|
+
uniforms: {},
|
28
|
+
});
|
29
|
+
root.addChild(filter);
|
30
|
+
root.addChild(Sk.Fill());
|
31
|
+
const ctx = new JsiDrawingContext(Skia, canvas);
|
32
|
+
root.render(ctx);
|
33
|
+
processResult(surface, "snapshots/drawings/cyan.png");
|
34
|
+
});
|
35
|
+
|
36
|
+
it("Should display a nested shader", () => {
|
37
|
+
const { surface, canvas } = setupSkia(width, height);
|
38
|
+
const { Skia } = importSkia();
|
39
|
+
const Sk = getSkDOM();
|
40
|
+
const image = loadImage("skia/__tests__/assets/oslo.jpg");
|
41
|
+
const source = Skia.RuntimeEffect.Make(`
|
42
|
+
uniform shader image;
|
43
|
+
uniform float r;
|
44
|
+
|
45
|
+
half4 main(float2 xy) {
|
46
|
+
xy.x += sin(xy.y / r) * 4;
|
47
|
+
return image.eval(xy).rbga;
|
48
|
+
}`)!;
|
49
|
+
expect(source).toBeTruthy();
|
50
|
+
const rects = fitRects(
|
51
|
+
"cover",
|
52
|
+
{ x: 0, y: 0, width: image.width(), height: image.height() },
|
53
|
+
Skia.XYWHRect(0, 0, width, height)
|
54
|
+
);
|
55
|
+
const transform = rect2rect(rects.src, rects.dst);
|
56
|
+
const imageShader = Sk.ImageShader({
|
57
|
+
image,
|
58
|
+
fit: "none",
|
59
|
+
tx: "decal",
|
60
|
+
ty: "decal",
|
61
|
+
fm: "nearest",
|
62
|
+
mm: "nearest",
|
63
|
+
transform,
|
64
|
+
});
|
65
|
+
const filter = Sk.Shader({
|
66
|
+
source,
|
67
|
+
uniforms: { r: 50 },
|
68
|
+
});
|
69
|
+
filter.addChild(imageShader);
|
70
|
+
const root = Sk.Group();
|
71
|
+
root.addChild(filter);
|
72
|
+
root.addChild(Sk.Fill());
|
73
|
+
const ctx = new JsiDrawingContext(Skia, canvas);
|
74
|
+
root.render(ctx);
|
75
|
+
processResult(surface, "snapshots/drawings/nested-shader.png");
|
76
|
+
});
|
77
|
+
|
78
|
+
it("Should have always the correct state", () => {
|
79
|
+
const { surface, canvas } = setupSkia(width, height);
|
80
|
+
const { Skia, processTransform2d } = importSkia();
|
81
|
+
const Sk = getSkDOM();
|
82
|
+
const image = loadImage("skia/__tests__/assets/oslo.jpg");
|
83
|
+
const source = Skia.RuntimeEffect.Make(`
|
84
|
+
uniform shader image;
|
85
|
+
uniform float r;
|
86
|
+
|
87
|
+
half4 main(float2 xy) {
|
88
|
+
xy.x += sin(xy.y / r) * 4;
|
89
|
+
return image.eval(xy).rbga;
|
90
|
+
}`)!;
|
91
|
+
expect(source).toBeTruthy();
|
92
|
+
const rects = fitRects(
|
93
|
+
"cover",
|
94
|
+
{ x: 0, y: 0, width: image.width(), height: image.height() },
|
95
|
+
Skia.XYWHRect(0, 0, width, height)
|
96
|
+
);
|
97
|
+
const matrix = processTransform2d(rect2rect(rects.src, rects.dst));
|
98
|
+
const imageShader = Sk.ImageShader({
|
99
|
+
image,
|
100
|
+
fit: "none",
|
101
|
+
tx: "decal",
|
102
|
+
ty: "decal",
|
103
|
+
fm: "nearest",
|
104
|
+
mm: "nearest",
|
105
|
+
matrix,
|
106
|
+
});
|
107
|
+
const filter = Sk.Shader({
|
108
|
+
source,
|
109
|
+
uniforms: { r: 50 },
|
110
|
+
});
|
111
|
+
filter.addChild(imageShader);
|
112
|
+
const root = Sk.Group();
|
113
|
+
root.addChild(filter);
|
114
|
+
root.addChild(Sk.Fill());
|
115
|
+
let ctx = new JsiDrawingContext(Skia, canvas);
|
116
|
+
root.render(ctx);
|
117
|
+
processResult(surface, "snapshots/drawings/nested-shader.png");
|
118
|
+
filter.setProp("uniforms", { r: 25 });
|
119
|
+
ctx = new JsiDrawingContext(Skia, canvas);
|
120
|
+
root.render(ctx);
|
121
|
+
processResult(surface, "snapshots/drawings/nested-shader2.png", true);
|
122
|
+
});
|
123
|
+
});
|
@@ -0,0 +1,67 @@
|
|
1
|
+
import React from "react";
|
2
|
+
|
3
|
+
import { processResult } from "../../__tests__/setup";
|
4
|
+
import { Fill } from "../components";
|
5
|
+
import * as SkiaRenderer from "../index";
|
6
|
+
|
7
|
+
import type { EmptyProps } from "./setup";
|
8
|
+
import { importSkia, mountCanvas, wait } from "./setup";
|
9
|
+
|
10
|
+
const CheckData = ({}: EmptyProps) => {
|
11
|
+
const { useFont } = importSkia();
|
12
|
+
const font = useFont(null);
|
13
|
+
if (font === null) {
|
14
|
+
return <Fill color="green" />;
|
15
|
+
}
|
16
|
+
return <Fill color="red" />;
|
17
|
+
};
|
18
|
+
|
19
|
+
const CheckFont = ({}: EmptyProps) => {
|
20
|
+
const { useFont } = importSkia();
|
21
|
+
const font = useFont("skia/__tests__/assets/Roboto-Medium.ttf");
|
22
|
+
if (!font) {
|
23
|
+
return <Fill color="red" />;
|
24
|
+
}
|
25
|
+
return <Fill color="green" />;
|
26
|
+
};
|
27
|
+
|
28
|
+
const CheckImage = ({}: EmptyProps) => {
|
29
|
+
const { useImage } = importSkia();
|
30
|
+
const image = useImage("skia/__tests__/assets/zurich.jpg");
|
31
|
+
if (!image) {
|
32
|
+
return <Fill color="red" />;
|
33
|
+
}
|
34
|
+
return <Fill color="green" />;
|
35
|
+
};
|
36
|
+
|
37
|
+
describe("Data Loading", () => {
|
38
|
+
it("Loads renderer without Skia", async () => {
|
39
|
+
expect(SkiaRenderer).toBeDefined();
|
40
|
+
});
|
41
|
+
it("Should accept null as an argument", async () => {
|
42
|
+
const { surface, draw } = mountCanvas(<CheckData />);
|
43
|
+
draw();
|
44
|
+
processResult(surface, "snapshots/font/green.png");
|
45
|
+
await wait(42);
|
46
|
+
draw();
|
47
|
+
processResult(surface, "snapshots/font/green.png");
|
48
|
+
});
|
49
|
+
|
50
|
+
it("Should load a font file", async () => {
|
51
|
+
const { surface, draw } = mountCanvas(<CheckFont />);
|
52
|
+
draw();
|
53
|
+
processResult(surface, "snapshots/font/red.png");
|
54
|
+
await wait(1500);
|
55
|
+
draw();
|
56
|
+
processResult(surface, "snapshots/font/green.png");
|
57
|
+
});
|
58
|
+
|
59
|
+
it("Should load an image", async () => {
|
60
|
+
const { surface, draw } = mountCanvas(<CheckImage />);
|
61
|
+
draw();
|
62
|
+
processResult(surface, "snapshots/font/red.png");
|
63
|
+
await wait(1500);
|
64
|
+
draw();
|
65
|
+
processResult(surface, "snapshots/font/green.png");
|
66
|
+
});
|
67
|
+
});
|
@@ -0,0 +1,96 @@
|
|
1
|
+
import React, { useEffect, useState } from "react";
|
2
|
+
|
3
|
+
import { docPath, processResult } from "../../__tests__/setup";
|
4
|
+
import { Blur, Circle, DiffRect, Fill, Group, Paint } from "../components";
|
5
|
+
|
6
|
+
import {
|
7
|
+
drawOnNode,
|
8
|
+
width,
|
9
|
+
height,
|
10
|
+
importSkia,
|
11
|
+
PIXEL_RATIO,
|
12
|
+
mountCanvas,
|
13
|
+
wait,
|
14
|
+
} from "./setup";
|
15
|
+
|
16
|
+
const CheckEmptyCanvas = () => {
|
17
|
+
const { Skia } = importSkia();
|
18
|
+
const [color, setColor] = useState("green");
|
19
|
+
useEffect(() => {
|
20
|
+
setTimeout(() => {
|
21
|
+
setColor("transparent");
|
22
|
+
}, 16);
|
23
|
+
}, [Skia]);
|
24
|
+
|
25
|
+
return (
|
26
|
+
<Group>
|
27
|
+
<Fill color={color} />
|
28
|
+
</Group>
|
29
|
+
);
|
30
|
+
};
|
31
|
+
|
32
|
+
describe("Test introductionary examples from our documentation", () => {
|
33
|
+
it("Should blend colors using multiplication", () => {
|
34
|
+
const r = width * 0.33;
|
35
|
+
const surface = drawOnNode(
|
36
|
+
<Group blendMode="multiply">
|
37
|
+
<Circle cx={r} cy={r} r={r} color="cyan" />
|
38
|
+
<Circle cx={width - r} cy={r} r={r} color="magenta" />
|
39
|
+
<Circle cx={width / 2} cy={height - r} r={r} color="yellow" />
|
40
|
+
</Group>
|
41
|
+
);
|
42
|
+
processResult(surface, "snapshots/drawings/blend-mode-multiply.png");
|
43
|
+
});
|
44
|
+
|
45
|
+
it("Should use a blur image filter", () => {
|
46
|
+
const r = width * 0.33;
|
47
|
+
const surface = drawOnNode(
|
48
|
+
<Group blendMode="multiply">
|
49
|
+
<Blur blur={30} />
|
50
|
+
<Circle cx={r} cy={r} r={r} color="cyan" />
|
51
|
+
<Circle cx={width - r} cy={r} r={r} color="magenta" />
|
52
|
+
<Circle cx={width / 2} cy={height - r} r={r} color="yellow" />
|
53
|
+
</Group>
|
54
|
+
);
|
55
|
+
processResult(surface, "snapshots/drawings/blur-node.png");
|
56
|
+
});
|
57
|
+
|
58
|
+
it("Should use multiple paint definitions for one drawing command", () => {
|
59
|
+
const r = width / 4;
|
60
|
+
const strokeWidth = 50;
|
61
|
+
const surface = drawOnNode(
|
62
|
+
<>
|
63
|
+
<Circle cx={width / 2} cy={width / 2} r={r} color="red">
|
64
|
+
<Paint color="lightblue" />
|
65
|
+
<Paint color="#adbce6" style="stroke" strokeWidth={strokeWidth} />
|
66
|
+
<Paint color="#ade6d8" style="stroke" strokeWidth={strokeWidth / 2} />
|
67
|
+
</Circle>
|
68
|
+
</>
|
69
|
+
);
|
70
|
+
processResult(surface, "snapshots/drawings/multiple-paints.png");
|
71
|
+
});
|
72
|
+
|
73
|
+
it("Should draw DRect", () => {
|
74
|
+
const { rrect, rect } = importSkia();
|
75
|
+
const padding = 25 * PIXEL_RATIO;
|
76
|
+
const outer = rrect(rect(0, 0, width, width), padding, padding);
|
77
|
+
const inner = rrect(
|
78
|
+
rect(padding * 2, padding * 2, width - padding * 4, width - padding * 4),
|
79
|
+
padding * 2,
|
80
|
+
padding * 2
|
81
|
+
);
|
82
|
+
const surface = drawOnNode(
|
83
|
+
<DiffRect inner={inner} outer={outer} color="lightblue" />
|
84
|
+
);
|
85
|
+
processResult(surface, docPath("shapes/drect.png"));
|
86
|
+
});
|
87
|
+
|
88
|
+
it("should clear the canvas even if it's empty", async () => {
|
89
|
+
const { surface, draw } = mountCanvas(<CheckEmptyCanvas />);
|
90
|
+
draw();
|
91
|
+
processResult(surface, "snapshots/green.png");
|
92
|
+
await wait(1000);
|
93
|
+
draw();
|
94
|
+
processResult(surface, "snapshots/transparent.png");
|
95
|
+
});
|
96
|
+
});
|
@@ -0,0 +1,126 @@
|
|
1
|
+
import fs from "fs";
|
2
|
+
import path from "path";
|
3
|
+
|
4
|
+
import React from "react";
|
5
|
+
|
6
|
+
import { processResult } from "../../__tests__/setup";
|
7
|
+
import { Circle, FitBox, Rect, Image, Group, fitbox } from "../components";
|
8
|
+
|
9
|
+
import { drawOnNode, width, height, importSkia } from "./setup";
|
10
|
+
|
11
|
+
describe("FitBox", () => {
|
12
|
+
it("Should scale the rectangle in half", () => {
|
13
|
+
const { Skia } = importSkia();
|
14
|
+
const surface = drawOnNode(
|
15
|
+
<FitBox
|
16
|
+
src={Skia.XYWHRect(0, 0, width, height)}
|
17
|
+
dst={Skia.XYWHRect(width / 4, height / 4, width / 2, height / 2)}
|
18
|
+
>
|
19
|
+
<Rect x={0} y={0} width={width} height={height} color="lightblue" />
|
20
|
+
</FitBox>
|
21
|
+
);
|
22
|
+
processResult(surface, "snapshots/drawings/lightblue-rect.png");
|
23
|
+
});
|
24
|
+
it("Should take the bottom right quarter of the circle and scale to the full canvas", () => {
|
25
|
+
const { Skia } = importSkia();
|
26
|
+
const surface = drawOnNode(
|
27
|
+
<FitBox
|
28
|
+
src={Skia.XYWHRect(width / 2, height / 2, width / 2, height / 2)}
|
29
|
+
dst={Skia.XYWHRect(0, 0, width, height)}
|
30
|
+
>
|
31
|
+
<Circle
|
32
|
+
r={width / 2}
|
33
|
+
cx={width / 2}
|
34
|
+
cy={height / 2}
|
35
|
+
color="lightblue"
|
36
|
+
/>
|
37
|
+
</FitBox>
|
38
|
+
);
|
39
|
+
processResult(surface, "snapshots/drawings/lightblue-quarter-circle.png");
|
40
|
+
});
|
41
|
+
it("Should scale the image (1)", () => {
|
42
|
+
const { Skia, rect } = importSkia();
|
43
|
+
const image = Skia.Image.MakeImageFromEncoded(
|
44
|
+
Skia.Data.fromBytes(
|
45
|
+
fs.readFileSync(
|
46
|
+
path.resolve(__dirname, "../../skia/__tests__/assets/box.png")
|
47
|
+
)
|
48
|
+
)
|
49
|
+
)!;
|
50
|
+
const surface = drawOnNode(
|
51
|
+
<Group
|
52
|
+
transform={fitbox(
|
53
|
+
"cover",
|
54
|
+
rect(0, 0, image.width(), image.height()),
|
55
|
+
rect(0, 0, width, height)
|
56
|
+
)}
|
57
|
+
>
|
58
|
+
<Image
|
59
|
+
image={image}
|
60
|
+
x={0}
|
61
|
+
y={0}
|
62
|
+
width={image.width()}
|
63
|
+
height={image.height()}
|
64
|
+
/>
|
65
|
+
</Group>
|
66
|
+
);
|
67
|
+
processResult(surface, "snapshots/drawings/scaled-image.png");
|
68
|
+
});
|
69
|
+
it("Should scale the image (2)", () => {
|
70
|
+
const { Skia, rect } = importSkia();
|
71
|
+
const image = Skia.Image.MakeImageFromEncoded(
|
72
|
+
Skia.Data.fromBytes(
|
73
|
+
fs.readFileSync(
|
74
|
+
path.resolve(__dirname, "../../skia/__tests__/assets/box.png")
|
75
|
+
)
|
76
|
+
)
|
77
|
+
)!;
|
78
|
+
const screen = rect(256, 128, 256, 512);
|
79
|
+
const surface = drawOnNode(
|
80
|
+
<Group>
|
81
|
+
<Image
|
82
|
+
image={image}
|
83
|
+
x={0}
|
84
|
+
y={0}
|
85
|
+
width={image.width()}
|
86
|
+
height={image.height()}
|
87
|
+
transform={fitbox(
|
88
|
+
"cover",
|
89
|
+
rect(0, 0, image.width(), image.height()),
|
90
|
+
screen
|
91
|
+
)}
|
92
|
+
/>
|
93
|
+
<Rect rect={screen} color="green" opacity={0.5} />
|
94
|
+
</Group>
|
95
|
+
);
|
96
|
+
processResult(surface, "snapshots/drawings/scaled-image2.png");
|
97
|
+
});
|
98
|
+
it("Should rotate and scale the image", () => {
|
99
|
+
const { Skia, rect } = importSkia();
|
100
|
+
const image = Skia.Image.MakeImageFromEncoded(
|
101
|
+
Skia.Data.fromBytes(
|
102
|
+
fs.readFileSync(
|
103
|
+
path.resolve(__dirname, "../../skia/__tests__/assets/box2.png")
|
104
|
+
)
|
105
|
+
)
|
106
|
+
)!;
|
107
|
+
const screen = rect(256, 128, 256, 512);
|
108
|
+
const imageRect = rect(0, 0, image.width(), image.height());
|
109
|
+
const transform = fitbox("contain", imageRect, screen, 270);
|
110
|
+
const surface = drawOnNode(
|
111
|
+
<Group>
|
112
|
+
<Image
|
113
|
+
image={image}
|
114
|
+
x={0}
|
115
|
+
y={0}
|
116
|
+
width={image.width()}
|
117
|
+
height={image.height()}
|
118
|
+
fit="none"
|
119
|
+
transform={transform}
|
120
|
+
/>
|
121
|
+
<Rect rect={screen} color="green" opacity={0.5} />
|
122
|
+
</Group>
|
123
|
+
);
|
124
|
+
processResult(surface, "snapshots/drawings/rotated-scaled-image.png");
|
125
|
+
});
|
126
|
+
});
|
@@ -0,0 +1,46 @@
|
|
1
|
+
import fs from "fs";
|
2
|
+
import path from "path";
|
3
|
+
|
4
|
+
import React from "react";
|
5
|
+
|
6
|
+
import type { SkFont } from "../../skia/types";
|
7
|
+
import { processResult } from "../../__tests__/setup";
|
8
|
+
import { Glyphs } from "../components";
|
9
|
+
|
10
|
+
import { drawOnNode, importSkia } from "./setup";
|
11
|
+
|
12
|
+
let font: SkFont;
|
13
|
+
const fontSize = 64;
|
14
|
+
|
15
|
+
describe("Glyphs", () => {
|
16
|
+
beforeAll(() => {
|
17
|
+
const { Skia } = importSkia();
|
18
|
+
const data = Skia.Data.fromBytes(
|
19
|
+
fs.readFileSync(
|
20
|
+
path.resolve(__dirname, "../../skia/__tests__/assets/Roboto-Medium.ttf")
|
21
|
+
)
|
22
|
+
);
|
23
|
+
const tf = Skia.Typeface.MakeFreeTypeFaceFromData(data);
|
24
|
+
expect(tf !== null).toBe(true);
|
25
|
+
font = Skia.Font(tf!, 64);
|
26
|
+
expect(font !== null).toBe(true);
|
27
|
+
});
|
28
|
+
it("Should draw glyphs in lightblue", () => {
|
29
|
+
const { Skia } = importSkia();
|
30
|
+
const ids = font.getGlyphIDs("ab");
|
31
|
+
const glyphs = [
|
32
|
+
{ id: ids[0], pos: Skia.Point(0, fontSize) },
|
33
|
+
{
|
34
|
+
id: ids[1],
|
35
|
+
pos: Skia.Point(
|
36
|
+
font.getGlyphWidths([ids[0]]).reduce((a, b) => a + b),
|
37
|
+
fontSize
|
38
|
+
),
|
39
|
+
},
|
40
|
+
];
|
41
|
+
const surface = drawOnNode(
|
42
|
+
<Glyphs x={0} y={0} font={font} glyphs={glyphs} color="lightblue" />
|
43
|
+
);
|
44
|
+
processResult(surface, "snapshots/glyphs/simple.png");
|
45
|
+
});
|
46
|
+
});
|
@@ -0,0 +1,45 @@
|
|
1
|
+
import fs from "fs";
|
2
|
+
import path from "path";
|
3
|
+
|
4
|
+
import React from "react";
|
5
|
+
|
6
|
+
import { processResult } from "../../__tests__/setup";
|
7
|
+
import { Fill, ImageShader, Shader } from "../components";
|
8
|
+
|
9
|
+
import { drawOnNode, width, height, importSkia } from "./setup";
|
10
|
+
|
11
|
+
describe("Test Image Component", () => {
|
12
|
+
it("Should display the image with a filter", () => {
|
13
|
+
const { Skia } = importSkia();
|
14
|
+
const image = Skia.Image.MakeImageFromEncoded(
|
15
|
+
Skia.Data.fromBytes(
|
16
|
+
fs.readFileSync(
|
17
|
+
path.resolve(__dirname, "../../skia/__tests__/assets/zurich.jpg")
|
18
|
+
)
|
19
|
+
)
|
20
|
+
)!;
|
21
|
+
const filter = Skia.RuntimeEffect.Make(`
|
22
|
+
uniform shader image;
|
23
|
+
uniform float r;
|
24
|
+
|
25
|
+
half4 main(float2 xy) {
|
26
|
+
xy.x += sin(xy.y / r) * 4;
|
27
|
+
return image.eval(xy).rbga;
|
28
|
+
}`)!;
|
29
|
+
const surface = drawOnNode(
|
30
|
+
<Fill>
|
31
|
+
<Shader source={filter} uniforms={{ r: 50 }}>
|
32
|
+
<ImageShader
|
33
|
+
image={image}
|
34
|
+
fit="cover"
|
35
|
+
x={0}
|
36
|
+
y={0}
|
37
|
+
width={width}
|
38
|
+
height={height}
|
39
|
+
/>
|
40
|
+
</Shader>
|
41
|
+
</Fill>
|
42
|
+
);
|
43
|
+
processResult(surface, "snapshots/images/filter.png");
|
44
|
+
});
|
45
|
+
});
|