swiss_army_component 0.5.2
swiss_army_component: ^0.5.2 copied to clipboard
Swiss Army Component: a reusable Flutter component library with widgets, utilities, and theme support. Includes a CLI to help install and use the package in existing apps.
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.5.2 - 2026-03-15 #
Fixed #
- TextField Border Color: Fixed an issue where the
focusedBordercolor was hardcoded toAppColors.primary, ignoring the theme'sfocusedBordercolor or explicitfocusedBorderColorproperty. - TextField Height: Fixed an issue where the
heightparameter passed toAppTextField(and derived widgets) was being ignored. - AppPhoneTextField Consistency: Added
heightandcontentPaddingparameters toAppPhoneTextFieldto ensure visual consistency with regular text fields. DefaultcontentPaddingnow matchesAppTextField.
0.5.1 - 2026-02-10 #
Fixed #
- Nigeria Data Accuracy: Replaced incomplete "City" data for Nigeria with a custom, comprehensive list of all 37 States (including FCT) and 774 official Local Government Areas (LGAs). Selecting "Nigeria" in
CountryDropdownnow automatically sources this corrected data forStateDropdownandCityDropdown.
0.5.0 - 2026-02-03 #
Added #
- SocialButton Enhancements:
- Added support for new providers: X (Twitter), LinkedIn, GitHub, Microsoft, and Discord.
- Added
styleparameter supportingSocialButtonStyle.filled(default),SocialButtonStyle.outlined, andSocialButtonStyle.elevated. - Providers now support theme-aware branding (e.g., Apple/GitHub adapt to light/dark mode).
Fixed #
- BigAppText Theme Inheritance:
BigAppTextnow simply usesAppTextStyle.largewhich inherits fromTheme.of(context).textTheme.bodyLarge, ensuring correct color inheritance. - Tests: Improved test robustness for
widget_test.dartandotp_security_test.dartby disabling noisy debug logs.
0.4.3 - 2026-02-02 #
Fixed #
- Theme Configuration: Fixed an issue where
SACThemeConfigspecific text style overrides (e.g.,bodyLarge,displaySmall) were being ignored and overridden by the default primary text color. Users can now confidently override specific text styles in their theme config.
0.4.2 - 2026-01-23 #
Fixed #
- SocialButton: Added adaptive branding for Facebook. In dark mode, it now switches to a white background with a blue logo, consistent with the Apple login button branding.
0.4.1 - 2026-01-23 #
Changed #
- SocialButton: Added full customization support. Users can now override
bgColor,textColor,iconWidget,iconSize,borderRadius,borderSide,padding,fontSize,fontWeight,elevation, andiconSpacing. Provider defaults are preserved when no overrides are specified.
0.4.0 - 2026-01-23 #
0.3.3 - 2026-01-23 #
Changed #
- Button Elevation: Changed default elevation for
AppElevatedButtonandNormalElevatedButtonfrom2.0to0.0for a flatter, more modern default look.
0.3.2 - 2026-01-23 #
Fixed #
- AppText Font Family Inheritance: Removed hardcoded Poppins font default.
AppTextnow properly inheritsfontFamilyfromTheme.of(context). Users can still use Poppins by setting it in their theme or via thefontFamilyproperty.
0.3.1 - 2026-01-23 #
Fixed #
- AppText Theme Color Inheritance: Removed hardcoded black color default from
AppTextand all derived widgets, allowing proper color inheritance from theme. - Style Merging:
AppTextnow correctly prioritizes explicit properties (likecolor,fontSize) over the providedtextStyle. - Custom Font Support: Added support for non-Google fonts. Providing a
fontFamilynow uses a standardTextStyle, enabling asset-based fonts.
Changed #
- Updated text widgets to behave more predictably when composing styles.
0.3.0 - 2026-01-23 #
Added #
- Comprehensive Theme System: Expanded
SACThemeConfigwith 50+ new properties for granular control over all Flutter Material components- Component-specific theming: Scaffold, AppBar, BottomNavigationBar, NavigationBar, NavigationRail, Drawer, FAB
- Button theming: ElevatedButton, OutlinedButton, TextButton, FilledButton, IconButton
- Surface theming: Cards, Dialogs, BottomSheet, Snackbar, PopupMenu
- Input theming: TextField decoration, Checkbox, Radio, Switch, Slider, ProgressIndicator
- Display theming: Tooltip, Divider, ListTile, TabBar, DataTable, Chip, Badge, SearchBar, SegmentedButton, ExpansionTile
- Typography: Full
TextThemecustomization withfontFamilyand individual text style overrides - Interaction states: splash, highlight, hover, focus, disabled colors
- Mode-specific overrides: Separate
...Lightand...Darkproperties for complete light/dark mode customization
Changed #
- Updated
README.mdwith advanced theming documentation and examples - Enhanced
example/example.dartto showcase new theme capabilities including typography configuration
Fixed #
- Lint issue in OTP widget: Added braces around if-statement return
- Removed unnecessary library declaration
- Removed duplicate import in test file
0.2.1 - 2026-01-23 #
0.1.0 - 2026-01-22 #
Added #
- Initial release of My Flutter Components package
- Pre-built widgets:
- Custom AppBar
- Themed AppButton
- AppText for text styling
- OTP input field
- SearchBar component
- Space utilities
- TextFields with validation
- General widget utilities
- Complete theme system:
- Color palette management
- Chip theme customization
- Responsive design support
- Utility functions:
- Form validators
- Text formatters
- Device utilities
- Application logging
- Helper functions
- Constants:
- API constants
- Image paths
- Size constants
- Text strings
- Documentation and examples
0.2.0 - 2026-01-22 #
Changed #
- Converted repository to a pure package by removing all app template files (
lib/main.dart,lib/app/**). - Updated README and Setup Guide to focus on package usage only.
- Renamed package from
my_flutter_componentstoswiss_army_component.
Added #
- CLI
sacwith commands:doctorto check Flutter environmentinstallto addswiss_army_componentto an app'spubspec.yamlexamplesto print usage snippets
- Pubspec updates: version bump to
0.2.0,executablesentry, and CLI dependencies.