@shopify/react-native-skia 1.7.6 → 1.8.0
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.d.ts +3 -7
- package/lib/commonjs/dom/nodes/JsiSkDOM.js +58 -70
- 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 +14 -6
- package/lib/commonjs/dom/nodes/datatypes/Circle.js.map +1 -1
- package/lib/commonjs/dom/nodes/datatypes/Enum.js +5 -1
- package/lib/commonjs/dom/nodes/datatypes/Enum.js.map +1 -1
- package/lib/commonjs/dom/nodes/datatypes/Gradient.js +19 -11
- package/lib/commonjs/dom/nodes/datatypes/Gradient.js.map +1 -1
- package/lib/commonjs/dom/nodes/datatypes/Path.js +7 -1
- package/lib/commonjs/dom/nodes/datatypes/Path.js.map +1 -1
- package/lib/commonjs/dom/nodes/datatypes/Radius.js +2 -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 +27 -3
- 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 +35 -1
- package/lib/commonjs/dom/nodes/datatypes/Transform.js.map +1 -1
- package/lib/commonjs/dom/types/Node.d.ts +2 -5
- package/lib/commonjs/dom/types/Node.js.map +1 -1
- package/lib/commonjs/dom/types/index.d.ts +0 -2
- package/lib/commonjs/dom/types/index.js +0 -22
- package/lib/commonjs/dom/types/index.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/headless/index.js +3 -5
- package/lib/commonjs/headless/index.js.map +1 -1
- package/lib/commonjs/index.d.ts +1 -0
- package/lib/commonjs/index.js +12 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/renderer/Canvas.js +9 -26
- package/lib/commonjs/renderer/Canvas.js.map +1 -1
- package/lib/commonjs/renderer/Canvas.web.d.ts +10 -0
- package/lib/commonjs/renderer/Canvas.web.js +110 -0
- package/lib/commonjs/renderer/Canvas.web.js.map +1 -0
- package/lib/commonjs/renderer/Canvas2.d.ts +10 -0
- package/lib/commonjs/renderer/Canvas2.js +104 -0
- package/lib/commonjs/renderer/Canvas2.js.map +1 -0
- package/lib/commonjs/renderer/Canvas2.web.d.ts +3 -0
- package/lib/commonjs/renderer/Canvas2.web.js +9 -0
- package/lib/commonjs/renderer/Canvas2.web.js.map +1 -0
- package/lib/commonjs/renderer/Container.d.ts +3 -5
- package/lib/commonjs/renderer/Container.js +2 -7
- package/lib/commonjs/renderer/Container.js.map +1 -1
- package/lib/commonjs/renderer/HostComponents.d.ts +3 -6
- package/lib/commonjs/renderer/HostComponents.js +1 -4
- package/lib/commonjs/renderer/HostComponents.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/Offscreen.js +3 -5
- package/lib/commonjs/renderer/Offscreen.js.map +1 -1
- package/lib/commonjs/renderer/Reconciler.d.ts +2 -3
- package/lib/commonjs/renderer/Reconciler.js +2 -2
- package/lib/commonjs/renderer/Reconciler.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/Shader/Shader.js +13 -6
- package/lib/commonjs/skia/types/Shader/Shader.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/DeclarationContext.d.ts +56 -0
- package/lib/commonjs/sksg/DeclarationContext.js +77 -0
- package/lib/commonjs/sksg/DeclarationContext.js.map +1 -0
- package/lib/commonjs/sksg/DrawingContext.d.ts +13 -0
- package/lib/commonjs/sksg/DrawingContext.js +172 -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 +19 -0
- package/lib/commonjs/sksg/Reconciler.js +61 -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/{renderer/DrawingContext.js → sksg/nodes/Node.js} +1 -1
- package/lib/commonjs/sksg/nodes/Node.js.map +1 -0
- package/lib/commonjs/sksg/nodes/colorFilters.d.ts +10 -0
- package/lib/commonjs/sksg/nodes/colorFilters.js +79 -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 +394 -0
- package/lib/commonjs/sksg/nodes/context.js.map +1 -0
- package/lib/commonjs/sksg/nodes/drawings.d.ts +30 -0
- package/lib/commonjs/sksg/nodes/drawings.js +398 -0
- package/lib/commonjs/sksg/nodes/drawings.js.map +1 -0
- package/lib/commonjs/sksg/nodes/imageFilters.d.ts +17 -0
- package/lib/commonjs/sksg/nodes/imageFilters.js +197 -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 +3 -0
- package/lib/commonjs/sksg/nodes/paint.js +81 -0
- package/lib/commonjs/sksg/nodes/paint.js.map +1 -0
- package/lib/commonjs/sksg/nodes/pathEffects.d.ts +11 -0
- package/lib/commonjs/sksg/nodes/pathEffects.js +111 -0
- package/lib/commonjs/sksg/nodes/pathEffects.js.map +1 -0
- package/lib/commonjs/sksg/nodes/shaders.d.ts +11 -0
- package/lib/commonjs/sksg/nodes/shaders.js +173 -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 +28 -0
- package/lib/commonjs/sksg/nodes/utils.js.map +1 -0
- package/lib/commonjs/views/SkiaDomView.web.d.ts +0 -7
- package/lib/commonjs/views/SkiaDomView.web.js +0 -30
- package/lib/commonjs/views/SkiaDomView.web.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/SkiaPictureView.web.d.ts +3 -1
- package/lib/commonjs/views/SkiaPictureView.web.js +10 -0
- package/lib/commonjs/views/SkiaPictureView.web.js.map +1 -1
- package/lib/commonjs/views/types.d.ts +4 -9
- package/lib/commonjs/views/types.js.map +1 -1
- package/lib/module/dom/nodes/JsiSkDOM.d.ts +3 -7
- package/lib/module/dom/nodes/JsiSkDOM.js +58 -70
- 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 +14 -6
- package/lib/module/dom/nodes/datatypes/Circle.js.map +1 -1
- package/lib/module/dom/nodes/datatypes/Enum.js +5 -1
- package/lib/module/dom/nodes/datatypes/Enum.js.map +1 -1
- package/lib/module/dom/nodes/datatypes/Gradient.js +19 -11
- package/lib/module/dom/nodes/datatypes/Gradient.js.map +1 -1
- package/lib/module/dom/nodes/datatypes/Path.js +7 -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 +24 -2
- 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 +33 -0
- package/lib/module/dom/nodes/datatypes/Transform.js.map +1 -1
- package/lib/module/dom/types/Node.d.ts +2 -5
- package/lib/module/dom/types/Node.js.map +1 -1
- package/lib/module/dom/types/index.d.ts +0 -2
- package/lib/module/dom/types/index.js +0 -2
- package/lib/module/dom/types/index.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/headless/index.js +3 -5
- package/lib/module/headless/index.js.map +1 -1
- package/lib/module/index.d.ts +1 -0
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/renderer/Canvas.js +9 -26
- package/lib/module/renderer/Canvas.js.map +1 -1
- package/lib/module/renderer/Canvas.web.d.ts +10 -0
- package/lib/module/renderer/Canvas.web.js +105 -0
- package/lib/module/renderer/Canvas.web.js.map +1 -0
- package/lib/module/renderer/Canvas2.d.ts +10 -0
- package/lib/module/renderer/Canvas2.js +97 -0
- package/lib/module/renderer/Canvas2.js.map +1 -0
- package/lib/module/renderer/Canvas2.web.d.ts +3 -0
- package/lib/module/renderer/Canvas2.web.js +3 -0
- package/lib/module/renderer/Canvas2.web.js.map +1 -0
- package/lib/module/renderer/Container.d.ts +3 -5
- package/lib/module/renderer/Container.js +2 -7
- package/lib/module/renderer/Container.js.map +1 -1
- package/lib/module/renderer/HostComponents.d.ts +3 -6
- package/lib/module/renderer/HostComponents.js +0 -3
- package/lib/module/renderer/HostComponents.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/Offscreen.js +3 -5
- package/lib/module/renderer/Offscreen.js.map +1 -1
- package/lib/module/renderer/Reconciler.d.ts +2 -3
- package/lib/module/renderer/Reconciler.js +2 -2
- package/lib/module/renderer/Reconciler.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/Shader/Shader.js +13 -6
- package/lib/module/skia/types/Shader/Shader.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/DeclarationContext.d.ts +56 -0
- package/lib/module/sksg/DeclarationContext.js +69 -0
- package/lib/module/sksg/DeclarationContext.js.map +1 -0
- package/lib/module/sksg/DrawingContext.d.ts +13 -0
- package/lib/module/sksg/DrawingContext.js +165 -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 +19 -0
- package/lib/module/sksg/Reconciler.js +53 -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 +10 -0
- package/lib/module/sksg/nodes/colorFilters.js +66 -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 +387 -0
- package/lib/module/sksg/nodes/context.js.map +1 -0
- package/lib/module/sksg/nodes/drawings.d.ts +30 -0
- package/lib/module/sksg/nodes/drawings.js +371 -0
- package/lib/module/sksg/nodes/drawings.js.map +1 -0
- package/lib/module/sksg/nodes/imageFilters.d.ts +17 -0
- package/lib/module/sksg/nodes/imageFilters.js +181 -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 +3 -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 +11 -0
- package/lib/module/sksg/nodes/pathEffects.js +97 -0
- package/lib/module/sksg/nodes/pathEffects.js.map +1 -0
- package/lib/module/sksg/nodes/shaders.d.ts +11 -0
- package/lib/module/sksg/nodes/shaders.js +158 -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 +20 -0
- package/lib/module/sksg/nodes/utils.js.map +1 -0
- package/lib/module/views/SkiaDomView.web.d.ts +0 -7
- package/lib/module/views/SkiaDomView.web.js +1 -24
- package/lib/module/views/SkiaDomView.web.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/SkiaPictureView.web.d.ts +3 -1
- package/lib/module/views/SkiaPictureView.web.js +10 -0
- package/lib/module/views/SkiaPictureView.web.js.map +1 -1
- package/lib/module/views/types.d.ts +4 -9
- package/lib/module/views/types.js.map +1 -1
- package/lib/typescript/lib/commonjs/dom/nodes/JsiSkDOM.d.ts +57 -67
- 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/Canvas.web.d.ts +3 -0
- package/lib/typescript/lib/commonjs/renderer/Canvas2.d.ts +3 -0
- package/lib/typescript/lib/commonjs/renderer/{DrawingContext.d.ts → Canvas2.web.d.ts} +1 -0
- package/lib/typescript/lib/commonjs/renderer/Container.d.ts +1 -2
- package/lib/typescript/lib/commonjs/renderer/HostComponents.d.ts +0 -1
- package/lib/typescript/lib/commonjs/renderer/HostConfig.d.ts +3 -1
- package/lib/typescript/lib/commonjs/renderer/Reconciler.d.ts +1 -1
- package/lib/typescript/lib/commonjs/sksg/Container.d.ts +16 -0
- package/lib/typescript/lib/commonjs/sksg/DeclarationContext.d.ts +53 -0
- package/lib/typescript/lib/commonjs/sksg/DrawingContext.d.ts +22 -0
- package/lib/typescript/lib/commonjs/sksg/HostConfig.d.ts +50 -0
- package/lib/typescript/lib/commonjs/sksg/Reconciler.d.ts +18 -0
- package/lib/typescript/lib/commonjs/sksg/nodes/colorFilters.d.ts +8 -0
- package/lib/typescript/lib/commonjs/sksg/nodes/context.d.ts +2 -0
- package/lib/typescript/lib/commonjs/sksg/nodes/drawings.d.ts +22 -0
- package/lib/typescript/lib/commonjs/sksg/nodes/imageFilters.d.ts +12 -0
- package/lib/typescript/lib/commonjs/sksg/nodes/paint.d.ts +2 -0
- package/lib/typescript/lib/commonjs/sksg/nodes/pathEffects.d.ts +9 -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/commonjs/views/SkiaDomView.web.d.ts +0 -5
- package/lib/typescript/lib/commonjs/views/SkiaPictureView.web.d.ts +2 -0
- package/lib/typescript/lib/module/dom/nodes/JsiSkDOM.d.ts +57 -117
- 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/dom/types/index.d.ts +0 -2
- package/lib/typescript/lib/module/external/reanimated/renderHelpers.d.ts +2 -0
- package/lib/typescript/lib/module/index.d.ts +1 -0
- package/lib/typescript/lib/module/mock/index.d.ts +4 -4
- package/lib/typescript/lib/module/renderer/Canvas.web.d.ts +1 -0
- package/lib/typescript/lib/module/renderer/Canvas2.d.ts +1 -0
- package/lib/typescript/lib/module/renderer/Canvas2.web.d.ts +1 -0
- package/lib/typescript/lib/module/renderer/Container.d.ts +3 -4
- package/lib/typescript/lib/module/renderer/HostComponents.d.ts +0 -1
- package/lib/typescript/lib/module/renderer/HostConfig.d.ts +3 -1
- package/lib/typescript/lib/module/renderer/Reconciler.d.ts +2 -2
- package/lib/typescript/lib/module/sksg/Container.d.ts +15 -0
- package/lib/typescript/lib/module/sksg/DeclarationContext.d.ts +52 -0
- package/lib/typescript/lib/module/sksg/DrawingContext.d.ts +21 -0
- package/lib/typescript/lib/module/sksg/HostConfig.d.ts +49 -0
- package/lib/typescript/lib/module/sksg/Reconciler.d.ts +17 -0
- package/lib/typescript/lib/module/sksg/nodes/colorFilters.d.ts +7 -0
- package/lib/typescript/lib/module/sksg/nodes/context.d.ts +1 -0
- package/lib/typescript/lib/module/sksg/nodes/drawings.d.ts +21 -0
- package/lib/typescript/lib/module/sksg/nodes/imageFilters.d.ts +11 -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 +8 -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/lib/module/views/SkiaDomView.web.d.ts +0 -4
- package/lib/typescript/lib/module/views/SkiaPictureView.web.d.ts +2 -0
- package/lib/typescript/src/dom/nodes/JsiSkDOM.d.ts +3 -7
- 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/Node.d.ts +2 -5
- package/lib/typescript/src/dom/types/index.d.ts +0 -2
- package/lib/typescript/src/external/reanimated/renderHelpers.d.ts +2 -0
- package/lib/typescript/src/index.d.ts +1 -0
- package/lib/typescript/src/renderer/Canvas.web.d.ts +10 -0
- package/lib/typescript/src/renderer/Canvas2.d.ts +10 -0
- package/lib/typescript/src/renderer/Canvas2.web.d.ts +3 -0
- package/lib/typescript/src/renderer/Container.d.ts +3 -5
- package/lib/typescript/src/renderer/HostComponents.d.ts +3 -6
- package/lib/typescript/src/renderer/Reconciler.d.ts +2 -3
- 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/sksg/Container.d.ts +19 -0
- package/lib/typescript/src/sksg/DeclarationContext.d.ts +56 -0
- package/lib/typescript/src/sksg/DrawingContext.d.ts +13 -0
- package/lib/typescript/src/sksg/HostConfig.d.ts +19 -0
- package/lib/typescript/src/sksg/Reconciler.d.ts +19 -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 +10 -0
- package/lib/typescript/src/sksg/nodes/context.d.ts +3 -0
- package/lib/typescript/src/sksg/nodes/drawings.d.ts +30 -0
- package/lib/typescript/src/sksg/nodes/imageFilters.d.ts +17 -0
- package/lib/typescript/src/sksg/nodes/index.d.ts +3 -0
- package/lib/typescript/src/sksg/nodes/paint.d.ts +3 -0
- package/lib/typescript/src/sksg/nodes/pathEffects.d.ts +11 -0
- package/lib/typescript/src/sksg/nodes/shaders.d.ts +11 -0
- package/lib/typescript/src/sksg/nodes/utils.d.ts +3 -0
- package/lib/typescript/src/views/SkiaDomView.web.d.ts +0 -7
- package/lib/typescript/src/views/SkiaPictureView.web.d.ts +3 -1
- package/lib/typescript/src/views/types.d.ts +4 -9
- 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 +58 -238
- package/src/dom/nodes/datatypes/Circle.ts +7 -5
- package/src/dom/nodes/datatypes/Enum.ts +4 -2
- package/src/dom/nodes/datatypes/Gradient.ts +14 -14
- package/src/dom/nodes/datatypes/Path.ts +5 -2
- package/src/dom/nodes/datatypes/Radius.ts +1 -0
- package/src/dom/nodes/datatypes/Rect.ts +44 -5
- package/src/dom/nodes/datatypes/Transform.ts +31 -1
- package/src/dom/types/Node.ts +2 -5
- package/src/dom/types/index.ts +0 -2
- package/src/external/reanimated/renderHelpers.ts +8 -4
- package/src/headless/index.ts +3 -5
- package/src/index.ts +1 -0
- package/src/renderer/Canvas.tsx +12 -31
- package/src/renderer/Canvas.web.tsx +134 -0
- package/src/renderer/Canvas2.tsx +128 -0
- package/src/renderer/Canvas2.web.tsx +6 -0
- package/src/renderer/Container.tsx +4 -16
- package/src/renderer/HostComponents.ts +2 -10
- package/src/renderer/HostConfig.ts +10 -4
- package/src/renderer/Offscreen.tsx +3 -6
- package/src/renderer/Reconciler.tsx +1 -5
- 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/Shader/Shader.ts +8 -4
- package/src/sksg/Container.ts +102 -0
- package/src/sksg/DeclarationContext.ts +85 -0
- package/src/sksg/DrawingContext.ts +226 -0
- package/src/sksg/HostConfig.ts +287 -0
- package/src/sksg/Reconciler.ts +66 -0
- package/src/sksg/__tests__/Declarations.spec.tsx +235 -0
- package/src/{dom/types/DeclarationContext.ts → sksg/__tests__/MockDeclaration.ts} +54 -21
- package/src/sksg/__tests__/Simple.spec.tsx +148 -0
- package/src/sksg/nodes/Node.ts +8 -0
- package/src/sksg/nodes/colorFilters.ts +79 -0
- package/src/sksg/nodes/context.ts +412 -0
- package/src/sksg/nodes/drawings.ts +405 -0
- package/src/sksg/nodes/imageFilters.ts +235 -0
- package/src/sksg/nodes/index.ts +3 -0
- package/src/sksg/nodes/paint.ts +75 -0
- package/src/sksg/nodes/pathEffects.ts +118 -0
- package/src/sksg/nodes/shaders.ts +210 -0
- package/src/sksg/nodes/utils.ts +23 -0
- package/src/views/SkiaDomView.web.tsx +0 -23
- package/src/views/SkiaPictureView.tsx +0 -2
- package/src/views/SkiaPictureView.web.tsx +10 -1
- package/src/views/types.ts +4 -10
- package/lib/commonjs/dom/__tests__/Shaders.spec.d.ts +0 -1
- package/lib/commonjs/dom/nodes/DrawingNode.d.ts +0 -14
- package/lib/commonjs/dom/nodes/DrawingNode.js +0 -69
- package/lib/commonjs/dom/nodes/DrawingNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/GroupNode.d.ts +0 -7
- package/lib/commonjs/dom/nodes/GroupNode.js +0 -22
- package/lib/commonjs/dom/nodes/GroupNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/LayerNode.d.ts +0 -8
- package/lib/commonjs/dom/nodes/LayerNode.js +0 -39
- package/lib/commonjs/dom/nodes/LayerNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/Node.d.ts +0 -34
- package/lib/commonjs/dom/nodes/Node.js +0 -102
- package/lib/commonjs/dom/nodes/Node.js.map +0 -1
- package/lib/commonjs/dom/nodes/PaintNode.d.ts +0 -8
- package/lib/commonjs/dom/nodes/PaintNode.js +0 -90
- package/lib/commonjs/dom/nodes/PaintNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/RenderNode.d.ts +0 -26
- package/lib/commonjs/dom/nodes/RenderNode.js +0 -132
- package/lib/commonjs/dom/nodes/RenderNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/AtlasNode.d.ts +0 -8
- package/lib/commonjs/dom/nodes/drawings/AtlasNode.js +0 -36
- package/lib/commonjs/dom/nodes/drawings/AtlasNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/BackdropFilterNode.d.ts +0 -8
- package/lib/commonjs/dom/nodes/drawings/BackdropFilterNode.js +0 -42
- package/lib/commonjs/dom/nodes/drawings/BackdropFilterNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/Box.d.ts +0 -15
- package/lib/commonjs/dom/nodes/drawings/Box.js +0 -82
- package/lib/commonjs/dom/nodes/drawings/Box.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/CircleNode.d.ts +0 -9
- package/lib/commonjs/dom/nodes/drawings/CircleNode.js +0 -32
- package/lib/commonjs/dom/nodes/drawings/CircleNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/DiffRectNode.d.ts +0 -8
- package/lib/commonjs/dom/nodes/drawings/DiffRectNode.js +0 -28
- package/lib/commonjs/dom/nodes/drawings/DiffRectNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/FillNode.d.ts +0 -8
- package/lib/commonjs/dom/nodes/drawings/FillNode.js +0 -24
- package/lib/commonjs/dom/nodes/drawings/FillNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/ImageNode.d.ts +0 -25
- package/lib/commonjs/dom/nodes/drawings/ImageNode.js +0 -71
- package/lib/commonjs/dom/nodes/drawings/ImageNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/ImageSVG.d.ts +0 -13
- package/lib/commonjs/dom/nodes/drawings/ImageSVG.js +0 -57
- package/lib/commonjs/dom/nodes/drawings/ImageSVG.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/LineNode.d.ts +0 -8
- package/lib/commonjs/dom/nodes/drawings/LineNode.js +0 -28
- package/lib/commonjs/dom/nodes/drawings/LineNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/OvalNode.d.ts +0 -9
- package/lib/commonjs/dom/nodes/drawings/OvalNode.js +0 -28
- package/lib/commonjs/dom/nodes/drawings/OvalNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/ParagraphNode.d.ts +0 -8
- package/lib/commonjs/dom/nodes/drawings/ParagraphNode.js +0 -32
- package/lib/commonjs/dom/nodes/drawings/ParagraphNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/PatchNode.d.ts +0 -18
- package/lib/commonjs/dom/nodes/drawings/PatchNode.js +0 -53
- package/lib/commonjs/dom/nodes/drawings/PatchNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/PathNode.d.ts +0 -9
- package/lib/commonjs/dom/nodes/drawings/PathNode.js +0 -55
- package/lib/commonjs/dom/nodes/drawings/PathNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/PictureNode.d.ts +0 -8
- package/lib/commonjs/dom/nodes/drawings/PictureNode.js +0 -26
- package/lib/commonjs/dom/nodes/drawings/PictureNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/PointsNode.d.ts +0 -8
- package/lib/commonjs/dom/nodes/drawings/PointsNode.js +0 -30
- package/lib/commonjs/dom/nodes/drawings/PointsNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/RRectNode.d.ts +0 -10
- package/lib/commonjs/dom/nodes/drawings/RRectNode.js +0 -32
- package/lib/commonjs/dom/nodes/drawings/RRectNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/RectNode.d.ts +0 -9
- package/lib/commonjs/dom/nodes/drawings/RectNode.js +0 -28
- package/lib/commonjs/dom/nodes/drawings/RectNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/Text.d.ts +0 -30
- package/lib/commonjs/dom/nodes/drawings/Text.js +0 -159
- package/lib/commonjs/dom/nodes/drawings/Text.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/VerticesNode.d.ts +0 -9
- package/lib/commonjs/dom/nodes/drawings/VerticesNode.js +0 -43
- package/lib/commonjs/dom/nodes/drawings/VerticesNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/drawings/index.d.ts +0 -18
- package/lib/commonjs/dom/nodes/drawings/index.js +0 -204
- package/lib/commonjs/dom/nodes/drawings/index.js.map +0 -1
- package/lib/commonjs/dom/nodes/paint/BlendNode.d.ts +0 -8
- package/lib/commonjs/dom/nodes/paint/BlendNode.js +0 -37
- package/lib/commonjs/dom/nodes/paint/BlendNode.js.map +0 -1
- package/lib/commonjs/dom/nodes/paint/ColorFilters.d.ts +0 -35
- package/lib/commonjs/dom/nodes/paint/ColorFilters.js +0 -102
- package/lib/commonjs/dom/nodes/paint/ColorFilters.js.map +0 -1
- package/lib/commonjs/dom/nodes/paint/ImageFilters.d.ts +0 -42
- package/lib/commonjs/dom/nodes/paint/ImageFilters.js +0 -183
- package/lib/commonjs/dom/nodes/paint/ImageFilters.js.map +0 -1
- package/lib/commonjs/dom/nodes/paint/MaskFilters.d.ts +0 -8
- package/lib/commonjs/dom/nodes/paint/MaskFilters.js +0 -26
- package/lib/commonjs/dom/nodes/paint/MaskFilters.js.map +0 -1
- package/lib/commonjs/dom/nodes/paint/PathEffects.d.ts +0 -39
- package/lib/commonjs/dom/nodes/paint/PathEffects.js +0 -136
- package/lib/commonjs/dom/nodes/paint/PathEffects.js.map +0 -1
- package/lib/commonjs/dom/nodes/paint/Shaders.d.ts +0 -43
- package/lib/commonjs/dom/nodes/paint/Shaders.js +0 -209
- package/lib/commonjs/dom/nodes/paint/Shaders.js.map +0 -1
- package/lib/commonjs/dom/nodes/paint/index.d.ts +0 -6
- package/lib/commonjs/dom/nodes/paint/index.js +0 -72
- package/lib/commonjs/dom/nodes/paint/index.js.map +0 -1
- package/lib/commonjs/dom/types/DeclarationContext.d.ts +0 -29
- package/lib/commonjs/dom/types/DeclarationContext.js +0 -91
- package/lib/commonjs/dom/types/DeclarationContext.js.map +0 -1
- package/lib/commonjs/dom/types/DrawingContext.d.ts +0 -22
- package/lib/commonjs/dom/types/DrawingContext.js +0 -263
- package/lib/commonjs/dom/types/DrawingContext.js.map +0 -1
- package/lib/commonjs/renderer/DrawingContext.d.ts +0 -7
- package/lib/commonjs/renderer/DrawingContext.js.map +0 -1
- package/lib/commonjs/renderer/__tests__/SkiaDOM.spec.d.ts +0 -1
- package/lib/commonjs/views/SkiaJSDomView.d.ts +0 -38
- package/lib/commonjs/views/SkiaJSDomView.js +0 -131
- package/lib/commonjs/views/SkiaJSDomView.js.map +0 -1
- package/lib/commonjs/views/SkiaJSDomView.web.d.ts +0 -1
- package/lib/commonjs/views/SkiaJSDomView.web.js +0 -13
- package/lib/commonjs/views/SkiaJSDomView.web.js.map +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/dom/nodes/DrawingNode.d.ts +0 -14
- package/lib/module/dom/nodes/DrawingNode.js +0 -62
- package/lib/module/dom/nodes/DrawingNode.js.map +0 -1
- package/lib/module/dom/nodes/GroupNode.d.ts +0 -7
- package/lib/module/dom/nodes/GroupNode.js +0 -15
- package/lib/module/dom/nodes/GroupNode.js.map +0 -1
- package/lib/module/dom/nodes/LayerNode.d.ts +0 -8
- package/lib/module/dom/nodes/LayerNode.js +0 -32
- package/lib/module/dom/nodes/LayerNode.js.map +0 -1
- package/lib/module/dom/nodes/Node.d.ts +0 -34
- package/lib/module/dom/nodes/Node.js +0 -94
- package/lib/module/dom/nodes/Node.js.map +0 -1
- package/lib/module/dom/nodes/PaintNode.d.ts +0 -8
- package/lib/module/dom/nodes/PaintNode.js +0 -83
- package/lib/module/dom/nodes/PaintNode.js.map +0 -1
- package/lib/module/dom/nodes/RenderNode.d.ts +0 -26
- package/lib/module/dom/nodes/RenderNode.js +0 -125
- package/lib/module/dom/nodes/RenderNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/AtlasNode.d.ts +0 -8
- package/lib/module/dom/nodes/drawings/AtlasNode.js +0 -29
- package/lib/module/dom/nodes/drawings/AtlasNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/BackdropFilterNode.d.ts +0 -8
- package/lib/module/dom/nodes/drawings/BackdropFilterNode.js +0 -35
- package/lib/module/dom/nodes/drawings/BackdropFilterNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/Box.d.ts +0 -15
- package/lib/module/dom/nodes/drawings/Box.js +0 -74
- package/lib/module/dom/nodes/drawings/Box.js.map +0 -1
- package/lib/module/dom/nodes/drawings/CircleNode.d.ts +0 -9
- package/lib/module/dom/nodes/drawings/CircleNode.js +0 -25
- package/lib/module/dom/nodes/drawings/CircleNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/DiffRectNode.d.ts +0 -8
- package/lib/module/dom/nodes/drawings/DiffRectNode.js +0 -21
- package/lib/module/dom/nodes/drawings/DiffRectNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/FillNode.d.ts +0 -8
- package/lib/module/dom/nodes/drawings/FillNode.js +0 -17
- package/lib/module/dom/nodes/drawings/FillNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/ImageNode.d.ts +0 -25
- package/lib/module/dom/nodes/drawings/ImageNode.js +0 -64
- package/lib/module/dom/nodes/drawings/ImageNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/ImageSVG.d.ts +0 -13
- package/lib/module/dom/nodes/drawings/ImageSVG.js +0 -50
- package/lib/module/dom/nodes/drawings/ImageSVG.js.map +0 -1
- package/lib/module/dom/nodes/drawings/LineNode.d.ts +0 -8
- package/lib/module/dom/nodes/drawings/LineNode.js +0 -21
- package/lib/module/dom/nodes/drawings/LineNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/OvalNode.d.ts +0 -9
- package/lib/module/dom/nodes/drawings/OvalNode.js +0 -21
- package/lib/module/dom/nodes/drawings/OvalNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/ParagraphNode.d.ts +0 -8
- package/lib/module/dom/nodes/drawings/ParagraphNode.js +0 -25
- package/lib/module/dom/nodes/drawings/ParagraphNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/PatchNode.d.ts +0 -18
- package/lib/module/dom/nodes/drawings/PatchNode.js +0 -46
- package/lib/module/dom/nodes/drawings/PatchNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/PathNode.d.ts +0 -9
- package/lib/module/dom/nodes/drawings/PathNode.js +0 -48
- package/lib/module/dom/nodes/drawings/PathNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/PictureNode.d.ts +0 -8
- package/lib/module/dom/nodes/drawings/PictureNode.js +0 -19
- package/lib/module/dom/nodes/drawings/PictureNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/PointsNode.d.ts +0 -8
- package/lib/module/dom/nodes/drawings/PointsNode.js +0 -23
- package/lib/module/dom/nodes/drawings/PointsNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/RRectNode.d.ts +0 -10
- package/lib/module/dom/nodes/drawings/RRectNode.js +0 -25
- package/lib/module/dom/nodes/drawings/RRectNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/RectNode.d.ts +0 -9
- package/lib/module/dom/nodes/drawings/RectNode.js +0 -21
- package/lib/module/dom/nodes/drawings/RectNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/Text.d.ts +0 -30
- package/lib/module/dom/nodes/drawings/Text.js +0 -149
- package/lib/module/dom/nodes/drawings/Text.js.map +0 -1
- package/lib/module/dom/nodes/drawings/VerticesNode.d.ts +0 -9
- package/lib/module/dom/nodes/drawings/VerticesNode.js +0 -36
- package/lib/module/dom/nodes/drawings/VerticesNode.js.map +0 -1
- package/lib/module/dom/nodes/drawings/index.d.ts +0 -18
- package/lib/module/dom/nodes/drawings/index.js +0 -19
- package/lib/module/dom/nodes/drawings/index.js.map +0 -1
- package/lib/module/dom/nodes/paint/BlendNode.d.ts +0 -8
- package/lib/module/dom/nodes/paint/BlendNode.js +0 -30
- package/lib/module/dom/nodes/paint/BlendNode.js.map +0 -1
- package/lib/module/dom/nodes/paint/ColorFilters.d.ts +0 -35
- package/lib/module/dom/nodes/paint/ColorFilters.js +0 -89
- package/lib/module/dom/nodes/paint/ColorFilters.js.map +0 -1
- package/lib/module/dom/nodes/paint/ImageFilters.d.ts +0 -42
- package/lib/module/dom/nodes/paint/ImageFilters.js +0 -169
- package/lib/module/dom/nodes/paint/ImageFilters.js.map +0 -1
- package/lib/module/dom/nodes/paint/MaskFilters.d.ts +0 -8
- package/lib/module/dom/nodes/paint/MaskFilters.js +0 -19
- package/lib/module/dom/nodes/paint/MaskFilters.js.map +0 -1
- package/lib/module/dom/nodes/paint/PathEffects.d.ts +0 -39
- package/lib/module/dom/nodes/paint/PathEffects.js +0 -123
- package/lib/module/dom/nodes/paint/PathEffects.js.map +0 -1
- package/lib/module/dom/nodes/paint/Shaders.d.ts +0 -43
- package/lib/module/dom/nodes/paint/Shaders.js +0 -193
- package/lib/module/dom/nodes/paint/Shaders.js.map +0 -1
- package/lib/module/dom/nodes/paint/index.d.ts +0 -6
- package/lib/module/dom/nodes/paint/index.js +0 -7
- package/lib/module/dom/nodes/paint/index.js.map +0 -1
- package/lib/module/dom/types/DeclarationContext.d.ts +0 -29
- package/lib/module/dom/types/DeclarationContext.js +0 -83
- package/lib/module/dom/types/DeclarationContext.js.map +0 -1
- package/lib/module/dom/types/DrawingContext.d.ts +0 -22
- package/lib/module/dom/types/DrawingContext.js +0 -256
- package/lib/module/dom/types/DrawingContext.js.map +0 -1
- package/lib/module/renderer/DrawingContext.d.ts +0 -7
- package/lib/module/renderer/DrawingContext.js +0 -2
- package/lib/module/renderer/DrawingContext.js.map +0 -1
- package/lib/module/renderer/__tests__/SkiaDOM.spec.d.ts +0 -1
- package/lib/module/views/SkiaJSDomView.d.ts +0 -38
- package/lib/module/views/SkiaJSDomView.js +0 -123
- package/lib/module/views/SkiaJSDomView.js.map +0 -1
- package/lib/module/views/SkiaJSDomView.web.d.ts +0 -1
- package/lib/module/views/SkiaJSDomView.web.js +0 -2
- package/lib/module/views/SkiaJSDomView.web.js.map +0 -1
- package/lib/typescript/lib/commonjs/dom/nodes/DrawingNode.d.ts +0 -6
- package/lib/typescript/lib/commonjs/dom/nodes/GroupNode.d.ts +0 -6
- package/lib/typescript/lib/commonjs/dom/nodes/LayerNode.d.ts +0 -6
- package/lib/typescript/lib/commonjs/dom/nodes/Node.d.ts +0 -20
- package/lib/typescript/lib/commonjs/dom/nodes/PaintNode.d.ts +0 -6
- package/lib/typescript/lib/commonjs/dom/nodes/RenderNode.d.ts +0 -16
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/AtlasNode.d.ts +0 -10
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/BackdropFilterNode.d.ts +0 -10
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/Box.d.ts +0 -15
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/CircleNode.d.ts +0 -10
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/DiffRectNode.d.ts +0 -10
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/FillNode.d.ts +0 -10
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/ImageNode.d.ts +0 -13
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/ImageSVG.d.ts +0 -9
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/LineNode.d.ts +0 -10
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/OvalNode.d.ts +0 -10
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/ParagraphNode.d.ts +0 -9
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/PatchNode.d.ts +0 -14
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/PathNode.d.ts +0 -10
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/PictureNode.d.ts +0 -9
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/PointsNode.d.ts +0 -10
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/RRectNode.d.ts +0 -10
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/RectNode.d.ts +0 -10
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/Text.d.ts +0 -34
- package/lib/typescript/lib/commonjs/dom/nodes/drawings/VerticesNode.d.ts +0 -10
- package/lib/typescript/lib/commonjs/dom/nodes/paint/BlendNode.d.ts +0 -6
- package/lib/typescript/lib/commonjs/dom/nodes/paint/ColorFilters.d.ts +0 -29
- package/lib/typescript/lib/commonjs/dom/nodes/paint/ImageFilters.d.ts +0 -35
- package/lib/typescript/lib/commonjs/dom/nodes/paint/MaskFilters.d.ts +0 -6
- package/lib/typescript/lib/commonjs/dom/nodes/paint/PathEffects.d.ts +0 -34
- package/lib/typescript/lib/commonjs/dom/nodes/paint/Shaders.d.ts +0 -40
- package/lib/typescript/lib/commonjs/dom/types/DeclarationContext.d.ts +0 -26
- package/lib/typescript/lib/commonjs/dom/types/DrawingContext.d.ts +0 -13
- package/lib/typescript/lib/commonjs/views/SkiaJSDomView.d.ts +0 -29
- package/lib/typescript/lib/commonjs/views/SkiaJSDomView.web.d.ts +0 -3
- package/lib/typescript/lib/module/dom/nodes/DrawingNode.d.ts +0 -5
- package/lib/typescript/lib/module/dom/nodes/GroupNode.d.ts +0 -5
- package/lib/typescript/lib/module/dom/nodes/LayerNode.d.ts +0 -5
- package/lib/typescript/lib/module/dom/nodes/Node.d.ts +0 -19
- package/lib/typescript/lib/module/dom/nodes/PaintNode.d.ts +0 -5
- package/lib/typescript/lib/module/dom/nodes/RenderNode.d.ts +0 -15
- package/lib/typescript/lib/module/dom/nodes/drawings/AtlasNode.d.ts +0 -9
- package/lib/typescript/lib/module/dom/nodes/drawings/BackdropFilterNode.d.ts +0 -9
- package/lib/typescript/lib/module/dom/nodes/drawings/Box.d.ts +0 -14
- package/lib/typescript/lib/module/dom/nodes/drawings/CircleNode.d.ts +0 -9
- package/lib/typescript/lib/module/dom/nodes/drawings/DiffRectNode.d.ts +0 -9
- package/lib/typescript/lib/module/dom/nodes/drawings/FillNode.d.ts +0 -9
- package/lib/typescript/lib/module/dom/nodes/drawings/ImageNode.d.ts +0 -22
- package/lib/typescript/lib/module/dom/nodes/drawings/ImageSVG.d.ts +0 -8
- package/lib/typescript/lib/module/dom/nodes/drawings/LineNode.d.ts +0 -9
- package/lib/typescript/lib/module/dom/nodes/drawings/OvalNode.d.ts +0 -9
- package/lib/typescript/lib/module/dom/nodes/drawings/ParagraphNode.d.ts +0 -8
- package/lib/typescript/lib/module/dom/nodes/drawings/PatchNode.d.ts +0 -13
- package/lib/typescript/lib/module/dom/nodes/drawings/PathNode.d.ts +0 -9
- package/lib/typescript/lib/module/dom/nodes/drawings/PictureNode.d.ts +0 -8
- package/lib/typescript/lib/module/dom/nodes/drawings/PointsNode.d.ts +0 -9
- package/lib/typescript/lib/module/dom/nodes/drawings/RRectNode.d.ts +0 -9
- package/lib/typescript/lib/module/dom/nodes/drawings/RectNode.d.ts +0 -9
- package/lib/typescript/lib/module/dom/nodes/drawings/Text.d.ts +0 -33
- package/lib/typescript/lib/module/dom/nodes/drawings/VerticesNode.d.ts +0 -9
- package/lib/typescript/lib/module/dom/nodes/drawings/index.d.ts +0 -18
- package/lib/typescript/lib/module/dom/nodes/paint/BlendNode.d.ts +0 -5
- package/lib/typescript/lib/module/dom/nodes/paint/ColorFilters.d.ts +0 -28
- package/lib/typescript/lib/module/dom/nodes/paint/ImageFilters.d.ts +0 -34
- package/lib/typescript/lib/module/dom/nodes/paint/MaskFilters.d.ts +0 -5
- package/lib/typescript/lib/module/dom/nodes/paint/PathEffects.d.ts +0 -33
- package/lib/typescript/lib/module/dom/nodes/paint/Shaders.d.ts +0 -39
- package/lib/typescript/lib/module/dom/nodes/paint/index.d.ts +0 -6
- package/lib/typescript/lib/module/dom/types/DeclarationContext.d.ts +0 -25
- package/lib/typescript/lib/module/dom/types/DrawingContext.d.ts +0 -12
- package/lib/typescript/lib/module/renderer/DrawingContext.d.ts +0 -1
- package/lib/typescript/lib/module/views/SkiaJSDomView.d.ts +0 -26
- package/lib/typescript/lib/module/views/SkiaJSDomView.web.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/dom/nodes/DrawingNode.d.ts +0 -14
- package/lib/typescript/src/dom/nodes/GroupNode.d.ts +0 -7
- package/lib/typescript/src/dom/nodes/LayerNode.d.ts +0 -8
- package/lib/typescript/src/dom/nodes/Node.d.ts +0 -34
- package/lib/typescript/src/dom/nodes/PaintNode.d.ts +0 -8
- package/lib/typescript/src/dom/nodes/RenderNode.d.ts +0 -26
- package/lib/typescript/src/dom/nodes/drawings/AtlasNode.d.ts +0 -8
- package/lib/typescript/src/dom/nodes/drawings/BackdropFilterNode.d.ts +0 -8
- package/lib/typescript/src/dom/nodes/drawings/Box.d.ts +0 -15
- package/lib/typescript/src/dom/nodes/drawings/CircleNode.d.ts +0 -9
- package/lib/typescript/src/dom/nodes/drawings/DiffRectNode.d.ts +0 -8
- package/lib/typescript/src/dom/nodes/drawings/FillNode.d.ts +0 -8
- package/lib/typescript/src/dom/nodes/drawings/ImageNode.d.ts +0 -25
- package/lib/typescript/src/dom/nodes/drawings/ImageSVG.d.ts +0 -13
- package/lib/typescript/src/dom/nodes/drawings/LineNode.d.ts +0 -8
- package/lib/typescript/src/dom/nodes/drawings/OvalNode.d.ts +0 -9
- package/lib/typescript/src/dom/nodes/drawings/ParagraphNode.d.ts +0 -8
- package/lib/typescript/src/dom/nodes/drawings/PatchNode.d.ts +0 -18
- package/lib/typescript/src/dom/nodes/drawings/PathNode.d.ts +0 -9
- package/lib/typescript/src/dom/nodes/drawings/PictureNode.d.ts +0 -8
- package/lib/typescript/src/dom/nodes/drawings/PointsNode.d.ts +0 -8
- package/lib/typescript/src/dom/nodes/drawings/RRectNode.d.ts +0 -10
- package/lib/typescript/src/dom/nodes/drawings/RectNode.d.ts +0 -9
- package/lib/typescript/src/dom/nodes/drawings/Text.d.ts +0 -30
- package/lib/typescript/src/dom/nodes/drawings/VerticesNode.d.ts +0 -9
- package/lib/typescript/src/dom/nodes/drawings/index.d.ts +0 -18
- package/lib/typescript/src/dom/nodes/paint/BlendNode.d.ts +0 -8
- package/lib/typescript/src/dom/nodes/paint/ColorFilters.d.ts +0 -35
- package/lib/typescript/src/dom/nodes/paint/ImageFilters.d.ts +0 -42
- package/lib/typescript/src/dom/nodes/paint/MaskFilters.d.ts +0 -8
- package/lib/typescript/src/dom/nodes/paint/PathEffects.d.ts +0 -39
- package/lib/typescript/src/dom/nodes/paint/Shaders.d.ts +0 -43
- package/lib/typescript/src/dom/nodes/paint/index.d.ts +0 -6
- package/lib/typescript/src/dom/types/DeclarationContext.d.ts +0 -29
- package/lib/typescript/src/dom/types/DrawingContext.d.ts +0 -22
- package/lib/typescript/src/renderer/DrawingContext.d.ts +0 -7
- package/lib/typescript/src/renderer/__tests__/SkiaDOM.spec.d.ts +0 -1
- package/lib/typescript/src/views/SkiaJSDomView.d.ts +0 -38
- package/lib/typescript/src/views/SkiaJSDomView.web.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/dom/nodes/DrawingNode.ts +0 -74
- package/src/dom/nodes/GroupNode.ts +0 -19
- package/src/dom/nodes/LayerNode.ts +0 -37
- package/src/dom/nodes/Node.ts +0 -121
- package/src/dom/nodes/PaintNode.ts +0 -91
- package/src/dom/nodes/RenderNode.ts +0 -172
- package/src/dom/nodes/drawings/AtlasNode.ts +0 -24
- package/src/dom/nodes/drawings/BackdropFilterNode.ts +0 -37
- package/src/dom/nodes/drawings/Box.ts +0 -110
- package/src/dom/nodes/drawings/CircleNode.ts +0 -24
- package/src/dom/nodes/drawings/DiffRectNode.ts +0 -19
- package/src/dom/nodes/drawings/FillNode.ts +0 -18
- package/src/dom/nodes/drawings/ImageNode.ts +0 -49
- package/src/dom/nodes/drawings/ImageSVG.ts +0 -38
- package/src/dom/nodes/drawings/LineNode.ts +0 -19
- package/src/dom/nodes/drawings/OvalNode.ts +0 -23
- package/src/dom/nodes/drawings/ParagraphNode.ts +0 -22
- package/src/dom/nodes/drawings/PatchNode.ts +0 -54
- package/src/dom/nodes/drawings/PathNode.ts +0 -51
- package/src/dom/nodes/drawings/PictureNode.ts +0 -19
- package/src/dom/nodes/drawings/PointsNode.ts +0 -21
- package/src/dom/nodes/drawings/RRectNode.ts +0 -25
- package/src/dom/nodes/drawings/RectNode.ts +0 -23
- package/src/dom/nodes/drawings/Text.ts +0 -145
- package/src/dom/nodes/drawings/VerticesNode.ts +0 -35
- package/src/dom/nodes/drawings/index.ts +0 -18
- package/src/dom/nodes/paint/BlendNode.ts +0 -32
- package/src/dom/nodes/paint/ColorFilters.ts +0 -106
- package/src/dom/nodes/paint/ImageFilters.ts +0 -221
- package/src/dom/nodes/paint/MaskFilters.ts +0 -23
- package/src/dom/nodes/paint/PathEffects.ts +0 -139
- package/src/dom/nodes/paint/Shaders.ts +0 -233
- package/src/dom/nodes/paint/index.ts +0 -6
- package/src/dom/types/DrawingContext.ts +0 -322
- package/src/renderer/DrawingContext.ts +0 -8
- package/src/renderer/__tests__/SkiaDOM.spec.tsx +0 -46
- package/src/views/SkiaJSDomView.tsx +0 -143
- package/src/views/SkiaJSDomView.web.tsx +0 -1
- /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/typescript/lib/commonjs/{dom/nodes/drawings/index.d.ts → sksg/nodes/Node.d.ts} +0 -0
- /package/lib/typescript/lib/commonjs/{dom/nodes/paint → sksg/nodes}/index.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,61 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.SkiaSGRoot = void 0;
|
7
|
+
var _reactReconciler = _interopRequireDefault(require("react-reconciler"));
|
8
|
+
var _types = require("../dom/types");
|
9
|
+
var _HostConfig = require("./HostConfig");
|
10
|
+
var _Container = require("./Container");
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
12
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
13
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
14
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
15
|
+
const skiaReconciler = (0, _reactReconciler.default)(_HostConfig.sksgHostConfig);
|
16
|
+
skiaReconciler.injectIntoDevTools({
|
17
|
+
bundleType: 1,
|
18
|
+
version: "0.0.1",
|
19
|
+
rendererPackageName: "react-native-skia"
|
20
|
+
});
|
21
|
+
class SkiaSGRoot {
|
22
|
+
constructor(Skia, nativeId = -1) {
|
23
|
+
this.Skia = Skia;
|
24
|
+
_defineProperty(this, "root", void 0);
|
25
|
+
_defineProperty(this, "container", void 0);
|
26
|
+
this.container = new _Container.Container(Skia, nativeId);
|
27
|
+
this.root = skiaReconciler.createContainer(this.container, 0, null, true, null, "", console.error, null);
|
28
|
+
}
|
29
|
+
get sg() {
|
30
|
+
const children = this.container.root;
|
31
|
+
return {
|
32
|
+
type: _types.NodeType.Group,
|
33
|
+
props: {},
|
34
|
+
children,
|
35
|
+
isDeclaration: false
|
36
|
+
};
|
37
|
+
}
|
38
|
+
render(element) {
|
39
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
40
|
+
skiaReconciler.updateContainer(element, this.root, null, () => {
|
41
|
+
(0, _HostConfig.debug)("updateContainer");
|
42
|
+
});
|
43
|
+
}
|
44
|
+
drawOnCanvas(canvas) {
|
45
|
+
this.container.drawOnCanvas(canvas);
|
46
|
+
}
|
47
|
+
getPicture() {
|
48
|
+
const recorder = this.Skia.PictureRecorder();
|
49
|
+
const canvas = recorder.beginRecording();
|
50
|
+
this.drawOnCanvas(canvas);
|
51
|
+
return recorder.finishRecordingAsPicture();
|
52
|
+
}
|
53
|
+
unmount() {
|
54
|
+
this.container.unmounted = true;
|
55
|
+
skiaReconciler.updateContainer(null, this.root, null, () => {
|
56
|
+
(0, _HostConfig.debug)("unmountContainer");
|
57
|
+
});
|
58
|
+
}
|
59
|
+
}
|
60
|
+
exports.SkiaSGRoot = SkiaSGRoot;
|
61
|
+
//# sourceMappingURL=Reconciler.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["_reactReconciler","_interopRequireDefault","require","_types","_HostConfig","_Container","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","skiaReconciler","ReactReconciler","sksgHostConfig","injectIntoDevTools","bundleType","version","rendererPackageName","SkiaSGRoot","constructor","Skia","nativeId","container","Container","root","createContainer","console","error","sg","children","type","NodeType","Group","props","isDeclaration","render","element","updateContainer","debug","drawOnCanvas","canvas","getPicture","recorder","PictureRecorder","beginRecording","finishRecordingAsPicture","unmount","unmounted","exports"],"sources":["Reconciler.ts"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport type { OpaqueRoot } from \"react-reconciler\";\nimport ReactReconciler from \"react-reconciler\";\n\nimport type { SkCanvas, Skia } from \"../skia/types\";\nimport { NodeType } from \"../dom/types\";\n\nimport { debug, sksgHostConfig } from \"./HostConfig\";\nimport { Container } from \"./Container\";\n\nconst skiaReconciler = ReactReconciler(sksgHostConfig);\n\nskiaReconciler.injectIntoDevTools({\n bundleType: 1,\n version: \"0.0.1\",\n rendererPackageName: \"react-native-skia\",\n});\n\nexport class SkiaSGRoot {\n private root: OpaqueRoot;\n private container: Container;\n\n constructor(public Skia: Skia, nativeId = -1) {\n this.container = new Container(Skia, nativeId);\n this.root = skiaReconciler.createContainer(\n this.container,\n 0,\n null,\n true,\n null,\n \"\",\n console.error,\n null\n );\n }\n\n get sg() {\n const children = this.container.root;\n return { type: NodeType.Group, props: {}, children, isDeclaration: false };\n }\n\n render(element: ReactNode) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n skiaReconciler.updateContainer(element as any, this.root, null, () => {\n debug(\"updateContainer\");\n });\n }\n\n drawOnCanvas(canvas: SkCanvas) {\n this.container.drawOnCanvas(canvas);\n }\n\n getPicture() {\n const recorder = this.Skia.PictureRecorder();\n const canvas = recorder.beginRecording();\n this.drawOnCanvas(canvas);\n return recorder.finishRecordingAsPicture();\n }\n\n unmount() {\n this.container.unmounted = true;\n skiaReconciler.updateContainer(null, this.root, null, () => {\n debug(\"unmountContainer\");\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -0,0 +1,57 @@
|
|
1
|
+
export declare enum DeclarationType {
|
2
|
+
ColorFilter = 0,
|
3
|
+
ImageFilter = 1,
|
4
|
+
Shader = 2,
|
5
|
+
MaskFilter = 3,
|
6
|
+
PathEffect = 4,
|
7
|
+
Paint = 5
|
8
|
+
}
|
9
|
+
interface Filter {
|
10
|
+
tag: string;
|
11
|
+
}
|
12
|
+
export interface SkColorFilter extends Filter {
|
13
|
+
type: DeclarationType.ColorFilter;
|
14
|
+
}
|
15
|
+
interface SkImageFilter extends Filter {
|
16
|
+
type: DeclarationType.ImageFilter;
|
17
|
+
}
|
18
|
+
interface SkShader extends Filter {
|
19
|
+
type: DeclarationType.Shader;
|
20
|
+
}
|
21
|
+
interface SkMaskFilter extends Filter {
|
22
|
+
type: DeclarationType.MaskFilter;
|
23
|
+
}
|
24
|
+
interface SkPathEffect extends Filter {
|
25
|
+
type: DeclarationType.PathEffect;
|
26
|
+
}
|
27
|
+
interface SkPaint extends Filter {
|
28
|
+
type: DeclarationType.Paint;
|
29
|
+
}
|
30
|
+
type Composer<T> = (outer: T, inner: T) => T;
|
31
|
+
export declare const compose: any;
|
32
|
+
export declare const composeDeclarations: <T>(filters: T[], composer: Composer<T>) => T;
|
33
|
+
declare class Declaration<T extends Filter> {
|
34
|
+
decls: T[];
|
35
|
+
indexes: number[];
|
36
|
+
composer?: Composer<T>;
|
37
|
+
constructor(composer?: Composer<T>);
|
38
|
+
private get index();
|
39
|
+
save(): void;
|
40
|
+
restore(): void;
|
41
|
+
pop(): T | undefined;
|
42
|
+
push(decl: T): void;
|
43
|
+
popAll(): T[];
|
44
|
+
popAllAsOne(): T | undefined;
|
45
|
+
}
|
46
|
+
export declare class DeclarationContext {
|
47
|
+
readonly paints: Declaration<SkPaint>;
|
48
|
+
readonly maskFilters: Declaration<SkMaskFilter>;
|
49
|
+
readonly shaders: Declaration<SkShader>;
|
50
|
+
readonly pathEffects: Declaration<SkPathEffect>;
|
51
|
+
readonly imageFilters: Declaration<SkImageFilter>;
|
52
|
+
readonly colorFilters: Declaration<SkColorFilter>;
|
53
|
+
constructor();
|
54
|
+
save(): void;
|
55
|
+
restore(): void;
|
56
|
+
}
|
57
|
+
export {};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":[],"sources":["Node.ts"],"sourcesContent":["import type { NodeType } from \"../../dom/types\";\n\nexport interface Node<Props = unknown> {\n type: NodeType;\n isDeclaration: boolean;\n props: Props;\n children: Node[];\n}\n"],"mappings":"","ignoreList":[]}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
import type { BlendColorFilterProps, LerpColorFilterProps, MatrixColorFilterProps } from "../../dom/types";
|
2
|
+
import type { SkColorFilter } from "../../skia/types";
|
3
|
+
import type { DeclarationContext } from "../DeclarationContext";
|
4
|
+
export declare const composeColorFilters: (ctx: DeclarationContext, cf: SkColorFilter, processChildren: () => void) => void;
|
5
|
+
export declare const makeBlendColorFilter: (ctx: DeclarationContext, props: BlendColorFilterProps) => SkColorFilter;
|
6
|
+
export declare const makeSRGBToLinearGammaColorFilter: (ctx: DeclarationContext) => SkColorFilter;
|
7
|
+
export declare const makeLinearToSRGBGammaColorFilter: (ctx: DeclarationContext) => SkColorFilter;
|
8
|
+
export declare const declareLerpColorFilter: (ctx: DeclarationContext, props: LerpColorFilterProps) => void;
|
9
|
+
export declare const makeMatrixColorFilter: (ctx: DeclarationContext, props: MatrixColorFilterProps) => SkColorFilter;
|
10
|
+
export declare const makeLumaColorFilter: (ctx: DeclarationContext) => SkColorFilter;
|
@@ -0,0 +1,79 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.makeSRGBToLinearGammaColorFilter = exports.makeMatrixColorFilter = exports.makeLumaColorFilter = exports.makeLinearToSRGBGammaColorFilter = exports.makeBlendColorFilter = exports.declareLerpColorFilter = exports.composeColorFilters = void 0;
|
7
|
+
var _nodes = require("../../dom/nodes");
|
8
|
+
var _types = require("../../skia/types");
|
9
|
+
const composeColorFilters = (ctx, cf, processChildren) => {
|
10
|
+
"worklet";
|
11
|
+
|
12
|
+
const {
|
13
|
+
Skia
|
14
|
+
} = ctx;
|
15
|
+
ctx.colorFilters.save();
|
16
|
+
processChildren();
|
17
|
+
const cf1 = ctx.colorFilters.popAllAsOne();
|
18
|
+
ctx.colorFilters.restore();
|
19
|
+
ctx.colorFilters.push(cf1 ? Skia.ColorFilter.MakeCompose(cf, cf1) : cf);
|
20
|
+
};
|
21
|
+
exports.composeColorFilters = composeColorFilters;
|
22
|
+
const makeBlendColorFilter = (ctx, props) => {
|
23
|
+
"worklet";
|
24
|
+
|
25
|
+
const {
|
26
|
+
mode
|
27
|
+
} = props;
|
28
|
+
const color = ctx.Skia.Color(props.color);
|
29
|
+
const cf = ctx.Skia.ColorFilter.MakeBlend(color, _types.BlendMode[(0, _nodes.enumKey)(mode)]);
|
30
|
+
return cf;
|
31
|
+
};
|
32
|
+
exports.makeBlendColorFilter = makeBlendColorFilter;
|
33
|
+
const makeSRGBToLinearGammaColorFilter = ctx => {
|
34
|
+
"worklet";
|
35
|
+
|
36
|
+
const cf = ctx.Skia.ColorFilter.MakeSRGBToLinearGamma();
|
37
|
+
return cf;
|
38
|
+
};
|
39
|
+
exports.makeSRGBToLinearGammaColorFilter = makeSRGBToLinearGammaColorFilter;
|
40
|
+
const makeLinearToSRGBGammaColorFilter = ctx => {
|
41
|
+
"worklet";
|
42
|
+
|
43
|
+
const cf = ctx.Skia.ColorFilter.MakeLinearToSRGBGamma();
|
44
|
+
return cf;
|
45
|
+
};
|
46
|
+
exports.makeLinearToSRGBGammaColorFilter = makeLinearToSRGBGammaColorFilter;
|
47
|
+
const declareLerpColorFilter = (ctx, props) => {
|
48
|
+
"worklet";
|
49
|
+
|
50
|
+
const {
|
51
|
+
t
|
52
|
+
} = props;
|
53
|
+
const second = ctx.colorFilters.pop();
|
54
|
+
const first = ctx.colorFilters.pop();
|
55
|
+
if (!first || !second) {
|
56
|
+
throw new Error("LerpColorFilterNode: missing two color filters as children");
|
57
|
+
}
|
58
|
+
const cf = ctx.Skia.ColorFilter.MakeLerp(t, first, second);
|
59
|
+
ctx.colorFilters.push(cf);
|
60
|
+
};
|
61
|
+
exports.declareLerpColorFilter = declareLerpColorFilter;
|
62
|
+
const makeMatrixColorFilter = (ctx, props) => {
|
63
|
+
"worklet";
|
64
|
+
|
65
|
+
const {
|
66
|
+
matrix
|
67
|
+
} = props;
|
68
|
+
const cf = ctx.Skia.ColorFilter.MakeMatrix(matrix);
|
69
|
+
return cf;
|
70
|
+
};
|
71
|
+
exports.makeMatrixColorFilter = makeMatrixColorFilter;
|
72
|
+
const makeLumaColorFilter = ctx => {
|
73
|
+
"worklet";
|
74
|
+
|
75
|
+
const cf = ctx.Skia.ColorFilter.MakeLumaColorFilter();
|
76
|
+
return cf;
|
77
|
+
};
|
78
|
+
exports.makeLumaColorFilter = makeLumaColorFilter;
|
79
|
+
//# sourceMappingURL=colorFilters.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["_nodes","require","_types","composeColorFilters","ctx","cf","processChildren","Skia","colorFilters","save","cf1","popAllAsOne","restore","push","ColorFilter","MakeCompose","exports","makeBlendColorFilter","props","mode","color","Color","MakeBlend","BlendMode","enumKey","makeSRGBToLinearGammaColorFilter","MakeSRGBToLinearGamma","makeLinearToSRGBGammaColorFilter","MakeLinearToSRGBGamma","declareLerpColorFilter","t","second","pop","first","Error","MakeLerp","makeMatrixColorFilter","matrix","MakeMatrix","makeLumaColorFilter","MakeLumaColorFilter"],"sources":["colorFilters.ts"],"sourcesContent":["import { enumKey } from \"../../dom/nodes\";\nimport type {\n BlendColorFilterProps,\n LerpColorFilterProps,\n MatrixColorFilterProps,\n} from \"../../dom/types\";\nimport type { SkColorFilter } from \"../../skia/types\";\nimport { BlendMode } from \"../../skia/types\";\nimport type { DeclarationContext } from \"../DeclarationContext\";\n\nexport const composeColorFilters = (\n ctx: DeclarationContext,\n cf: SkColorFilter,\n processChildren: () => void\n) => {\n \"worklet\";\n const { Skia } = ctx;\n ctx.colorFilters.save();\n processChildren();\n const cf1 = ctx.colorFilters.popAllAsOne();\n ctx.colorFilters.restore();\n ctx.colorFilters.push(cf1 ? Skia.ColorFilter.MakeCompose(cf, cf1) : cf);\n};\n\nexport const makeBlendColorFilter = (\n ctx: DeclarationContext,\n props: BlendColorFilterProps\n) => {\n \"worklet\";\n const { mode } = props;\n const color = ctx.Skia.Color(props.color);\n const cf = ctx.Skia.ColorFilter.MakeBlend(color, BlendMode[enumKey(mode)]);\n return cf;\n};\n\nexport const makeSRGBToLinearGammaColorFilter = (ctx: DeclarationContext) => {\n \"worklet\";\n const cf = ctx.Skia.ColorFilter.MakeSRGBToLinearGamma();\n return cf;\n};\n\nexport const makeLinearToSRGBGammaColorFilter = (ctx: DeclarationContext) => {\n \"worklet\";\n const cf = ctx.Skia.ColorFilter.MakeLinearToSRGBGamma();\n return cf;\n};\n\nexport const declareLerpColorFilter = (\n ctx: DeclarationContext,\n props: LerpColorFilterProps\n) => {\n \"worklet\";\n const { t } = props;\n const second = ctx.colorFilters.pop();\n const first = ctx.colorFilters.pop();\n if (!first || !second) {\n throw new Error(\n \"LerpColorFilterNode: missing two color filters as children\"\n );\n }\n const cf = ctx.Skia.ColorFilter.MakeLerp(t, first, second);\n ctx.colorFilters.push(cf);\n};\n\nexport const makeMatrixColorFilter = (\n ctx: DeclarationContext,\n props: MatrixColorFilterProps\n) => {\n \"worklet\";\n const { matrix } = props;\n const cf = ctx.Skia.ColorFilter.MakeMatrix(matrix);\n return cf;\n};\n\nexport const makeLumaColorFilter = (ctx: DeclarationContext) => {\n \"worklet\";\n const cf = ctx.Skia.ColorFilter.MakeLumaColorFilter();\n return cf;\n};\n"],"mappings":"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","ignoreList":[]}
|
@@ -0,0 +1,394 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.draw = draw;
|
7
|
+
var _types = require("../../dom/types");
|
8
|
+
var _DeclarationContext = require("../DeclarationContext");
|
9
|
+
var _drawings = require("./drawings");
|
10
|
+
var _colorFilters = require("./colorFilters");
|
11
|
+
var _imageFilters = require("./imageFilters");
|
12
|
+
var _utils = require("./utils");
|
13
|
+
var _shaders = require("./shaders");
|
14
|
+
var _paint = require("./paint");
|
15
|
+
var _pathEffects = require("./pathEffects");
|
16
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
17
|
+
|
18
|
+
function processDeclarations(ctx, node) {
|
19
|
+
"worklet";
|
20
|
+
|
21
|
+
const processChildren = () => node.children.forEach(child => processDeclarations(ctx, child));
|
22
|
+
const {
|
23
|
+
type
|
24
|
+
} = node;
|
25
|
+
const props = (0, _utils.materialize)(node.props);
|
26
|
+
switch (type) {
|
27
|
+
// Mask Filter
|
28
|
+
case _types.NodeType.BlurMaskFilter:
|
29
|
+
{
|
30
|
+
(0, _imageFilters.declareBlurMaskFilter)(ctx, props);
|
31
|
+
break;
|
32
|
+
}
|
33
|
+
// Color Filters
|
34
|
+
case _types.NodeType.LerpColorFilter:
|
35
|
+
{
|
36
|
+
processChildren();
|
37
|
+
(0, _colorFilters.declareLerpColorFilter)(ctx, props);
|
38
|
+
break;
|
39
|
+
}
|
40
|
+
case _types.NodeType.Blend:
|
41
|
+
{
|
42
|
+
processChildren();
|
43
|
+
(0, _imageFilters.declareBlend)(ctx, props);
|
44
|
+
break;
|
45
|
+
}
|
46
|
+
case _types.NodeType.BlendColorFilter:
|
47
|
+
{
|
48
|
+
const cf = (0, _colorFilters.makeBlendColorFilter)(ctx, props);
|
49
|
+
(0, _colorFilters.composeColorFilters)(ctx, cf, processChildren);
|
50
|
+
break;
|
51
|
+
}
|
52
|
+
case _types.NodeType.SRGBToLinearGammaColorFilter:
|
53
|
+
{
|
54
|
+
const cf = (0, _colorFilters.makeSRGBToLinearGammaColorFilter)(ctx);
|
55
|
+
(0, _colorFilters.composeColorFilters)(ctx, cf, processChildren);
|
56
|
+
break;
|
57
|
+
}
|
58
|
+
case _types.NodeType.LinearToSRGBGammaColorFilter:
|
59
|
+
{
|
60
|
+
const cf = (0, _colorFilters.makeLinearToSRGBGammaColorFilter)(ctx);
|
61
|
+
(0, _colorFilters.composeColorFilters)(ctx, cf, processChildren);
|
62
|
+
break;
|
63
|
+
}
|
64
|
+
case _types.NodeType.MatrixColorFilter:
|
65
|
+
{
|
66
|
+
const cf = (0, _colorFilters.makeMatrixColorFilter)(ctx, props);
|
67
|
+
(0, _colorFilters.composeColorFilters)(ctx, cf, processChildren);
|
68
|
+
break;
|
69
|
+
}
|
70
|
+
case _types.NodeType.LumaColorFilter:
|
71
|
+
{
|
72
|
+
const cf = (0, _colorFilters.makeLumaColorFilter)(ctx);
|
73
|
+
(0, _colorFilters.composeColorFilters)(ctx, cf, processChildren);
|
74
|
+
break;
|
75
|
+
}
|
76
|
+
// Shaders
|
77
|
+
case _types.NodeType.Shader:
|
78
|
+
{
|
79
|
+
processChildren();
|
80
|
+
(0, _shaders.declareShader)(ctx, props);
|
81
|
+
break;
|
82
|
+
}
|
83
|
+
case _types.NodeType.ImageShader:
|
84
|
+
{
|
85
|
+
(0, _shaders.declareImageShader)(ctx, props);
|
86
|
+
break;
|
87
|
+
}
|
88
|
+
case _types.NodeType.ColorShader:
|
89
|
+
{
|
90
|
+
(0, _shaders.declareColorShader)(ctx, props);
|
91
|
+
break;
|
92
|
+
}
|
93
|
+
case _types.NodeType.Turbulence:
|
94
|
+
{
|
95
|
+
(0, _shaders.declareTurbulenceShader)(ctx, props);
|
96
|
+
break;
|
97
|
+
}
|
98
|
+
case _types.NodeType.FractalNoise:
|
99
|
+
{
|
100
|
+
(0, _shaders.declareFractalNoiseShader)(ctx, props);
|
101
|
+
break;
|
102
|
+
}
|
103
|
+
case _types.NodeType.LinearGradient:
|
104
|
+
{
|
105
|
+
(0, _shaders.declareLinearGradientShader)(ctx, props);
|
106
|
+
break;
|
107
|
+
}
|
108
|
+
case _types.NodeType.RadialGradient:
|
109
|
+
{
|
110
|
+
(0, _shaders.declareRadialGradientShader)(ctx, props);
|
111
|
+
break;
|
112
|
+
}
|
113
|
+
case _types.NodeType.SweepGradient:
|
114
|
+
{
|
115
|
+
(0, _shaders.declareSweepGradientShader)(ctx, props);
|
116
|
+
break;
|
117
|
+
}
|
118
|
+
case _types.NodeType.TwoPointConicalGradient:
|
119
|
+
{
|
120
|
+
(0, _shaders.declareTwoPointConicalGradientShader)(ctx, props);
|
121
|
+
break;
|
122
|
+
}
|
123
|
+
// Image Filters
|
124
|
+
case _types.NodeType.BlurImageFilter:
|
125
|
+
{
|
126
|
+
const imgf = (0, _imageFilters.makeBlurImageFilter)(ctx, props);
|
127
|
+
(0, _imageFilters.composeImageFilters)(ctx, imgf, processChildren);
|
128
|
+
break;
|
129
|
+
}
|
130
|
+
case _types.NodeType.OffsetImageFilter:
|
131
|
+
{
|
132
|
+
const imgf = (0, _imageFilters.makeOffsetImageFilter)(ctx, props);
|
133
|
+
(0, _imageFilters.composeImageFilters)(ctx, imgf, processChildren);
|
134
|
+
break;
|
135
|
+
}
|
136
|
+
case _types.NodeType.DisplacementMapImageFilter:
|
137
|
+
{
|
138
|
+
processChildren();
|
139
|
+
(0, _imageFilters.declareDisplacementMapImageFilter)(ctx, props);
|
140
|
+
break;
|
141
|
+
}
|
142
|
+
case _types.NodeType.DropShadowImageFilter:
|
143
|
+
{
|
144
|
+
const imgf = (0, _imageFilters.makeDropShadowImageFilter)(ctx, props);
|
145
|
+
(0, _imageFilters.composeImageFilters)(ctx, imgf, processChildren);
|
146
|
+
break;
|
147
|
+
}
|
148
|
+
case _types.NodeType.MorphologyImageFilter:
|
149
|
+
{
|
150
|
+
const imgf = (0, _imageFilters.makeMorphologyImageFilter)(ctx, props);
|
151
|
+
(0, _imageFilters.composeImageFilters)(ctx, imgf, processChildren);
|
152
|
+
break;
|
153
|
+
}
|
154
|
+
case _types.NodeType.BlendImageFilter:
|
155
|
+
{
|
156
|
+
processChildren();
|
157
|
+
(0, _imageFilters.declareBlendImageFilter)(ctx, props);
|
158
|
+
break;
|
159
|
+
}
|
160
|
+
case _types.NodeType.RuntimeShaderImageFilter:
|
161
|
+
{
|
162
|
+
const imgf = (0, _imageFilters.makeRuntimeShaderImageFilter)(ctx, props);
|
163
|
+
(0, _imageFilters.composeImageFilters)(ctx, imgf, processChildren);
|
164
|
+
break;
|
165
|
+
}
|
166
|
+
// Path Effects
|
167
|
+
case _types.NodeType.SumPathEffect:
|
168
|
+
{
|
169
|
+
processChildren();
|
170
|
+
(0, _pathEffects.declareSumPathEffect)(ctx);
|
171
|
+
break;
|
172
|
+
}
|
173
|
+
case _types.NodeType.CornerPathEffect:
|
174
|
+
{
|
175
|
+
const pf = (0, _pathEffects.makeCornerPathEffect)(ctx, props);
|
176
|
+
(0, _pathEffects.composePathEffects)(ctx, pf, processChildren);
|
177
|
+
break;
|
178
|
+
}
|
179
|
+
case _types.NodeType.Path1DPathEffect:
|
180
|
+
{
|
181
|
+
const pf = (0, _pathEffects.makePath1DPathEffect)(ctx, props);
|
182
|
+
(0, _pathEffects.composePathEffects)(ctx, pf, processChildren);
|
183
|
+
break;
|
184
|
+
}
|
185
|
+
case _types.NodeType.Path2DPathEffect:
|
186
|
+
{
|
187
|
+
const pf = (0, _pathEffects.makePath2DPathEffect)(ctx, props);
|
188
|
+
(0, _pathEffects.composePathEffects)(ctx, pf, processChildren);
|
189
|
+
break;
|
190
|
+
}
|
191
|
+
case _types.NodeType.Line2DPathEffect:
|
192
|
+
{
|
193
|
+
const pf = (0, _pathEffects.makeLine2DPathEffect)(ctx, props);
|
194
|
+
(0, _pathEffects.composePathEffects)(ctx, pf, processChildren);
|
195
|
+
break;
|
196
|
+
}
|
197
|
+
case _types.NodeType.DashPathEffect:
|
198
|
+
{
|
199
|
+
const pf = (0, _pathEffects.makeDashPathEffect)(ctx, props);
|
200
|
+
(0, _pathEffects.composePathEffects)(ctx, pf, processChildren);
|
201
|
+
break;
|
202
|
+
}
|
203
|
+
case _types.NodeType.DiscretePathEffect:
|
204
|
+
{
|
205
|
+
const pf = (0, _pathEffects.makeDiscretePathEffect)(ctx, props);
|
206
|
+
(0, _pathEffects.composePathEffects)(ctx, pf, processChildren);
|
207
|
+
break;
|
208
|
+
}
|
209
|
+
// Paint
|
210
|
+
case _types.NodeType.Paint:
|
211
|
+
processChildren();
|
212
|
+
(0, _paint.declarePaint)(ctx, props);
|
213
|
+
break;
|
214
|
+
default:
|
215
|
+
console.log("Unknown declaration node: ", type);
|
216
|
+
}
|
217
|
+
}
|
218
|
+
const preProcessContext = (ctx, props, node) => {
|
219
|
+
"worklet";
|
220
|
+
|
221
|
+
const shouldRestoreMatrix = ctx.processMatrixAndClipping(props, props.layer);
|
222
|
+
const declCtx = (0, _DeclarationContext.createDeclarationContext)(ctx.Skia);
|
223
|
+
node.children.forEach(child => {
|
224
|
+
if (child.isDeclaration) {
|
225
|
+
processDeclarations(declCtx, child);
|
226
|
+
}
|
227
|
+
});
|
228
|
+
const shouldRestorePaint = ctx.processPaint(props, declCtx);
|
229
|
+
return {
|
230
|
+
shouldRestoreMatrix,
|
231
|
+
shouldRestorePaint,
|
232
|
+
extraPaints: declCtx.paints.popAll()
|
233
|
+
};
|
234
|
+
};
|
235
|
+
const drawBackdropFilter = (ctx, node) => {
|
236
|
+
"worklet";
|
237
|
+
|
238
|
+
const {
|
239
|
+
canvas,
|
240
|
+
Skia
|
241
|
+
} = ctx;
|
242
|
+
const child = node.children[0];
|
243
|
+
let imageFilter = null;
|
244
|
+
if (child.isDeclaration) {
|
245
|
+
const declCtx = (0, _DeclarationContext.createDeclarationContext)(ctx.Skia);
|
246
|
+
processDeclarations(declCtx, child);
|
247
|
+
const imgf = declCtx.imageFilters.pop();
|
248
|
+
if (imgf) {
|
249
|
+
imageFilter = imgf;
|
250
|
+
} else {
|
251
|
+
const cf = declCtx.colorFilters.pop();
|
252
|
+
if (cf) {
|
253
|
+
imageFilter = Skia.ImageFilter.MakeColorFilter(cf, null);
|
254
|
+
}
|
255
|
+
}
|
256
|
+
}
|
257
|
+
canvas.saveLayer(undefined, null, imageFilter);
|
258
|
+
canvas.restore();
|
259
|
+
};
|
260
|
+
function draw(ctx, node) {
|
261
|
+
"worklet";
|
262
|
+
|
263
|
+
// Special mixed nodes
|
264
|
+
if (node.type === _types.NodeType.BackdropFilter) {
|
265
|
+
drawBackdropFilter(ctx, node);
|
266
|
+
return;
|
267
|
+
}
|
268
|
+
if (node.type === _types.NodeType.Layer) {
|
269
|
+
let hasLayer = false;
|
270
|
+
const [layer, ...children] = node.children;
|
271
|
+
if (layer.isDeclaration) {
|
272
|
+
const declCtx = (0, _DeclarationContext.createDeclarationContext)(ctx.Skia);
|
273
|
+
processDeclarations(declCtx, layer);
|
274
|
+
const paint = declCtx.paints.pop();
|
275
|
+
if (paint) {
|
276
|
+
hasLayer = true;
|
277
|
+
ctx.canvas.saveLayer(paint);
|
278
|
+
}
|
279
|
+
}
|
280
|
+
children.map(child => {
|
281
|
+
if (!child.isDeclaration) {
|
282
|
+
draw(ctx, child);
|
283
|
+
}
|
284
|
+
});
|
285
|
+
if (hasLayer) {
|
286
|
+
ctx.canvas.restore();
|
287
|
+
}
|
288
|
+
return;
|
289
|
+
}
|
290
|
+
const {
|
291
|
+
type,
|
292
|
+
props: rawProps,
|
293
|
+
children
|
294
|
+
} = node;
|
295
|
+
// Regular nodes
|
296
|
+
const props = (0, _utils.materialize)(rawProps);
|
297
|
+
const {
|
298
|
+
shouldRestoreMatrix,
|
299
|
+
shouldRestorePaint,
|
300
|
+
extraPaints
|
301
|
+
} = preProcessContext(ctx, props, node);
|
302
|
+
const paints = [ctx.getPaint(), ...extraPaints];
|
303
|
+
paints.forEach(paint => {
|
304
|
+
const lctx = {
|
305
|
+
paint,
|
306
|
+
Skia: ctx.Skia,
|
307
|
+
canvas: ctx.canvas
|
308
|
+
};
|
309
|
+
switch (type) {
|
310
|
+
case _types.NodeType.Box:
|
311
|
+
(0, _drawings.drawBox)(lctx, props, node.children);
|
312
|
+
break;
|
313
|
+
case _types.NodeType.Image:
|
314
|
+
(0, _drawings.drawImage)(lctx, props);
|
315
|
+
break;
|
316
|
+
case _types.NodeType.Points:
|
317
|
+
(0, _drawings.drawPoints)(lctx, props);
|
318
|
+
break;
|
319
|
+
case _types.NodeType.Path:
|
320
|
+
(0, _drawings.drawPath)(lctx, props);
|
321
|
+
break;
|
322
|
+
case _types.NodeType.Rect:
|
323
|
+
(0, _drawings.drawRect)(lctx, props);
|
324
|
+
break;
|
325
|
+
case _types.NodeType.RRect:
|
326
|
+
(0, _drawings.drawRRect)(lctx, props);
|
327
|
+
break;
|
328
|
+
case _types.NodeType.Oval:
|
329
|
+
(0, _drawings.drawOval)(lctx, props);
|
330
|
+
break;
|
331
|
+
case _types.NodeType.Line:
|
332
|
+
(0, _drawings.drawLine)(lctx, props);
|
333
|
+
break;
|
334
|
+
case _types.NodeType.Patch:
|
335
|
+
(0, _drawings.drawPatch)(lctx, props);
|
336
|
+
break;
|
337
|
+
case _types.NodeType.Vertices:
|
338
|
+
(0, _drawings.drawVertices)(lctx, props);
|
339
|
+
break;
|
340
|
+
case _types.NodeType.DiffRect:
|
341
|
+
(0, _drawings.drawDiffRect)(lctx, props);
|
342
|
+
break;
|
343
|
+
case _types.NodeType.Text:
|
344
|
+
(0, _drawings.drawText)(lctx, props);
|
345
|
+
break;
|
346
|
+
case _types.NodeType.TextPath:
|
347
|
+
(0, _drawings.drawTextPath)(lctx, props);
|
348
|
+
break;
|
349
|
+
case _types.NodeType.TextBlob:
|
350
|
+
(0, _drawings.drawTextBlob)(lctx, props);
|
351
|
+
break;
|
352
|
+
case _types.NodeType.Glyphs:
|
353
|
+
(0, _drawings.drawGlyphs)(lctx, props);
|
354
|
+
break;
|
355
|
+
case _types.NodeType.Picture:
|
356
|
+
(0, _drawings.drawPicture)(lctx, props);
|
357
|
+
break;
|
358
|
+
case _types.NodeType.ImageSVG:
|
359
|
+
(0, _drawings.drawImageSVG)(lctx, props);
|
360
|
+
break;
|
361
|
+
case _types.NodeType.Paragraph:
|
362
|
+
(0, _drawings.drawParagraph)(lctx, props);
|
363
|
+
break;
|
364
|
+
case _types.NodeType.Atlas:
|
365
|
+
(0, _drawings.drawAtlas)(lctx, props);
|
366
|
+
break;
|
367
|
+
case _types.NodeType.Circle:
|
368
|
+
(0, _drawings.drawCircle)(lctx, props);
|
369
|
+
break;
|
370
|
+
case _types.NodeType.Fill:
|
371
|
+
(0, _drawings.drawFill)(lctx, props);
|
372
|
+
break;
|
373
|
+
case _types.NodeType.Group:
|
374
|
+
// TODO: do nothing
|
375
|
+
break;
|
376
|
+
default:
|
377
|
+
if (!node.isDeclaration) {
|
378
|
+
console.warn(`Unsupported node type: ${type}`);
|
379
|
+
}
|
380
|
+
}
|
381
|
+
});
|
382
|
+
children.forEach(child => {
|
383
|
+
if (!child.isDeclaration) {
|
384
|
+
draw(ctx, child);
|
385
|
+
}
|
386
|
+
});
|
387
|
+
if (shouldRestoreMatrix) {
|
388
|
+
ctx.canvas.restore();
|
389
|
+
}
|
390
|
+
if (shouldRestorePaint) {
|
391
|
+
ctx.restore();
|
392
|
+
}
|
393
|
+
}
|
394
|
+
//# sourceMappingURL=context.js.map
|