* Pass preferences up the Fiber tree
* Working preferences (except for backgroundPreferenceValue)
* Initial StateObject support
* Fix layout caching bug
* Support StateObject/EnvironmentObject/custom DynamicProperty
* Add doc comments for bindProperties and updateDynamicProperties
* Use immediate scheduling in static HTML and test renderers
* Add preferences test
* Add state tests and improve testing API
* Attempt to fix tests
* Fix preference tests
* Attempt to fix tests when Dispatch is unavailable
* #if out on os(WASI)
* Add check for WASI to test
* Add check for WASI to TestViewProxy
* #if out of import Dispatch when os == WASI
* Remove all Dispatch code
* Remove address from debugDescription
* Move TestViewProxy to TokamakTestRenderer
* Add memory address to Fiber.debugDescription
* Fix copyright year
* Add several missing types to Core.swift
* Add missing LayoutValueKey to Core.swift
* Fix issues with view trait propagation
* Enable App/SceneStorage in DOMFiberRenderer
* Address review comments
* Revise preference implementation
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>
`Toolbar` is new in SwiftUI. It is coupled fairly closely with `NavigationView`, so this should be integrated with that somehow (#130). It was made similar to macOS which allows more than a leading/trailing `ToolbarItem`.
Resolves#316.