The abundance of `@_spi(TokamakCore)` makes it harder to parse some of our code visually when skimming. I propose consistently moving attributes on declarations to separate lines. Here's an update to `.swiftformat` config with the new settings applied to the codebase.
* Tweak formatting rules
* Improve readability with newlines
* More newlines to visually separate declarations
* Fix build error caused by merge conflict
Co-authored-by: Carson Katri <Carson.katri@gmail.com>
The PR fixes multiple bugs which prevent stroked shapes from rendering correctly.
1. Allow environment injection into `_StrokedShape`. This causes stroked shapes to no longer crash (#322).
2. Change `Path.strokedPath` and `Path.trimmedPath` to allow the `sizing` of the base shape to be inherited. Without this, stroked shapes can appear as 0x0 in size, making them invisible.
3. Change `_ShapeView` in the StaticHTML renderer to merge attributes in the `svg` rather than placing the `svg` in a `div`. This allows proper rendering when multiple shapes are in a stack.
Finally, the `Path` demo has been modified to add a stroked circle.
Resolves#404.
This also allows us to write more tests that are source-compatible with SwiftUI.
* Use `CGFloat`, `CGPoint`, `CGRect` from Foundation
* Fix GTK build
* Fix macOS build
* Initial Shape support
* Border modifier
* Better demo
* Make Path conform to Shape
* Implement clipShape
* Add shapes/path/shapestyles to progress.md