flutter_helper_utils 1.5.4 flutter_helper_utils: ^1.5.4 copied to clipboard
The Flutter Helper Package offers various extensions and helper methods that can make development more efficient.
Flutter Helper Utils #
Flutter Helper Utils is a comprehensive package aimed to augment Dart and Flutter's core functionalities. With a rich set of extensions and helper methods, this package boosts productivity and simplifies coding in Flutter projects.
Getting Started #
To get started, add the package to your pubspec.yaml
:
dependencies:
flutter_helper_utils: 1.5.4
Table of Contents #
Extensions #
Our package provides a variety of extensions on Dart and Flutter's built-in types. Below are the categories of available extensions, sorted by their functionalities:
Core Data Types #
String Extensions #
isNumeric
- Checks if the string is numeric.isAlphabet
- Checks if the string consists only of alphabets.hasCapitalLetter
- Checks if the string contains at least one capital letter.isBool
- Checks if the string is a boolean value.removeWhiteSpaces
- Removes all white spaces from the string.textSize
- Returns the size of the text using TextPainter.wrapString
- Adds a new line to the string after a specified number of words.equalsIgnoreCase
- Compares two strings for equality, ignoring case.removeSurrounding
- Removes a specified delimiter from both ends of the string, if present.replaceAfter
- Replaces part of the string after the first occurrence of a given delimiter.- View All String Extensions
Number Extensions #
isSuccessHttpResCode
- Checks if the numeric HTTP status code represents a successful response.toHttpResStatus
- Converts the numeric HTTP status code to its corresponding HttpResStatus enum.tryToInt
- Safely converts a nullable number to an integer.tryToDouble
- Safely converts a nullable number to a double.percentage
- Calculates the percentage this number represents out of a total.isNegative & isPositive
- Checks if the number is negative or positive.isZeroOrNull
- Checks if the number is zero or null.asBool
- Evaluates the truthiness of a nullable number based on whether it's greater than 0.isZero
- Checks if the number is zero.numberOfDigits
- Returns the number of digits in the number.- View All Number Extensions
Boolean Extensions #
isTrue
- Checks if the Boolean value is true, considering null safety.isFalse
- Checks if the Boolean value is false or null.val
- Returns the Boolean value or false if it is null.binary
- Returns 1 if the Boolean is true and 0 if it is false or null.binaryText
- Returns '1' if the Boolean is true and '0' if it is false or null.
DateTime Extensions #
format & tryFormat
- format a DateTime object as a string using a specified format (e.g. "yyyy-MM-dd"), while tryFormat attempts to do the same but returns null if unsuccessful.tryToDateTime
- Safely attempts to convert a string to a DateTime object. Returns null if the conversion fails.toDateTime
- Converts a string to a DateTime object. Throw an exception if the conversion fails.dateFormat
- Returns a DateFormat object based on the string format provided.toDateWithFormat
- Converts a string to a DateTime object using a specific format.tryToDateWithFormat
- Safely attempts to convert a string to a DateTime object using a specific format. Returns null if the conversion fails.timestampToDate
- Converts a timestamp string to a DateTime object.toSmallMonthName & toFullMonthName
- Convert an integer representing a month to its abbreviated name.toSmallDayName & toFullDayName
- Convert an integer representing a day of the week to its abbreviated name.- View All DateTime Extensions
Duration Extensions #
delayed
- Utility to delay some code execution.fromNow
- Adds the Duration to the current DateTime and gives a future time.ago
- Subtracts the Duration from the current DateTime and gives a pastime.
UI & Design #
Color Extensions #
toHex
- Converts aColor
object to its hex string representation.toColor
- Converts a hex color string to aColor
object.isHexColor
- Checks if the given string is a valid hexadecimal color string.
Flutter Extensions #
ThemeExtensions #
themeData
- Quickly get the currentThemeData
from the nearestTheme
widget ancestor.txtTheme
- Effortlessly obtain theTextTheme
for your context.brightness
- Determine the brightness setting of the app theme.sysBrightness
- Determine the brightness setting of the system.isDark & isLight
- Convenient boolean to quickly check if the current theme is light or dark.
MediaQueryExtensions #
mq
- Quick Access to MediaQueryDatanullableMQ
- Nullable MediaQueryData AccessdeviceOrientation
- Device OrientationnavigationMode
- Navigation Modepadding and viewInsets
- Screen Padding and InsetsscreenDimensions
- Screen DimensionsadditionalFeatures
- Additional Features- View All Media Query Extensions
FocusScopeExtensions #
focusScope
- Getting the Nearest FocusScopeNode.unFocus
- Removing Focus.requestFocus
- Requesting Focus.requestFocusCall
- Requesting Focus (Using GestureTapCallback).hasFocus
- Checking if a Node Has Focus.hasPrimaryFocus
- Checking if a Node Has Primary Focus.
Navigator Extensions #
popPage
- Pop PagepopRoot
- Pop Rootnavigator
- Navigator StatecanPop
- Can PoppushPage
- Push PagepushReplacement
- Push ReplacementpushAndRemoveUntil
- Push And Remove UntilpushNamedAndRemoveUntil
- Push Named And Remove UntilpushNamed
- Push NamedpushReplacementNamed
- Push Replacement NamedpopUntil
- Pop UntildismissActivePopup
- Dismiss Active Popup- View All Navigator Extensions
Helper Methods #
ConvertObject: #
The ConvertObject
class aims to simplify this process, making it more reliable and efficient. For example
let's say we have Map<String, dynamic>
from API response, and want to get the map['colors']
as List<String>
the value will actually be dynamic and casting this value into a list will result in List
final strList = ConvertObject.toList<String>(map['colors']);
// or using the global method.
final strList = toList<String>(map['colors']);
Exceptions #
The ConvertObject
class throws a ParsingException
if there is an error while converting an object. This exception provides information about the type of the object and the method used for conversion.
Contributions #
Contributions to this package are welcome. If you have any suggestions, issues, or feature requests, please create a pull request on the repository.
License #
flutter_helper_utils
is available under the BSD 3-Clause License.