Files
image-studio/core/layer-mask-utils.ts
syntaxbullet 5eaf37ba28 feat: enhance layer mask handling and opacity management
- Introduced `getLayerMask` utility to streamline layer mask retrieval.
- Updated layer rendering logic to incorporate layer masks and opacity adjustments.
- Added functionality to prevent dropping a group into its descendants.
- Enhanced image texture rendering to support opacity parameters across various rendering functions.
- Implemented group layer bounds application for better scaling and positioning.
- Added tests to ensure correct behavior when handling layer masks and group layers.
- Created new types for asset generation provenance to track generated assets more effectively.
2026-07-05 16:06:23 +02:00

19 lines
482 B
TypeScript

import type { Layer } from "./layer";
import type { LayerMask } from "./layer-mask";
export function getLayerMask(layer: Layer | undefined): LayerMask | undefined {
if (layer.layerMask) return layer.layerMask;
if (!layer.clippingMask) return undefined;
return {
kind: "raster",
maskLayerId: layer.clippingMask.maskLayerId,
enabled: true,
inverted: false,
};
}
export function hasLayerMask(layer: Layer): boolean {
return Boolean(getLayerMask(layer));
}