Skip to content

Commit eb84a75

Browse files
committed
chore: clean up
Signed-off-by: Pierre-Yves Lapersonne <[email protected]>
1 parent a40c64d commit eb84a75

File tree

15 files changed

+339
-28
lines changed

15 files changed

+339
-28
lines changed

CHANGELOG.md

+3
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1515

1616
### Changed
1717

18+
- [Library] Tag component token (tokens library v0.11.0)
19+
- [Library] Chip component token (tokens library v0.11.0)
1820
- [Library] Color semantic tokens (tokens library v0.10.0)
1921
- [Library] Control item component tokens (tokens library v0.10.0)
2022
- [Library] New public API to use less color scheme to apply elevation and colors ([#146](https://github.com/Orange-OpenSource/ouds-ios/issues/146))
@@ -30,6 +32,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
3032

3133
### Removed
3234

35+
- [Library] Chip component token `chipColorBorderEnabled` (tokens library v0.11.0)
3336
- [Library] Color semantic tokens `colorRepositoryOpacityBlackSoft{Light|Dark}` (tokens library v0.10.0)
3437

3538
### Fixed

DesignToolbox/DesignToolbox/Utils/Bundle+extension.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ extension Bundle {
6868
}
6969

7070
var tokensLibraryVersion: String {
71-
"Tokens version: 0.10.0"
71+
"Tokens version: 0.11.0"
7272
}
7373

7474
// MARK: Private Implementation

OUDS/Core/Themes/Orange/Sources/OrangeTheme.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ open class OrangeTheme: OUDSTheme, @unchecked Sendable {
155155
let select = (select ?? OrangeThemeSelectComponentTokensProvider(sizes: sizes, colors: colors, spaces: spaces))
156156
let skeleton = (skeleton ?? OrangeThemeSkeletonComponentTokensProvider(colors: colors))
157157
let `switch` = (`switch` ?? OrangeThemeSwitchComponentTokensProvider(sizes: sizes, borders: borders, colors: colors, spaces: spaces, opacities: opacities))
158-
let tag = (tag ?? OrangeThemeTagComponentTokensProvider(colors: colors))
158+
let tag = (tag ?? OrangeThemeTagComponentTokensProvider(sizes: sizes, borders: borders, colors: colors, spaces: spaces))
159159

160160
super.init(borders: borders,
161161
colors: colors,

OUDS/Core/Themes/Orange/Sources/Providers/ComponentTokens/OrangeThemeTagComponentTokensProvider.swift

+40-6
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,9 @@ import OUDSTokensSemantic
2121
/// all tokens to the users. It helps users to override some of the tokens and assign them to an `OUDSTheme` implementation to use.
2222
/// Custom themes can use subclass of ``OrangeThemeTagComponentTokensProvider`` and apply the provider they need.
2323
/// It implements also the protocol `TagComponentTokens` so as to expose the component tokens for *tags* through any `OUDSTheme`.
24-
/// *Tags* components tokens are defined with semantic tokens of colors (from `AllColorSemanticTokensProvider`).
24+
/// *Tags* components tokens are defined with semantic tokens of colors (from `AllColorSemanticTokensProvider`),
25+
/// sizes (from `AllSizeSemanticTokensProvider`), spaces (from `AllSpaceSemanticTokensProvider`) and borders
26+
/// (from `AllBorderSemanticTokensProvider`).
2527
///
2628
/// ```swift
2729
/// // Define your own provider for tag component tokens
@@ -31,6 +33,12 @@ import OUDSTokensSemantic
3133
/// // Then override the tag component tokens you want.
3234
///
3335
/// override var tagColorBgReminder: MultipleColorSemanticTokens { colors.colorOpacityLower }
36+
///
37+
/// override var tagBorderWidthDefault: BorderWidthSemanticToken { borders.borderWidthMedium }
38+
///
39+
/// override var tagSizeMinWidthMedium: SizeSemanticToken { DimensionRawTokens.dimension500 }
40+
///
41+
/// override var tagSpacePaddingInlineIconStartSmall: SpaceSemanticToken { spaces.spacePaddingInlineMedium }
3442
///
3543
/// // ...
3644
/// }
@@ -65,23 +73,49 @@ import OUDSTokensSemantic
6573
/// ```swift
6674
/// // Uses by default here:
6775
/// // - OrangeThemeColorSemanticTokensProvider for colors
76+
/// // - OrangeThemeBorderSemanticTokensProvider for borders
77+
/// // - OrangeThemeSizeSemanticTokensProvider for sizes
78+
/// // - OrangeThemeSpaceSemanticTokensProvider for spaces
6879
/// let tagComponentTokensProvider = OrangeThemeTagComponentTokensProvider()
6980
///
70-
/// // Or use your own color semantic tokens providers (or only some)
81+
/// // Or use your own color, space, size and border semantic tokens providers (or only some)
7182
/// let tagComponentTokensProvider = OrangeThemeTagComponentTokensProvider(
72-
/// colors: CustomColorSemanticTokensProvider())
83+
/// sizes: CustomSizeSemanticTokensProvider(),
84+
/// borders: CustomBorderSemanticTokensProvider(),
85+
/// colors: CustomColorSemanticTokensProvider(),
86+
/// spaces: CustomSpaceSemanticTokensProvider)
7387
/// ```
88+
///
7489
/// - Since: 0.9.0
7590
open class OrangeThemeTagComponentTokensProvider: AllTagComponentTokensProvider {
7691

77-
/// Provider of color semantic tokens to use for link colors
92+
/// Provider of size semantic tokens to use for tag suzes
93+
public let sizes: AllSizeSemanticTokensProvider
94+
95+
/// Provider of border semantic tokens to use for tag borders
96+
public let borders: AllBorderSemanticTokensProvider
97+
98+
/// Provider of color semantic tokens to use for tag colors
7899
public let colors: AllColorSemanticTokensProvider
79100

101+
/// Provider of space semantic tokens to use for tag spaces
102+
public let spaces: AllSpaceSemanticTokensProvider
103+
80104
/// Defines a provider of component tokens dedicated to `OUDSTag`
81-
/// - Parameter colors: Provider for color semantic tokens. If nil, a default one will be used (``OrangeThemeColorSemanticTokensProvider``)
82-
public init(colors: AllColorSemanticTokensProvider? = nil) {
105+
/// - Parameters:
106+
/// - sizes: Provider for size semantic tokens. If nil, a default one will be used (``OrangeThemeSizeSemanticTokensProvider``)
107+
/// - borders: Provider for borders semantic tokens. If nil, a default one will be used (``OrangeThemeBorderSemanticTokensProvider``)
108+
/// - colors: Provider for colors semantic tokens. If nil, a default one will be used (``OrangeThemeColorSemanticTokensProvider``)
109+
/// - spaces: Provider for spaces semantic tokens. If nil, a default one will be used (``OrangeThemeSpaceSemanticTokensProvider``)
110+
public init(sizes: AllSizeSemanticTokensProvider? = nil,
111+
borders: AllBorderSemanticTokensProvider? = nil,
112+
colors: AllColorSemanticTokensProvider? = nil,
113+
spaces: AllSpaceSemanticTokensProvider? = nil) {
83114
OL.debug("Init of OrangeThemeTagComponentTokensProvider")
115+
self.sizes = (sizes ?? OrangeThemeSizeSemanticTokensProvider())
116+
self.borders = (borders ?? OrangeThemeBorderSemanticTokensProvider())
84117
self.colors = (colors ?? OrangeThemeColorSemanticTokensProvider())
118+
self.spaces = (spaces ?? OrangeThemeSpaceSemanticTokensProvider())
85119
}
86120

87121
deinit { }

OUDS/Core/Themes/Orange/Sources/Values/ComponentTokens/OrangeTheme+ListItemComponentTokens.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import OUDSTokensComponent
1616
import OUDSTokensRaw
1717
import OUDSTokensSemantic
1818

19-
// 🧱 Tokens version: 0.10.0
19+
// 🧱 Tokens version: 0.11.0
2020
// 🤖 Generated by Tokenator
2121

2222
extension OrangeThemeListItemComponentTokensProvider: ListItemComponentTokens {

OUDS/Core/Themes/Orange/Sources/Values/ComponentTokens/OrangeTheme+SelectComponentTokens.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import OUDSTokensComponent
1616
import OUDSTokensRaw
1717
import OUDSTokensSemantic
1818

19-
// 🧱 Tokens version: 0.10.0
19+
// 🧱 Tokens version: 0.11.0
2020
// 🤖 Generated by Tokenator
2121

2222
extension OrangeThemeSelectComponentTokensProvider: SelectComponentTokens {

OUDS/Core/Themes/Orange/Tests/Values/ComponentTokens/MockTheme/MockTheme+AllChipComponentTokens.swift

+1
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ final class MockThemeChipComponentTokenProvider: OrangeThemeChipComponentTokensP
6464
override public var chipColorBorderPressed: MultipleColorSemanticTokens { Self.mockThemeChipColor }
6565
override public var chipColorBorderDisabled: MultipleColorSemanticTokens { Self.mockThemeChipColor }
6666
override public var chipColorBorderSelected: MultipleColorSemanticTokens { Self.mockThemeChipColor }
67+
override public var chipColorBorderUnselected: MultipleColorSemanticTokens { Self.mockThemeChipColor }
6768
override public var chipColorBorderFocus: MultipleColorSemanticTokens { Self.mockThemeChipColor }
6869
override public var chipSpacePaddingInlineLabelStart: SpaceSemanticToken { Self.mockThemeChipSpace }
6970
override public var chipSpacePaddingInlineLabelEnd: SpaceSemanticToken { Self.mockThemeChipSpace }

OUDS/Core/Themes/Orange/Tests/Values/ComponentTokens/MockTheme/MockTheme+AllTagComponentTokens.swift

+55-3
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,66 @@ final class MockThemeTagComponentTokenProvider: OrangeThemeTagComponentTokensPro
2525
// MARK: - Mocks and setup
2626

2727
static let mockThemeTagColor = MultipleColorSemanticTokens("#00FF00")
28+
static let mockThemeTagSize: SizeSemanticToken = 123
29+
static let mockThemeTagSpace: SizeSemanticToken = 456
30+
static let mockThemeTagBorderRadius: BorderRadiusSemanticToken = 666
31+
static let mockThemeTagBorderWidth: BorderWidthSemanticToken = 999
2832

29-
override public init(colors: AllColorSemanticTokensProvider?) {
30-
super.init(colors: colors)
33+
override public init(sizes: AllSizeSemanticTokensProvider?,
34+
borders: AllBorderSemanticTokensProvider?,
35+
colors: AllColorSemanticTokensProvider?,
36+
spaces: AllSpaceSemanticTokensProvider?) {
37+
super.init(sizes: sizes, borders: borders, colors: colors, spaces: spaces)
3138
}
3239

3340
// MARK: - Tag component tokens
3441

35-
override public var tagColorBgReminder: MultipleColorSemanticTokens { Self.mockThemeTagColor }
42+
// MARK: - Borders
43+
44+
override public var tagBorderRadiusPill: BorderRadiusSemanticToken { Self.mockThemeTagBorderRadius }
45+
override public var tagBorderWidthDefault: BorderWidthSemanticToken { Self.mockThemeTagBorderWidth }
46+
override public var tagBorderWidthDefaultInteraction: BorderWidthSemanticToken { Self.mockThemeTagBorderWidth }
47+
48+
// MARK: - Colors
49+
50+
override public var tagColorBgEnabled: MultipleColorSemanticTokens { Self.mockThemeTagColor }
51+
override public var tagColorBgFocus: MultipleColorSemanticTokens { Self.mockThemeTagColor }
52+
override public var tagColorBgHover: MultipleColorSemanticTokens { Self.mockThemeTagColor }
53+
override public var tagColorBgPressed: MultipleColorSemanticTokens { Self.mockThemeTagColor }
54+
override public var tagColorBorderDisabled: MultipleColorSemanticTokens { Self.mockThemeTagColor }
55+
override public var tagColorBorderEnabled: MultipleColorSemanticTokens { Self.mockThemeTagColor }
56+
override public var tagColorBorderFocus: MultipleColorSemanticTokens { Self.mockThemeTagColor }
57+
override public var tagColorBorderHover: MultipleColorSemanticTokens { Self.mockThemeTagColor }
58+
override public var tagColorBorderPressed: MultipleColorSemanticTokens { Self.mockThemeTagColor }
59+
override public var tagColorContentDisabled: MultipleColorSemanticTokens { Self.mockThemeTagColor }
60+
override public var tagColorContentEnabled: MultipleColorSemanticTokens { Self.mockThemeTagColor }
61+
override public var tagColorContentFocus: MultipleColorSemanticTokens { Self.mockThemeTagColor }
62+
override public var tagColorContentHover: MultipleColorSemanticTokens { Self.mockThemeTagColor }
63+
override public var tagColorContentPressed: MultipleColorSemanticTokens { Self.mockThemeTagColor }
64+
65+
// MARK: - Sizes
66+
67+
override public var tagSizeIconMedium: SizeSemanticToken { Self.mockThemeTagSize }
68+
override public var tagSizeIconSmall: SizeSemanticToken { Self.mockThemeTagSize }
69+
override public var tagSizeMinHeightMedium: SizeSemanticToken { Self.mockThemeTagSize }
70+
override public var tagSizeMinHeightSmall: SizeSemanticToken { Self.mockThemeTagSize }
71+
override public var tagSizeMinWidthMedium: SizeSemanticToken { Self.mockThemeTagSize }
72+
override public var tagSizeMinWidthSmall: SizeSemanticToken { Self.mockThemeTagSize }
73+
74+
// MARK: - Spaces
75+
76+
override public var tagSpaceColumnGapColumnGapMedium: SpaceSemanticToken { Self.mockThemeTagSpace }
77+
override public var tagSpaceColumnGapColumnGapSmall: SpaceSemanticToken { Self.mockThemeTagSpace }
78+
override public var tagSpacePaddingBlockMedium: SpaceSemanticToken { Self.mockThemeTagSpace }
79+
override public var tagSpacePaddingBlockSmall: SpaceSemanticToken { Self.mockThemeTagSpace }
80+
override public var tagSpacePaddingInlineIconEndMedium: SpaceSemanticToken { Self.mockThemeTagSpace }
81+
override public var tagSpacePaddingInlineIconEndSmall: SpaceSemanticToken { Self.mockThemeTagSpace }
82+
override public var tagSpacePaddingInlineIconStartMedium: SpaceSemanticToken { Self.mockThemeTagSpace }
83+
override public var tagSpacePaddingInlineIconStartSmall: SpaceSemanticToken { Self.mockThemeTagSpace }
84+
override public var tagSpacePaddingInlineLabelEndMedium: SpaceSemanticToken { Self.mockThemeTagSpace }
85+
override public var tagSpacePaddingInlineLabelEndSmall: SpaceSemanticToken { Self.mockThemeTagSpace }
86+
override public var tagSpacePaddingInlineLabelStartMedium: SpaceSemanticToken { Self.mockThemeTagSpace }
87+
override public var tagSpacePaddingInlineLabelStartSmall: SpaceSemanticToken { Self.mockThemeTagSpace }
3688
}
3789

3890
// swiftlint:enable required_deinit

OUDS/Core/Themes/Orange/Tests/Values/ComponentTokens/ThemeOverrideOfChipComponentTokensTests.swift

+5-5
Original file line numberDiff line numberDiff line change
@@ -131,11 +131,6 @@ struct ThemeOverrideOfChipComponentTokensTests {
131131
#expect(inheritedTheme.chip.chipColorBgFocus == MockThemeChipComponentTokenProvider.mockThemeChipColor)
132132
}
133133

134-
@Test func inheritedThemeCanOverrideChipComponentTokenColorBorderEnabled() throws {
135-
#expect(inheritedTheme.chip.chipColorBorderEnabled != abstractTheme.chip.chipColorBorderEnabled)
136-
#expect(inheritedTheme.chip.chipColorBorderEnabled == MockThemeChipComponentTokenProvider.mockThemeChipColor)
137-
}
138-
139134
@Test func inheritedThemeCanOverrideChipComponentTokenColorBorderHover() throws {
140135
#expect(inheritedTheme.chip.chipColorBorderHover != abstractTheme.chip.chipColorBorderHover)
141136
#expect(inheritedTheme.chip.chipColorBorderHover == MockThemeChipComponentTokenProvider.mockThemeChipColor)
@@ -156,6 +151,11 @@ struct ThemeOverrideOfChipComponentTokensTests {
156151
#expect(inheritedTheme.chip.chipColorBorderSelected == MockThemeChipComponentTokenProvider.mockThemeChipColor)
157152
}
158153

154+
@Test func inheritedThemeCanOverrideChipComponentTokenColorBorderUnselected() throws {
155+
#expect(inheritedTheme.chip.chipColorBorderUnselected != abstractTheme.chip.chipColorBorderUnselected)
156+
#expect(inheritedTheme.chip.chipColorBorderUnselected == MockThemeChipComponentTokenProvider.mockThemeChipColor)
157+
}
158+
159159
@Test func inheritedThemeCanOverrideChipComponentTokenColorBorderFocus() throws {
160160
#expect(inheritedTheme.chip.chipColorBorderFocus != abstractTheme.chip.chipColorBorderFocus)
161161
#expect(inheritedTheme.chip.chipColorBorderFocus == MockThemeChipComponentTokenProvider.mockThemeChipColor)

0 commit comments

Comments
 (0)