diff --git a/CHANGELOG.md b/CHANGELOG.md index 3d91f14649..80f9bd3987 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- [Library] Add details about API versions in documentation ([#374](https://github.com/Orange-OpenSource/ouds-ios/issues/374)) - [DemoApp] Update show code text ([#361](https://github.com/Orange-OpenSource/ouds-ios/issues/361)) ## [0.8.0](https://github.com/Orange-OpenSource/ouds-ios/compare/0.7.0...0.8.0) - 2024-12-18 diff --git a/OUDS/Core/Components/Sources/ViewModifiers/AccessibleModifiers/AccessibleModifiers.swift b/OUDS/Core/Components/Sources/ViewModifiers/AccessibleModifiers/AccessibleModifiers.swift index 8db34c6fb4..68f0ee9418 100644 --- a/OUDS/Core/Components/Sources/ViewModifiers/AccessibleModifiers/AccessibleModifiers.swift +++ b/OUDS/Core/Components/Sources/ViewModifiers/AccessibleModifiers/AccessibleModifiers.swift @@ -70,6 +70,8 @@ struct RequestAccessibleFocusModifier: ViewModifier { /// .oudsRequestAccessibleFocus(_requestFocus, for: .some(id: elements[0].id)) /// } /// ``` +/// +/// - Since: 0.9.0 public enum AccessibilityFocusable: Hashable { case none case some(id: String) diff --git a/OUDS/Core/OUDS/Sources/OUDSTheme/OUDSTheme.swift b/OUDS/Core/OUDS/Sources/OUDSTheme/OUDSTheme.swift index ba77ef9434..d745d4dae6 100644 --- a/OUDS/Core/OUDS/Sources/OUDSTheme/OUDSTheme.swift +++ b/OUDS/Core/OUDS/Sources/OUDSTheme/OUDSTheme.swift @@ -25,6 +25,8 @@ import OUDSTokensSemantic /// Because `OUDSTheme` is not a *final* class, its type cannot be seen as `Sendable`, that is the reason why this conformity is unchecked. /// /// **Warning: You are not supposed to use this abstract default theme directly. Please prefer `OrangeTheme` instead** +/// +/// - Since: 0.9.0 open class OUDSTheme: @unchecked Sendable { // MARK: - Properties diff --git a/OUDS/Core/OUDS/Sources/OUDSTheme/Views/OUDSThemeableView.swift b/OUDS/Core/OUDS/Sources/OUDSTheme/Views/OUDSThemeableView.swift index ff4875b693..aabf760d65 100644 --- a/OUDS/Core/OUDS/Sources/OUDSTheme/Views/OUDSThemeableView.swift +++ b/OUDS/Core/OUDS/Sources/OUDSTheme/Views/OUDSThemeableView.swift @@ -67,6 +67,7 @@ extension EnvironmentValues { /// YourRootView() /// } /// +/// - Since: 0.9.0 public struct OUDSThemeableView: View where Content: View { private let theme: OUDSTheme diff --git a/OUDS/Core/OUDS/Sources/OUDSUserInterfaceSizeClass.swift b/OUDS/Core/OUDS/Sources/OUDSUserInterfaceSizeClass.swift index d5e2897fff..b39358e1de 100644 --- a/OUDS/Core/OUDS/Sources/OUDSUserInterfaceSizeClass.swift +++ b/OUDS/Core/OUDS/Sources/OUDSUserInterfaceSizeClass.swift @@ -75,6 +75,8 @@ extension EnvironmentValues { /// @Environment(\.oudsHorizontalSizeClass) var horizontalSizeClass /// @Environment(\.oudsVerticalSizeClass) var verticalSizeClass /// ``` +/// +/// - Since: 0.9.0 public enum OUDSUserInterfaceSizeClass: String, Sendable { case extraCompact = "Extra Compact" case compact = "Compact" diff --git a/OUDS/Core/Themes/Orange/Sources/Declarations/OrangeBrandColorRawTokens.swift b/OUDS/Core/Themes/Orange/Sources/Declarations/OrangeBrandColorRawTokens.swift index 2af92a34b2..3d22006739 100644 --- a/OUDS/Core/Themes/Orange/Sources/Declarations/OrangeBrandColorRawTokens.swift +++ b/OUDS/Core/Themes/Orange/Sources/Declarations/OrangeBrandColorRawTokens.swift @@ -14,6 +14,8 @@ /// This enum helps to add new **color raw tokens** exclusive to this ``OrangeTheme``. /// Such tokens are packed in a _Swift enum_ so as to gather them in one object with the suitable namespace and avoid to have just constants in nothing else /// (i.e. publicly accessible from everywhere). More optimized than _struct_. +/// +/// - Since: 0.9.0 public enum OrangeBrandColorRawTokens { // ଘ( ・ω・)_/゚・:*:・。☆ diff --git a/OUDS/Core/Themes/Orange/Sources/Declarations/OrangeBrandFontRawTokens.swift b/OUDS/Core/Themes/Orange/Sources/Declarations/OrangeBrandFontRawTokens.swift index 379b822c38..fe5ea8b904 100644 --- a/OUDS/Core/Themes/Orange/Sources/Declarations/OrangeBrandFontRawTokens.swift +++ b/OUDS/Core/Themes/Orange/Sources/Declarations/OrangeBrandFontRawTokens.swift @@ -14,6 +14,8 @@ /// This enum helps to add new **font raw tokens** exclusive to this ``OrangeTheme`` /// Such tokens are packed in a _Swift enum_ so as to gather them in one object with the suitable namespace and avoid to have just constants in nothing else /// (i.e. publicly accessible from everywhere). More optimized than _struct_. +/// +/// - Since: 0.9.0 public enum OrangeBrandFontRawTokens { // ଘ( ・ω・)_/゚・:*:・。☆ diff --git a/OUDS/Core/Themes/Orange/Sources/OrangeTheme.swift b/OUDS/Core/Themes/Orange/Sources/OrangeTheme.swift index 2121fde507..b510207277 100644 --- a/OUDS/Core/Themes/Orange/Sources/OrangeTheme.swift +++ b/OUDS/Core/Themes/Orange/Sources/OrangeTheme.swift @@ -46,6 +46,8 @@ import OUDSTokensSemantic /// /// @Environment(\.theme) var theme /// ``` +/// +/// - Since: 0.9.0 open class OrangeTheme: OUDSTheme, @unchecked Sendable { // MARK: - Initializers diff --git a/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeBorderSemanticTokensProvider.swift b/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeBorderSemanticTokensProvider.swift index 69f6075565..67294c099d 100644 --- a/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeBorderSemanticTokensProvider.swift +++ b/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeBorderSemanticTokensProvider.swift @@ -51,6 +51,8 @@ import OUDSFoundations /// ```swift /// OrangeTheme(borders: CustomBorderTokensProvider()) /// ``` +/// +/// - Since: 0.9.0 open class OrangeThemeBorderSemanticTokensProvider { /// Intializes the provider diff --git a/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeColorSemanticTokensProvider.swift b/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeColorSemanticTokensProvider.swift index ae3c41e944..bb5214b4da 100644 --- a/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeColorSemanticTokensProvider.swift +++ b/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeColorSemanticTokensProvider.swift @@ -49,6 +49,8 @@ import OUDSFoundations /// ```swift /// OrangeTheme(colors: CustomColorTokensProvider()) /// ``` +/// +/// - Since: 0.9.0 open class OrangeThemeColorSemanticTokensProvider { /// Intializes the provider diff --git a/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeElevationSemanticTokensProvider.swift b/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeElevationSemanticTokensProvider.swift index 7a14115e41..06df3553ea 100644 --- a/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeElevationSemanticTokensProvider.swift +++ b/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeElevationSemanticTokensProvider.swift @@ -47,6 +47,8 @@ import OUDSFoundations /// ```swift /// OrangeTheme(elevations: CustomElevationTokensProvider()) /// ``` +/// +/// - Since: 0.9.0 open class OrangeThemeElevationSemanticTokensProvider { /// Intializes the provider diff --git a/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeFontSemanticTokensProvider.swift b/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeFontSemanticTokensProvider.swift index 514dca6d1f..01a88a60bc 100644 --- a/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeFontSemanticTokensProvider.swift +++ b/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeFontSemanticTokensProvider.swift @@ -49,6 +49,8 @@ import OUDSFoundations /// ```swift /// OrangeTheme(fonts: CustomFontTokensProvider()) /// ``` +/// +/// - Since: 0.9.0 open class OrangeThemeFontSemanticTokensProvider { /// Intializes the provider diff --git a/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeGridSemanticTokensProvider.swift b/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeGridSemanticTokensProvider.swift index 632088d394..f026e5f170 100644 --- a/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeGridSemanticTokensProvider.swift +++ b/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeGridSemanticTokensProvider.swift @@ -53,6 +53,8 @@ import OUDSFoundations /// ```swift /// OrangeTheme(grids: CustomGridTokensProvider()) /// ``` +/// +/// - Since: 0.9.0 open class OrangeThemeGridSemanticTokensProvider { /// Intializes the provider diff --git a/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeOpacitySemanticTokensProvider.swift b/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeOpacitySemanticTokensProvider.swift index 6e711afe0a..6fa5770f6c 100644 --- a/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeOpacitySemanticTokensProvider.swift +++ b/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeOpacitySemanticTokensProvider.swift @@ -45,6 +45,8 @@ import OUDSFoundations /// ```swift /// OrangeTheme(opacities: CustomOpacityTokensProvider()) /// ``` +/// +/// - Since: 0.9.0 open class OrangeThemeOpacitySemanticTokensProvider { /// Intializes the provider diff --git a/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeSizeSemanticTokensProvider.swift b/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeSizeSemanticTokensProvider.swift index aae25ff42d..a807a8c300 100644 --- a/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeSizeSemanticTokensProvider.swift +++ b/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeSizeSemanticTokensProvider.swift @@ -49,6 +49,8 @@ import OUDSFoundations /// ```swift /// OrangeTheme(sizes: CustomSizeTokensProvider()) /// ``` +/// +/// - Since: 0.9.0 open class OrangeThemeSizeSemanticTokensProvider { /// Intializes the provider diff --git a/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeSpaceSemanticTokensProvider.swift b/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeSpaceSemanticTokensProvider.swift index 695e9f52fe..ae4839165f 100644 --- a/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeSpaceSemanticTokensProvider.swift +++ b/OUDS/Core/Themes/Orange/Sources/Providers/OrangeThemeSpaceSemanticTokensProvider.swift @@ -49,6 +49,8 @@ import OUDSFoundations /// ```swift /// OrangeTheme(spaces: CustomSpaceTokenProvider()) /// ``` +/// +/// - Since: 0.9.0 open class OrangeThemeSpaceSemanticTokensProvider { /// Intializes the provider diff --git a/OUDS/Core/Tokens/ComponentTokens/Sources/Values/ButtonsComponentTokens.swift b/OUDS/Core/Tokens/ComponentTokens/Sources/Values/ButtonsComponentTokens.swift index fe2c614c51..f42f940e39 100644 --- a/OUDS/Core/Tokens/ComponentTokens/Sources/Values/ButtonsComponentTokens.swift +++ b/OUDS/Core/Tokens/ComponentTokens/Sources/Values/ButtonsComponentTokens.swift @@ -17,6 +17,8 @@ import OUDSTokensSemantic /// This is a component tokens list for buttons like `OUDSButton`. /// **Warning: This is a draft component ** +/// +/// - Since: 0.9.0 public protocol ButtonsComponentTokens { /* diff --git a/OUDS/Core/Tokens/RawTokens/Sources/Composites/FontCompositeRawToken.swift b/OUDS/Core/Tokens/RawTokens/Sources/Composites/FontCompositeRawToken.swift index da7e1b8054..1cfccd2696 100644 --- a/OUDS/Core/Tokens/RawTokens/Sources/Composites/FontCompositeRawToken.swift +++ b/OUDS/Core/Tokens/RawTokens/Sources/Composites/FontCompositeRawToken.swift @@ -20,6 +20,8 @@ infix operator <| /// Composite tokens are tokens defined in *Figma* by other tokens. /// Here a *font* thing is caracterized by a *font size*, a *line height*, a *font weight* and *letter spacing* values. /// All these elements are *raw tokens*, and together define a *composite raw token* for *font* thing. +/// +/// - Since: 0.9.0 public struct FontCompositeRawToken: Equatable, Sendable { // Font family is not included here because this is the only thing which can vary diff --git a/OUDS/Core/Tokens/RawTokens/Sources/Declarations/BorderRawTokens.swift b/OUDS/Core/Tokens/RawTokens/Sources/Declarations/BorderRawTokens.swift index 4682245048..515e699ed3 100644 --- a/OUDS/Core/Tokens/RawTokens/Sources/Declarations/BorderRawTokens.swift +++ b/OUDS/Core/Tokens/RawTokens/Sources/Declarations/BorderRawTokens.swift @@ -19,6 +19,8 @@ /// Primitive types such as `Double` and `String` must be used to as to allow to use `@objc` keywords in _Swift extensions_ for overriding. /// Such tokens are packed in a _Swift enum_ so as to gather them in one object with the suitable namespace and avoid to have just constants in nothing else /// (i.e. publicly accessible from everywhere). More optimized than _struct_. +/// +/// - Since: 0.9.0 public enum BorderRawTokens { // ଘ( ・ω・)_/゚・:*:・。☆ diff --git a/OUDS/Core/Tokens/RawTokens/Sources/Declarations/ColorRawTokens.swift b/OUDS/Core/Tokens/RawTokens/Sources/Declarations/ColorRawTokens.swift index a298ce5a54..6d24d0b963 100644 --- a/OUDS/Core/Tokens/RawTokens/Sources/Declarations/ColorRawTokens.swift +++ b/OUDS/Core/Tokens/RawTokens/Sources/Declarations/ColorRawTokens.swift @@ -16,9 +16,11 @@ /// ``ColorRawTokens`` are tokens to use to define *colors* of components thants to ``ColorRawToken`` type. Some of these colors are "raw", and others have transparancy effects. /// This enum contains also the shared colors, i.e. colors exposed to any theme. Some colors related to the Orange brand are defined elswhere in `OrangeBrandColorRawTokens`. /// -/// Primitive types such as ``String` must be used to as to allow to use `@objc` keywords in extensions for overriding. +/// Primitive types such as `String` must be used to as to allow to use `@objc` keywords in extensions for overriding. /// Such tokens are packed in a _Swift enum_ so as to gather them in one object with the suitable namespace and avoid to have just constants in nothing else /// (i.e. publicly accessible from everywhere). More optimized than _struct_. +/// +/// - Since: 0.9.0 public enum ColorRawTokens { // ଘ( ・ω・)_/゚・:*:・。☆ diff --git a/OUDS/Core/Tokens/RawTokens/Sources/Declarations/DimensionRawTokens.swift b/OUDS/Core/Tokens/RawTokens/Sources/Declarations/DimensionRawTokens.swift index 45ffa73619..1dde55a09f 100644 --- a/OUDS/Core/Tokens/RawTokens/Sources/Declarations/DimensionRawTokens.swift +++ b/OUDS/Core/Tokens/RawTokens/Sources/Declarations/DimensionRawTokens.swift @@ -18,6 +18,8 @@ /// Primitive types such as `Double` must be used to as to allow to use `@objc` keywords in extensions for overriding. /// Such tokens are packed in a _Swift enum_ so as to gather them in one object with the suitable namespace and avoid to have just constants in nothing else /// (i.e. publicly accessible from everywhere). More optimized than _struct_. +/// +/// - Since: 0.9.0 public enum DimensionRawTokens { // ଘ( ・ω・)_/゚・:*:・。☆ diff --git a/OUDS/Core/Tokens/RawTokens/Sources/Declarations/ElevationRawTokens.swift b/OUDS/Core/Tokens/RawTokens/Sources/Declarations/ElevationRawTokens.swift index 885be76338..8ecdc449f6 100644 --- a/OUDS/Core/Tokens/RawTokens/Sources/Declarations/ElevationRawTokens.swift +++ b/OUDS/Core/Tokens/RawTokens/Sources/Declarations/ElevationRawTokens.swift @@ -20,6 +20,8 @@ /// Primitive types such as `CGFloat` must be used to as to allow to use `@objc` keywords in extensions for overriding. /// Such tokens are packed in a _Swift enum_ so as to gather them in one object with the suitable namespace and avoid to have just constants in nothing else /// (i.e. publicly accessible from everywhere). More optimized than _struct_. +/// +/// - Since: 0.9.0 public enum ElevationRawTokens { // ଘ( ・ω・)_/゚・:*:・。☆ diff --git a/OUDS/Core/Tokens/RawTokens/Sources/Declarations/FontRawTokens.swift b/OUDS/Core/Tokens/RawTokens/Sources/Declarations/FontRawTokens.swift index 3690c68fbf..4170baef10 100644 --- a/OUDS/Core/Tokens/RawTokens/Sources/Declarations/FontRawTokens.swift +++ b/OUDS/Core/Tokens/RawTokens/Sources/Declarations/FontRawTokens.swift @@ -25,6 +25,8 @@ /// Primitive types such as `Int` and `String` must be used to as to allow to use `@objc` keywords in extensions for overriding. /// Such tokens are packed in a _Swift enum_ so as to gather them in one object with the suitable namespace and avoid to have just constants in nothing else /// (i.e. publicly accessible from everywhere). More optimized than _struct_. +/// +/// - Since: 0.9.0 public enum FontRawTokens { // ଘ( ・ω・)_/゚・:*:・。☆ diff --git a/OUDS/Core/Tokens/RawTokens/Sources/Declarations/GridRawTokens.swift b/OUDS/Core/Tokens/RawTokens/Sources/Declarations/GridRawTokens.swift index dfdf30d971..78e72db94e 100644 --- a/OUDS/Core/Tokens/RawTokens/Sources/Declarations/GridRawTokens.swift +++ b/OUDS/Core/Tokens/RawTokens/Sources/Declarations/GridRawTokens.swift @@ -13,11 +13,13 @@ /// Defined as the group of all **raw tokens** related to **grid**. /// Values are defined in *GridRawTokens+Values.swift* file updated by the tokenator. -/// ``GridRawTokens`` are tokens to use to define *grids* using ``GridRawToken` type. +/// ``GridRawTokens`` are tokens to use to define *grids* using ``GridRawToken`` type. /// /// Primitive types such as `Int` must be used to as to allow to use `@objc` keywords in extensions for overriding. /// Such tokens are packed in a _Swift enum_ so as to gather them in one object with the suitable namespace and avoid to have just constants in nothing else /// (i.e. publicly accessible from everywhere). More optimized than _struct_. +/// +/// - Since: 0.9.0 public enum GridRawTokens { // ଘ( ・ω・)_/゚・:*:・。☆ diff --git a/OUDS/Core/Tokens/RawTokens/Sources/Declarations/OpacityRawTokens.swift b/OUDS/Core/Tokens/RawTokens/Sources/Declarations/OpacityRawTokens.swift index c4a5a277e0..6d08502f15 100644 --- a/OUDS/Core/Tokens/RawTokens/Sources/Declarations/OpacityRawTokens.swift +++ b/OUDS/Core/Tokens/RawTokens/Sources/Declarations/OpacityRawTokens.swift @@ -18,6 +18,8 @@ /// Primitive types such as `Double` must be used to as to allow to use `@objc` keywords in extensions for overriding. /// Such tokens are packed in a _Swift enum_ so as to gather them in one object with the suitable namespace and avoid to have just constants in nothing else /// (i.e. publicly accessible from everywhere). More optimized than _struct_. +/// +/// - Since: 0.9.0 public enum OpacityRawTokens { // ଘ( ・ω・)_/゚・:*:・。☆ diff --git a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/BorderSemanticTokens.swift b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/BorderSemanticTokens.swift index 2bd81a64c2..362581ab5e 100644 --- a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/BorderSemanticTokens.swift +++ b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/BorderSemanticTokens.swift @@ -20,6 +20,8 @@ /// This is a group of semantic tokens for **borders**. /// It defines all ``BorderWidthSemanticToken``, ``BorderRadiusSemanticToken`` and ``BorderStyleSemanticToken`` a theme must have. /// Any border semantic token must be declared there as providers like `OUDSBorderSemanticTokensProvider` will then expose them through `OUDSTheme`. +/// +/// - Since: 0.9.0 public protocol BorderSemanticTokens { // MARK: - Semantic token - Border - Width diff --git a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ColorMultipleSemanticTokens.swift b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ColorMultipleSemanticTokens.swift index 084d313db2..0ec766893d 100644 --- a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ColorMultipleSemanticTokens.swift +++ b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ColorMultipleSemanticTokens.swift @@ -42,7 +42,8 @@ /// // Thus users can in their components use colorBgPrimary as defined in their design system /// // (even if they are still able to use 'lower level' semantic tokens but it is more error-prone) /// ``` -/// +/// +/// - Since: 0.9.0 public protocol ColorMultipleSemanticTokens { // MARK: - Color - Opacity - Invisible diff --git a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ColorSemanticTokens.swift b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ColorSemanticTokens.swift index 5a77123bc1..c3242546b1 100644 --- a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ColorSemanticTokens.swift +++ b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ColorSemanticTokens.swift @@ -23,6 +23,8 @@ /// It defines all ``ColorSemanticToken`` a theme must have. /// These tokens are then gathered inside ``MultipleColorSemanticTokens`` defined in ``ColorMultipleSemanticTokens``. /// Any color semantic token must be declared there (except ``MultipleColorSemanticTokens``) +/// +/// - Since: 0.9.0 public protocol ColorSemanticTokens { // MARK: - Color - Opacity - Invisible diff --git a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ElevationCompositeSemanticTokens.swift b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ElevationCompositeSemanticTokens.swift index 6eb0a43710..3318e65b41 100644 --- a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ElevationCompositeSemanticTokens.swift +++ b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ElevationCompositeSemanticTokens.swift @@ -40,6 +40,8 @@ /// // Or use .light or .dark instead of elevation(for:) /// } /// ``` +/// +/// - Since: 0.9.0 public protocol ElevationCompositeSemanticTokens { var elevationNone: ElevationCompositeSemanticToken { get } diff --git a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ElevationMultipleSemanticTokens.swift b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ElevationMultipleSemanticTokens.swift index 6b50b799f8..df2294e3f6 100644 --- a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ElevationMultipleSemanticTokens.swift +++ b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ElevationMultipleSemanticTokens.swift @@ -45,6 +45,7 @@ /// // (even if they are still able to use 'lower level' semantic tokens but it is more error-prone) /// ``` /// +/// - Since: 0.9.0 public protocol ElevationMultipleSemanticTokens { var elevationColorDefault: MultipleColorSemanticTokens { get } diff --git a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ElevationSemanticTokens.swift b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ElevationSemanticTokens.swift index ed1aca38c1..c40454e3a6 100644 --- a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ElevationSemanticTokens.swift +++ b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/ElevationSemanticTokens.swift @@ -24,6 +24,8 @@ /// However the composite tokens (here for box shadows) are defined in ``ElevationCompositeSemanticTokens`` because the *tokenator* /// is not able to generate them yet, and they must be defined elsewhere to not be deleted. /// Any elevation semantic token must be declared there (except ``ElevationCompositeSemanticTokens``) +/// +/// - Since: 0.9.0 public protocol ElevationSemanticTokens { // MARK: Semantic token - Elevation - X diff --git a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/FontCompositeSemanticTokens.swift b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/FontCompositeSemanticTokens.swift index 6e4086dd18..85565e95bd 100644 --- a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/FontCompositeSemanticTokens.swift +++ b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/FontCompositeSemanticTokens.swift @@ -43,6 +43,8 @@ /// /// // Etc. /// ``` +/// +/// - Since: 0.9.0 public protocol FontCompositeSemanticTokens { // MARK: - Semantic tokens - Typography - Composites - Display diff --git a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/FontMultipleSemanticTokens.swift b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/FontMultipleSemanticTokens.swift index 91e4d15f2a..773c62416e 100644 --- a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/FontMultipleSemanticTokens.swift +++ b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/FontMultipleSemanticTokens.swift @@ -51,6 +51,7 @@ /// // (even if they are still able to use 'lower level' semantic tokens but it is more error-prone) /// ``` /// +/// - Since: 0.9.0 public protocol FontMultipleSemanticTokens { // MARK: - Semantic token - Typography - Font - Size diff --git a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/FontSemanticTokens.swift b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/FontSemanticTokens.swift index 2845108b52..b8c7dbdd8b 100644 --- a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/FontSemanticTokens.swift +++ b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/FontSemanticTokens.swift @@ -23,6 +23,8 @@ /// However the composite tokens (here the ones gathering each type of semantic token here) are defined in ``FontCompositeSemanticTokens`` because the *tokenator* /// is not able to generate them yet, and they must be defined elsewhere to not be deleted. /// Any font semantic token must be declared there (except ``FontCompositeSemanticTokens``). +/// +/// - Since: 0.9.0 public protocol FontSemanticTokens { // MARK: - Semantic token - Typography - Font - Family diff --git a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/GridSemanticTokens.swift b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/GridSemanticTokens.swift index b762bc93af..2c4986affa 100644 --- a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/GridSemanticTokens.swift +++ b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/GridSemanticTokens.swift @@ -20,6 +20,8 @@ /// This is a group of semantic tokens for **grids**. /// It defines all `GridSemanticToken` a theme must have. /// Any grid semantic token must be declared there. +/// +/// - Since: 0.9.0 public protocol GridSemanticTokens { // MARK: Semantic token - Grid - iOS Extra compact diff --git a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/OpacitySemanticTokens.swift b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/OpacitySemanticTokens.swift index 8e5cc2845d..0de59cd912 100644 --- a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/OpacitySemanticTokens.swift +++ b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/OpacitySemanticTokens.swift @@ -20,6 +20,8 @@ /// This is a group of semantic tokens for **opacity.** /// It defines all ``OpacitySemanticToken`` a theme must have. /// Any opacity semantic token must be declared there as providers like `OrangeThemeOpacitySemanticTokensProvider` will then expose them through `OUDSTheme`. +/// +/// - Since: 0.9.0 public protocol OpacitySemanticTokens { // MARK: Semantic token - Opacity diff --git a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/SizeMultipleSemanticTokens.swift b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/SizeMultipleSemanticTokens.swift index 6163b0303b..e5c0bdd32c 100644 --- a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/SizeMultipleSemanticTokens.swift +++ b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/SizeMultipleSemanticTokens.swift @@ -48,7 +48,8 @@ /// // Thus users can in their components use sizeIconWithHeadingXlargeSizeSm as defined in their design system /// // (even if they are still able to use 'lower level' semantic tokens but it is more error-prone) /// ``` -/// +/// +/// - Since: 0.9.0 public protocol SizeMultipleSemanticTokens { // MARK: - Semantic token - Sizing - Icon with typography diff --git a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/SizeSemanticTokens.swift b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/SizeSemanticTokens.swift index 111141d8e0..1a25c81f35 100644 --- a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/SizeSemanticTokens.swift +++ b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/SizeSemanticTokens.swift @@ -20,6 +20,8 @@ /// This is a group of semantic tokens for **sizing**. /// It defines all ``SizeSemanticToken`` a theme must have. /// Any size semantic token must be declared there. +/// +/// - Since: 0.9.0 public protocol SizeSemanticTokens { // MARK: - Semantic token - Sizing - Icon with typography diff --git a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/SpaceMultipleSemanticTokens.swift b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/SpaceMultipleSemanticTokens.swift index df6d140139..013e6f369b 100644 --- a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/SpaceMultipleSemanticTokens.swift +++ b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/SpaceMultipleSemanticTokens.swift @@ -45,7 +45,8 @@ /// // Thus users can in their components use spaceScaledNone as defined in their design system /// // (even if they are still able to use 'lower level' semantic tokens but it is more error-prone) /// ``` -/// +/// +/// - Since: 0.9.0 public protocol SpaceMultipleSemanticTokens { // MARK: Semantic token - Spacing - Scaled diff --git a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/SpaceSemanticTokens.swift b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/SpaceSemanticTokens.swift index bbd78d3eb2..039166ddc3 100644 --- a/OUDS/Core/Tokens/SemanticTokens/Sources/Values/SpaceSemanticTokens.swift +++ b/OUDS/Core/Tokens/SemanticTokens/Sources/Values/SpaceSemanticTokens.swift @@ -20,6 +20,8 @@ /// This is a group of semantic tokens for **spacing**. /// It defines all ``SpaceSemanticToken`` a theme must have. /// Any space semantic token must be declared there. +/// +/// - Since: 0.9.0 public protocol SpaceSemanticTokens { // MARK: Semantic token - Spacing - Scaled diff --git a/OUDS/Foundations/Sources/OUDSLogger.swift b/OUDS/Foundations/Sources/OUDSLogger.swift index 35ff714431..b64719711d 100644 --- a/OUDS/Foundations/Sources/OUDSLogger.swift +++ b/OUDS/Foundations/Sources/OUDSLogger.swift @@ -14,7 +14,9 @@ import Foundation import os -/// The `os.Logger` wrapper used in the *OUDS iOS* library so as to logs things in standard output or elswhere. +/// The `os.Logger` wrapper used in the *OUDS iOS* library so as to logs things in standard output or elsewhere. +/// +/// - Since: 0.9.0 public struct OUDSLogger { private init() {} diff --git a/README.md b/README.md index a433144a59..6eedac355d 100644 --- a/README.md +++ b/README.md @@ -15,8 +15,8 @@ ## Table of contents - [Status](#status) -- [OUDS](#ouds) - [Content](#content) +- [OUDS](#ouds) - [Import the library](#import-the-library) - [Bugs and feature requests](#bugs-and-feature-requests) - [Contributing](#contributing) @@ -27,7 +27,7 @@ [![MIT license](https://img.shields.io/github/license/Orange-OpenSource/ouds-ios?style=for-the-badge)](https://github.com/Orange-OpenSource/ouds-ios/blob/main/LICENSE) [![Versions](https://img.shields.io/github/v/release/Orange-OpenSource/ouds-ios?label=Last%20version&style=for-the-badge)](https://github.com/Orange-OpenSource/ouds-ios/releases) -[![Still maintained](https://img.shields.io/maintenance/yes/2024?style=for-the-badge)](https://github.com/Orange-OpenSource/ouds-ios/issues?q=is%3Aissue+is%3Aclosed) +[![Still maintained](https://img.shields.io/maintenance/yes/2025?style=for-the-badge)](https://github.com/Orange-OpenSource/ouds-ios/issues?q=is%3Aissue+is%3Aclosed) [![Code size](https://img.shields.io/github/languages/code-size/Orange-OpenSource/ouds-ios?style=for-the-badge)](https://github.com/Orange-OpenSource/ouds-ios) [![Opened issues](https://img.shields.io/github/issues-raw/Orange-OpenSource/ouds-ios?style=for-the-badge)](https://github.com/Orange-OpenSource/ouds-ios/issues) @@ -44,6 +44,16 @@ You can find the [detailed technical documentation online](https://ios.unified-d Details about the project are also [available in the wiki](https://github.com/Orange-OpenSource/ouds-ios/wiki). +**⚠️ This release should not be used as is. This is only an incremental version of OUDS iOS library.** + +## OUDS + +OUDS means "Orange Unified Design System". +This is a new design system, again, but _unified_, trying to merge all requirements of Orange brands and affiliates so as to provide a unique design system, unified across all platforms and for all countries, companies, users and apps. +Guidelines for TV, Android, iOS and web environments will be merged in a "cohesive" approach, and any Orange-related softwares including brand apps like *Parnasse* and *Sosh*, *Orange Innovation Cup* apps and Orange countries and affiliates app will use this project in the future. +The project is open source and topics like accessibility and ecodesign are also managed. +It should replace internal frameworks and also [ODS](https://github.com/Orange-OpenSource/ods-ios) in the near future. + ## Import the library Add in *Xcode* the Swift package dependency `https://github.com/Orange-OpenSource/ouds-ios`. @@ -80,10 +90,6 @@ struct YourApp: App { Then get the current thme using `@Environment(\.theme) var theme` and use it! You can also use the moudles and the components exposed by the library. -## OUDS - -OUDS means "Orange Unified Design System". This is a new design system, again, but _unified_, trying to merge all requirements of Orange brands and affiliates so as to provide a unique design system, unified across all platforms and for all countries, companies, users and apps. Guidelines for TV, Android, iOS and web environments will be merged in a "cohesive" approach, and any Orange-related softwares including brand apps like Parnasse and Sosh, *Orange Innovation Cup* apps and Orange countries and affiliates app will use this project in the future. The project is open source and topics like accessibility and ecodesign are also managed. It should replace internal frameworks and also [ODS](https://github.com/Orange-OpenSource/ods-ios) in the near future. - ## Bugs and feature requests Have a bug or a feature request? Please first search for existing and closed issues. If your problem or idea is not addressed yet, [please open a new issue](https://github.com/Orange-OpenSource/ouds-ios/issues/new/choose).