- Added
View.onNotification(name:perform:)
A view modifier that listens for a notification and performs an action when the notification is received. - Added
View.onChange(of:after:perform:)
A view modifier that listens for changes to a value and performs an action after the change. - Added
View.onFirstAppear(perform:)
A view modifier that performs an action the first time the view appears. - Added
NotificationView
A view that displays a notification. - Added
View.notification(title:message:onClick:)
A view modifier that displays a notification on the view. - Added
NotificationOnboarding
A view that displays an onboarding screen for notifications. - Added
View.notificationOnboarding(isPresented:title:content:notificationTitle:notificationContent:primaryButtonTitle:secondaryButtonTitle:onPermissionChange:)
A view modifier that displays an onboarding screen for notifications on the view. - Added
Onboarding
A view that displays an onboarding screen. - Added
View.onboardingItem(position:cornerRadius:content:)
A view modifier that marks the views you want to highlight in an onboarding sequence. - Added
View.onboarding(steps:currentStep:index:skipable:)
A view modifier that displays an onboarding sequence on the view. - Added
View.adaptiveColor(_:or:)
A view modifier that sets the color of the view based on the current background color. - Made
Colorconform toCodable
To make it easier to save colors - Added
ConfirmationButton
A button that shows a confirmation alert before performing an action. - Added
Collection.second
A property that returns the second element of a collection. - Added
Collection.third
A property that returns the third element of a collection. - Added
Collection.penultimate
A property that returns the second last element of a collection. - Added
CopyableLabeledContent
A labeled content view that can be copied to the clipboard. - Added
PlatformColorextensions
A collection of extensions forPlatformColorto make it easier to use in Swift (seeUIColor). - Added
URL.init(safeString:)
A failable initializer that creates a URL from a string, returning nil if the string is not a valid URL. - Added
URL.isValid
A property that checks if the URL is valid. - Added
URL.isWebURL
A property that checks if the URL is a web URL (http or https). - Fixed a bug in
WebView
Where the web view would not load a html string on macOS. - Added
SEChangeLogEntry(version:date:changes:)
A struct that represents a changelog entry. - Fixed a layout issue in
SESettingsView
The footer text was not aligned properly. - Added
Image.square
A property that returns a square version of the image. - Added optional
action:parameter toshowAlert(error:buttonTitle:action:)
A view modifier that shows an alert on the view if theerroris not nil. - Updated localizations.
- Fixed build errors for tvOS.
- Added
NavigationViewIfNeeded
A view that wraps its content in aNavigationViewif needed. (Source: https://www.joshholtz.com/blog/2025/02/08/swiftui-navigation-view-if-needed.html) - Updated
SESettingsView
to useNavigationViewIfNeeded. - Fixed typo in
ColoredButtonStyle
ChangedcolorShemetocolorScheme. - Updated
DisclosureSection
to respect the disabled state. - Updated
DisclosureSection.init(isExpanded:content:label:)
to make it more readable and Swift like. - Added
.dialogSeverity(.critical)to.showError(error:buttonTitle:action:)
To show critical alerts on macOS. - Added support for optional bindings, you can now use
$optionalString ?? "Default Value"in text fields and other views that require a binding. - Added
Binding.init(for:)
A failable initializer that creates a read-only Binding for an optional source. - Added
Optional.isNilOrEmpty
A property that checks if an optional string is nil or empty. - Added
Color.luminance
A property that returns the luminance of the color - Fix
Color.resolved.redValue,Color.resolved.greenValue,Color.resolved.blueValue, andColor.resolved.alphaValue
To return the correct values for colors created with a dynamic provider. - Added
Color.init(hex:)
An initializer that creates a color from a hex string. - Added
Image.centerCropped
A property that returns a center cropped version of the image. - Fixed
Date.time(timeZone:)
To return the correct time for the date in a specific time zone. Reported by JB for Calendo - Added
AutoEquatableprotocol.
A protocol that automatically synthesizesEquatableconformance for types that conform to it. - Added
SplitActionButton
A button that has a primary action and a secondary action. - Fixed a building issue on Xcode 27
Full Changelog: 1.2.6...1.2.7