feat: layer effects, bucket fill, simple brush

This commit is contained in:
2026-05-21 00:02:12 +07:00
parent bcf4650c70
commit e7dd9420e7
47 changed files with 1675 additions and 1038 deletions
@@ -1,6 +1,6 @@
import React from "react";
import { CanvasRenderer } from "../canvas-renderer";
import type { FaceBlurMethod, Layer } from "@pien-studio/types";
import type { Layer, LayerEffect } from "@pien-studio/types";
import type { FaceDetectionOverlay } from "../../hooks/use-face-detection";
type EditorMobileSectionProps = {
@@ -9,16 +9,11 @@ type EditorMobileSectionProps = {
canvasHeight: number;
layers: Layer[];
selectedLayerId: string | null;
tool: "pointer" | "hand" | "face";
tool: string;
faceDetections: FaceDetectionOverlay[];
faceOverlayLayerId: string | null;
faceStatus: "idle" | "detecting" | "unsupported";
faceBlurPreview: {
layerId: string;
method: FaceBlurMethod;
amount: number;
regions: { x: number; y: number; width: number; height: number }[];
} | null;
faceBlurPreview: { layerId: string; effects: LayerEffect[] } | null;
labels: {
resize: string;
faceMlFailedShort: string;