swiss_army_component 0.5.2 copy "swiss_army_component: ^0.5.2" to clipboard
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 focusedBorder color was hardcoded to AppColors.primary, ignoring the theme's focusedBorder color or explicit focusedBorderColor property.
  • TextField Height: Fixed an issue where the height parameter passed to AppTextField (and derived widgets) was being ignored.
  • AppPhoneTextField Consistency: Added height and contentPadding parameters to AppPhoneTextField to ensure visual consistency with regular text fields. Default contentPadding now matches AppTextField.

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 CountryDropdown now automatically sources this corrected data for StateDropdown and CityDropdown.

0.5.0 - 2026-02-03 #

Added #

  • SocialButton Enhancements:
    • Added support for new providers: X (Twitter), LinkedIn, GitHub, Microsoft, and Discord.
    • Added style parameter supporting SocialButtonStyle.filled (default), SocialButtonStyle.outlined, and SocialButtonStyle.elevated.
    • Providers now support theme-aware branding (e.g., Apple/GitHub adapt to light/dark mode).

Fixed #

  • BigAppText Theme Inheritance: BigAppText now simply uses AppTextStyle.large which inherits from Theme.of(context).textTheme.bodyLarge, ensuring correct color inheritance.
  • Tests: Improved test robustness for widget_test.dart and otp_security_test.dart by disabling noisy debug logs.

0.4.3 - 2026-02-02 #

Fixed #

  • Theme Configuration: Fixed an issue where SACThemeConfig specific 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, and iconSpacing. Provider defaults are preserved when no overrides are specified.

0.4.0 - 2026-01-23 #

Added #

  • SocialButton: New widget for social authentication with built-in branding for Google, Apple, Facebook, and Email providers. Uses embedded SVGs for logos, so no asset configuration is required.

Dependencies #

  • Added flutter_svg for rendering SVG icons.

0.3.3 - 2026-01-23 #

Changed #

  • Button Elevation: Changed default elevation for AppElevatedButton and NormalElevatedButton from 2.0 to 0.0 for a flatter, more modern default look.

0.3.2 - 2026-01-23 #

Fixed #

  • AppText Font Family Inheritance: Removed hardcoded Poppins font default. AppText now properly inherits fontFamily from Theme.of(context). Users can still use Poppins by setting it in their theme or via the fontFamily property.

0.3.1 - 2026-01-23 #

Fixed #

  • AppText Theme Color Inheritance: Removed hardcoded black color default from AppText and all derived widgets, allowing proper color inheritance from theme.
  • Style Merging: AppText now correctly prioritizes explicit properties (like color, fontSize) over the provided textStyle.
  • Custom Font Support: Added support for non-Google fonts. Providing a fontFamily now uses a standard TextStyle, 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 SACThemeConfig with 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 TextTheme customization with fontFamily and individual text style overrides
    • Interaction states: splash, highlight, hover, focus, disabled colors
    • Mode-specific overrides: Separate ...Light and ...Dark properties for complete light/dark mode customization

Changed #

  • Updated README.md with advanced theming documentation and examples
  • Enhanced example/example.dart to 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 #

Added #

  • Comprehensive example/example.dart showcasing all components
  • MIT LICENSE file
  • .pubignore to exclude IDE/build files from published package

Changed #

  • Updated README with CLI installation instructions (dart pub global activate swiss_army_component)

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_components to swiss_army_component.

Added #

  • CLI sac with commands:
    • doctor to check Flutter environment
    • install to add swiss_army_component to an app's pubspec.yaml
    • examples to print usage snippets
  • Pubspec updates: version bump to 0.2.0, executables entry, and CLI dependencies.
1
likes
0
points
410
downloads

Publisher

verified publishermpcircle.org

Weekly Downloads

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.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

args, country_state_city, flutter, flutter_screenutil, flutter_svg, get, google_fonts, intl, intl_phone_field, pinput, yaml_edit

More

Packages that depend on swiss_army_component