@shopify/react-native-skia 1.7.5 → 1.7.7
Sign up to get free protection for your applications and to get access to all the features.
- package/android/cpp/rnskia-android/OpenGLWindowContext.h +8 -1
- package/android/cpp/rnskia-android/RNSkOpenGLCanvasProvider.cpp +4 -4
- package/android/cpp/rnskia-android/RNSkOpenGLCanvasProvider.h +2 -2
- package/android/src/main/java/com/shopify/reactnative/skia/SkiaBaseView.java +13 -0
- package/android/src/main/java/com/shopify/reactnative/skia/SkiaTextureView.java +24 -1
- package/cpp/rnskia/RNSkJsiViewApi.h +0 -3
- package/cpp/rnskia/RNSkView.h +6 -6
- package/ios/RNSkia-iOS/RNSkMetalCanvasProvider.h +2 -2
- package/ios/RNSkia-iOS/RNSkMetalCanvasProvider.mm +2 -2
- package/lib/commonjs/dom/nodes/JsiSkDOM.js +2 -2
- package/lib/commonjs/dom/nodes/JsiSkDOM.js.map +1 -1
- package/lib/commonjs/dom/nodes/datatypes/Circle.d.ts +2 -3
- package/lib/commonjs/dom/nodes/datatypes/Circle.js +11 -6
- package/lib/commonjs/dom/nodes/datatypes/Circle.js.map +1 -1
- package/lib/commonjs/dom/nodes/datatypes/Enum.js +1 -0
- package/lib/commonjs/dom/nodes/datatypes/Enum.js.map +1 -1
- package/lib/commonjs/dom/nodes/datatypes/Fitting.js +1 -10
- package/lib/commonjs/dom/nodes/datatypes/Fitting.js.map +1 -1
- package/lib/commonjs/dom/nodes/datatypes/Gradient.js +3 -2
- package/lib/commonjs/dom/nodes/datatypes/Gradient.js.map +1 -1
- package/lib/commonjs/dom/nodes/datatypes/Path.js +4 -1
- package/lib/commonjs/dom/nodes/datatypes/Path.js.map +1 -1
- package/lib/commonjs/dom/nodes/datatypes/Radius.js +1 -0
- package/lib/commonjs/dom/nodes/datatypes/Radius.js.map +1 -1
- package/lib/commonjs/dom/nodes/datatypes/Rect.d.ts +3 -1
- package/lib/commonjs/dom/nodes/datatypes/Rect.js +17 -7
- package/lib/commonjs/dom/nodes/datatypes/Rect.js.map +1 -1
- package/lib/commonjs/dom/nodes/datatypes/Transform.d.ts +2 -1
- package/lib/commonjs/dom/nodes/datatypes/Transform.js +32 -1
- package/lib/commonjs/dom/nodes/datatypes/Transform.js.map +1 -1
- package/lib/commonjs/dom/nodes/drawings/Box.js +4 -5
- package/lib/commonjs/dom/nodes/drawings/Box.js.map +1 -1
- package/lib/commonjs/dom/nodes/drawings/CircleNode.js +1 -1
- package/lib/commonjs/dom/nodes/drawings/CircleNode.js.map +1 -1
- package/lib/commonjs/dom/types/DeclarationContext.d.ts +4 -4
- package/lib/commonjs/dom/types/DeclarationContext.js +8 -2
- package/lib/commonjs/dom/types/DeclarationContext.js.map +1 -1
- package/lib/commonjs/external/reanimated/renderHelpers.d.ts +2 -0
- package/lib/commonjs/external/reanimated/renderHelpers.js +11 -6
- package/lib/commonjs/external/reanimated/renderHelpers.js.map +1 -1
- package/lib/commonjs/renderer/HostConfig.js +8 -4
- package/lib/commonjs/renderer/HostConfig.js.map +1 -1
- package/lib/commonjs/renderer/__tests__/setup.d.ts +2 -3
- package/lib/commonjs/renderer/processors/Animations/Animations.d.ts +1 -2
- package/lib/commonjs/renderer/processors/Animations/Animations.js.map +1 -1
- package/lib/commonjs/renderer/typeddash.js +5 -1
- package/lib/commonjs/renderer/typeddash.js.map +1 -1
- package/lib/commonjs/skia/__tests__/setup.d.ts +0 -3
- package/lib/commonjs/skia/types/Path/Path.js +5 -1
- package/lib/commonjs/skia/types/Path/Path.js.map +1 -1
- package/lib/commonjs/skia/types/RRect.d.ts +1 -1
- package/lib/commonjs/skia/types/RRect.js +7 -3
- package/lib/commonjs/skia/types/RRect.js.map +1 -1
- package/lib/commonjs/skia/types/Shader/Shader.js +8 -6
- package/lib/commonjs/skia/types/Shader/Shader.js.map +1 -1
- package/lib/commonjs/skia/web/JsiSkParagraphStyle.js +1 -1
- package/lib/commonjs/skia/web/JsiSkParagraphStyle.js.map +1 -1
- package/lib/commonjs/sksg/Container.d.ts +19 -0
- package/lib/commonjs/sksg/Container.js +102 -0
- package/lib/commonjs/sksg/Container.js.map +1 -0
- package/lib/commonjs/sksg/DrawingContext.d.ts +16 -0
- package/lib/commonjs/sksg/DrawingContext.js +186 -0
- package/lib/commonjs/sksg/DrawingContext.js.map +1 -0
- package/lib/commonjs/sksg/HostConfig.d.ts +19 -0
- package/lib/commonjs/sksg/HostConfig.js +168 -0
- package/lib/commonjs/sksg/HostConfig.js.map +1 -0
- package/lib/commonjs/sksg/Reconciler.d.ts +17 -0
- package/lib/commonjs/sksg/Reconciler.js +54 -0
- package/lib/commonjs/sksg/Reconciler.js.map +1 -0
- package/lib/commonjs/sksg/__tests__/MockDeclaration.d.ts +57 -0
- package/lib/commonjs/sksg/nodes/Node.d.ts +7 -0
- package/lib/commonjs/sksg/nodes/Node.js +6 -0
- package/lib/commonjs/sksg/nodes/Node.js.map +1 -0
- package/lib/commonjs/sksg/nodes/colorFilters.d.ts +7 -0
- package/lib/commonjs/sksg/nodes/colorFilters.js +55 -0
- package/lib/commonjs/sksg/nodes/colorFilters.js.map +1 -0
- package/lib/commonjs/sksg/nodes/context.d.ts +3 -0
- package/lib/commonjs/sksg/nodes/context.js +448 -0
- package/lib/commonjs/sksg/nodes/context.js.map +1 -0
- package/lib/commonjs/sksg/nodes/drawings.d.ts +31 -0
- package/lib/commonjs/sksg/nodes/drawings.js +361 -0
- package/lib/commonjs/sksg/nodes/drawings.js.map +1 -0
- package/lib/commonjs/sksg/nodes/imageFilters.d.ts +14 -0
- package/lib/commonjs/sksg/nodes/imageFilters.js +135 -0
- package/lib/commonjs/sksg/nodes/imageFilters.js.map +1 -0
- package/lib/commonjs/sksg/nodes/index.d.ts +3 -0
- package/lib/commonjs/sksg/nodes/index.js +39 -0
- package/lib/commonjs/sksg/nodes/index.js.map +1 -0
- package/lib/commonjs/sksg/nodes/paint.d.ts +2 -0
- package/lib/commonjs/sksg/nodes/paint.js +80 -0
- package/lib/commonjs/sksg/nodes/paint.js.map +1 -0
- package/lib/commonjs/sksg/nodes/pathEffects.d.ts +8 -0
- package/lib/commonjs/sksg/nodes/pathEffects.js +84 -0
- package/lib/commonjs/sksg/nodes/pathEffects.js.map +1 -0
- package/lib/commonjs/sksg/nodes/shaders.d.ts +10 -0
- package/lib/commonjs/sksg/nodes/shaders.js +156 -0
- package/lib/commonjs/sksg/nodes/shaders.js.map +1 -0
- package/lib/commonjs/sksg/nodes/utils.d.ts +3 -0
- package/lib/commonjs/sksg/nodes/utils.js +25 -0
- package/lib/commonjs/sksg/nodes/utils.js.map +1 -0
- package/lib/commonjs/views/SkiaDomView.js +3 -1
- package/lib/commonjs/views/SkiaDomView.js.map +1 -1
- package/lib/commonjs/views/SkiaPictureView.js +0 -2
- package/lib/commonjs/views/SkiaPictureView.js.map +1 -1
- package/lib/commonjs/views/types.d.ts +2 -2
- package/lib/commonjs/views/types.js.map +1 -1
- package/lib/module/dom/nodes/JsiSkDOM.js +2 -2
- package/lib/module/dom/nodes/JsiSkDOM.js.map +1 -1
- package/lib/module/dom/nodes/datatypes/Circle.d.ts +2 -3
- package/lib/module/dom/nodes/datatypes/Circle.js +12 -6
- package/lib/module/dom/nodes/datatypes/Circle.js.map +1 -1
- package/lib/module/dom/nodes/datatypes/Enum.js +2 -0
- package/lib/module/dom/nodes/datatypes/Enum.js.map +1 -1
- package/lib/module/dom/nodes/datatypes/Fitting.js +2 -10
- package/lib/module/dom/nodes/datatypes/Fitting.js.map +1 -1
- package/lib/module/dom/nodes/datatypes/Gradient.js +4 -2
- package/lib/module/dom/nodes/datatypes/Gradient.js.map +1 -1
- package/lib/module/dom/nodes/datatypes/Path.js +5 -1
- package/lib/module/dom/nodes/datatypes/Path.js.map +1 -1
- package/lib/module/dom/nodes/datatypes/Radius.js +2 -0
- package/lib/module/dom/nodes/datatypes/Radius.js.map +1 -1
- package/lib/module/dom/nodes/datatypes/Rect.d.ts +3 -1
- package/lib/module/dom/nodes/datatypes/Rect.js +14 -5
- package/lib/module/dom/nodes/datatypes/Rect.js.map +1 -1
- package/lib/module/dom/nodes/datatypes/Transform.d.ts +2 -1
- package/lib/module/dom/nodes/datatypes/Transform.js +31 -0
- package/lib/module/dom/nodes/datatypes/Transform.js.map +1 -1
- package/lib/module/dom/nodes/drawings/Box.js +1 -2
- package/lib/module/dom/nodes/drawings/Box.js.map +1 -1
- package/lib/module/dom/nodes/drawings/CircleNode.js +1 -1
- package/lib/module/dom/nodes/drawings/CircleNode.js.map +1 -1
- package/lib/module/dom/types/DeclarationContext.d.ts +4 -4
- package/lib/module/dom/types/DeclarationContext.js +9 -2
- package/lib/module/dom/types/DeclarationContext.js.map +1 -1
- package/lib/module/external/reanimated/renderHelpers.d.ts +2 -0
- package/lib/module/external/reanimated/renderHelpers.js +8 -4
- package/lib/module/external/reanimated/renderHelpers.js.map +1 -1
- package/lib/module/renderer/HostConfig.js +8 -4
- package/lib/module/renderer/HostConfig.js.map +1 -1
- package/lib/module/renderer/__tests__/setup.d.ts +2 -3
- package/lib/module/renderer/processors/Animations/Animations.d.ts +1 -2
- package/lib/module/renderer/processors/Animations/Animations.js.map +1 -1
- package/lib/module/renderer/typeddash.js +5 -1
- package/lib/module/renderer/typeddash.js.map +1 -1
- package/lib/module/skia/__tests__/setup.d.ts +0 -3
- package/lib/module/skia/types/Path/Path.js +5 -1
- package/lib/module/skia/types/Path/Path.js.map +1 -1
- package/lib/module/skia/types/RRect.d.ts +1 -1
- package/lib/module/skia/types/RRect.js +7 -3
- package/lib/module/skia/types/RRect.js.map +1 -1
- package/lib/module/skia/types/Shader/Shader.js +9 -6
- package/lib/module/skia/types/Shader/Shader.js.map +1 -1
- package/lib/module/skia/web/JsiSkParagraphStyle.js +1 -1
- package/lib/module/skia/web/JsiSkParagraphStyle.js.map +1 -1
- package/lib/module/sksg/Container.d.ts +19 -0
- package/lib/module/sksg/Container.js +94 -0
- package/lib/module/sksg/Container.js.map +1 -0
- package/lib/module/sksg/DrawingContext.d.ts +16 -0
- package/lib/module/sksg/DrawingContext.js +180 -0
- package/lib/module/sksg/DrawingContext.js.map +1 -0
- package/lib/module/sksg/HostConfig.d.ts +19 -0
- package/lib/module/sksg/HostConfig.js +161 -0
- package/lib/module/sksg/HostConfig.js.map +1 -0
- package/lib/module/sksg/Reconciler.d.ts +17 -0
- package/lib/module/sksg/Reconciler.js +46 -0
- package/lib/module/sksg/Reconciler.js.map +1 -0
- package/lib/module/sksg/__tests__/MockDeclaration.d.ts +57 -0
- package/lib/module/sksg/nodes/Node.d.ts +7 -0
- package/lib/module/sksg/nodes/Node.js +2 -0
- package/lib/module/sksg/nodes/Node.js.map +1 -0
- package/lib/module/sksg/nodes/colorFilters.d.ts +7 -0
- package/lib/module/sksg/nodes/colorFilters.js +44 -0
- package/lib/module/sksg/nodes/colorFilters.js.map +1 -0
- package/lib/module/sksg/nodes/context.d.ts +3 -0
- package/lib/module/sksg/nodes/context.js +443 -0
- package/lib/module/sksg/nodes/context.js.map +1 -0
- package/lib/module/sksg/nodes/drawings.d.ts +31 -0
- package/lib/module/sksg/nodes/drawings.js +334 -0
- package/lib/module/sksg/nodes/drawings.js.map +1 -0
- package/lib/module/sksg/nodes/imageFilters.d.ts +14 -0
- package/lib/module/sksg/nodes/imageFilters.js +122 -0
- package/lib/module/sksg/nodes/imageFilters.js.map +1 -0
- package/lib/module/sksg/nodes/index.d.ts +3 -0
- package/lib/module/sksg/nodes/index.js +4 -0
- package/lib/module/sksg/nodes/index.js.map +1 -0
- package/lib/module/sksg/nodes/paint.d.ts +2 -0
- package/lib/module/sksg/nodes/paint.js +74 -0
- package/lib/module/sksg/nodes/paint.js.map +1 -0
- package/lib/module/sksg/nodes/pathEffects.d.ts +8 -0
- package/lib/module/sksg/nodes/pathEffects.js +72 -0
- package/lib/module/sksg/nodes/pathEffects.js.map +1 -0
- package/lib/module/sksg/nodes/shaders.d.ts +10 -0
- package/lib/module/sksg/nodes/shaders.js +142 -0
- package/lib/module/sksg/nodes/shaders.js.map +1 -0
- package/lib/module/sksg/nodes/utils.d.ts +3 -0
- package/lib/module/sksg/nodes/utils.js +18 -0
- package/lib/module/sksg/nodes/utils.js.map +1 -0
- package/lib/module/views/SkiaDomView.js +3 -1
- package/lib/module/views/SkiaDomView.js.map +1 -1
- package/lib/module/views/SkiaPictureView.js +0 -2
- package/lib/module/views/SkiaPictureView.js.map +1 -1
- package/lib/module/views/types.d.ts +2 -2
- package/lib/module/views/types.js.map +1 -1
- package/lib/typescript/lib/commonjs/dom/nodes/datatypes/Circle.d.ts +1 -1
- package/lib/typescript/lib/commonjs/dom/nodes/datatypes/Rect.d.ts +2 -0
- package/lib/typescript/lib/commonjs/dom/nodes/datatypes/Transform.d.ts +1 -0
- package/lib/typescript/lib/commonjs/external/reanimated/renderHelpers.d.ts +2 -0
- package/lib/typescript/lib/commonjs/renderer/HostConfig.d.ts +3 -1
- package/lib/typescript/lib/commonjs/sksg/Container.d.ts +16 -0
- package/lib/typescript/lib/commonjs/sksg/DrawingContext.d.ts +26 -0
- package/lib/typescript/lib/commonjs/sksg/HostConfig.d.ts +50 -0
- package/lib/typescript/lib/commonjs/sksg/Reconciler.d.ts +16 -0
- package/lib/typescript/lib/commonjs/sksg/nodes/Node.d.ts +1 -0
- package/lib/typescript/lib/commonjs/sksg/nodes/colorFilters.d.ts +7 -0
- package/lib/typescript/lib/commonjs/sksg/nodes/context.d.ts +2 -0
- package/lib/typescript/lib/commonjs/sksg/nodes/drawings.d.ts +23 -0
- package/lib/typescript/lib/commonjs/sksg/nodes/imageFilters.d.ts +10 -0
- package/lib/typescript/lib/commonjs/sksg/nodes/index.d.ts +1 -0
- package/lib/typescript/lib/commonjs/sksg/nodes/paint.d.ts +2 -0
- package/lib/typescript/lib/commonjs/sksg/nodes/pathEffects.d.ts +8 -0
- package/lib/typescript/lib/commonjs/sksg/nodes/shaders.d.ts +10 -0
- package/lib/typescript/lib/commonjs/sksg/nodes/utils.d.ts +3 -0
- package/lib/typescript/lib/module/dom/nodes/datatypes/Circle.d.ts +1 -1
- package/lib/typescript/lib/module/dom/nodes/datatypes/Rect.d.ts +2 -0
- package/lib/typescript/lib/module/dom/nodes/datatypes/Transform.d.ts +1 -0
- package/lib/typescript/lib/module/external/reanimated/renderHelpers.d.ts +2 -0
- package/lib/typescript/lib/module/mock/index.d.ts +4 -1
- package/lib/typescript/lib/module/renderer/HostConfig.d.ts +3 -1
- package/lib/typescript/lib/module/sksg/Container.d.ts +15 -0
- package/lib/typescript/lib/module/sksg/DrawingContext.d.ts +26 -0
- package/lib/typescript/lib/module/sksg/HostConfig.d.ts +49 -0
- package/lib/typescript/lib/module/sksg/Reconciler.d.ts +15 -0
- package/lib/typescript/lib/module/sksg/nodes/colorFilters.d.ts +6 -0
- package/lib/typescript/lib/module/sksg/nodes/context.d.ts +1 -0
- package/lib/typescript/lib/module/sksg/nodes/drawings.d.ts +22 -0
- package/lib/typescript/lib/module/sksg/nodes/imageFilters.d.ts +9 -0
- package/lib/typescript/lib/module/sksg/nodes/index.d.ts +3 -0
- package/lib/typescript/lib/module/sksg/nodes/paint.d.ts +1 -0
- package/lib/typescript/lib/module/sksg/nodes/pathEffects.d.ts +7 -0
- package/lib/typescript/lib/module/sksg/nodes/shaders.d.ts +9 -0
- package/lib/typescript/lib/module/sksg/nodes/utils.d.ts +2 -0
- package/lib/typescript/src/dom/nodes/datatypes/Circle.d.ts +2 -3
- package/lib/typescript/src/dom/nodes/datatypes/Rect.d.ts +3 -1
- package/lib/typescript/src/dom/nodes/datatypes/Transform.d.ts +2 -1
- package/lib/typescript/src/dom/types/DeclarationContext.d.ts +4 -4
- package/lib/typescript/src/external/reanimated/renderHelpers.d.ts +2 -0
- package/lib/typescript/src/renderer/__tests__/setup.d.ts +2 -3
- package/lib/typescript/src/renderer/processors/Animations/Animations.d.ts +1 -2
- package/lib/typescript/src/skia/__tests__/setup.d.ts +0 -3
- package/lib/typescript/src/skia/types/RRect.d.ts +1 -1
- package/lib/typescript/src/sksg/Container.d.ts +19 -0
- package/lib/typescript/src/sksg/DrawingContext.d.ts +16 -0
- package/lib/typescript/src/sksg/HostConfig.d.ts +19 -0
- package/lib/typescript/src/sksg/Reconciler.d.ts +17 -0
- package/lib/typescript/src/sksg/__tests__/MockDeclaration.d.ts +57 -0
- package/lib/typescript/src/sksg/nodes/Node.d.ts +7 -0
- package/lib/typescript/src/sksg/nodes/colorFilters.d.ts +7 -0
- package/lib/typescript/src/sksg/nodes/context.d.ts +3 -0
- package/lib/typescript/src/sksg/nodes/drawings.d.ts +31 -0
- package/lib/typescript/src/sksg/nodes/imageFilters.d.ts +14 -0
- package/lib/typescript/src/sksg/nodes/index.d.ts +3 -0
- package/lib/typescript/src/sksg/nodes/paint.d.ts +2 -0
- package/lib/typescript/src/sksg/nodes/pathEffects.d.ts +8 -0
- package/lib/typescript/src/sksg/nodes/shaders.d.ts +10 -0
- package/lib/typescript/src/sksg/nodes/utils.d.ts +3 -0
- package/lib/typescript/src/views/types.d.ts +2 -2
- package/libs/{ios → apple}/libskia.xcframework/Info.plist +15 -0
- package/libs/{ios → apple}/libskia.xcframework/ios-arm64_arm64e/libskia.a +0 -0
- package/libs/{ios → apple}/libskia.xcframework/ios-arm64_arm64e_x86_64-simulator/libskia.a +0 -0
- package/libs/apple/libskia.xcframework/macos-arm64_x86_64/libskia.a +0 -0
- package/libs/{ios → apple}/libskottie.xcframework/Info.plist +20 -5
- package/libs/{ios → apple}/libskottie.xcframework/ios-arm64_arm64e/libskottie.a +0 -0
- package/libs/{ios → apple}/libskottie.xcframework/ios-arm64_arm64e_x86_64-simulator/libskottie.a +0 -0
- package/libs/apple/libskottie.xcframework/macos-arm64_x86_64/libskottie.a +0 -0
- package/libs/{ios → apple}/libskparagraph.xcframework/Info.plist +20 -5
- package/libs/{ios → apple}/libskparagraph.xcframework/ios-arm64_arm64e/libskparagraph.a +0 -0
- package/libs/{ios → apple}/libskparagraph.xcframework/ios-arm64_arm64e_x86_64-simulator/libskparagraph.a +0 -0
- package/libs/apple/libskparagraph.xcframework/macos-arm64_x86_64/libskparagraph.a +0 -0
- package/libs/{ios → apple}/libsksg.xcframework/Info.plist +15 -0
- package/libs/{ios → apple}/libsksg.xcframework/ios-arm64_arm64e/libsksg.a +0 -0
- package/libs/{ios → apple}/libsksg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsksg.a +0 -0
- package/libs/apple/libsksg.xcframework/macos-arm64_x86_64/libsksg.a +0 -0
- package/libs/{ios → apple}/libskshaper.xcframework/Info.plist +20 -5
- package/libs/{ios → apple}/libskshaper.xcframework/ios-arm64_arm64e/libskshaper.a +0 -0
- package/libs/{ios → apple}/libskshaper.xcframework/ios-arm64_arm64e_x86_64-simulator/libskshaper.a +0 -0
- package/libs/apple/libskshaper.xcframework/macos-arm64_x86_64/libskshaper.a +0 -0
- package/libs/{ios → apple}/libskunicode_core.xcframework/Info.plist +18 -3
- package/libs/{ios → apple}/libskunicode_core.xcframework/ios-arm64_arm64e/libskunicode_core.a +0 -0
- package/libs/{ios → apple}/libskunicode_core.xcframework/ios-arm64_arm64e_x86_64-simulator/libskunicode_core.a +0 -0
- package/libs/apple/libskunicode_core.xcframework/macos-arm64_x86_64/libskunicode_core.a +0 -0
- package/libs/{ios → apple}/libskunicode_libgrapheme.xcframework/Info.plist +15 -0
- package/libs/{ios → apple}/libskunicode_libgrapheme.xcframework/ios-arm64_arm64e/libskunicode_libgrapheme.a +0 -0
- package/libs/{ios → apple}/libskunicode_libgrapheme.xcframework/ios-arm64_arm64e_x86_64-simulator/libskunicode_libgrapheme.a +0 -0
- package/libs/apple/libskunicode_libgrapheme.xcframework/macos-arm64_x86_64/libskunicode_libgrapheme.a +0 -0
- package/libs/{ios → apple}/libsvg.xcframework/Info.plist +15 -0
- package/libs/{ios → apple}/libsvg.xcframework/ios-arm64_arm64e/libsvg.a +0 -0
- package/libs/{ios → apple}/libsvg.xcframework/ios-arm64_arm64e_x86_64-simulator/libsvg.a +0 -0
- package/libs/apple/libsvg.xcframework/macos-arm64_x86_64/libsvg.a +0 -0
- package/package.json +3 -3
- package/react-native-skia.podspec +9 -9
- package/src/__tests__/setup.ts +1 -1
- package/src/__tests__/snapshots/sksg/breathe-0.png +0 -0
- package/src/__tests__/snapshots/sksg/breathe.png +0 -0
- package/src/__tests__/snapshots/sksg/simple.png +0 -0
- package/src/__tests__/snapshots/sksg/simple2.png +0 -0
- package/src/dom/nodes/JsiSkDOM.ts +2 -4
- package/src/dom/nodes/datatypes/Circle.ts +7 -5
- package/src/dom/nodes/datatypes/Enum.ts +2 -0
- package/src/dom/nodes/datatypes/Fitting.ts +2 -5
- package/src/dom/nodes/datatypes/Gradient.ts +4 -7
- package/src/dom/nodes/datatypes/Path.ts +5 -2
- package/src/dom/nodes/datatypes/Radius.ts +2 -0
- package/src/dom/nodes/datatypes/Rect.ts +40 -6
- package/src/dom/nodes/datatypes/Transform.ts +29 -1
- package/src/dom/nodes/drawings/Box.ts +1 -29
- package/src/dom/nodes/drawings/CircleNode.ts +1 -1
- package/src/dom/types/DeclarationContext.ts +12 -2
- package/src/external/reanimated/renderHelpers.ts +8 -4
- package/src/renderer/HostConfig.ts +10 -4
- package/src/renderer/__tests__/documentation/shapes/Box.spec.tsx +2 -2
- package/src/renderer/__tests__/setup.tsx +17 -15
- package/src/renderer/processors/Animations/Animations.ts +1 -5
- package/src/renderer/typeddash.ts +4 -2
- package/src/skia/__tests__/setup.ts +1 -51
- package/src/skia/types/Path/Path.ts +4 -2
- package/src/skia/types/RRect.ts +9 -3
- package/src/skia/types/Shader/Shader.ts +7 -4
- package/src/skia/web/JsiSkParagraphStyle.ts +1 -3
- package/src/sksg/Container.ts +102 -0
- package/src/sksg/DrawingContext.ts +221 -0
- package/src/sksg/HostConfig.ts +287 -0
- package/src/sksg/Reconciler.ts +59 -0
- package/src/sksg/__tests__/Declarations.spec.tsx +235 -0
- package/src/sksg/__tests__/MockDeclaration.ts +140 -0
- package/src/sksg/__tests__/Simple.spec.tsx +148 -0
- package/src/sksg/nodes/Node.ts +8 -0
- package/src/sksg/nodes/colorFilters.ts +60 -0
- package/src/sksg/nodes/context.ts +489 -0
- package/src/sksg/nodes/drawings.ts +393 -0
- package/src/sksg/nodes/imageFilters.ts +183 -0
- package/src/sksg/nodes/index.ts +3 -0
- package/src/sksg/nodes/paint.ts +75 -0
- package/src/sksg/nodes/pathEffects.ts +95 -0
- package/src/sksg/nodes/shaders.ts +203 -0
- package/src/sksg/nodes/utils.ts +23 -0
- package/src/views/SkiaDomView.tsx +3 -1
- package/src/views/SkiaPictureView.tsx +0 -2
- package/src/views/types.ts +2 -2
- package/lib/commonjs/dom/__tests__/Shaders.spec.d.ts +0 -1
- package/lib/commonjs/renderer/__tests__/SkiaDOM.spec.d.ts +0 -1
- package/lib/module/dom/__tests__/Compose.spec.d.ts +0 -1
- package/lib/module/dom/__tests__/Demos.spec.d.ts +0 -1
- package/lib/module/dom/__tests__/DrawingContext.spec.d.ts +0 -1
- package/lib/module/dom/__tests__/Drawings.spec.d.ts +0 -1
- package/lib/module/dom/__tests__/Group.spec.d.ts +0 -1
- package/lib/module/dom/__tests__/Paint.spec.d.ts +0 -1
- package/lib/module/dom/__tests__/RenderNodes.spec.d.ts +0 -1
- package/lib/module/dom/__tests__/Shaders.spec.d.ts +0 -1
- package/lib/module/renderer/__tests__/SkiaDOM.spec.d.ts +0 -1
- package/lib/typescript/src/dom/__tests__/Compose.spec.d.ts +0 -1
- package/lib/typescript/src/dom/__tests__/Demos.spec.d.ts +0 -1
- package/lib/typescript/src/dom/__tests__/DrawingContext.spec.d.ts +0 -1
- package/lib/typescript/src/dom/__tests__/Drawings.spec.d.ts +0 -1
- package/lib/typescript/src/dom/__tests__/Group.spec.d.ts +0 -1
- package/lib/typescript/src/dom/__tests__/Paint.spec.d.ts +0 -1
- package/lib/typescript/src/dom/__tests__/RenderNodes.spec.d.ts +0 -1
- package/lib/typescript/src/dom/__tests__/Shaders.spec.d.ts +0 -1
- package/lib/typescript/src/renderer/__tests__/SkiaDOM.spec.d.ts +0 -1
- package/src/dom/__tests__/Compose.spec.tsx +0 -42
- package/src/dom/__tests__/Demos.spec.tsx +0 -145
- package/src/dom/__tests__/DrawingContext.spec.tsx +0 -99
- package/src/dom/__tests__/Drawings.spec.tsx +0 -95
- package/src/dom/__tests__/Group.spec.tsx +0 -132
- package/src/dom/__tests__/Paint.spec.tsx +0 -100
- package/src/dom/__tests__/RenderNodes.spec.tsx +0 -44
- package/src/dom/__tests__/Shaders.spec.tsx +0 -123
- package/src/renderer/__tests__/SkiaDOM.spec.tsx +0 -46
- /package/lib/commonjs/{dom/__tests__/Compose.spec.d.ts → sksg/__tests__/Declarations.spec.d.ts} +0 -0
- /package/lib/commonjs/{dom/__tests__/Demos.spec.d.ts → sksg/__tests__/Simple.spec.d.ts} +0 -0
- /package/lib/{commonjs/dom/__tests__/DrawingContext.spec.d.ts → module/sksg/__tests__/Declarations.spec.d.ts} +0 -0
- /package/lib/{commonjs/dom/__tests__/Drawings.spec.d.ts → module/sksg/__tests__/Simple.spec.d.ts} +0 -0
- /package/lib/{commonjs/dom/__tests__/Group.spec.d.ts → typescript/lib/module/sksg/nodes/Node.d.ts} +0 -0
- /package/lib/{commonjs/dom/__tests__/Paint.spec.d.ts → typescript/src/sksg/__tests__/Declarations.spec.d.ts} +0 -0
- /package/lib/{commonjs/dom/__tests__/RenderNodes.spec.d.ts → typescript/src/sksg/__tests__/Simple.spec.d.ts} +0 -0
@@ -0,0 +1,80 @@
|
|
1
|
+
"use strict";
|
2
|
+
"worklet";
|
3
|
+
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
5
|
+
value: true
|
6
|
+
});
|
7
|
+
exports.declarePaint = void 0;
|
8
|
+
var _nodes = require("../../dom/nodes");
|
9
|
+
var _types = require("../../skia/types");
|
10
|
+
const declarePaint = (ctx, props) => {
|
11
|
+
const {
|
12
|
+
color,
|
13
|
+
strokeWidth,
|
14
|
+
blendMode,
|
15
|
+
style,
|
16
|
+
strokeJoin,
|
17
|
+
strokeCap,
|
18
|
+
strokeMiter,
|
19
|
+
opacity,
|
20
|
+
antiAlias,
|
21
|
+
dither
|
22
|
+
} = props;
|
23
|
+
const paint = ctx.Skia.Paint();
|
24
|
+
if (color !== undefined) {
|
25
|
+
paint.setColor(ctx.Skia.Color(color));
|
26
|
+
}
|
27
|
+
if (strokeWidth !== undefined) {
|
28
|
+
paint.setStrokeWidth(strokeWidth);
|
29
|
+
}
|
30
|
+
if (blendMode !== undefined) {
|
31
|
+
paint.setBlendMode(_types.BlendMode[(0, _nodes.enumKey)(blendMode)]);
|
32
|
+
}
|
33
|
+
if (style !== undefined) {
|
34
|
+
paint.setStyle(_types.PaintStyle[(0, _nodes.enumKey)(style)]);
|
35
|
+
}
|
36
|
+
if (strokeJoin !== undefined) {
|
37
|
+
paint.setStrokeJoin(_types.StrokeJoin[(0, _nodes.enumKey)(strokeJoin)]);
|
38
|
+
}
|
39
|
+
if (strokeCap !== undefined) {
|
40
|
+
paint.setStrokeCap(_types.StrokeCap[(0, _nodes.enumKey)(strokeCap)]);
|
41
|
+
}
|
42
|
+
if (strokeMiter !== undefined) {
|
43
|
+
paint.setStrokeMiter(strokeMiter);
|
44
|
+
}
|
45
|
+
if (opacity !== undefined) {
|
46
|
+
paint.setAlphaf(opacity);
|
47
|
+
}
|
48
|
+
if (antiAlias !== undefined) {
|
49
|
+
paint.setAntiAlias(antiAlias);
|
50
|
+
}
|
51
|
+
if (dither !== undefined) {
|
52
|
+
paint.setDither(dither);
|
53
|
+
}
|
54
|
+
//ctx.save();
|
55
|
+
|
56
|
+
const colorFilter = ctx.colorFilters.popAllAsOne();
|
57
|
+
const imageFilter = ctx.imageFilters.popAllAsOne();
|
58
|
+
const shader = ctx.shaders.pop();
|
59
|
+
const maskFilter = ctx.maskFilters.pop();
|
60
|
+
const pathEffect = ctx.pathEffects.popAllAsOne();
|
61
|
+
//ctx.restore();
|
62
|
+
if (imageFilter) {
|
63
|
+
paint.setImageFilter(imageFilter);
|
64
|
+
}
|
65
|
+
if (shader) {
|
66
|
+
paint.setShader(shader);
|
67
|
+
}
|
68
|
+
if (pathEffect) {
|
69
|
+
paint.setPathEffect(pathEffect);
|
70
|
+
}
|
71
|
+
if (colorFilter) {
|
72
|
+
paint.setColorFilter(colorFilter);
|
73
|
+
}
|
74
|
+
if (maskFilter) {
|
75
|
+
paint.setMaskFilter(maskFilter);
|
76
|
+
}
|
77
|
+
ctx.paints.push(paint);
|
78
|
+
};
|
79
|
+
exports.declarePaint = declarePaint;
|
80
|
+
//# sourceMappingURL=paint.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["Object","defineProperty","exports","value","declarePaint","_nodes","require","_types","ctx","props","color","strokeWidth","blendMode","style","strokeJoin","strokeCap","strokeMiter","opacity","antiAlias","dither","paint","Skia","Paint","undefined","setColor","Color","setStrokeWidth","setBlendMode","BlendMode","enumKey","setStyle","PaintStyle","setStrokeJoin","StrokeJoin","setStrokeCap","StrokeCap","setStrokeMiter","setAlphaf","setAntiAlias","setDither","colorFilter","colorFilters","popAllAsOne","imageFilter","imageFilters","shader","shaders","pop","maskFilter","maskFilters","pathEffect","pathEffects","setImageFilter","setShader","setPathEffect","setColorFilter","setMaskFilter","paints","push"],"sources":["paint.ts"],"sourcesContent":["\"worklet\";\n\nimport { enumKey } from \"../../dom/nodes\";\nimport type { DeclarationContext, PaintProps } from \"../../dom/types\";\nimport { BlendMode, PaintStyle, StrokeCap, StrokeJoin } from \"../../skia/types\";\n\nexport const declarePaint = (ctx: DeclarationContext, props: PaintProps) => {\n const {\n color,\n strokeWidth,\n blendMode,\n style,\n strokeJoin,\n strokeCap,\n strokeMiter,\n opacity,\n antiAlias,\n dither,\n } = props;\n const paint = ctx.Skia.Paint();\n if (color !== undefined) {\n paint.setColor(ctx.Skia.Color(color));\n }\n if (strokeWidth !== undefined) {\n paint.setStrokeWidth(strokeWidth);\n }\n if (blendMode !== undefined) {\n paint.setBlendMode(BlendMode[enumKey(blendMode)]);\n }\n if (style !== undefined) {\n paint.setStyle(PaintStyle[enumKey(style)]);\n }\n if (strokeJoin !== undefined) {\n paint.setStrokeJoin(StrokeJoin[enumKey(strokeJoin)]);\n }\n if (strokeCap !== undefined) {\n paint.setStrokeCap(StrokeCap[enumKey(strokeCap)]);\n }\n if (strokeMiter !== undefined) {\n paint.setStrokeMiter(strokeMiter);\n }\n if (opacity !== undefined) {\n paint.setAlphaf(opacity);\n }\n if (antiAlias !== undefined) {\n paint.setAntiAlias(antiAlias);\n }\n if (dither !== undefined) {\n paint.setDither(dither);\n }\n //ctx.save();\n\n const colorFilter = ctx.colorFilters.popAllAsOne();\n const imageFilter = ctx.imageFilters.popAllAsOne();\n const shader = ctx.shaders.pop();\n const maskFilter = ctx.maskFilters.pop();\n const pathEffect = ctx.pathEffects.popAllAsOne();\n //ctx.restore();\n if (imageFilter) {\n paint.setImageFilter(imageFilter);\n }\n if (shader) {\n paint.setShader(shader);\n }\n if (pathEffect) {\n paint.setPathEffect(pathEffect);\n }\n if (colorFilter) {\n paint.setColorFilter(colorFilter);\n }\n if (maskFilter) {\n paint.setMaskFilter(maskFilter);\n }\n ctx.paints.push(paint);\n};\n"],"mappings":"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","ignoreList":[]}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import type { CornerPathEffectProps, DashPathEffectProps, DeclarationContext, DiscretePathEffectProps, Line2DPathEffectProps, Path1DPathEffectProps, Path2DPathEffectProps } from "../../dom/types";
|
2
|
+
export declare const makeDiscretePathEffect: (ctx: DeclarationContext, props: DiscretePathEffectProps) => import("../../skia/types").SkPathEffect;
|
3
|
+
export declare const makePath2DPathEffect: (ctx: DeclarationContext, props: Path2DPathEffectProps) => import("../../skia/types").SkPathEffect;
|
4
|
+
export declare const makeDashPathEffect: (ctx: DeclarationContext, props: DashPathEffectProps) => import("../../skia/types").SkPathEffect;
|
5
|
+
export declare const makeCornerPathEffect: (ctx: DeclarationContext, props: CornerPathEffectProps) => import("../../skia/types").SkPathEffect;
|
6
|
+
export declare const declareSumPathEffect: (ctx: DeclarationContext) => void;
|
7
|
+
export declare const makeLine2DPathEffect: (ctx: DeclarationContext, props: Line2DPathEffectProps) => import("../../skia/types").SkPathEffect;
|
8
|
+
export declare const makePath1DPathEffect: (ctx: DeclarationContext, props: Path1DPathEffectProps) => import("../../skia/types").SkPathEffect;
|
@@ -0,0 +1,84 @@
|
|
1
|
+
"use strict";
|
2
|
+
"worklet";
|
3
|
+
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
5
|
+
value: true
|
6
|
+
});
|
7
|
+
exports.makePath2DPathEffect = exports.makePath1DPathEffect = exports.makeLine2DPathEffect = exports.makeDiscretePathEffect = exports.makeDashPathEffect = exports.makeCornerPathEffect = exports.declareSumPathEffect = void 0;
|
8
|
+
var _nodes = require("../../dom/nodes");
|
9
|
+
var _types = require("../../skia/types");
|
10
|
+
const makeDiscretePathEffect = (ctx, props) => {
|
11
|
+
const {
|
12
|
+
length,
|
13
|
+
deviation,
|
14
|
+
seed
|
15
|
+
} = props;
|
16
|
+
return ctx.Skia.PathEffect.MakeDiscrete(length, deviation, seed);
|
17
|
+
};
|
18
|
+
exports.makeDiscretePathEffect = makeDiscretePathEffect;
|
19
|
+
const makePath2DPathEffect = (ctx, props) => {
|
20
|
+
const {
|
21
|
+
matrix
|
22
|
+
} = props;
|
23
|
+
const path = (0, _nodes.processPath)(ctx.Skia, props.path);
|
24
|
+
const pe = ctx.Skia.PathEffect.MakePath2D(matrix, path);
|
25
|
+
if (pe === null) {
|
26
|
+
throw new Error("Path2DPathEffect: invalid path");
|
27
|
+
}
|
28
|
+
return pe;
|
29
|
+
};
|
30
|
+
exports.makePath2DPathEffect = makePath2DPathEffect;
|
31
|
+
const makeDashPathEffect = (ctx, props) => {
|
32
|
+
const {
|
33
|
+
intervals,
|
34
|
+
phase
|
35
|
+
} = props;
|
36
|
+
const pe = ctx.Skia.PathEffect.MakeDash(intervals, phase);
|
37
|
+
return pe;
|
38
|
+
};
|
39
|
+
exports.makeDashPathEffect = makeDashPathEffect;
|
40
|
+
const makeCornerPathEffect = (ctx, props) => {
|
41
|
+
const {
|
42
|
+
r
|
43
|
+
} = props;
|
44
|
+
const pe = ctx.Skia.PathEffect.MakeCorner(r);
|
45
|
+
if (pe === null) {
|
46
|
+
throw new Error("CornerPathEffect: couldn't create path effect");
|
47
|
+
}
|
48
|
+
return pe;
|
49
|
+
};
|
50
|
+
exports.makeCornerPathEffect = makeCornerPathEffect;
|
51
|
+
const declareSumPathEffect = ctx => {
|
52
|
+
// Note: decorateChildren functionality needs to be handled differently
|
53
|
+
const pes = ctx.pathEffects.popAll();
|
54
|
+
const pe = (0, _nodes.composeDeclarations)(pes, ctx.Skia.PathEffect.MakeSum.bind(ctx.Skia.PathEffect));
|
55
|
+
ctx.pathEffects.push(pe);
|
56
|
+
};
|
57
|
+
exports.declareSumPathEffect = declareSumPathEffect;
|
58
|
+
const makeLine2DPathEffect = (ctx, props) => {
|
59
|
+
const {
|
60
|
+
width,
|
61
|
+
matrix
|
62
|
+
} = props;
|
63
|
+
const pe = ctx.Skia.PathEffect.MakeLine2D(width, matrix);
|
64
|
+
if (pe === null) {
|
65
|
+
throw new Error("Line2DPathEffect: could not create path effect");
|
66
|
+
}
|
67
|
+
return pe;
|
68
|
+
};
|
69
|
+
exports.makeLine2DPathEffect = makeLine2DPathEffect;
|
70
|
+
const makePath1DPathEffect = (ctx, props) => {
|
71
|
+
const {
|
72
|
+
advance,
|
73
|
+
phase,
|
74
|
+
style
|
75
|
+
} = props;
|
76
|
+
const path = (0, _nodes.processPath)(ctx.Skia, props.path);
|
77
|
+
const pe = ctx.Skia.PathEffect.MakePath1D(path, advance, phase, _types.Path1DEffectStyle[(0, _nodes.enumKey)(style)]);
|
78
|
+
if (pe === null) {
|
79
|
+
throw new Error("Path1DPathEffect: could not create path effect");
|
80
|
+
}
|
81
|
+
return pe;
|
82
|
+
};
|
83
|
+
exports.makePath1DPathEffect = makePath1DPathEffect;
|
84
|
+
//# sourceMappingURL=pathEffects.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["Object","defineProperty","exports","value","makePath2DPathEffect","makePath1DPathEffect","makeLine2DPathEffect","makeDiscretePathEffect","makeDashPathEffect","makeCornerPathEffect","declareSumPathEffect","_nodes","require","_types","ctx","props","length","deviation","seed","Skia","PathEffect","MakeDiscrete","matrix","path","processPath","pe","MakePath2D","Error","intervals","phase","MakeDash","r","MakeCorner","pes","pathEffects","popAll","composeDeclarations","MakeSum","bind","push","width","MakeLine2D","advance","style","MakePath1D","Path1DEffectStyle","enumKey"],"sources":["pathEffects.ts"],"sourcesContent":["\"worklet\";\n\nimport { composeDeclarations, enumKey, processPath } from \"../../dom/nodes\";\nimport type {\n CornerPathEffectProps,\n DashPathEffectProps,\n DeclarationContext,\n DiscretePathEffectProps,\n Line2DPathEffectProps,\n Path1DPathEffectProps,\n Path2DPathEffectProps,\n} from \"../../dom/types\";\nimport { Path1DEffectStyle } from \"../../skia/types\";\n\nexport const makeDiscretePathEffect = (\n ctx: DeclarationContext,\n props: DiscretePathEffectProps\n) => {\n const { length, deviation, seed } = props;\n return ctx.Skia.PathEffect.MakeDiscrete(length, deviation, seed);\n};\n\nexport const makePath2DPathEffect = (\n ctx: DeclarationContext,\n props: Path2DPathEffectProps\n) => {\n const { matrix } = props;\n const path = processPath(ctx.Skia, props.path);\n const pe = ctx.Skia.PathEffect.MakePath2D(matrix, path);\n if (pe === null) {\n throw new Error(\"Path2DPathEffect: invalid path\");\n }\n return pe;\n};\n\nexport const makeDashPathEffect = (\n ctx: DeclarationContext,\n props: DashPathEffectProps\n) => {\n const { intervals, phase } = props;\n const pe = ctx.Skia.PathEffect.MakeDash(intervals, phase);\n return pe;\n};\n\nexport const makeCornerPathEffect = (\n ctx: DeclarationContext,\n props: CornerPathEffectProps\n) => {\n const { r } = props;\n const pe = ctx.Skia.PathEffect.MakeCorner(r);\n if (pe === null) {\n throw new Error(\"CornerPathEffect: couldn't create path effect\");\n }\n return pe;\n};\n\nexport const declareSumPathEffect = (ctx: DeclarationContext) => {\n // Note: decorateChildren functionality needs to be handled differently\n const pes = ctx.pathEffects.popAll();\n const pe = composeDeclarations(\n pes,\n ctx.Skia.PathEffect.MakeSum.bind(ctx.Skia.PathEffect)\n );\n ctx.pathEffects.push(pe);\n};\n\nexport const makeLine2DPathEffect = (\n ctx: DeclarationContext,\n props: Line2DPathEffectProps\n) => {\n const { width, matrix } = props;\n const pe = ctx.Skia.PathEffect.MakeLine2D(width, matrix);\n if (pe === null) {\n throw new Error(\"Line2DPathEffect: could not create path effect\");\n }\n return pe;\n};\n\nexport const makePath1DPathEffect = (\n ctx: DeclarationContext,\n props: Path1DPathEffectProps\n) => {\n const { advance, phase, style } = props;\n const path = processPath(ctx.Skia, props.path);\n const pe = ctx.Skia.PathEffect.MakePath1D(\n path,\n advance,\n phase,\n Path1DEffectStyle[enumKey(style)]\n );\n if (pe === null) {\n throw new Error(\"Path1DPathEffect: could not create path effect\");\n }\n return pe;\n};\n"],"mappings":"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","ignoreList":[]}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import type { ColorProps, DeclarationContext, FractalNoiseProps, ImageShaderProps, LinearGradientProps, RadialGradientProps, ShaderProps, SweepGradientProps, TurbulenceProps, TwoPointConicalGradientProps } from "../../dom/types";
|
2
|
+
export declare const declareShader: (ctx: DeclarationContext, props: ShaderProps) => void;
|
3
|
+
export declare const declareColorShader: (ctx: DeclarationContext, props: ColorProps) => void;
|
4
|
+
export declare const declareFractalNoiseShader: (ctx: DeclarationContext, props: FractalNoiseProps) => void;
|
5
|
+
export declare const declareTwoPointConicalGradientShader: (ctx: DeclarationContext, props: TwoPointConicalGradientProps) => void;
|
6
|
+
export declare const declareRadialGradientShader: (ctx: DeclarationContext, props: RadialGradientProps) => void;
|
7
|
+
export declare const declareSweepGradientShader: (ctx: DeclarationContext, props: SweepGradientProps) => void;
|
8
|
+
export declare const declareLinearGradientShader: (ctx: DeclarationContext, props: LinearGradientProps) => void;
|
9
|
+
export declare const declareTurbulenceShader: (ctx: DeclarationContext, props: TurbulenceProps) => void;
|
10
|
+
export declare const declareImageShader: (ctx: DeclarationContext, props: ImageShaderProps) => void;
|
@@ -0,0 +1,156 @@
|
|
1
|
+
"use strict";
|
2
|
+
"worklet";
|
3
|
+
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
5
|
+
value: true
|
6
|
+
});
|
7
|
+
exports.declareTwoPointConicalGradientShader = exports.declareTurbulenceShader = exports.declareSweepGradientShader = exports.declareShader = exports.declareRadialGradientShader = exports.declareLinearGradientShader = exports.declareImageShader = exports.declareFractalNoiseShader = exports.declareColorShader = void 0;
|
8
|
+
var _nodes = require("../../dom/nodes");
|
9
|
+
var _types = require("../../skia/types");
|
10
|
+
const declareShader = (ctx, props) => {
|
11
|
+
const {
|
12
|
+
source,
|
13
|
+
uniforms,
|
14
|
+
...transform
|
15
|
+
} = props;
|
16
|
+
const m3 = ctx.Skia.Matrix();
|
17
|
+
(0, _nodes.processTransformProps)(m3, transform);
|
18
|
+
const shader = source.makeShaderWithChildren((0, _types.processUniforms)(source, uniforms), ctx.shaders.popAll(), m3);
|
19
|
+
ctx.shaders.push(shader);
|
20
|
+
};
|
21
|
+
exports.declareShader = declareShader;
|
22
|
+
const declareColorShader = (ctx, props) => {
|
23
|
+
const {
|
24
|
+
color
|
25
|
+
} = props;
|
26
|
+
const shader = ctx.Skia.Shader.MakeColor(ctx.Skia.Color(color));
|
27
|
+
ctx.shaders.push(shader);
|
28
|
+
};
|
29
|
+
exports.declareColorShader = declareColorShader;
|
30
|
+
const declareFractalNoiseShader = (ctx, props) => {
|
31
|
+
const {
|
32
|
+
freqX,
|
33
|
+
freqY,
|
34
|
+
octaves,
|
35
|
+
seed,
|
36
|
+
tileWidth,
|
37
|
+
tileHeight
|
38
|
+
} = props;
|
39
|
+
const shader = ctx.Skia.Shader.MakeFractalNoise(freqX, freqY, octaves, seed, tileWidth, tileHeight);
|
40
|
+
ctx.shaders.push(shader);
|
41
|
+
};
|
42
|
+
exports.declareFractalNoiseShader = declareFractalNoiseShader;
|
43
|
+
const declareTwoPointConicalGradientShader = (ctx, props) => {
|
44
|
+
const {
|
45
|
+
startR,
|
46
|
+
endR,
|
47
|
+
start,
|
48
|
+
end
|
49
|
+
} = props;
|
50
|
+
const {
|
51
|
+
colors,
|
52
|
+
positions,
|
53
|
+
mode,
|
54
|
+
localMatrix,
|
55
|
+
flags
|
56
|
+
} = (0, _nodes.processGradientProps)(ctx.Skia, props);
|
57
|
+
const shader = ctx.Skia.Shader.MakeTwoPointConicalGradient(start, startR, end, endR, colors, positions, mode, localMatrix, flags);
|
58
|
+
ctx.shaders.push(shader);
|
59
|
+
};
|
60
|
+
exports.declareTwoPointConicalGradientShader = declareTwoPointConicalGradientShader;
|
61
|
+
const declareRadialGradientShader = (ctx, props) => {
|
62
|
+
const {
|
63
|
+
c,
|
64
|
+
r
|
65
|
+
} = props;
|
66
|
+
const {
|
67
|
+
colors,
|
68
|
+
positions,
|
69
|
+
mode,
|
70
|
+
localMatrix,
|
71
|
+
flags
|
72
|
+
} = (0, _nodes.processGradientProps)(ctx.Skia, props);
|
73
|
+
const shader = ctx.Skia.Shader.MakeRadialGradient(c, r, colors, positions, mode, localMatrix, flags);
|
74
|
+
ctx.shaders.push(shader);
|
75
|
+
};
|
76
|
+
exports.declareRadialGradientShader = declareRadialGradientShader;
|
77
|
+
const declareSweepGradientShader = (ctx, props) => {
|
78
|
+
const {
|
79
|
+
c,
|
80
|
+
start,
|
81
|
+
end
|
82
|
+
} = props;
|
83
|
+
const {
|
84
|
+
colors,
|
85
|
+
positions,
|
86
|
+
mode,
|
87
|
+
localMatrix,
|
88
|
+
flags
|
89
|
+
} = (0, _nodes.processGradientProps)(ctx.Skia, props);
|
90
|
+
const shader = ctx.Skia.Shader.MakeSweepGradient(c.x, c.y, colors, positions, mode, localMatrix, flags, start, end);
|
91
|
+
ctx.shaders.push(shader);
|
92
|
+
};
|
93
|
+
exports.declareSweepGradientShader = declareSweepGradientShader;
|
94
|
+
const declareLinearGradientShader = (ctx, props) => {
|
95
|
+
const {
|
96
|
+
start,
|
97
|
+
end
|
98
|
+
} = props;
|
99
|
+
const {
|
100
|
+
colors,
|
101
|
+
positions,
|
102
|
+
mode,
|
103
|
+
localMatrix,
|
104
|
+
flags
|
105
|
+
} = (0, _nodes.processGradientProps)(ctx.Skia, props);
|
106
|
+
const shader = ctx.Skia.Shader.MakeLinearGradient(start, end, colors, positions !== null && positions !== void 0 ? positions : null, mode, localMatrix, flags);
|
107
|
+
ctx.shaders.push(shader);
|
108
|
+
};
|
109
|
+
exports.declareLinearGradientShader = declareLinearGradientShader;
|
110
|
+
const declareTurbulenceShader = (ctx, props) => {
|
111
|
+
const {
|
112
|
+
freqX,
|
113
|
+
freqY,
|
114
|
+
octaves,
|
115
|
+
seed,
|
116
|
+
tileWidth,
|
117
|
+
tileHeight
|
118
|
+
} = props;
|
119
|
+
const shader = ctx.Skia.Shader.MakeTurbulence(freqX, freqY, octaves, seed, tileWidth, tileHeight);
|
120
|
+
ctx.shaders.push(shader);
|
121
|
+
};
|
122
|
+
exports.declareTurbulenceShader = declareTurbulenceShader;
|
123
|
+
const declareImageShader = (ctx, props) => {
|
124
|
+
const {
|
125
|
+
fit,
|
126
|
+
image,
|
127
|
+
tx,
|
128
|
+
ty,
|
129
|
+
fm,
|
130
|
+
mm,
|
131
|
+
...imageShaderProps
|
132
|
+
} = props;
|
133
|
+
if (!image) {
|
134
|
+
return;
|
135
|
+
}
|
136
|
+
const rct = (0, _nodes.getRect)(ctx.Skia, imageShaderProps);
|
137
|
+
const m3 = ctx.Skia.Matrix();
|
138
|
+
if (rct) {
|
139
|
+
const rects = (0, _nodes.fitRects)(fit, {
|
140
|
+
x: 0,
|
141
|
+
y: 0,
|
142
|
+
width: image.width(),
|
143
|
+
height: image.height()
|
144
|
+
}, rct);
|
145
|
+
const [x, y, sx, sy] = (0, _nodes.rect2rect)(rects.src, rects.dst);
|
146
|
+
m3.translate(x.translateX, y.translateY);
|
147
|
+
m3.scale(sx.scaleX, sy.scaleY);
|
148
|
+
}
|
149
|
+
const lm = ctx.Skia.Matrix();
|
150
|
+
lm.concat(m3);
|
151
|
+
(0, _nodes.processTransformProps)(lm, imageShaderProps);
|
152
|
+
const shader = image.makeShaderOptions(_types.TileMode[(0, _nodes.enumKey)(tx)], _types.TileMode[(0, _nodes.enumKey)(ty)], _types.FilterMode[(0, _nodes.enumKey)(fm)], _types.MipmapMode[(0, _nodes.enumKey)(mm)], lm);
|
153
|
+
ctx.shaders.push(shader);
|
154
|
+
};
|
155
|
+
exports.declareImageShader = declareImageShader;
|
156
|
+
//# sourceMappingURL=shaders.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["Object","defineProperty","exports","value","declareTwoPointConicalGradientShader","declareTurbulenceShader","declareSweepGradientShader","declareShader","declareRadialGradientShader","declareLinearGradientShader","declareImageShader","declareFractalNoiseShader","declareColorShader","_nodes","require","_types","ctx","props","source","uniforms","transform","m3","Skia","Matrix","processTransformProps","shader","makeShaderWithChildren","processUniforms","shaders","popAll","push","color","Shader","MakeColor","Color","freqX","freqY","octaves","seed","tileWidth","tileHeight","MakeFractalNoise","startR","endR","start","end","colors","positions","mode","localMatrix","flags","processGradientProps","MakeTwoPointConicalGradient","c","r","MakeRadialGradient","MakeSweepGradient","x","y","MakeLinearGradient","MakeTurbulence","fit","image","tx","ty","fm","mm","imageShaderProps","rct","getRect","rects","fitRects","width","height","sx","sy","rect2rect","src","dst","translate","translateX","translateY","scale","scaleX","scaleY","lm","concat","makeShaderOptions","TileMode","enumKey","FilterMode","MipmapMode"],"sources":["shaders.ts"],"sourcesContent":["\"worklet\";\n\nimport {\n enumKey,\n fitRects,\n getRect,\n processGradientProps,\n processTransformProps,\n rect2rect,\n} from \"../../dom/nodes\";\nimport type {\n ColorProps,\n DeclarationContext,\n FractalNoiseProps,\n ImageShaderProps,\n LinearGradientProps,\n RadialGradientProps,\n ShaderProps,\n SweepGradientProps,\n TurbulenceProps,\n TwoPointConicalGradientProps,\n} from \"../../dom/types\";\nimport {\n FilterMode,\n MipmapMode,\n processUniforms,\n TileMode,\n} from \"../../skia/types\";\n\nexport const declareShader = (ctx: DeclarationContext, props: ShaderProps) => {\n const { source, uniforms, ...transform } = props;\n const m3 = ctx.Skia.Matrix();\n processTransformProps(m3, transform);\n const shader = source.makeShaderWithChildren(\n processUniforms(source, uniforms),\n ctx.shaders.popAll(),\n m3\n );\n ctx.shaders.push(shader);\n};\n\nexport const declareColorShader = (\n ctx: DeclarationContext,\n props: ColorProps\n) => {\n const { color } = props;\n const shader = ctx.Skia.Shader.MakeColor(ctx.Skia.Color(color));\n ctx.shaders.push(shader);\n};\n\nexport const declareFractalNoiseShader = (\n ctx: DeclarationContext,\n props: FractalNoiseProps\n) => {\n const { freqX, freqY, octaves, seed, tileWidth, tileHeight } = props;\n const shader = ctx.Skia.Shader.MakeFractalNoise(\n freqX,\n freqY,\n octaves,\n seed,\n tileWidth,\n tileHeight\n );\n ctx.shaders.push(shader);\n};\n\nexport const declareTwoPointConicalGradientShader = (\n ctx: DeclarationContext,\n props: TwoPointConicalGradientProps\n) => {\n const { startR, endR, start, end } = props;\n const { colors, positions, mode, localMatrix, flags } = processGradientProps(\n ctx.Skia,\n props\n );\n const shader = ctx.Skia.Shader.MakeTwoPointConicalGradient(\n start,\n startR,\n end,\n endR,\n colors,\n positions,\n mode,\n localMatrix,\n flags\n );\n ctx.shaders.push(shader);\n};\n\nexport const declareRadialGradientShader = (\n ctx: DeclarationContext,\n props: RadialGradientProps\n) => {\n const { c, r } = props;\n const { colors, positions, mode, localMatrix, flags } = processGradientProps(\n ctx.Skia,\n props\n );\n const shader = ctx.Skia.Shader.MakeRadialGradient(\n c,\n r,\n colors,\n positions,\n mode,\n localMatrix,\n flags\n );\n ctx.shaders.push(shader);\n};\n\nexport const declareSweepGradientShader = (\n ctx: DeclarationContext,\n props: SweepGradientProps\n) => {\n const { c, start, end } = props;\n const { colors, positions, mode, localMatrix, flags } = processGradientProps(\n ctx.Skia,\n props\n );\n const shader = ctx.Skia.Shader.MakeSweepGradient(\n c.x,\n c.y,\n colors,\n positions,\n mode,\n localMatrix,\n flags,\n start,\n end\n );\n ctx.shaders.push(shader);\n};\n\nexport const declareLinearGradientShader = (\n ctx: DeclarationContext,\n props: LinearGradientProps\n) => {\n const { start, end } = props;\n const { colors, positions, mode, localMatrix, flags } = processGradientProps(\n ctx.Skia,\n props\n );\n const shader = ctx.Skia.Shader.MakeLinearGradient(\n start,\n end,\n colors,\n positions ?? null,\n mode,\n localMatrix,\n flags\n );\n ctx.shaders.push(shader);\n};\n\nexport const declareTurbulenceShader = (\n ctx: DeclarationContext,\n props: TurbulenceProps\n) => {\n const { freqX, freqY, octaves, seed, tileWidth, tileHeight } = props;\n const shader = ctx.Skia.Shader.MakeTurbulence(\n freqX,\n freqY,\n octaves,\n seed,\n tileWidth,\n tileHeight\n );\n ctx.shaders.push(shader);\n};\n\nexport const declareImageShader = (\n ctx: DeclarationContext,\n props: ImageShaderProps\n) => {\n const { fit, image, tx, ty, fm, mm, ...imageShaderProps } = props;\n if (!image) {\n return;\n }\n\n const rct = getRect(ctx.Skia, imageShaderProps);\n const m3 = ctx.Skia.Matrix();\n if (rct) {\n const rects = fitRects(\n fit,\n { x: 0, y: 0, width: image.width(), height: image.height() },\n rct\n );\n const [x, y, sx, sy] = rect2rect(rects.src, rects.dst);\n m3.translate(x.translateX, y.translateY);\n m3.scale(sx.scaleX, sy.scaleY);\n }\n const lm = ctx.Skia.Matrix();\n lm.concat(m3);\n processTransformProps(lm, imageShaderProps);\n const shader = image.makeShaderOptions(\n TileMode[enumKey(tx)],\n TileMode[enumKey(ty)],\n FilterMode[enumKey(fm)],\n MipmapMode[enumKey(mm)],\n lm\n );\n ctx.shaders.push(shader);\n};\n"],"mappings":"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","ignoreList":[]}
|
@@ -0,0 +1,25 @@
|
|
1
|
+
"use strict";
|
2
|
+
"worklet";
|
3
|
+
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
5
|
+
value: true
|
6
|
+
});
|
7
|
+
exports.materialize = exports.isSharedValue = void 0;
|
8
|
+
var _typeddash = require("../../renderer/typeddash");
|
9
|
+
const isSharedValue = value => {
|
10
|
+
// We cannot use `in` operator here because `value` could be a HostObject and therefore we cast.
|
11
|
+
return (value === null || value === void 0 ? void 0 : value._isReanimatedSharedValue) === true;
|
12
|
+
};
|
13
|
+
exports.isSharedValue = isSharedValue;
|
14
|
+
const materialize = props => {
|
15
|
+
const result = Object.assign({}, props);
|
16
|
+
(0, _typeddash.mapKeys)(result).forEach(key => {
|
17
|
+
const value = result[key];
|
18
|
+
if (isSharedValue(value)) {
|
19
|
+
result[key] = value.value;
|
20
|
+
}
|
21
|
+
});
|
22
|
+
return result;
|
23
|
+
};
|
24
|
+
exports.materialize = materialize;
|
25
|
+
//# sourceMappingURL=utils.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["Object","defineProperty","exports","value","materialize","isSharedValue","_typeddash","require","_isReanimatedSharedValue","props","result","assign","mapKeys","forEach","key"],"sources":["utils.ts"],"sourcesContent":["\"worklet\";\n\nimport type { SharedValue } from \"react-native-reanimated\";\n\nimport { mapKeys } from \"../../renderer/typeddash\";\n\nexport const isSharedValue = <T = unknown>(\n value: unknown\n): value is SharedValue<T> => {\n // We cannot use `in` operator here because `value` could be a HostObject and therefore we cast.\n return (value as Record<string, unknown>)?._isReanimatedSharedValue === true;\n};\n\nexport const materialize = <T extends object>(props: T) => {\n const result: T = Object.assign({}, props);\n mapKeys(result).forEach((key) => {\n const value = result[key];\n if (isSharedValue(value)) {\n result[key] = value.value as never;\n }\n });\n return result;\n};\n"],"mappings":";AAAA,SAAS;;AAACA,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,WAAA,GAAAF,OAAA,CAAAG,aAAA;AAIV,IAAAC,UAAA,GAAAC,OAAA;AAEO,MAAMF,aAAa,GACxBF,KAAc,IACc;EAC5B;EACA,OAAO,CAACA,KAAK,aAALA,KAAK,uBAALA,KAAK,CAA8BK,wBAAwB,MAAK,IAAI;AAC9E,CAAC;AAACN,OAAA,CAAAG,aAAA,GAAAA,aAAA;AAEK,MAAMD,WAAW,GAAsBK,KAAQ,IAAK;EACzD,MAAMC,MAAS,GAAGV,MAAM,CAACW,MAAM,CAAC,CAAC,CAAC,EAAEF,KAAK,CAAC;EAC1C,IAAAG,kBAAO,EAACF,MAAM,CAAC,CAACG,OAAO,CAAEC,GAAG,IAAK;IAC/B,MAAMX,KAAK,GAAGO,MAAM,CAACI,GAAG,CAAC;IACzB,IAAIT,aAAa,CAACF,KAAK,CAAC,EAAE;MACxBO,MAAM,CAACI,GAAG,CAAC,GAAGX,KAAK,CAACA,KAAc;IACpC;EACF,CAAC,CAAC;EACF,OAAOO,MAAM;AACf,CAAC;AAACR,OAAA,CAAAE,WAAA,GAAAA,WAAA","ignoreList":[]}
|
@@ -53,7 +53,9 @@ class SkiaDomView extends _react.default.Component {
|
|
53
53
|
assertSkiaViewApi();
|
54
54
|
_api.SkiaViewApi.setJsiProperty(this._nativeId, "onSize", onSize);
|
55
55
|
}
|
56
|
-
|
56
|
+
if (onSize !== prevProps.onSize || root !== prevProps.root) {
|
57
|
+
this.tick();
|
58
|
+
}
|
57
59
|
}
|
58
60
|
componentWillUnmount() {
|
59
61
|
if (this.requestId) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_Platform","_SkiaDomViewNativeComponent","_api","_SkiaViewNativeId","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","_defineProperty","_toPropertyKey","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","NativeSkiaDomView","Platform","OS","SkiaDomViewNativeComponent","SkiaDomView","React","Component","constructor","props","_nativeId","SkiaViewNativeId","current","root","onSize","assertSkiaViewApi","SkiaViewApi","setJsiProperty","tick","nativeId","componentDidUpdate","prevProps","componentWillUnmount","requestId","cancelAnimationFrame","redraw","mode","requestAnimationFrame","makeImageSnapshot","rect","makeImageSnapshotAsync","requestRedraw","render","debug","opaque","viewProps","createElement","collapsable","nativeID","exports","Error"],"sources":["SkiaDomView.tsx"],"sourcesContent":["import React from \"react\";\nimport type { HostComponent } from \"react-native\";\n\nimport type { SkRect } from \"../skia/types\";\nimport { Platform } from \"../Platform\";\nimport SkiaDomViewNativeComponent from \"../specs/SkiaDomViewNativeComponent\";\n\nimport { SkiaViewApi } from \"./api\";\nimport type { SkiaDomViewNativeProps } from \"./types\";\nimport { SkiaViewNativeId } from \"./SkiaViewNativeId\";\n\nconst NativeSkiaDomView: HostComponent<SkiaDomViewNativeProps> =\n Platform.OS !== \"web\"\n ? SkiaDomViewNativeComponent\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (null as any);\n\ninterface SkiaDomViewProps extends SkiaDomViewNativeProps {\n mode?: \"default\" | \"continuous\";\n}\n\nexport class SkiaDomView extends React.Component<SkiaDomViewProps> {\n constructor(props: SkiaDomViewProps) {\n super(props);\n this._nativeId = SkiaViewNativeId.current++;\n const { root, onSize } = props;\n if (root) {\n assertSkiaViewApi();\n SkiaViewApi.setJsiProperty(this._nativeId, \"root\", root);\n }\n if (onSize) {\n assertSkiaViewApi();\n SkiaViewApi.setJsiProperty(this._nativeId, \"onSize\", onSize);\n }\n this.tick();\n }\n\n private _nativeId: number;\n private requestId = 0;\n\n public get nativeId() {\n return this._nativeId;\n }\n\n componentDidUpdate(prevProps: SkiaDomViewProps) {\n const { root, onSize } = this.props;\n if (root !== prevProps.root) {\n assertSkiaViewApi();\n SkiaViewApi.setJsiProperty(this._nativeId, \"root\", root);\n }\n if (onSize !== prevProps.onSize) {\n assertSkiaViewApi();\n SkiaViewApi.setJsiProperty(this._nativeId, \"onSize\", onSize);\n }\n this.tick();\n }\n\n componentWillUnmount(): void {\n if (this.requestId) {\n cancelAnimationFrame(this.requestId);\n }\n }\n\n private tick() {\n this.redraw();\n if (this.props.mode === \"continuous\") {\n this.requestId = requestAnimationFrame(this.tick.bind(this));\n }\n }\n\n /**\n * Creates a snapshot from the canvas in the surface\n * @param rect Rect to use as bounds. Optional.\n * @returns An Image object.\n */\n public makeImageSnapshot(rect?: SkRect) {\n assertSkiaViewApi();\n return SkiaViewApi.makeImageSnapshot(this._nativeId, rect);\n }\n\n /**\n * Creates a snapshot from the canvas in the surface\n * @param rect Rect to use as bounds. Optional.\n * @returns An Image object.\n */\n public makeImageSnapshotAsync(rect?: SkRect) {\n assertSkiaViewApi();\n return SkiaViewApi.makeImageSnapshotAsync(this._nativeId, rect);\n }\n\n /**\n * Sends a redraw request to the native SkiaView.\n */\n public redraw() {\n assertSkiaViewApi();\n SkiaViewApi.requestRedraw(this._nativeId);\n }\n\n render() {\n const { debug = false, opaque = false, ...viewProps } = this.props;\n return (\n <NativeSkiaDomView\n collapsable={false}\n nativeID={`${this._nativeId}`}\n debug={debug}\n opaque={opaque}\n {...viewProps}\n />\n );\n }\n}\n\nconst assertSkiaViewApi = () => {\n if (\n SkiaViewApi === null ||\n SkiaViewApi.setJsiProperty === null ||\n SkiaViewApi.requestRedraw === null ||\n SkiaViewApi.makeImageSnapshot === null\n ) {\n throw Error(\"Skia View Api was not found.\");\n }\n};\n"],"mappings":"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
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_Platform","_SkiaDomViewNativeComponent","_api","_SkiaViewNativeId","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","_defineProperty","_toPropertyKey","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","NativeSkiaDomView","Platform","OS","SkiaDomViewNativeComponent","SkiaDomView","React","Component","constructor","props","_nativeId","SkiaViewNativeId","current","root","onSize","assertSkiaViewApi","SkiaViewApi","setJsiProperty","tick","nativeId","componentDidUpdate","prevProps","componentWillUnmount","requestId","cancelAnimationFrame","redraw","mode","requestAnimationFrame","makeImageSnapshot","rect","makeImageSnapshotAsync","requestRedraw","render","debug","opaque","viewProps","createElement","collapsable","nativeID","exports","Error"],"sources":["SkiaDomView.tsx"],"sourcesContent":["import React from \"react\";\nimport type { HostComponent } from \"react-native\";\n\nimport type { SkRect } from \"../skia/types\";\nimport { Platform } from \"../Platform\";\nimport SkiaDomViewNativeComponent from \"../specs/SkiaDomViewNativeComponent\";\n\nimport { SkiaViewApi } from \"./api\";\nimport type { SkiaDomViewNativeProps } from \"./types\";\nimport { SkiaViewNativeId } from \"./SkiaViewNativeId\";\n\nconst NativeSkiaDomView: HostComponent<SkiaDomViewNativeProps> =\n Platform.OS !== \"web\"\n ? SkiaDomViewNativeComponent\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (null as any);\n\ninterface SkiaDomViewProps extends SkiaDomViewNativeProps {\n mode?: \"default\" | \"continuous\";\n}\n\nexport class SkiaDomView extends React.Component<SkiaDomViewProps> {\n constructor(props: SkiaDomViewProps) {\n super(props);\n this._nativeId = SkiaViewNativeId.current++;\n const { root, onSize } = props;\n if (root) {\n assertSkiaViewApi();\n SkiaViewApi.setJsiProperty(this._nativeId, \"root\", root);\n }\n if (onSize) {\n assertSkiaViewApi();\n SkiaViewApi.setJsiProperty(this._nativeId, \"onSize\", onSize);\n }\n this.tick();\n }\n\n private _nativeId: number;\n private requestId = 0;\n\n public get nativeId() {\n return this._nativeId;\n }\n\n componentDidUpdate(prevProps: SkiaDomViewProps) {\n const { root, onSize } = this.props;\n if (root !== prevProps.root) {\n assertSkiaViewApi();\n SkiaViewApi.setJsiProperty(this._nativeId, \"root\", root);\n }\n if (onSize !== prevProps.onSize) {\n assertSkiaViewApi();\n SkiaViewApi.setJsiProperty(this._nativeId, \"onSize\", onSize);\n }\n if (onSize !== prevProps.onSize || root !== prevProps.root) {\n this.tick();\n }\n }\n\n componentWillUnmount(): void {\n if (this.requestId) {\n cancelAnimationFrame(this.requestId);\n }\n }\n\n private tick() {\n this.redraw();\n if (this.props.mode === \"continuous\") {\n this.requestId = requestAnimationFrame(this.tick.bind(this));\n }\n }\n\n /**\n * Creates a snapshot from the canvas in the surface\n * @param rect Rect to use as bounds. Optional.\n * @returns An Image object.\n */\n public makeImageSnapshot(rect?: SkRect) {\n assertSkiaViewApi();\n return SkiaViewApi.makeImageSnapshot(this._nativeId, rect);\n }\n\n /**\n * Creates a snapshot from the canvas in the surface\n * @param rect Rect to use as bounds. Optional.\n * @returns An Image object.\n */\n public makeImageSnapshotAsync(rect?: SkRect) {\n assertSkiaViewApi();\n return SkiaViewApi.makeImageSnapshotAsync(this._nativeId, rect);\n }\n\n /**\n * Sends a redraw request to the native SkiaView.\n */\n public redraw() {\n assertSkiaViewApi();\n SkiaViewApi.requestRedraw(this._nativeId);\n }\n\n render() {\n const { debug = false, opaque = false, ...viewProps } = this.props;\n return (\n <NativeSkiaDomView\n collapsable={false}\n nativeID={`${this._nativeId}`}\n debug={debug}\n opaque={opaque}\n {...viewProps}\n />\n );\n }\n}\n\nconst assertSkiaViewApi = () => {\n if (\n SkiaViewApi === null ||\n SkiaViewApi.setJsiProperty === null ||\n SkiaViewApi.requestRedraw === null ||\n SkiaViewApi.makeImageSnapshot === null\n ) {\n throw Error(\"Skia View Api was not found.\");\n }\n};\n"],"mappings":"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","ignoreList":[]}
|
@@ -38,7 +38,6 @@ class SkiaPictureView extends _react.default.Component {
|
|
38
38
|
return this._nativeId;
|
39
39
|
}
|
40
40
|
componentDidUpdate(prevProps) {
|
41
|
-
console.log("componentDidUpdate");
|
42
41
|
const {
|
43
42
|
picture,
|
44
43
|
onSize
|
@@ -80,7 +79,6 @@ class SkiaPictureView extends _react.default.Component {
|
|
80
79
|
*/
|
81
80
|
redraw() {
|
82
81
|
assertSkiaViewApi();
|
83
|
-
console.log("Request redraw: ", this._nativeId);
|
84
82
|
_api.SkiaViewApi.requestRedraw(this._nativeId);
|
85
83
|
}
|
86
84
|
render() {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_SkiaPictureViewNativeComponent","_api","_SkiaViewNativeId","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","_defineProperty","_toPropertyKey","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","NativeSkiaPictureView","SkiaPictureViewNativeComponent","SkiaPictureView","React","Component","constructor","props","_nativeId","SkiaViewNativeId","current","picture","onSize","assertSkiaViewApi","SkiaViewApi","setJsiProperty","tick","nativeId","componentDidUpdate","prevProps","
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_SkiaPictureViewNativeComponent","_api","_SkiaViewNativeId","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","_defineProperty","_toPropertyKey","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","NativeSkiaPictureView","SkiaPictureViewNativeComponent","SkiaPictureView","React","Component","constructor","props","_nativeId","SkiaViewNativeId","current","picture","onSize","assertSkiaViewApi","SkiaViewApi","setJsiProperty","tick","nativeId","componentDidUpdate","prevProps","componentWillUnmount","requestId","cancelAnimationFrame","redraw","mode","requestAnimationFrame","makeImageSnapshot","rect","requestRedraw","render","debug","opaque","viewProps","createElement","collapsable","nativeID","exports","Error"],"sources":["SkiaPictureView.tsx"],"sourcesContent":["import React from \"react\";\n\nimport type { SkRect } from \"../skia/types\";\nimport SkiaPictureViewNativeComponent from \"../specs/SkiaPictureViewNativeComponent\";\n\nimport { SkiaViewApi } from \"./api\";\nimport type { SkiaPictureViewNativeProps } from \"./types\";\nimport { SkiaViewNativeId } from \"./SkiaViewNativeId\";\n\nconst NativeSkiaPictureView = SkiaPictureViewNativeComponent;\n\ninterface SkiaPictureViewProps extends SkiaPictureViewNativeProps {\n mode?: \"default\" | \"continuous\";\n}\n\nexport class SkiaPictureView extends React.Component<SkiaPictureViewProps> {\n private requestId = 0;\n\n constructor(props: SkiaPictureViewProps) {\n super(props);\n this._nativeId = SkiaViewNativeId.current++;\n const { picture, onSize } = props;\n if (picture) {\n assertSkiaViewApi();\n SkiaViewApi.setJsiProperty(this._nativeId, \"picture\", picture);\n }\n if (onSize) {\n assertSkiaViewApi();\n SkiaViewApi.setJsiProperty(this._nativeId, \"onSize\", onSize);\n }\n this.tick();\n }\n\n private _nativeId: number;\n\n public get nativeId() {\n return this._nativeId;\n }\n\n componentDidUpdate(prevProps: SkiaPictureViewProps) {\n const { picture, onSize } = this.props;\n if (picture !== prevProps.picture) {\n assertSkiaViewApi();\n SkiaViewApi.setJsiProperty(this._nativeId, \"picture\", picture);\n }\n if (onSize !== prevProps.onSize) {\n assertSkiaViewApi();\n SkiaViewApi.setJsiProperty(this._nativeId, \"onSize\", onSize);\n }\n this.tick();\n }\n\n componentWillUnmount() {\n if (this.requestId) {\n cancelAnimationFrame(this.requestId);\n }\n }\n\n private tick() {\n this.redraw();\n if (this.props.mode === \"continuous\") {\n this.requestId = requestAnimationFrame(this.tick.bind(this));\n }\n }\n\n /**\n * Creates a snapshot from the canvas in the surface\n * @param rect Rect to use as bounds. Optional.\n * @returns An Image object.\n */\n public makeImageSnapshot(rect?: SkRect) {\n assertSkiaViewApi();\n return SkiaViewApi.makeImageSnapshot(this._nativeId, rect);\n }\n\n /**\n * Sends a redraw request to the native SkiaView.\n */\n public redraw() {\n assertSkiaViewApi();\n SkiaViewApi.requestRedraw(this._nativeId);\n }\n\n render() {\n const { mode, debug = false, opaque = false, ...viewProps } = this.props;\n return (\n <NativeSkiaPictureView\n collapsable={false}\n nativeID={`${this._nativeId}`}\n debug={debug}\n opaque={opaque}\n {...viewProps}\n />\n );\n }\n}\n\nconst assertSkiaViewApi = () => {\n if (\n SkiaViewApi === null ||\n SkiaViewApi.setJsiProperty === null ||\n SkiaViewApi.requestRedraw === null ||\n SkiaViewApi.makeImageSnapshot === null\n ) {\n throw Error(\"Skia View Api was not found.\");\n }\n};\n"],"mappings":"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","ignoreList":[]}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import type { ViewProps } from "react-native";
|
2
|
+
import type { SharedValue } from "react-native-reanimated";
|
2
3
|
import type { GroupProps, RenderNode } from "../dom/types";
|
3
4
|
import type { SkImage, SkPicture, SkRect, SkSize } from "../skia/types";
|
4
|
-
import type { SharedValueType } from "../renderer/processors/Animations/Animations";
|
5
5
|
export type NativeSkiaViewProps = ViewProps & {
|
6
6
|
debug?: boolean;
|
7
7
|
opaque?: boolean;
|
@@ -27,7 +27,7 @@ export interface SkiaBaseViewProps extends ViewProps {
|
|
27
27
|
* Pass an animated value to the onSize property to get updates when
|
28
28
|
* the Skia view is resized.
|
29
29
|
*/
|
30
|
-
onSize?:
|
30
|
+
onSize?: SharedValue<SkSize>;
|
31
31
|
opaque?: boolean;
|
32
32
|
}
|
33
33
|
export interface SkiaPictureViewNativeProps extends SkiaBaseViewProps {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import type { ViewProps } from \"react-native\";\n\nimport type { GroupProps, RenderNode } from \"../dom/types\";\nimport type { SkImage, SkPicture, SkRect, SkSize } from \"../skia/types\";\
|
1
|
+
{"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import type { ViewProps } from \"react-native\";\nimport type { SharedValue } from \"react-native-reanimated\";\n\nimport type { GroupProps, RenderNode } from \"../dom/types\";\nimport type { SkImage, SkPicture, SkRect, SkSize } from \"../skia/types\";\n\nexport type NativeSkiaViewProps = ViewProps & {\n debug?: boolean;\n opaque?: boolean;\n};\n\nexport interface DrawingInfo {\n width: number;\n height: number;\n timestamp: number;\n}\n\nexport interface ISkiaViewApi {\n setJsiProperty: <T>(nativeId: number, name: string, value: T) => void;\n requestRedraw: (nativeId: number) => void;\n makeImageSnapshot: (nativeId: number, rect?: SkRect) => SkImage;\n makeImageSnapshotAsync: (nativeId: number, rect?: SkRect) => Promise<SkImage>;\n}\n\nexport interface SkiaBaseViewProps extends ViewProps {\n /**\n * When set to true the view will display information about the\n * average time it takes to render.\n */\n debug?: boolean;\n /**\n * Pass an animated value to the onSize property to get updates when\n * the Skia view is resized.\n */\n onSize?: SharedValue<SkSize>;\n\n opaque?: boolean;\n}\n\nexport interface SkiaPictureViewNativeProps extends SkiaBaseViewProps {\n picture?: SkPicture;\n}\n\nexport interface SkiaDomViewNativeProps extends SkiaBaseViewProps {\n root?: RenderNode<GroupProps>;\n}\n"],"mappings":"","ignoreList":[]}
|
@@ -120,10 +120,10 @@ export class JsiSkDOM {
|
|
120
120
|
return this.native ? global.SkiaDomApi.LumaColorFilterNode() : new LumaColorFilterNode(this.ctx);
|
121
121
|
}
|
122
122
|
LinearToSRGBGammaColorFilter() {
|
123
|
-
return
|
123
|
+
return this.native ? global.SkiaDomApi.LinearToSRGBGammaColorFilterNode() : new LinearToSRGBGammaColorFilterNode(this.ctx);
|
124
124
|
}
|
125
125
|
SRGBToLinearGammaColorFilter() {
|
126
|
-
return
|
126
|
+
return this.native ? global.SkiaDomApi.SRGBToLinearGammaColorFilterNode() : new SRGBToLinearGammaColorFilterNode(this.ctx);
|
127
127
|
}
|
128
128
|
LerpColorFilter(props) {
|
129
129
|
return this.native ? global.SkiaDomApi.LerpColorFilterNode(props) : new LerpColorFilterNode(this.ctx, props);
|