Skip to content

Commit e00a5d5

Browse files
committed
Merge branch 'develop' into tokenator-update-tokens-20260505120328
# Conflicts: # app/CHANGELOG.md # ouds_core/CHANGELOG.md # ouds_global_raw_tokens/CHANGELOG.md
2 parents 0e7bc7c + 1657cc3 commit e00a5d5

36 files changed

Lines changed: 418 additions & 97 deletions

app/CHANGELOG.md

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,19 +3,28 @@
33
All notable changes to this project will be documented in this file.
44
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
55
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6-
## [Unreleased](https://github.com/Orange-OpenSource/ouds-flutter/compare/1.2.0...develop)
6+
7+
## [Unreleased](https://github.com/Orange-OpenSource/ouds-flutter/compare/1.3.0...develop)
8+
### Added
9+
### Changed
10+
- [DemoApp][Library] update tokens 2.4.0 ([#726](https://github.com/Orange-OpenSource/ouds-flutter/issues/726))
11+
12+
### Fixed
13+
14+
## [1.3.0](https://github.com/Orange-OpenSource/ouds-flutter/compare/1.2.0...1.3.0) - 2026-05-08
715
### Added
816
- [DemoApp][Library] Create component - `Bottom sheet` ([#671](https://github.com/Orange-OpenSource/ouds-flutter/issues/671))
917
- [DemoApp][Library] Create component - `Alert message` ([#670](https://github.com/Orange-OpenSource/ouds-flutter/issues/670))
1018
- [DemoApp][Library] Create component - `Inline alert` ([#485](https://github.com/Orange-OpenSource/ouds-flutter/issues/485))
1119
- [Library] `Filter chip` Apply high contrast theme to filter chip (selected) ([#494](https://github.com/Orange-OpenSource/ouds-flutter/issues/494))
1220

1321
### Changed
14-
- [DemoApp][Library] update tokens 2.4.0 ([#726](https://github.com/Orange-OpenSource/ouds-flutter/issues/726))
22+
- [DemoApp][Library] `Pin code input` Add optional `keyboardType` parameter (numeric/alphanumeric) ([#733](https://github.com/Orange-OpenSource/ouds-flutter/issues/733))
1523
- [Library] update tokens 1.9.0 - Component Bullet List ([#710](https://github.com/Orange-OpenSource/ouds-flutter/issues/710))
1624
- [Library] update tokens 1.9.0 - Component Alert ([#672](https://github.com/Orange-OpenSource/ouds-flutter/issues/672))
1725

1826
### Fixed
27+
- [Library] `Pin code input` deletion requires two backspace presses on a typed digit ([#735](https://github.com/Orange-OpenSource/ouds-flutter/issues/735))
1928
- [Library] `orange compact` some components are not displayed correctly ([#630](https://github.com/Orange-OpenSource/ouds-flutter/issues/630))
2029
- [Library] `Password Input` Change the accessible name on show/hide button ([#599](https://github.com/Orange-OpenSource/ouds-flutter/issues/599))
2130
- [Library] `Password input` Hidden password is clearly read by screen readers([#488](https://github.com/Orange-OpenSource/ouds-flutter/issues/488))

app/ios/Podfile.lock

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ PODS:
44
- Flutter (1.0.0)
55
- package_info_plus (0.4.5):
66
- Flutter
7+
- path_provider_foundation (0.0.1):
8+
- Flutter
9+
- FlutterMacOS
710
- url_launcher_ios (0.0.1):
811
- Flutter
912
- webview_flutter_wkwebview (0.0.1):
@@ -14,6 +17,7 @@ DEPENDENCIES:
1417
- app_settings (from `.symlinks/plugins/app_settings/ios`)
1518
- Flutter (from `Flutter`)
1619
- package_info_plus (from `.symlinks/plugins/package_info_plus/ios`)
20+
- path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`)
1721
- url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`)
1822
- webview_flutter_wkwebview (from `.symlinks/plugins/webview_flutter_wkwebview/darwin`)
1923

@@ -24,6 +28,8 @@ EXTERNAL SOURCES:
2428
:path: Flutter
2529
package_info_plus:
2630
:path: ".symlinks/plugins/package_info_plus/ios"
31+
path_provider_foundation:
32+
:path: ".symlinks/plugins/path_provider_foundation/darwin"
2733
url_launcher_ios:
2834
:path: ".symlinks/plugins/url_launcher_ios/ios"
2935
webview_flutter_wkwebview:
@@ -33,6 +39,7 @@ SPEC CHECKSUMS:
3339
app_settings: 58017cd26b604ae98c3e65acbdd8ba173703cc82
3440
Flutter: cabc95a1d2626b1b06e7179b784ebcf0c0cde467
3541
package_info_plus: c0502532a26c7662a62a356cebe2692ec5fe4ec4
42+
path_provider_foundation: 0b743cbb62d8e47eab856f09262bb8c1ddcfe6ba
3643
url_launcher_ios: bb13df5870e8c4234ca12609d04010a21be43dfa
3744
webview_flutter_wkwebview: 29eb20d43355b48fe7d07113835b9128f84e3af4
3845

app/lib/l10n/gen/ouds_flutter_app_localizations.dart

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1272,6 +1272,24 @@ abstract class AppLocalizations {
12721272
/// **'Hidden Password'**
12731273
String get app_components_pinCodeInput_hidden_password_label;
12741274

1275+
/// No description provided for @app_components_pinCodeInput_keyboardType_label.
1276+
///
1277+
/// In en, this message translates to:
1278+
/// **'Keyboard type'**
1279+
String get app_components_pinCodeInput_keyboardType_label;
1280+
1281+
/// No description provided for @app_components_pinCodeInput_keyboardType_numeric_label.
1282+
///
1283+
/// In en, this message translates to:
1284+
/// **'Numeric'**
1285+
String get app_components_pinCodeInput_keyboardType_numeric_label;
1286+
1287+
/// No description provided for @app_components_pinCodeInput_keyboardType_alphanumeric_label.
1288+
///
1289+
/// In en, this message translates to:
1290+
/// **'Alphanumeric'**
1291+
String get app_components_pinCodeInput_keyboardType_alphanumeric_label;
1292+
12751293
/// No description provided for @app_components_navigationBar_label.
12761294
///
12771295
/// In en, this message translates to:

app/lib/l10n/gen/ouds_flutter_app_localizations_ar.dart

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -664,6 +664,17 @@ class AppLocalizationsAr extends AppLocalizations {
664664
String get app_components_pinCodeInput_hidden_password_label =>
665665
'Hidden Password';
666666

667+
@override
668+
String get app_components_pinCodeInput_keyboardType_label => 'Keyboard type';
669+
670+
@override
671+
String get app_components_pinCodeInput_keyboardType_numeric_label =>
672+
'Numeric';
673+
674+
@override
675+
String get app_components_pinCodeInput_keyboardType_alphanumeric_label =>
676+
'Alphanumeric';
677+
667678
@override
668679
String get app_components_navigationBar_label => 'Bottom Bar';
669680

app/lib/l10n/gen/ouds_flutter_app_localizations_en.dart

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -664,6 +664,17 @@ class AppLocalizationsEn extends AppLocalizations {
664664
String get app_components_pinCodeInput_hidden_password_label =>
665665
'Hidden Password';
666666

667+
@override
668+
String get app_components_pinCodeInput_keyboardType_label => 'Keyboard type';
669+
670+
@override
671+
String get app_components_pinCodeInput_keyboardType_numeric_label =>
672+
'Numeric';
673+
674+
@override
675+
String get app_components_pinCodeInput_keyboardType_alphanumeric_label =>
676+
'Alphanumeric';
677+
667678
@override
668679
String get app_components_navigationBar_label => 'Bottom Bar';
669680

app/lib/l10n/gen/ouds_flutter_app_localizations_fr.dart

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -668,6 +668,17 @@ class AppLocalizationsFr extends AppLocalizations {
668668
String get app_components_pinCodeInput_hidden_password_label =>
669669
'Hidden Password';
670670

671+
@override
672+
String get app_components_pinCodeInput_keyboardType_label => 'Keyboard type';
673+
674+
@override
675+
String get app_components_pinCodeInput_keyboardType_numeric_label =>
676+
'Numeric';
677+
678+
@override
679+
String get app_components_pinCodeInput_keyboardType_alphanumeric_label =>
680+
'Alphanumeric';
681+
671682
@override
672683
String get app_components_navigationBar_label => 'Bottom Bar';
673684

app/lib/l10n/ouds_flutter_en.arb

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -285,6 +285,9 @@
285285
"app_components_pinCodeInput_error_label": "Please enter the verification code.",
286286
"app_components_pinCodeInput_verification_error_label": "Verification failed. Check and enter the correct code.",
287287
"app_components_pinCodeInput_hidden_password_label": "Hidden Password",
288+
"app_components_pinCodeInput_keyboardType_label": "Keyboard type",
289+
"app_components_pinCodeInput_keyboardType_numeric_label": "Numeric",
290+
"app_components_pinCodeInput_keyboardType_alphanumeric_label": "Alphanumeric",
288291

289292
"@_components_navigation_bar": {},
290293
"app_components_navigationBar_label": "Bottom Bar",

app/lib/ui/components/pin_code_input/pin_code_input_code_generator.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import 'package:flutter/material.dart';
1414
import 'package:ouds_flutter_demo/ui/components/pin_code_input/pin_code_input_customization.dart';
1515
import 'package:ouds_flutter_demo/ui/components/pin_code_input/pin_code_input_customization_utils.dart';
16+
import 'package:ouds_flutter_demo/ui/components/pin_code_input/pin_code_input_enum.dart';
1617

1718
class PinCodeInputCodeGenerator {
1819
static String updateCode(BuildContext context) {
@@ -60,6 +61,10 @@ class PinCodeInputCodeGenerator {
6061
props.add(' isOutlined: ${state.hasOutlined},');
6162
}
6263

64+
if (state.selectedKeyboardType != PinCodeKeyboardTypeEnum.numeric) {
65+
props.add(' keyboardType: OudsPinCodeInputKeyboardType.${state.selectedKeyboardType.name},');
66+
}
67+
6368
if (props.isEmpty) {
6469
return "digitInputDecoration: OudsDigitInputDecoration(),";
6570
}

app/lib/ui/components/pin_code_input/pin_code_input_customization.dart

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ class PinCodeInputCustomizationState extends CustomizationWidgetState<PinCodeInp
4242
late final PinCodePlaceholderTextState pinCodePlaceholderTextState = PinCodePlaceholderTextState(setState);
4343
late final OutlinedState outlinedState = OutlinedState(setState);
4444
late final ConstrainedMaxWidthState constrainedMaxWidthState = ConstrainedMaxWidthState(setState);
45+
late final PinCodeKeyboardTypeState pinCodeKeyboardTypeState = PinCodeKeyboardTypeState(setState);
4546

4647
// These need context, so they stay as late fields
4748
late final PinCodeHelperTextState pinCodeHelperTextState;
@@ -102,6 +103,10 @@ class PinCodeInputCustomizationState extends CustomizationWidgetState<PinCodeInp
102103
bool get hasOutlined => outlinedState.value;
103104
set hasOutlined(bool value) => outlinedState.value = value;
104105

106+
// Proxy getters and setters to expose the keyboard type selection.
107+
PinCodeKeyboardTypeEnum get selectedKeyboardType => pinCodeKeyboardTypeState.selected;
108+
set selectedKeyboardType(PinCodeKeyboardTypeEnum value) => pinCodeKeyboardTypeState.selected = value;
109+
105110
@override
106111
Widget build(BuildContext context) {
107112
return _PinCodeInputCustomization(
@@ -261,3 +266,25 @@ class OutlinedState {
261266
});
262267
}
263268
}
269+
270+
/// Keyboard Type State Management
271+
class PinCodeKeyboardTypeState {
272+
PinCodeKeyboardTypeState(this._setState);
273+
274+
final void Function(void Function()) _setState;
275+
276+
final List<PinCodeKeyboardTypeEnum> _list = [
277+
PinCodeKeyboardTypeEnum.numeric,
278+
PinCodeKeyboardTypeEnum.alphanumeric,
279+
];
280+
281+
List<PinCodeKeyboardTypeEnum> get list => _list;
282+
283+
PinCodeKeyboardTypeEnum _selected = PinCodeKeyboardTypeEnum.numeric;
284+
PinCodeKeyboardTypeEnum get selected => _selected;
285+
set selected(PinCodeKeyboardTypeEnum newValue) {
286+
_setState(() {
287+
_selected = newValue;
288+
});
289+
}
290+
}

app/lib/ui/components/pin_code_input/pin_code_input_customization_utils.dart

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,4 +50,14 @@ class PinCodeInputCustomizationUtils {
5050
final label = customizationState.pinCodeErrorText;
5151
return label.isEmpty ? null : label;
5252
}
53+
54+
/// Maps the demo keyboard-type enum to the public [OudsPinCodeInputKeyboardType].
55+
static OudsPinCodeInputKeyboardType getKeyboardType(PinCodeKeyboardTypeEnum value) {
56+
switch (value) {
57+
case PinCodeKeyboardTypeEnum.numeric:
58+
return OudsPinCodeInputKeyboardType.numeric;
59+
case PinCodeKeyboardTypeEnum.alphanumeric:
60+
return OudsPinCodeInputKeyboardType.alphanumeric;
61+
}
62+
}
5363
}

0 commit comments

Comments
 (0)