regex_ui 1.1.1
regex_ui: ^1.1.1 copied to clipboard
Live, animated rule checklist for Flutter text fields. Password and form validation with ready rules, strength bar, list or chip styles.
1.1.1 #
- Every public member is documented (
public_member_api_docsis on), so hovering any field or method in your IDE says what it does. - Length rules (
minLength,maxLength,lengthBetween,exactLength) count characters, so an emoji counts as one, not two. RegexUI.validatealso reports the starting state, so pre-filled text can enable a button.notContainsis faster on long text.
1.1.0 #
RegexTextField: field + rules + strength bar + show / hide button in one widget; makes its own controller and focus node when you pass none.- One-line fields:
RegexTextField.password(),.email(),.userName()with ready rules, keyboard type and autofill; ready rule listsRegexModel.passwordRules(),userNameRules(),emailRules(). - No regex needed: plain-word rules
lengthBetween,exactLength,lettersOnly,digitsOnly,lettersAndDigits(withallow:for extra characters, escaped for you),startsWith,notStartsWith,endsWith,contains, andcount:onuppercase,lowercase,digit,special. README "I want… / Write" table. RegexChargroups: pick characters from a list instead of writing them:RegexModel.allowOnly([...]),RegexModel.notAllowed([...]), andallowList:onlettersOnly,digitsOnly,lettersAndDigits.RegexLabels: one place for every text the package writes (rule titles,RegexCharnames, screen reader words, strength words, Show / Hide, field labels). Set your language once; pass only what you change. Ready languages:RegexLabels.en,tr,de,es,fr,it,pt,ja,RegexLabels.forLanguage(code), andcopyWithto change a few words.title:still changes a single rule.notContainschecks every word of the source (3+ letters) and ignores accents, so the name "Ali-Can Yılmaz" blocks "yilmaz123".sameAsreads "Passwords must match".RegexForm: aFormthat knows when all itsRegexTextFields are valid (onChanged,RegexForm.isValidOf(context),RegexFormController); a change in one field re-checks the others. CountsRegexTextFieldandRegexUI(with your ownTextField).optional: trueonRegexTextFieldandRegexUI: empty is valid (no "Required", the form can still be valid);RegexModel.validator(rules, optional:),RegexModel.allMet.RegexModel.iban(): real IBAN check (country length + mod-97 check digits), spaces and lowercase allowed, optionalcountry:.- Ready languages reviewed for each language's form wording (e.g. French "Pas d'espaces", German "Ziffer", Japanese 英大文字 / 半角英字); the show / hide button now says "Show password".
- Form support: an empty field shows "Required" (
RegexLabels.required), not the first rule;RegexModel.validator(rules)forTextFormField;RegexTextFielduses it, soForm.validate()checks the same rules. - New rules:
maxLength,sameAs(repeat password),notContains(e.g. no user name),noRepeating,phone,url. - Real password strength:
passwordStrength(value)→ 0–4;strengthMode: RegexUIStrength.passworddrives the bar with it, andstrengthLabelsshows Very weak … Strong next to it. - Empty input meets no rule, so nothing is ticked before typing (e.g.
^\w*$,maxLength). - New logo; README polish.
1.0.0 #
- New design: Material 3 colors from the theme, dark mode, animated check marks and colors.
- Ready rules:
RegexModel.minLength,uppercase,lowercase,digit,special,noSpaces,email(any language). - Custom rules with a
testfunction as well asRegExp. - Password strength bar (
showStrength) and chips style (RegexUIStyle.chips). focusNodeis optional;visibility: show on focus or always.- Accessibility: screen reader text per rule (
metLabel/unmetLabel). RegexModelis exported frompackage:regex_ui/regex_ui.dart.- Dart 3 (SDK
^3.8.0). - Fixed: build error on current Flutter (
bodyText1was removed). - Fixed: listeners were never removed from the controller and focus node.
0.0.1 #
- Initial release.
