The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
December 07, 2021
- Accessibility improvements for the error message elements (role="alert", aria-describedby)
June 14, 2019
- Linting fixes
June 5, 2019
- Upgraded to babel 7.
- Updated module dependencies.
- Travis uses node v8 & v10 to run builds.
March 21, 2019
- Support for
elementError
event which fires when an individual element becomes invalid
March 21, 2019
- Support for
hybridValidation
mode which binds bothkeyup
andblur
events
June 15, 2018
- DangerJS dependency.
- DangerJS travis config.
- snyk badge.
- Updated travis config.
- Renamed unit test CI task.
- Replaced object spread with
Object.assign
to fix node 6 CI build. - Updated npm package versions to latest.
- Gemnasium badge.
May 25, 2018
- v1 project release.
May 25, 2018
- Updated browser support link.
April 26, 2018
- Changed logic to only validate on an empty field if it is required.
April 12, 2018
- Package bump in order to clear out bad npm deployment.
April 12, 2018
- Use
f-dom
instead ofquerySelector
&querySelectorAll
.
- Fixed issue where one of the
querySelectorAll
calls had a chainedforEach
function which is not supported in some browsers.
March 26, 2018
- Trims the value property for conditionalRequired rule to invalidate a field if it only contains spaces
March 8, 2018
- Improved accessibility by allowing a user to validate the form on pressing enter.
February 23, 2018
- Comments added to each rule definition
- Fixed instances where the
email
,minlength
andmaxlength
fields would validate as true when they shouldn't do - Tests added for the above cases
February 23, 2018
- Have made it the default behaviour to set the
novalidate
attribute on a form whenf-validate
is initialised on it. This can be overidden if the developer wants to allow the default HTML5 validation to kick in by setting theenableHTML5Validation
option to true. - Custom error attributes changed so that they are in the format
data-val-
as they weren't consistent. - Updated some of the test descriptions on error messages to be a little clearer as to the expected functionality. Re-jigged the ordering as well, so that the default rules come first.
- Snapshots updated with the above changes.
February 19, 2018
- Fixed issue with
validateOn
marking form as valid whenblur
event fired due to validating child elements inside groups - Readme typo
- Constant
validationGroup
added that defines the data-attribute for group validation elements
- Pull request image updated
- Updated how validation groups get assigned. Now uses the data-attribute
data-val-group
rather than the classvalidation-group
as modules should use attributes for hook definitions. - Some of the tests updated so that they are a bit clearer in their definition. Stubbed date has changed to 2018 in the tests (as it was a bit confusing testing against a future date)
February 7, 2018
- Migrated 'conditionalRequired' rule from other project
February 6, 2018
- Allow user to specify location of error message per field
- Only validate fields on blur/keyup if they are not empty
- dateInFuture: Only validating fields when they have both been interacted with
- dateInFuture: Allowing current year/month to be valid
January 30, 2018
- Browserslist added
- Package update for
gulp-build-fozzie
- Updating the babel config
- Fixed test warning for js-dom on
submit
(as it doesn't handle submit events)
January 26, 2018
- Added "files" property to
package.json
so that only thedist
directory is published to npm.
January 26, 2018
- Unnecessary space from import
January 24, 2018
- Ability to validate on 'blur' or 'keyup'
- Migrated 'dateinfuture' rule from other project
- Explicitly restrict an implementation where you're able to both group messages and validate on blur/keyup
January 19, 2018
- Default error message to each rule
- Logic to display and hide default error messages
- Logic to display and hide custom error messages
- Ability to group messages together either at the top/bottom of form
- Moved classes into constants file
January 14, 2018
- Split rule definitions and associated unit tests into separate files.
- Updated some of the unit test descriptions.
- Unnecessary eslint disable line comments.
January 11, 2018
- Callback handlers for success and error events.
- Separate callback.js file added to manage callback addition and running.
December 20, 2017
- Added JS unit test utility module.
- Using JS unit test utility module in unit test files.
December 20, 2017
- Using
concurrently
to run npm tasks concurrently...!
- Main file pointed at dist directory.
- Fixed ESlint issues.
- Changed custom validation rule so that it throws an error rather than logs to the console.
- Tidied up Travis config.
- Removed placeholder readmes.
December 19, 2017
- Removed inputs with certain attributes from being validated.
- Prevented the last rule on a field from overwriting previous state.
- Binding isValid method to submit.
December 19, 2017
- Added base rules JSON and conditions/tests.
December 12, 2017
- Initial setup of component template.