Releases: danielsaidi/SwiftUIKit
1.2.2
This release adds two new ShadowStyles: badge and elevated.
1.2.1
This release makes the MenuList title optional.
1.2.0
New features
Extensions/UIKithas a bunch of newUIImageextensions.ForEachEnumeratedis a new view that lets you iterate over non-identifiable collections.Listsis a new folder with views that simplifies building menu lists.View+SwipeGestureis rewritten to work on all platforms.
Deprecated
SwipeGestureis no longer needed and has been deprecated.
1.1.2
TextReplacement now supports multiline texts.
1.1.1
New views:
CustomRoundedRectangleis a multi platform shape that lets you specify a custom corner radius for each corner.TextReplacementcan create a composite text view, where a certain substring gets a different text view.
New extensions:
View+framehas a newCGSize-based frame modifier.
1.1.0
New views:
SearchBar- an iOS specific view that replicates a search bar.WebViewis a iOS-specific view that wraps anSFSafariViewControllerwith a custom url.
Bug fixes:
FlippableView- I have added a missing public initializer.
Breaking changes:
FlipDirectionhas been moved intoFlippableView.
1.0.0
Improvements:
- The demo app now compiles for macOS and runs on M1 machines.
- More views are available for tvOS and watchOS.
- The
SimplePickerviews have been rewritten to great extent and can now be customized across platforms. - The
SimplePickerScreenpreview shows how the picker can transform for various platforms. - There is a new
SimplePickerTvScreenthat sets up a simple picker for being used on tvOS.
New views:
FullHeightViewtakes up all available horizontal space and puts its content in the center.FullWidthViewtakes up all available vertical space and puts its content in the center.FullSizeViewtakes up all available space and puts its content in the center.TextFieldClearButtonis a modifier that adds a trailing clear btton within a text view.
New extensions:
Color+ClearInteractablelets you apply a clear but interactable backround color to make the entire area of a button interactable.TextField+ClearButtonapplies aTextFieldClearButtonto the textfield.View+Keyboardlets any view dismiss the keyboard.
Breaking changes:
- The
SimplePickerchanges are breaking.
0.9.9
This is the RC for the first major 1.0 release.
This release wraps more logic within os checks to make the code build on macOS, tvOS and watchOS.
WIth this release, the demo app has been rebuilt as a universal app that lets you explore SwiftUIKit through interactive demos. As a result, I have removed the separate readmes to avoid having to keep multiple copies of the documentation alive.
The release also adds new views and utils:
AsyncImageis a view that loads an async image from the network.AsyncImageLoaderis an observable class that loads an async image from the network.Camerawraps anImagePickerthat is configured for.camerasource type.CircularProgressBarrenders a percentual progress in a circle.CircularProgressViewrenders a round spinner.ConditionalViewreturns the provided content view if the provided expression istrue, else a fallback view (EmptyViewby default).FetchedDataViewshows a spinner, fetched data or a failure view.FullScreenCoverContext/Providerlets you handle full screen covers like sheets, alerts etc.MinWidthButtonapplies a min width to it's wrapped content.OptionalViewreturns the provided content view if the provided value is not nil, else a fallback view (EmptyViewby default).SimpleMultiPickerrenders a simple list of buttons that can be used to pick multiple options in a list of available options.SimpleOptionalPickerrenders a simple list of buttons that can be used to pick multiple options in a list of available options.SimplePickerScreencan be used to present a simple picker with a main title and an OK button.SimpleSinglePickerrenders a simple list of buttons that can be used to pick a single option in a list of available options.WidthVStacklists views in a vertical stack and provides them with with the largest view width.
The release also adds a highly performant CollectionView, based on the amazing work of @defagos, which can be found here:
The collection view can be configured with various layouts, like .shelves and .grid.
The release also makes some changes in the various presentation contexts:
- Passing around views could mess up
@Bindingproperties and cause the views to not update. - The code has been refactored to use closures instead, which solves this problem.
- My eternal gratitude to @hybridcattt for realizing that this was what caused problems.
Finally, this release also has some breaking changes:
DocumentCamera,FilePickerandImagePickerhave been written to behave more like eachother.FlippableViewis improved with new features and better result, but breaks previous api:s.LazyViewandLazyNavigationVieware removed, since I realized that SwiftUI handles this now.MultiPageViewhas been renamed toPageView.
0.9.8
This release contains a new LazyView and LazyNavigationView, which can be used to improve performance, since they resolve views upon presentation.
0.9.7
This release contains a new MultiPageView, which can be used to present multiple views in a horizontal page control.