@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,387 @@
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
2
|
+
import { NodeType } from "../../dom/types";
|
3
|
+
import { createDeclarationContext } from "../DeclarationContext";
|
4
|
+
import { drawAtlas, drawBox, drawCircle, drawDiffRect, drawFill, drawGlyphs, drawImage, drawImageSVG, drawLine, drawOval, drawParagraph, drawPatch, drawPath, drawPicture, drawPoints, drawRect, drawRRect, drawText, drawTextBlob, drawTextPath, drawVertices } from "./drawings";
|
5
|
+
import { composeColorFilters, declareLerpColorFilter, makeBlendColorFilter, makeLinearToSRGBGammaColorFilter, makeLumaColorFilter, makeMatrixColorFilter, makeSRGBToLinearGammaColorFilter } from "./colorFilters";
|
6
|
+
import { composeImageFilters, declareBlend, declareBlendImageFilter, declareBlurMaskFilter, declareDisplacementMapImageFilter, makeBlurImageFilter, makeDropShadowImageFilter, makeMorphologyImageFilter, makeOffsetImageFilter, makeRuntimeShaderImageFilter } from "./imageFilters";
|
7
|
+
import { materialize } from "./utils";
|
8
|
+
import { declareColorShader, declareFractalNoiseShader, declareImageShader, declareLinearGradientShader, declareRadialGradientShader, declareShader, declareSweepGradientShader, declareTurbulenceShader, declareTwoPointConicalGradientShader } from "./shaders";
|
9
|
+
import { declarePaint } from "./paint";
|
10
|
+
import { composePathEffects, declareSumPathEffect, makeCornerPathEffect, makeDashPathEffect, makeDiscretePathEffect, makeLine2DPathEffect, makePath1DPathEffect, makePath2DPathEffect } from "./pathEffects";
|
11
|
+
function processDeclarations(ctx, node) {
|
12
|
+
"worklet";
|
13
|
+
|
14
|
+
const processChildren = () => node.children.forEach(child => processDeclarations(ctx, child));
|
15
|
+
const {
|
16
|
+
type
|
17
|
+
} = node;
|
18
|
+
const props = materialize(node.props);
|
19
|
+
switch (type) {
|
20
|
+
// Mask Filter
|
21
|
+
case NodeType.BlurMaskFilter:
|
22
|
+
{
|
23
|
+
declareBlurMaskFilter(ctx, props);
|
24
|
+
break;
|
25
|
+
}
|
26
|
+
// Color Filters
|
27
|
+
case NodeType.LerpColorFilter:
|
28
|
+
{
|
29
|
+
processChildren();
|
30
|
+
declareLerpColorFilter(ctx, props);
|
31
|
+
break;
|
32
|
+
}
|
33
|
+
case NodeType.Blend:
|
34
|
+
{
|
35
|
+
processChildren();
|
36
|
+
declareBlend(ctx, props);
|
37
|
+
break;
|
38
|
+
}
|
39
|
+
case NodeType.BlendColorFilter:
|
40
|
+
{
|
41
|
+
const cf = makeBlendColorFilter(ctx, props);
|
42
|
+
composeColorFilters(ctx, cf, processChildren);
|
43
|
+
break;
|
44
|
+
}
|
45
|
+
case NodeType.SRGBToLinearGammaColorFilter:
|
46
|
+
{
|
47
|
+
const cf = makeSRGBToLinearGammaColorFilter(ctx);
|
48
|
+
composeColorFilters(ctx, cf, processChildren);
|
49
|
+
break;
|
50
|
+
}
|
51
|
+
case NodeType.LinearToSRGBGammaColorFilter:
|
52
|
+
{
|
53
|
+
const cf = makeLinearToSRGBGammaColorFilter(ctx);
|
54
|
+
composeColorFilters(ctx, cf, processChildren);
|
55
|
+
break;
|
56
|
+
}
|
57
|
+
case NodeType.MatrixColorFilter:
|
58
|
+
{
|
59
|
+
const cf = makeMatrixColorFilter(ctx, props);
|
60
|
+
composeColorFilters(ctx, cf, processChildren);
|
61
|
+
break;
|
62
|
+
}
|
63
|
+
case NodeType.LumaColorFilter:
|
64
|
+
{
|
65
|
+
const cf = makeLumaColorFilter(ctx);
|
66
|
+
composeColorFilters(ctx, cf, processChildren);
|
67
|
+
break;
|
68
|
+
}
|
69
|
+
// Shaders
|
70
|
+
case NodeType.Shader:
|
71
|
+
{
|
72
|
+
processChildren();
|
73
|
+
declareShader(ctx, props);
|
74
|
+
break;
|
75
|
+
}
|
76
|
+
case NodeType.ImageShader:
|
77
|
+
{
|
78
|
+
declareImageShader(ctx, props);
|
79
|
+
break;
|
80
|
+
}
|
81
|
+
case NodeType.ColorShader:
|
82
|
+
{
|
83
|
+
declareColorShader(ctx, props);
|
84
|
+
break;
|
85
|
+
}
|
86
|
+
case NodeType.Turbulence:
|
87
|
+
{
|
88
|
+
declareTurbulenceShader(ctx, props);
|
89
|
+
break;
|
90
|
+
}
|
91
|
+
case NodeType.FractalNoise:
|
92
|
+
{
|
93
|
+
declareFractalNoiseShader(ctx, props);
|
94
|
+
break;
|
95
|
+
}
|
96
|
+
case NodeType.LinearGradient:
|
97
|
+
{
|
98
|
+
declareLinearGradientShader(ctx, props);
|
99
|
+
break;
|
100
|
+
}
|
101
|
+
case NodeType.RadialGradient:
|
102
|
+
{
|
103
|
+
declareRadialGradientShader(ctx, props);
|
104
|
+
break;
|
105
|
+
}
|
106
|
+
case NodeType.SweepGradient:
|
107
|
+
{
|
108
|
+
declareSweepGradientShader(ctx, props);
|
109
|
+
break;
|
110
|
+
}
|
111
|
+
case NodeType.TwoPointConicalGradient:
|
112
|
+
{
|
113
|
+
declareTwoPointConicalGradientShader(ctx, props);
|
114
|
+
break;
|
115
|
+
}
|
116
|
+
// Image Filters
|
117
|
+
case NodeType.BlurImageFilter:
|
118
|
+
{
|
119
|
+
const imgf = makeBlurImageFilter(ctx, props);
|
120
|
+
composeImageFilters(ctx, imgf, processChildren);
|
121
|
+
break;
|
122
|
+
}
|
123
|
+
case NodeType.OffsetImageFilter:
|
124
|
+
{
|
125
|
+
const imgf = makeOffsetImageFilter(ctx, props);
|
126
|
+
composeImageFilters(ctx, imgf, processChildren);
|
127
|
+
break;
|
128
|
+
}
|
129
|
+
case NodeType.DisplacementMapImageFilter:
|
130
|
+
{
|
131
|
+
processChildren();
|
132
|
+
declareDisplacementMapImageFilter(ctx, props);
|
133
|
+
break;
|
134
|
+
}
|
135
|
+
case NodeType.DropShadowImageFilter:
|
136
|
+
{
|
137
|
+
const imgf = makeDropShadowImageFilter(ctx, props);
|
138
|
+
composeImageFilters(ctx, imgf, processChildren);
|
139
|
+
break;
|
140
|
+
}
|
141
|
+
case NodeType.MorphologyImageFilter:
|
142
|
+
{
|
143
|
+
const imgf = makeMorphologyImageFilter(ctx, props);
|
144
|
+
composeImageFilters(ctx, imgf, processChildren);
|
145
|
+
break;
|
146
|
+
}
|
147
|
+
case NodeType.BlendImageFilter:
|
148
|
+
{
|
149
|
+
processChildren();
|
150
|
+
declareBlendImageFilter(ctx, props);
|
151
|
+
break;
|
152
|
+
}
|
153
|
+
case NodeType.RuntimeShaderImageFilter:
|
154
|
+
{
|
155
|
+
const imgf = makeRuntimeShaderImageFilter(ctx, props);
|
156
|
+
composeImageFilters(ctx, imgf, processChildren);
|
157
|
+
break;
|
158
|
+
}
|
159
|
+
// Path Effects
|
160
|
+
case NodeType.SumPathEffect:
|
161
|
+
{
|
162
|
+
processChildren();
|
163
|
+
declareSumPathEffect(ctx);
|
164
|
+
break;
|
165
|
+
}
|
166
|
+
case NodeType.CornerPathEffect:
|
167
|
+
{
|
168
|
+
const pf = makeCornerPathEffect(ctx, props);
|
169
|
+
composePathEffects(ctx, pf, processChildren);
|
170
|
+
break;
|
171
|
+
}
|
172
|
+
case NodeType.Path1DPathEffect:
|
173
|
+
{
|
174
|
+
const pf = makePath1DPathEffect(ctx, props);
|
175
|
+
composePathEffects(ctx, pf, processChildren);
|
176
|
+
break;
|
177
|
+
}
|
178
|
+
case NodeType.Path2DPathEffect:
|
179
|
+
{
|
180
|
+
const pf = makePath2DPathEffect(ctx, props);
|
181
|
+
composePathEffects(ctx, pf, processChildren);
|
182
|
+
break;
|
183
|
+
}
|
184
|
+
case NodeType.Line2DPathEffect:
|
185
|
+
{
|
186
|
+
const pf = makeLine2DPathEffect(ctx, props);
|
187
|
+
composePathEffects(ctx, pf, processChildren);
|
188
|
+
break;
|
189
|
+
}
|
190
|
+
case NodeType.DashPathEffect:
|
191
|
+
{
|
192
|
+
const pf = makeDashPathEffect(ctx, props);
|
193
|
+
composePathEffects(ctx, pf, processChildren);
|
194
|
+
break;
|
195
|
+
}
|
196
|
+
case NodeType.DiscretePathEffect:
|
197
|
+
{
|
198
|
+
const pf = makeDiscretePathEffect(ctx, props);
|
199
|
+
composePathEffects(ctx, pf, processChildren);
|
200
|
+
break;
|
201
|
+
}
|
202
|
+
// Paint
|
203
|
+
case NodeType.Paint:
|
204
|
+
processChildren();
|
205
|
+
declarePaint(ctx, props);
|
206
|
+
break;
|
207
|
+
default:
|
208
|
+
console.log("Unknown declaration node: ", type);
|
209
|
+
}
|
210
|
+
}
|
211
|
+
const preProcessContext = (ctx, props, node) => {
|
212
|
+
"worklet";
|
213
|
+
|
214
|
+
const shouldRestoreMatrix = ctx.processMatrixAndClipping(props, props.layer);
|
215
|
+
const declCtx = createDeclarationContext(ctx.Skia);
|
216
|
+
node.children.forEach(child => {
|
217
|
+
if (child.isDeclaration) {
|
218
|
+
processDeclarations(declCtx, child);
|
219
|
+
}
|
220
|
+
});
|
221
|
+
const shouldRestorePaint = ctx.processPaint(props, declCtx);
|
222
|
+
return {
|
223
|
+
shouldRestoreMatrix,
|
224
|
+
shouldRestorePaint,
|
225
|
+
extraPaints: declCtx.paints.popAll()
|
226
|
+
};
|
227
|
+
};
|
228
|
+
const drawBackdropFilter = (ctx, node) => {
|
229
|
+
"worklet";
|
230
|
+
|
231
|
+
const {
|
232
|
+
canvas,
|
233
|
+
Skia
|
234
|
+
} = ctx;
|
235
|
+
const child = node.children[0];
|
236
|
+
let imageFilter = null;
|
237
|
+
if (child.isDeclaration) {
|
238
|
+
const declCtx = createDeclarationContext(ctx.Skia);
|
239
|
+
processDeclarations(declCtx, child);
|
240
|
+
const imgf = declCtx.imageFilters.pop();
|
241
|
+
if (imgf) {
|
242
|
+
imageFilter = imgf;
|
243
|
+
} else {
|
244
|
+
const cf = declCtx.colorFilters.pop();
|
245
|
+
if (cf) {
|
246
|
+
imageFilter = Skia.ImageFilter.MakeColorFilter(cf, null);
|
247
|
+
}
|
248
|
+
}
|
249
|
+
}
|
250
|
+
canvas.saveLayer(undefined, null, imageFilter);
|
251
|
+
canvas.restore();
|
252
|
+
};
|
253
|
+
export function draw(ctx, node) {
|
254
|
+
"worklet";
|
255
|
+
|
256
|
+
// Special mixed nodes
|
257
|
+
if (node.type === NodeType.BackdropFilter) {
|
258
|
+
drawBackdropFilter(ctx, node);
|
259
|
+
return;
|
260
|
+
}
|
261
|
+
if (node.type === NodeType.Layer) {
|
262
|
+
let hasLayer = false;
|
263
|
+
const [layer, ...children] = node.children;
|
264
|
+
if (layer.isDeclaration) {
|
265
|
+
const declCtx = createDeclarationContext(ctx.Skia);
|
266
|
+
processDeclarations(declCtx, layer);
|
267
|
+
const paint = declCtx.paints.pop();
|
268
|
+
if (paint) {
|
269
|
+
hasLayer = true;
|
270
|
+
ctx.canvas.saveLayer(paint);
|
271
|
+
}
|
272
|
+
}
|
273
|
+
children.map(child => {
|
274
|
+
if (!child.isDeclaration) {
|
275
|
+
draw(ctx, child);
|
276
|
+
}
|
277
|
+
});
|
278
|
+
if (hasLayer) {
|
279
|
+
ctx.canvas.restore();
|
280
|
+
}
|
281
|
+
return;
|
282
|
+
}
|
283
|
+
const {
|
284
|
+
type,
|
285
|
+
props: rawProps,
|
286
|
+
children
|
287
|
+
} = node;
|
288
|
+
// Regular nodes
|
289
|
+
const props = materialize(rawProps);
|
290
|
+
const {
|
291
|
+
shouldRestoreMatrix,
|
292
|
+
shouldRestorePaint,
|
293
|
+
extraPaints
|
294
|
+
} = preProcessContext(ctx, props, node);
|
295
|
+
const paints = [ctx.getPaint(), ...extraPaints];
|
296
|
+
paints.forEach(paint => {
|
297
|
+
const lctx = {
|
298
|
+
paint,
|
299
|
+
Skia: ctx.Skia,
|
300
|
+
canvas: ctx.canvas
|
301
|
+
};
|
302
|
+
switch (type) {
|
303
|
+
case NodeType.Box:
|
304
|
+
drawBox(lctx, props, node.children);
|
305
|
+
break;
|
306
|
+
case NodeType.Image:
|
307
|
+
drawImage(lctx, props);
|
308
|
+
break;
|
309
|
+
case NodeType.Points:
|
310
|
+
drawPoints(lctx, props);
|
311
|
+
break;
|
312
|
+
case NodeType.Path:
|
313
|
+
drawPath(lctx, props);
|
314
|
+
break;
|
315
|
+
case NodeType.Rect:
|
316
|
+
drawRect(lctx, props);
|
317
|
+
break;
|
318
|
+
case NodeType.RRect:
|
319
|
+
drawRRect(lctx, props);
|
320
|
+
break;
|
321
|
+
case NodeType.Oval:
|
322
|
+
drawOval(lctx, props);
|
323
|
+
break;
|
324
|
+
case NodeType.Line:
|
325
|
+
drawLine(lctx, props);
|
326
|
+
break;
|
327
|
+
case NodeType.Patch:
|
328
|
+
drawPatch(lctx, props);
|
329
|
+
break;
|
330
|
+
case NodeType.Vertices:
|
331
|
+
drawVertices(lctx, props);
|
332
|
+
break;
|
333
|
+
case NodeType.DiffRect:
|
334
|
+
drawDiffRect(lctx, props);
|
335
|
+
break;
|
336
|
+
case NodeType.Text:
|
337
|
+
drawText(lctx, props);
|
338
|
+
break;
|
339
|
+
case NodeType.TextPath:
|
340
|
+
drawTextPath(lctx, props);
|
341
|
+
break;
|
342
|
+
case NodeType.TextBlob:
|
343
|
+
drawTextBlob(lctx, props);
|
344
|
+
break;
|
345
|
+
case NodeType.Glyphs:
|
346
|
+
drawGlyphs(lctx, props);
|
347
|
+
break;
|
348
|
+
case NodeType.Picture:
|
349
|
+
drawPicture(lctx, props);
|
350
|
+
break;
|
351
|
+
case NodeType.ImageSVG:
|
352
|
+
drawImageSVG(lctx, props);
|
353
|
+
break;
|
354
|
+
case NodeType.Paragraph:
|
355
|
+
drawParagraph(lctx, props);
|
356
|
+
break;
|
357
|
+
case NodeType.Atlas:
|
358
|
+
drawAtlas(lctx, props);
|
359
|
+
break;
|
360
|
+
case NodeType.Circle:
|
361
|
+
drawCircle(lctx, props);
|
362
|
+
break;
|
363
|
+
case NodeType.Fill:
|
364
|
+
drawFill(lctx, props);
|
365
|
+
break;
|
366
|
+
case NodeType.Group:
|
367
|
+
// TODO: do nothing
|
368
|
+
break;
|
369
|
+
default:
|
370
|
+
if (!node.isDeclaration) {
|
371
|
+
console.warn(`Unsupported node type: ${type}`);
|
372
|
+
}
|
373
|
+
}
|
374
|
+
});
|
375
|
+
children.forEach(child => {
|
376
|
+
if (!child.isDeclaration) {
|
377
|
+
draw(ctx, child);
|
378
|
+
}
|
379
|
+
});
|
380
|
+
if (shouldRestoreMatrix) {
|
381
|
+
ctx.canvas.restore();
|
382
|
+
}
|
383
|
+
if (shouldRestorePaint) {
|
384
|
+
ctx.restore();
|
385
|
+
}
|
386
|
+
}
|
387
|
+
//# sourceMappingURL=context.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["NodeType","createDeclarationContext","drawAtlas","drawBox","drawCircle","drawDiffRect","drawFill","drawGlyphs","drawImage","drawImageSVG","drawLine","drawOval","drawParagraph","drawPatch","drawPath","drawPicture","drawPoints","drawRect","drawRRect","drawText","drawTextBlob","drawTextPath","drawVertices","composeColorFilters","declareLerpColorFilter","makeBlendColorFilter","makeLinearToSRGBGammaColorFilter","makeLumaColorFilter","makeMatrixColorFilter","makeSRGBToLinearGammaColorFilter","composeImageFilters","declareBlend","declareBlendImageFilter","declareBlurMaskFilter","declareDisplacementMapImageFilter","makeBlurImageFilter","makeDropShadowImageFilter","makeMorphologyImageFilter","makeOffsetImageFilter","makeRuntimeShaderImageFilter","materialize","declareColorShader","declareFractalNoiseShader","declareImageShader","declareLinearGradientShader","declareRadialGradientShader","declareShader","declareSweepGradientShader","declareTurbulenceShader","declareTwoPointConicalGradientShader","declarePaint","composePathEffects","declareSumPathEffect","makeCornerPathEffect","makeDashPathEffect","makeDiscretePathEffect","makeLine2DPathEffect","makePath1DPathEffect","makePath2DPathEffect","processDeclarations","ctx","node","processChildren","children","forEach","child","type","props","BlurMaskFilter","LerpColorFilter","Blend","BlendColorFilter","cf","SRGBToLinearGammaColorFilter","LinearToSRGBGammaColorFilter","MatrixColorFilter","LumaColorFilter","Shader","ImageShader","ColorShader","Turbulence","FractalNoise","LinearGradient","RadialGradient","SweepGradient","TwoPointConicalGradient","BlurImageFilter","imgf","OffsetImageFilter","DisplacementMapImageFilter","DropShadowImageFilter","MorphologyImageFilter","BlendImageFilter","RuntimeShaderImageFilter","SumPathEffect","CornerPathEffect","pf","Path1DPathEffect","Path2DPathEffect","Line2DPathEffect","DashPathEffect","DiscretePathEffect","Paint","console","log","preProcessContext","shouldRestoreMatrix","processMatrixAndClipping","layer","declCtx","Skia","isDeclaration","shouldRestorePaint","processPaint","extraPaints","paints","popAll","drawBackdropFilter","canvas","imageFilter","imageFilters","pop","colorFilters","ImageFilter","MakeColorFilter","saveLayer","undefined","restore","draw","BackdropFilter","Layer","hasLayer","paint","map","rawProps","getPaint","lctx","Box","Image","Points","Path","Rect","RRect","Oval","Line","Patch","Vertices","DiffRect","Text","TextPath","TextBlob","Glyphs","Picture","ImageSVG","Paragraph","Atlas","Circle","Fill","Group","warn"],"sources":["context.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { NodeType } from \"../../dom/types\";\nimport type { DrawingNodeProps } from \"../../dom/types\";\nimport type { DrawingContext } from \"../DrawingContext\";\nimport type { SkImageFilter } from \"../../skia/types\";\nimport {\n createDeclarationContext,\n type DeclarationContext,\n} from \"../DeclarationContext\";\n\nimport type { Node } from \"./Node\";\nimport {\n drawAtlas,\n drawBox,\n drawCircle,\n drawDiffRect,\n drawFill,\n drawGlyphs,\n drawImage,\n drawImageSVG,\n drawLine,\n drawOval,\n drawParagraph,\n drawPatch,\n drawPath,\n drawPicture,\n drawPoints,\n drawRect,\n drawRRect,\n drawText,\n drawTextBlob,\n drawTextPath,\n drawVertices,\n} from \"./drawings\";\nimport {\n composeColorFilters,\n declareLerpColorFilter,\n makeBlendColorFilter,\n makeLinearToSRGBGammaColorFilter,\n makeLumaColorFilter,\n makeMatrixColorFilter,\n makeSRGBToLinearGammaColorFilter,\n} from \"./colorFilters\";\nimport {\n composeImageFilters,\n declareBlend,\n declareBlendImageFilter,\n declareBlurMaskFilter,\n declareDisplacementMapImageFilter,\n makeBlurImageFilter,\n makeDropShadowImageFilter,\n makeMorphologyImageFilter,\n makeOffsetImageFilter,\n makeRuntimeShaderImageFilter,\n} from \"./imageFilters\";\nimport { materialize } from \"./utils\";\nimport {\n declareColorShader,\n declareFractalNoiseShader,\n declareImageShader,\n declareLinearGradientShader,\n declareRadialGradientShader,\n declareShader,\n declareSweepGradientShader,\n declareTurbulenceShader,\n declareTwoPointConicalGradientShader,\n} from \"./shaders\";\nimport { declarePaint } from \"./paint\";\nimport {\n composePathEffects,\n declareSumPathEffect,\n makeCornerPathEffect,\n makeDashPathEffect,\n makeDiscretePathEffect,\n makeLine2DPathEffect,\n makePath1DPathEffect,\n makePath2DPathEffect,\n} from \"./pathEffects\";\n\nfunction processDeclarations(ctx: DeclarationContext, node: Node<any>) {\n \"worklet\";\n const processChildren = () =>\n node.children.forEach((child) => processDeclarations(ctx, child));\n const { type } = node;\n const props = materialize(node.props);\n switch (type) {\n // Mask Filter\n case NodeType.BlurMaskFilter: {\n declareBlurMaskFilter(ctx, props);\n break;\n }\n // Color Filters\n case NodeType.LerpColorFilter: {\n processChildren();\n declareLerpColorFilter(ctx, props);\n break;\n }\n case NodeType.Blend: {\n processChildren();\n declareBlend(ctx, props);\n break;\n }\n case NodeType.BlendColorFilter: {\n const cf = makeBlendColorFilter(ctx, props);\n composeColorFilters(ctx, cf, processChildren);\n break;\n }\n case NodeType.SRGBToLinearGammaColorFilter: {\n const cf = makeSRGBToLinearGammaColorFilter(ctx);\n composeColorFilters(ctx, cf, processChildren);\n break;\n }\n case NodeType.LinearToSRGBGammaColorFilter: {\n const cf = makeLinearToSRGBGammaColorFilter(ctx);\n composeColorFilters(ctx, cf, processChildren);\n break;\n }\n case NodeType.MatrixColorFilter: {\n const cf = makeMatrixColorFilter(ctx, props);\n composeColorFilters(ctx, cf, processChildren);\n break;\n }\n case NodeType.LumaColorFilter: {\n const cf = makeLumaColorFilter(ctx);\n composeColorFilters(ctx, cf, processChildren);\n break;\n }\n // Shaders\n case NodeType.Shader: {\n processChildren();\n declareShader(ctx, props);\n break;\n }\n case NodeType.ImageShader: {\n declareImageShader(ctx, props);\n break;\n }\n case NodeType.ColorShader: {\n declareColorShader(ctx, props);\n break;\n }\n case NodeType.Turbulence: {\n declareTurbulenceShader(ctx, props);\n break;\n }\n case NodeType.FractalNoise: {\n declareFractalNoiseShader(ctx, props);\n break;\n }\n case NodeType.LinearGradient: {\n declareLinearGradientShader(ctx, props);\n break;\n }\n case NodeType.RadialGradient: {\n declareRadialGradientShader(ctx, props);\n break;\n }\n case NodeType.SweepGradient: {\n declareSweepGradientShader(ctx, props);\n break;\n }\n case NodeType.TwoPointConicalGradient: {\n declareTwoPointConicalGradientShader(ctx, props);\n break;\n }\n // Image Filters\n case NodeType.BlurImageFilter: {\n const imgf = makeBlurImageFilter(ctx, props);\n composeImageFilters(ctx, imgf, processChildren);\n break;\n }\n case NodeType.OffsetImageFilter: {\n const imgf = makeOffsetImageFilter(ctx, props);\n composeImageFilters(ctx, imgf, processChildren);\n break;\n }\n case NodeType.DisplacementMapImageFilter: {\n processChildren();\n declareDisplacementMapImageFilter(ctx, props);\n break;\n }\n case NodeType.DropShadowImageFilter: {\n const imgf = makeDropShadowImageFilter(ctx, props);\n composeImageFilters(ctx, imgf, processChildren);\n break;\n }\n case NodeType.MorphologyImageFilter: {\n const imgf = makeMorphologyImageFilter(ctx, props);\n composeImageFilters(ctx, imgf, processChildren);\n break;\n }\n case NodeType.BlendImageFilter: {\n processChildren();\n declareBlendImageFilter(ctx, props);\n break;\n }\n case NodeType.RuntimeShaderImageFilter: {\n const imgf = makeRuntimeShaderImageFilter(ctx, props);\n composeImageFilters(ctx, imgf, processChildren);\n break;\n }\n // Path Effects\n case NodeType.SumPathEffect: {\n processChildren();\n declareSumPathEffect(ctx);\n break;\n }\n case NodeType.CornerPathEffect: {\n const pf = makeCornerPathEffect(ctx, props);\n composePathEffects(ctx, pf, processChildren);\n break;\n }\n case NodeType.Path1DPathEffect: {\n const pf = makePath1DPathEffect(ctx, props);\n composePathEffects(ctx, pf, processChildren);\n break;\n }\n case NodeType.Path2DPathEffect: {\n const pf = makePath2DPathEffect(ctx, props);\n composePathEffects(ctx, pf, processChildren);\n break;\n }\n case NodeType.Line2DPathEffect: {\n const pf = makeLine2DPathEffect(ctx, props);\n composePathEffects(ctx, pf, processChildren);\n break;\n }\n case NodeType.DashPathEffect: {\n const pf = makeDashPathEffect(ctx, props);\n composePathEffects(ctx, pf, processChildren);\n break;\n }\n case NodeType.DiscretePathEffect: {\n const pf = makeDiscretePathEffect(ctx, props);\n composePathEffects(ctx, pf, processChildren);\n break;\n }\n // Paint\n case NodeType.Paint:\n processChildren();\n declarePaint(ctx, props);\n break;\n default:\n console.log(\"Unknown declaration node: \", type);\n }\n}\n\nconst preProcessContext = (\n ctx: DrawingContext,\n props: DrawingNodeProps,\n node: Node<any>\n) => {\n \"worklet\";\n const shouldRestoreMatrix = ctx.processMatrixAndClipping(props, props.layer);\n const declCtx = createDeclarationContext(ctx.Skia);\n node.children.forEach((child) => {\n if (child.isDeclaration) {\n processDeclarations(declCtx, child);\n }\n });\n const shouldRestorePaint = ctx.processPaint(props, declCtx);\n return {\n shouldRestoreMatrix,\n shouldRestorePaint,\n extraPaints: declCtx.paints.popAll(),\n };\n};\n\nconst drawBackdropFilter = (ctx: DrawingContext, node: Node) => {\n \"worklet\";\n const { canvas, Skia } = ctx;\n const child = node.children[0];\n let imageFilter: SkImageFilter | null = null;\n if (child.isDeclaration) {\n const declCtx = createDeclarationContext(ctx.Skia);\n processDeclarations(declCtx, child);\n const imgf = declCtx.imageFilters.pop();\n if (imgf) {\n imageFilter = imgf;\n } else {\n const cf = declCtx.colorFilters.pop();\n if (cf) {\n imageFilter = Skia.ImageFilter.MakeColorFilter(cf, null);\n }\n }\n }\n canvas.saveLayer(undefined, null, imageFilter);\n canvas.restore();\n};\n\nexport function draw(ctx: DrawingContext, node: Node<any>) {\n \"worklet\";\n // Special mixed nodes\n if (node.type === NodeType.BackdropFilter) {\n drawBackdropFilter(ctx, node);\n return;\n }\n if (node.type === NodeType.Layer) {\n let hasLayer = false;\n const [layer, ...children] = node.children;\n if (layer.isDeclaration) {\n const declCtx = createDeclarationContext(ctx.Skia);\n processDeclarations(declCtx, layer);\n const paint = declCtx.paints.pop();\n if (paint) {\n hasLayer = true;\n ctx.canvas.saveLayer(paint);\n }\n }\n children.map((child) => {\n if (!child.isDeclaration) {\n draw(ctx, child);\n }\n });\n if (hasLayer) {\n ctx.canvas.restore();\n }\n return;\n }\n const { type, props: rawProps, children } = node;\n // Regular nodes\n const props = materialize(rawProps);\n const { shouldRestoreMatrix, shouldRestorePaint, extraPaints } =\n preProcessContext(ctx, props, node);\n const paints = [ctx.getPaint(), ...extraPaints];\n paints.forEach((paint) => {\n const lctx = { paint, Skia: ctx.Skia, canvas: ctx.canvas };\n switch (type) {\n case NodeType.Box:\n drawBox(lctx, props, node.children);\n break;\n case NodeType.Image:\n drawImage(lctx, props);\n break;\n case NodeType.Points:\n drawPoints(lctx, props);\n break;\n case NodeType.Path:\n drawPath(lctx, props);\n break;\n case NodeType.Rect:\n drawRect(lctx, props);\n break;\n case NodeType.RRect:\n drawRRect(lctx, props);\n break;\n case NodeType.Oval:\n drawOval(lctx, props);\n break;\n case NodeType.Line:\n drawLine(lctx, props);\n break;\n case NodeType.Patch:\n drawPatch(lctx, props);\n break;\n case NodeType.Vertices:\n drawVertices(lctx, props);\n break;\n case NodeType.DiffRect:\n drawDiffRect(lctx, props);\n break;\n case NodeType.Text:\n drawText(lctx, props);\n break;\n case NodeType.TextPath:\n drawTextPath(lctx, props);\n break;\n case NodeType.TextBlob:\n drawTextBlob(lctx, props);\n break;\n case NodeType.Glyphs:\n drawGlyphs(lctx, props);\n break;\n case NodeType.Picture:\n drawPicture(lctx, props);\n break;\n case NodeType.ImageSVG:\n drawImageSVG(lctx, props);\n break;\n case NodeType.Paragraph:\n drawParagraph(lctx, props);\n break;\n case NodeType.Atlas:\n drawAtlas(lctx, props);\n break;\n case NodeType.Circle:\n drawCircle(lctx, props);\n break;\n case NodeType.Fill:\n drawFill(lctx, props);\n break;\n case NodeType.Group:\n // TODO: do nothing\n break;\n default:\n if (!node.isDeclaration) {\n console.warn(`Unsupported node type: ${type}`);\n }\n }\n });\n children.forEach((child) => {\n if (!child.isDeclaration) {\n draw(ctx, child);\n }\n });\n if (shouldRestoreMatrix) {\n ctx.canvas.restore();\n }\n if (shouldRestorePaint) {\n ctx.restore();\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import type { AtlasProps, BoxProps, CircleProps, DiffRectProps, DrawingNodeProps, GlyphsProps, ImageProps, ImageSVGProps, LineProps, OvalProps, ParagraphProps, PatchProps, PathProps, PictureProps, PointsProps, RectProps, RoundedRectProps, TextBlobProps, TextPathProps, TextProps, VerticesProps } from "../../dom/types";
|
2
|
+
import type { SkCanvas, SkPaint, Skia } from "../../skia/types";
|
3
|
+
import type { Node } from "./Node";
|
4
|
+
interface LocalDrawingContext {
|
5
|
+
Skia: Skia;
|
6
|
+
canvas: SkCanvas;
|
7
|
+
paint: SkPaint;
|
8
|
+
}
|
9
|
+
export declare const drawLine: (ctx: LocalDrawingContext, props: LineProps) => void;
|
10
|
+
export declare const drawOval: (ctx: LocalDrawingContext, props: OvalProps) => void;
|
11
|
+
export declare const drawBox: (ctx: LocalDrawingContext, props: BoxProps, children: Node<any>[]) => void;
|
12
|
+
export declare const drawImage: (ctx: LocalDrawingContext, props: ImageProps) => void;
|
13
|
+
export declare const drawPoints: (ctx: LocalDrawingContext, props: PointsProps) => void;
|
14
|
+
export declare const drawVertices: (ctx: LocalDrawingContext, props: VerticesProps) => void;
|
15
|
+
export declare const drawDiffRect: (ctx: LocalDrawingContext, props: DiffRectProps) => void;
|
16
|
+
export declare const drawTextPath: (ctx: LocalDrawingContext, props: TextPathProps) => void;
|
17
|
+
export declare const drawText: (ctx: LocalDrawingContext, props: TextProps) => void;
|
18
|
+
export declare const drawPatch: (ctx: LocalDrawingContext, props: PatchProps) => void;
|
19
|
+
export declare const drawPath: (ctx: LocalDrawingContext, props: PathProps) => void;
|
20
|
+
export declare const drawRect: (ctx: LocalDrawingContext, props: RectProps) => void;
|
21
|
+
export declare const drawRRect: (ctx: LocalDrawingContext, props: RoundedRectProps) => void;
|
22
|
+
export declare const drawTextBlob: (ctx: LocalDrawingContext, props: TextBlobProps) => void;
|
23
|
+
export declare const drawGlyphs: (ctx: LocalDrawingContext, props: GlyphsProps) => void;
|
24
|
+
export declare const drawImageSVG: (ctx: LocalDrawingContext, props: ImageSVGProps) => void;
|
25
|
+
export declare const drawParagraph: (ctx: LocalDrawingContext, props: ParagraphProps) => void;
|
26
|
+
export declare const drawPicture: (ctx: LocalDrawingContext, props: PictureProps) => void;
|
27
|
+
export declare const drawAtlas: (ctx: LocalDrawingContext, props: AtlasProps) => void;
|
28
|
+
export declare const drawCircle: (ctx: LocalDrawingContext, props: CircleProps) => void;
|
29
|
+
export declare const drawFill: (ctx: LocalDrawingContext, _props: DrawingNodeProps) => void;
|
30
|
+
export {};
|