Bot releases are visible (Hide)
This version adds localization support, and makes more types use LocalizedStringKey
instead of String
.
This version also adds standard button types, which makes it easier to create standard button types.
Button+Init
adds a new button initializer.Button+Standard
adds new standard button types.View.alert
now injects the context as environment object.View.label
now takes a localized string key instead of a key.View.sheet
now injects the context as environment object.View.fullScreenCover
now injects the context as environment object.This version refactors many views to take their styles & configs as environment values, instead of injecting them in the initializer.
CircularProgressBar
now supports customizing animation.FilePicker
now supports providing a custom picker config.ImagePicker
now supports providing a custom picker config.LinkText
has new link style options, to define font weight.ListButtonGroup
is a new group view for groping many buttons.ListButtonStyle
has a new optional pressedOpacity
init param.ListCard
now supports specifying a custom pressed scale animation.String+Replace
has a new options-based replace extension shorthand.Color.standardListBackground
has been renamed to listBackground
.FormInlineActionButtonStyle
has been replaced by ListButtonGroup
.FormText
has been renamed to ListActionRow
, and is now style-based.ListActionRow
now supports a ListAction
instead of a trailing view.DismissableView
has been deprecated due to native SwiftUI support.FormRowTitle
has been deprecated due to now being used internally.PresentationDetents
has been deprecated due to native SwiftUI support.This version adds a few additional utilities.
ListHeader
has a new image-specific modifier.View+Label
makes it easy to convert any view to a label.View+macOS
has a new openAppSettings()
view extension.ListHeader
now applies a platform-specific bottom padding.This major version bumps the deployment targets to iOS 15, tvOS 15, watchOS 8, and macOS 12. This lets us remove a lot of code for older OS versions.
This version also adds everything from SwiftKit
, which is discontinued. I don't want to manage or add two libraries, so merging them seems valid.
This version removes protocols where not needed. This means that it will no longer have a protocol and a standard implementation if not needed.
Bundle+Information
is a new extension with bundle-specific information.BundleFileFinder
is a new file service that can search for files in a bundle.Collections
is a new namespace with collection-related utilities and extensions.Commands
is a new namespace with macOS
commands.CsvParser
is a new class that can be used to parse CSV files and strings.Date
is a new namespace with date-related extensions and utilities.DeviceIdentifier
is a new class for generating unique device IDs.iCloudDocumentSync
is a new class that can sync iCloud document changes.Keychain
is a new namespace with keychain-related utilities and services.ListAction
is a new enum with quick list action types.MimeType
is a new type that defines various MIME types.Pasteboard
is a multi-platform pasteboard typealias.String
is a new namespace with string-related utilities and extensions.URL+iCloud
adds new iCloud-specific URLs.ValidationRegex
is a struct that defines various regex-based validation expressions.View
disableDynamicType
now applies the provided size category instead of always .medium
.All previously deprecated code has been removed.
ActionToggle
has been removed - just use onChange(of:)
to observe the toggle state instead.DismissableView
now uses DismissAction
instead of PresentationMode
.EdgeInsets
factory functions have been replaced with proper initializers.FilePicker
now requires UTType
instead of String
.FolderMonitor
has been renamed to DirectoryMonitor
.FolderObservable
has been renamed to DirectoryObservable
.FormActionButton
has been replaced with a FormActionButtonStyle
.FormTextButton
has been removed since ListAction
is so easy to use.FormTextEditor
and FormTextField
has been removed. Use .formRowTitle(...)
instead.ScanCodeGenerator
has been replaced by Image
and ImageRepresentable
init extensions.This release deprecates a bunch of things in preparation for the 4.0 bump.
SwiftUIKit 4.0 will drop support for iOS 13.
MultilineSubmitViewModifier
is a new view modifier to make multiline text fields submit when return is pressed.View
has a new multilineSubmit(...)
extension.View
has a new onMultilineSubmit(...)
extension.ForEachPicker
no longer applies a .plain
button style.ForEachMultiPicker
no longer applies a .plain
button style.SwiftPreviewInspector
now provides a standard implementation.MultilineText
has been deprecated.DotAnimation
has been renamed to DotLoadingAnimation
.DotAnimationText
has been renamed to DotLoadingAnimationText
.SearchBar
has been deprecated.SidebarPresenter
has been deprecated.StandardSwiftPreviewInspector
has been deprecated.Text+Markdown
has been deprecated.UIApplication+Windows
has been deprecated.View
height and width modifiers have been deprecated.View+Keyboard
has been deprecated.StorageCodable
is a new protocol for persisting Codable
in AppStorage
and SceneStorage
.View+Font
extensions are now available on tvOS and watchOS as well.Persisted
is changed to soft deprecated since the RawRepresentable
AppStorage
support requires iOS 15.Printing
namespace has been deprecated and moved to the new PrintingKit SDK.Color+Hex
has new static functions.ColorPickerBar
is a new color picker component.EditableView
is a new view protocol.ListBadgeIcon
now supports custom icon colors and icon gradients.ListHeaderIcon
is a new view.ListSectionTitle
has a new withInsets()
init parameter.ListShelfSection
has a new style.OptionalBinding
is a new func that makes it possible to pass in optional values as a non-optional binding.View
has new prefers
extensions.ViewShadowStyle
has a new .sticker
style.ImageRenderer
was not available to 5.7 compilers and has been removed altogether.ImageRenderer
can still be found and copied from any earlier versions of SwiftUIKit.MultilineTextField
has been deprecated.SystemColor
has been deprecated.