Skip to content

Releases: danielsaidi/SwiftUIKit

5.0.0

06 Oct 11:58
Compare
Choose a tag to compare

This verison makes SwiftUIKit use Swift 6.

Due to the strict concurrency enforcement, this involves some breaking changes.

If some of the changes made are too strict for you, feel free to open a GitHub issue to discuss it.

🚨 Breaking Changes

  • This version renames the master branch to main.
  • All previously deprecated code has been removed.
  • All static style and configurations are now computed properties.
  • Some classes apply @MainActor to properly handle mutable state.
  • ImageCache.shared has been removed.
  • ImageService.default has been removed.
  • KeychainWrapper.shared has been removed.
  • URLOpener has been removed, since there now are native alternatives.
  • View+Geometry has been removed.

4.4.0

02 Sep 15:17
Compare
Choose a tag to compare

This version adds a new storage value type and moves the gesture buttons to https://github.com/danielsaidi/GestureButton.

✨ Features

  • StorageValue is a new property wrapper for serializing data into AppStorage.

🗑️ Deprecations

  • GestureButton and ScrollGestureButton has been moved to https://github.com/danielsaidi/GestureButton.

4.3.0

30 Apr 13:10
Compare
Choose a tag to compare

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.

✨ New features

  • Button+Init adds a new button initializer.
  • Button+Standard adds new standard button types.

4.2.2

25 Apr 12:02
Compare
Choose a tag to compare

🐛 Bug fixes

  • View+Label now correctly applies the provided bundle.

4.2.1

22 Apr 09:05
Compare
Choose a tag to compare

💡 Behavior changes

  • 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.

4.2.0

16 Mar 10:51
Compare
Choose a tag to compare

This version refactors many views to take their styles & configs as environment values, instead of injecting them in the initializer.

✨ New features

  • 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.

💡 Behavior changes

  • 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.

🗑️ Deprecations

  • 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.

4.1.5

11 Feb 19:13
Compare
Choose a tag to compare

This version makes the list header not use a section, to avoid disclosure groups.

4.1.4

11 Feb 19:13
Compare
Choose a tag to compare

This version fixes a bug in the image list header extension.

4.1.3

19 Dec 22:36
Compare
Choose a tag to compare

This version adds a few additional utilities.

✨ New features

  • 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.

💡 Behavior changes

  • ListHeader now applies a platform-specific bottom padding.

4.1.1

14 Dec 20:59
Compare
Choose a tag to compare

This version makes the ListBadgeIcon available on macOS.

✨ New features

  • ListBadgeIcon is now available on macOS.
  • ListBadgeIcon has a new appStore badge.
  • ListBadgeIcon iconColor is nil by default and adaptive to the badge color.