Skip to content

Commit 3b492ef

Browse files
committed
feat: restore multiple checkbox and add missing properties
1 parent 04c9eef commit 3b492ef

File tree

5 files changed

+22
-3
lines changed

5 files changed

+22
-3
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
# 2.2.3
2+
- Add missing properties `select` in select commander entry
3+
- Fix multiple behaviour instead of single behaviour in `checkbox` component
4+
- Enhance `info` logger method
5+
16
# 2.2.2
27
- Remove `createSpace` method in `ask` component
38

lib/src/application/components/checkbox.dart

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,11 @@ final class Checkbox<T>
148148

149149
void _onSelect() {
150150
if (_multiple) {
151-
_selectedOptions.add(_currentIndex);
151+
if (_selectedOptions.contains(_currentIndex)) {
152+
_selectedOptions.remove(_currentIndex);
153+
} else {
154+
_selectedOptions.add(_currentIndex);
155+
}
152156
} else {
153157
_selectedOptions.clear();
154158
_selectedOptions.add(_currentIndex);

lib/src/commander.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,10 +75,12 @@ class Commander with TerminalTools {
7575
{T? defaultValue,
7676
required List<T> options,
7777
String placeholder = '',
78+
int displayCount = 5,
7879
String Function(T)? onDisplay}) =>
7980
Select<T>(_terminal,
8081
message: message,
8182
defaultValue: defaultValue,
83+
displayCount: displayCount,
8284
options: options,
8385
placeholder: placeholder,
8486
onDisplay: onDisplay)

lib/src/domains/models/commander_theme.dart

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,15 @@ final class CommanderTheme {
3636
}
3737

3838
String infoFormatter(String? message) {
39-
final buffer = StringBuffer()..writeAnsi(Print(' $message'));
39+
final buffer = StringBuffer()
40+
..writeAnsiAll([
41+
SetStyles(Style.foreground(Color.green)),
42+
Print('ℹ'),
43+
SetStyles.reset,
44+
Print(' $message'),
45+
SetStyles.reset,
46+
]);
47+
4048
return buffer.toString();
4149
}
4250

pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: commander_ui
22
description: Commander is a Dart library for creating user interfaces within the terminal.
3-
version: 2.2.2
3+
version: 2.2.3
44
repository: https://github.com/LeadcodeDev/commander
55

66
topics:

0 commit comments

Comments
 (0)