feat: Add clip-path support for iOS
Summary:
This PR adds support for clip-path CSS attribute for JS. It follows CSS spec described here. It does not provide support for SVG source (<clip-source> values), what can be added in the additional PR if needed. Supported syntax is [<basic-shape>] || <geometry-box>] with almost full support of every basic shape (<basic-shape> = circle | ellipse | rect | polygon | inset | xywh) and references boxes (<geometry-box> = margin-box | border-box | padding-box | content-box | fill-box | stoke-box | view-box).
Work has been split into three PRs for more convenient reviewing process. This part adds iOS support for clipping, path and bounds calculations, native CSS parser.
Changelog:
[IOS] [ADDED] - Add clip-path support for iOS
Test Plan:
Merge JS and Android PRs and run RNTester app.
- Test Clip Path screen in RNTester app (
ClipPathExample.js) - C++ CSS parser tests (
CSSClipPathTest.cpp)
@jorge-cab has imported this pull request. If you are a Meta employee, you can view this in D88081125.