diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/FilterHelper.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/FilterHelper.kt index dab9f5529c7..7170e53ce26 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/FilterHelper.kt +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/uimanager/FilterHelper.kt @@ -21,9 +21,25 @@ import com.facebook.react.uimanager.PixelUtil.dpToPx import kotlin.math.cos import kotlin.math.sin +/** + * Helper object for parsing and applying CSS filter effects on Android S+ (API 31+). + * + * This object provides utilities to convert CSS filter arrays into Android [RenderEffect] chains + * and [ColorMatrixColorFilter] objects. Supports filters like blur, brightness, contrast, + * grayscale, sepia, saturate, hue-rotate, invert, opacity, and drop-shadow. + * + * @see CSS Filter Effects Module Level 1 + */ @TargetApi(31) internal object FilterHelper { + /** + * Parses a ReadableArray of CSS filter definitions into a chained [RenderEffect]. + * + * @param filters The array of filter definitions, or null + * @return A chained RenderEffect representing all filters, or null if no filters provided + * @throws IllegalArgumentException if an invalid filter name is encountered + */ @JvmStatic fun parseFilters(filters: ReadableArray?): RenderEffect? { filters ?: return null