Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 1.2.0 #851

Merged
merged 29 commits into from
Aug 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
9fee3ba
Update for next release
pylapp Mar 8, 2024
90fce65
Improve documentation and CICD pipeline (#792)
pylapp Mar 11, 2024
d7f6505
Docs: Fix back to top issues (#785)
louismaximepiton Mar 11, 2024
83feaa5
Update dependency SwiftFormat/CLI to v0.53.4 (#771)
renovate[bot] Mar 11, 2024
694d75c
Update accessibility statement HTML page (#793)
pya35 Mar 28, 2024
bf5f650
Update dependency SwiftFormat/CLI to v0.53.5 (#794)
renovate[bot] Mar 28, 2024
9291f72
[#720] The main color names visible on the screen are not vocalized (…
ludovic35 Mar 28, 2024
b1de321
feat(#798): add privacy manifest for user defaults use (#799)
pylapp Mar 29, 2024
1de75f2
[#798] Update privacy manifest about user defaults use (#800)
pylapp Apr 2, 2024
b890eb4
[#801] Rename "Recirculation" module to "MoreApps" module, and use "E…
ludovic35 Apr 9, 2024
79402c7
[Doc] Fix unintended scroll in DSM documentation (#802)
louismaximepiton Apr 9, 2024
7482732
[#223] Add documentation versioning (#805)
ludovic35 Apr 10, 2024
132b5ac
[#759] Update components and modules documentation to add a descripti…
ludovic35 Apr 11, 2024
4840c6d
Remove useless .xcode-version file
pylapp Apr 15, 2024
526eb6a
Freeze Xcode 15.2 version for CI/CD builds
pylapp Apr 15, 2024
b42d7de
Add more details about Git tags for CI/CD builds
pylapp Apr 15, 2024
d45f6df
Move files to .github folder instead of keeping them in root of repos…
pylapp Apr 15, 2024
5f7666b
[815] Wrong name of ModeApprs module in documentation (#816)
ludovic35 May 21, 2024
239e19a
[P1] 760 a11y buttons component group labels and buttons (#824)
Tayebsed93 May 22, 2024
f2c1655
[P1] 724 title is the same for both variants progress bar demo title …
Tayebsed93 May 27, 2024
cd395b7
[P1] 732 target size is too small for info and chevron components dif…
Tayebsed93 May 27, 2024
8493377
[P1] bug a11y module about title header (#828)
Tayebsed93 May 27, 2024
1980074
demo app : add localizable title text (#831)
Tayebsed93 Jun 5, 2024
4df4d8a
demo app : add accessibility title (#833)
Tayebsed93 Jun 6, 2024
a39238d
app demo : add text libelle slider (#834)
Tayebsed93 Jun 6, 2024
3ce0519
demo app : add accessibility combine and state (#836)
Tayebsed93 Jun 10, 2024
a60e4ad
Update more apps module and changelog" (#841)
ludovic35 Jun 20, 2024
90a2ee0
[#839] Update accessibility statement files (#842)
ludovic35 Jun 20, 2024
d151479
Prepare release 1.2.0 (#849)
ludovic35 Aug 23, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
38 changes: 38 additions & 0 deletions DEVELOP.md → .github/DEVELOP.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,12 @@ brew install peripheryapp/periphery/periphery

# For jq (https://jqlang.github.io/jq/)
brew install jq

# For gitleaks (https://github.com/gitleaks/gitleaks)
brew install gitleaks

# For licenseplist (https://github.com/mono0926/LicensePlist)
brew install licenseplist
```

## Build OrangeDesignSystemDemo
Expand Down Expand Up @@ -133,3 +139,35 @@ gitleaks detect -v -l debug --source .
```

Note that we face some issues about the use of _Gitleaks GitHub Action_ and _Gitleaks_ as CLI command, for fur further details see [#131](https://github.com/gitleaks/gitleaks-action/issues/131), [#132](https://github.com/gitleaks/gitleaks-action/issues/132) and [#1331](https://github.com/gitleaks/gitleaks/issues/1331).

## Update dependencies

Sometimes dependencies should be updated, with for example warnings of [Renovate bot](https://github.com/apps/renovate).
Here is the list of files to update to keep the project clean:
- CHANGELOG (to note for releases the update of the version)
- THIRD-PARTY (because we list all third-party components)
- Of course, update and save in tyout VSC the new states of the Podfile, Package.swift or Gemfile (and do not forget locks)
- doctor.sh (to notify to newcomers the version they should have when using this doctor script)
- And update the resources embeded in the demo app bundle settings:

```shell
license-plist --add-version-numbers
```

Maybe yo will need to update your pods repo before if you updated a Pod:

```shell
bundle exec pod install --repo-update
```

## Third-party components declaration

It is a good practice to have in the app, e.g. in the app settings, the list of third-party components in use, at least for the app.
The [LicensePlist](https://github.com/mono0926/LicensePlist) project helps to get dependencies
and produce files to place inside the _Settings.bundle_ file:

To use it:

```shell
license-plist --add-version-numbers
```
31 changes: 31 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,37 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [1.2.0](https://github.com/Orange-OpenSource/ods-ios/compare/1.1.0...1.2.0) - 2024-08-23

### Added

- [Doc] Add Documentation versionning ([#223](https://github.com/Orange-OpenSource/ods-ios/issues/223))
- [DemoApp] Add privacy manifest ([#798](https://github.com/Orange-OpenSource/ods-ios/issues/798))

### Changed

- [DemoApp] Update accessibility statement file ([#839](https://github.com/Orange-OpenSource/ods-ios/issues/839))
- [SDK] Update More Apps to use ListItems with subtile on two lines ([#651](https://github.com/Orange-OpenSource/ods-ios/issues/651))
- [Doc] Wrong name of MoreApprs module in documentation ([#815](https://github.com/Orange-OpenSource/ods-ios/issues/815))
- [Doc] Update components and modules documentation to add a description of the API ([#759](https://github.com/Orange-OpenSource/ods-ios/issues/759))
- [DemoApp/SDK] Rename "Recirculation" module to "MoreApps", and use "EmptyState" assets from Theme bundle ([#801](https://github.com/Orange-OpenSource/ods-ios/issues/801))
- [Tooling] Update dependency SwiftFormat/CLI to v0.53.5
- [DemoApp] The main color names, visible on the screen are not vocalized ([#720](https://github.com/Orange-OpenSource/ods-ios/issues/720))
- [Doc] Improve release documentation
- [Tooling] Define ZIP archive for nightly and production builds (for artifacts storage in CI/CD pipelines)

### Fixed

- [DemoApp] A11y - Buttons component : group labels and buttons and state ([#835](https://github.com/Orange-OpenSource/ods-ios/issues/835))
- [DemoApp] A11y - Slider has no visible text ([#832](https://github.com/Orange-OpenSource/ods-ios/issues/832))
- [DemoApp] A11y - Irrelevant Colour palette page title: page title is "Palette" ([#730](https://github.com/Orange-OpenSource/ods-ios/issues/730))
- [DemoApp] A11y - Bars-navigation component accessibility issues ([#830](https://github.com/Orange-OpenSource/ods-ios/issues/830))
- [DemoApp] A11y - Target size is too small for info and chevron components, difficult to tap without mistake. ([#732](https://github.com/Orange-OpenSource/ods-ios/issues/732))
- [DemoApp] A11y - Buttons component : group labels and buttons ([#760](https://github.com/Orange-OpenSource/ods-ios/issues/760))
- [DemoApp] A11y - Title is the same for both variants "Progress bar demo", title must be unique. ([#724](https://github.com/Orange-OpenSource/ods-ios/issues/724))
- [DemoApp] A11y - Buttons component : group labels and buttons ([#760](https://github.com/Orange-OpenSource/ods-ios/issues/760))
- [DemoApp/SDK] A11y - Module - About : Title header ([#827](https://github.com/Orange-OpenSource/ods-ios/issues/727))

## [1.1.0](https://github.com/Orange-OpenSource/ods-ios/compare/1.0.0...1.1.0) - 2024-03-08

### Changed
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,12 +82,6 @@ public struct InnovationCupThemeFactory {
// Fonts: use the default ones
// theme.font = { style in }

// Images for empty states
theme.emptyStateImages = ODSThemeEmptyStateImages(error: Image(decorative: "il_emptyStateError (Innovation Cup)", bundle: .innovationCupTheme),
firstUse: Image(decorative: "il_emptyStateFirstUse (Innovation Cup)", bundle: .innovationCupTheme),
noData: Image(decorative: "il_emptyStateNoData (Innovation Cup)", bundle: .innovationCupTheme),
userCleared: Image(decorative: "il_emptyStateUserCleared (Innovation Cup)", bundle: .innovationCupTheme))

theme.bundle = Bundle.innovationCupTheme

self.theme = theme
Expand Down
35 changes: 19 additions & 16 deletions NOTICE.txt
Original file line number Diff line number Diff line change
Expand Up @@ -36,19 +36,16 @@ Any use or displaying shall constitute an infringement under intellectual proper

## Orange Theme

./OrangeTheme/Sources/OrangeTheme/Resources/Assets.xcassets/EmptyState/il_emptyState.imageset/il_emptyState.svg
./OrangeTheme/Sources/OrangeTheme/Resources/Assets.xcassets/EmptyState/il_emptyStateNoData.imageset/il_emptyStateNoData.svg
./OrangeTheme/Sources/OrangeTheme/Resources/Assets.xcassets/EmptyState/il_emptyStateFirstUse.imageset/il_emptyStateFirstUse.svg
./OrangeTheme/Sources/OrangeTheme/Resources/Assets.xcassets/EmptyState/il_emptyStateError.imageset/il_emptyStateError.svg
./OrangeTheme/Sources/OrangeTheme/Resources/Assets.xcassets/EmptyState/il_emptyStateUserCleared.imageset/il_yoga_man.svg
./OrangeTheme/Sources/OrangeTheme/Resources/Assets.xcassets/EmptyState/il_emptyStateNoData.imageset/il_emptyStateNoData.svg
./OrangeTheme/Sources/OrangeTheme/Resources/Assets.xcassets/EmptyState/il_emptyStateFirstUse.imageset/il_emptyStateFirstUse.svg

## Innovation Cup Theme

./InnovationCupTheme/Sources/InnovationCupTheme/Resources/Assets.xcassets/EmptyState/il_emptyStateError (Innovation Cup).imageset/Error.svg
./InnovationCupTheme/Sources/InnovationCupTheme/Resources/Assets.xcassets/EmptyState/il_emptyStateUserCleared (Innovation Cup).imageset/UserClear.svg
./InnovationCupTheme/Sources/InnovationCupTheme/Resources/Assets.xcassets/EmptyState/il_emptyStateNoData (Innovation Cup).imageset/NoData.svg
./InnovationCupTheme/Sources/InnovationCupTheme/Resources/Assets.xcassets/EmptyState/il_emptyStateFirstUse (Innovation Cup).imageset/FirstUser.svg
./InnovationCupTheme/Sources/InnovationCupTheme/Resources/Assets.xcassets/EmptyState/il_emptyState (Innovation Cup).imageset/il_emptyState_generic.svg
./InnovationCupTheme/Sources/InnovationCupTheme/Resources/Assets.xcassets/EmptyState/il_emptyStateError.imageset/Error.svg
./InnovationCupTheme/Sources/InnovationCupTheme/Resources/Assets.xcassets/EmptyState/il_emptyStateUserCleared.imageset/UserClear.svg
./InnovationCupTheme/Sources/InnovationCupTheme/Resources/Assets.xcassets/EmptyState/il_emptyStateNoData.imageset/NoData.svg
./InnovationCupTheme/Sources/InnovationCupTheme/Resources/Assets.xcassets/EmptyState/il_emptyStateFirstUse.imageset/FirstUser.svg

# Demo app

Expand Down Expand Up @@ -103,18 +100,20 @@ Any use or displaying shall constitute an infringement under intellectual proper
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/appTabBar/component-atom_32.imageset/component-atom_32.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/appTabBar/Module-molecule_32.imageset/Module-molecule_32.svg

./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Innovation Cup/il_recirculation (Innovation Cup).imageset/il_recirculation_generic.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Innovation Cup/il_lists (Innovation Cup).imageset/il_lists_generic.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Innovation Cup/il_about (Innovation Cup).imageset/il_about_generic.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Innovation Cup/il_cardList (Innovation Cup).imageset/il_card_list_generic.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Innovation Cup/il_cardList (Innovation Cup).imageset/il_cardList_generic.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Innovation Cup/il_emptyState.imageset/il_emptyState.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Innovation Cup/il_lists (Innovation Cup).imageset/il_lists_generic.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Innovation Cup/il_moreApps (Innovation Cup).imageset/il_moreApps_generic.svg

./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Orange/il_recirculation.imageset/il_recirculation.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Orange/il_lists.imageset/il_lists.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Orange/About/ic_folderFavourite.imageset/ic_folderFavourite.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Orange/About/ic_tools.imageset/ic_tools.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Orange/About/ic_subtitles.imageset/ic_subtitles.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Orange/About/il_about.imageset/il_about.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Orange/il_cardList.imageset/il_card_list.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Orange/il_about.imageset/il_about.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Orange/il_cardList.imageset/il_cardList.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Orange/il_emptyState.imageset/il_emptyState.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Orange/il_lists.imageset/il_lists.svg
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/Modules/Orange/il_moreApps.imageset/il_moreApps.svg

./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/AppIconDev.appiconset/[email protected]
./OrangeDesignSystemDemo/OrangeDesignSystemDemo/Resources/Assets.xcassets/AppIconDev.appiconset/[email protected]
Expand Down Expand Up @@ -177,6 +176,10 @@ Any use or displaying shall constitute an infringement under intellectual proper

# Documentation

./docs/1.2.0/accessibilityStatement/favicon.ico
./docs/1.2.0/accessibilityStatement/orange-logo.svg
./docs/accessibilityStatement/orange-logo.svg
./docs/accessibilityStatement/favicon.ico
./docs/components/images/buttons_layout_small_with_icon.png
./docs/components/images/list_items_selection_circle_light.png
./docs/components/images/buttons_functional_negative.png
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,8 @@ public struct ODSCardSmall: View {
/// - title: Title displayed into the card.
/// - imageSource: Image from source [ODSImage.Source] displayed into the card.
/// - subtitle: Optional subtitle displayed into the card,d efault set to `nil`
/// - titleAccessibleLineLimit: The line limit to apply to the title is size category is accessibility category, default set to `nil`
/// - subtitleAccessibleLineLimit: The line limit to apply to the subtitle is size category is accessibility category, default set to `nil`
/// - titleAccessibleLineLimit: The line limit to apply to the title if size category is accessibility category, default set to `nil`
/// - subtitleAccessibleLineLimit: The line limit to apply to the subtitle if size category is accessibility category, default set to `nil`
public init(title: Text, imageSource: ODSImage.Source, subtitle: Text? = nil, titleAccessibleLineLimit: Int? = nil, subtitleAccessibleLineLimit: Int? = nil) {
self.title = title
self.subtitle = subtitle
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@ public struct ODSFilterChipPicker<Value>: View where Value: Hashable {
VStack(alignment: .leading, spacing: ODSSpacing.s) {
title?
.odsFont(.headlineS)
.accessibilityAddTraits(.isHeader)
.frame(maxWidth: .infinity, alignment: .leading)
.padding(.horizontal, ODSSpacing.m)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ struct TrailingView: View {

ODSIconButton(image: Image(systemName: "info.circle"), action: action)
.foregroundColor(theme.componentColors.accent)
.frame(width: height, height: height)
.buttonStyle(PlainButtonStyle())
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ public struct ODSListItem: View {
/// - title: The primary text of the list item
/// - subtitle: The secondary text of the list item (optional)
/// - subtitleNumberOfLines: If `subtitle` is provided, it is possible to limit the text
/// to 1 line or 2 lines. If set to nil, no restriction is applied (be carefull: this is not design compliant).
/// to 1 line or 2 lines. If set to nil, no restriction is applied (be careful: this is not design compliant).
/// - leading: The leading icon of the list item (optional)
///
public init(
Expand Down Expand Up @@ -205,7 +205,7 @@ public struct ODSListItem: View {
/// - title: The primary text of the list item
/// - subtitle: The secondary text of the list item (optional)
/// - subtitleNumberOfLines: If `subtitle` is provided, it is possible to limit the text
/// to 1 line or 2 lines. If set to nil, no restriction is applied (be carefull: this is not design compliant).
/// to 1 line or 2 lines. If set to nil, no restriction is applied (be careful: this is not design compliant).
/// - leading: The leading icon of the list item (optional)
/// - trailingText The text on trailing
/// - trailingIButtonAction: The action the i button on trailing
Expand All @@ -227,7 +227,7 @@ public struct ODSListItem: View {
/// - title: The primary text of the list item
/// - subtitle: The secondary text of the list item (optional)
/// - subtitleNumberOfLines: If `subtitle` is provided, it is possible to limit the text
/// to 1 line or 2 lines. If set to nil, no restriction is applied (be carefull: this is not design compliant).
/// to 1 line or 2 lines. If set to nil, no restriction is applied (be careful: this is not design compliant).
/// - leading: The leading icon of the list item (optional)
/// - trailingText The text on trailing
/// - trailingToggleIsOn: The binding to a property that determines whether the toggle is on or off.
Expand All @@ -249,7 +249,7 @@ public struct ODSListItem: View {
/// - title: The primary text of the list item
/// - subtitle: The secondary text of the list item (optional)
/// - subtitleNumberOfLines: If `subtitle` is provided, it is possible to limit the text
/// to 1 line or 2 lines. If set to nil, no restriction is applied (be carefull: this is not design compliant).
/// to 1 line or 2 lines. If set to nil, no restriction is applied (be carefull: this is not design compliant).
/// - leading: The leading icon of the list item (optional)
/// - trailingText The text on trailing
/// - trailingCheckmarkIsSelected: The flag to indicate if checkmark is visbile or not.
Expand All @@ -270,7 +270,7 @@ public struct ODSListItem: View {
/// - title: The primary text of the list item
/// - subtitle: The secondary text of the list item (optional)
/// - subtitleNumberOfLines: If `subtitle` is provided, it is possible to limit the text
/// to 1 line or 2 lines. If set to nil, no restriction is applied (be carefull: this is not design compliant).
/// to 1 line or 2 lines. If set to nil, no restriction is applied (be careful: this is not design compliant).
/// - leading: The leading icon of the list item (optional)
/// - trailing: The trailing element
///
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,10 @@

import SwiftUI

/// Configuration to add in list the item that opens the apps recirculation view.
/// Configuration to add in list the item that opens the __ODSMoreAppsView__.
///
/// By default, this item is placed between legal information item and rate the app item. That can be changed with new priority set in the configuration.
public struct ODSRecirculationItemConfig: ODSAboutListItemConfig {
public struct ODSMoreAppsItemConfig: ODSAboutListItemConfig {

// =======================
// MARK: Stored Properties
Expand All @@ -39,15 +39,15 @@ public struct ODSRecirculationItemConfig: ODSAboutListItemConfig {
/// - cacheAppsIcons: True (default) to use app cache to save locally the apps stores icons, false otherwise
/// - enableHaptics: True (default) to enable vibrations with the module, false to disable
/// - priority: Priority to adjust the position of the item in the list.
public init(dataSource: ODSRecirculationDataSource,
public init(dataSource: ODSMoreAppsDataSource,
flattenApps: Bool = false,
cacheAppsIcons: Bool = true,
enableHaptics: Bool = true,
priority: ODSAboutListItemPriority = .moreApps)
{
title = "modules.about.recirculation.title".🌐
title = "modules.about.moreApps.title".🌐
icon = Image("ic_mobile_apps", bundle: Bundle.ods)
let destination = ODSRecirculationView(
let destination = ODSMoreAppsView(
dataSource: dataSource,
flattenApps: flattenApps,
cacheAppsIcons: cacheAppsIcons,
Expand Down
Loading