- Put your changes here...
- Added better error handling to the JS.
- Updated dependencies.
- Fixed a periodic JS error.
- Fixed a bug that prevented
semantic-forms
from detecting when you inserted new forms into the page. - Updated dependencies.
- Fixed a bug that would cause errors when
reinitialize()
was called. - Fixed a bug that caused nested selects to lose their dropdown icon.
- Fixed a bug where required single checkboxes would not show an asterisk.
- Added a help text icon beside labels with a
title
attribute on their respective inputs, or on labels for checkboxes and radios. Enabled with adata-show-help-icon
attribute. - Updated various dependencies.
- Fixed a bug that caused some devDependencies to end up in the production build.
- Updated various dependencies.
- Breaking: Added JS module bundling to make it possible for you to import CJS, ESM, or a standalone version of the JavaScript in this library to your project. However you will need to change your imports to match the new file names. See README for details.
- Added show/hide toggle to password fields which can be disabled with a
data-no-reveal
attribute. - Added hover text for the clear field button and the show/hide password button.
- Added ability to customize clear field button hover text and show/hide password button hover text using data attributes as well.
- Added support for undo/redo keyboard commands when pressing the clear field.
- Added test suite.
- Fixed some accessibility issues.
- Updated various dependencies.
- Fixed a bug that caused menu items with buttons to appear as a list.
- Updated various dependencies.
- Fixed bug in which a form entry consisting of a single checkbox would be misaligned.
- Fixed bug that prevented some inputs from expanding to the width of its container.
- Fixed bug in which CSS reset for elements within a semantic forms form was overly aggressive, making it harder to style unrelated content within such a form.
- Updated various dependencies.
- Fixed a visual bug that occurred when single checkbox elements had extra elements included.
- Updated various dependencies.
- Added invalid help text support.
- Fixed a bug that caused float labels to break when certain browser extensions were enabled.
- Breaking: Overhauled entire codebase to drive it using mostly CSS grid instead of flexbox. This makes everything more flexible overall and fit more designs better. However the CSS and markup changes will likely cause breaking changes to previous integrations, so when upgrading make some time to visually test all your pages to alter any CSS overrides you had in place accordingly. You also might want to make some markup changes to make use of new available classes to tweak the fit of individual form fields on specific forms.
- Altered fields to fit available space better at various screen sizes.
- Added multiple utility classes that define how wide inputs will span in the responsive layout.
- Added support for input type=image.
- Added support for secondary labels.
- Added styling for invalid form fields.
- Added asterisk that appears on required inputs.
- Improved accessibility considerably. Now has 100% Lighthouse score.
- Added feature to progressively nest fieldsets with progressively darker/lighter background colors.
- Fixed bug causing clear button appearing on disabled inputs.
- Fixed bug causing clear button to overlap with scrollbars on textareas.
- Fixed bug causing nested fieldset to have incorrect padding and margins.
- Fixed various other small bugs.
- Replaced the
less
CSS preprocessor withsass
. - Updated various dependencies.
- Fixed a bug that could cause checkboxes and radio buttons to not submit their values to the server properly.
- Updated various dependencies.
- Added a reinitialization method to re-scan existing forms. Called with
window.semanticForms.reinitialize(formName)
. - Altered logic to enhance forms so that it now ignores inputs that have already been enhanced.
- Updated dependencies.
- Added dark mode support.
- Deprecated "reset" versions and "no images" versions.
- Added mutation observer that monitors changes to the DOM and will enhance any additional
semanticForms
forms you insert, but the monitoring may not be perfect. If you want to re-scan for new forms to enhance manually, you may still need to callwindow.semanticForms()
. - Fixed a bug that caused DOM events to be duplicated when DOM elements are added dynamically after the first page load.
- Updated dependencies.
- Fixed main export on case-sensitive file systems.
- Updated dependencies.
- Fixed Chrome issue for forms with no placeholder.
- Fixed missing files in npm package.
- Added "reset" versions of the CSS files that set
all: unset;
before applying any semantic forms styles to help avoid conflicts with other CSS. There is a performance degradation to using this technique, so you should only use this if absolutely necessary.
- Reduced size of select box text.
- Fixed issue that prevented id selectors from allowing dots in the string.
- Fixed issue that prevented the clear field from dispatching an input event.
- Added support for a single checkbox rather than a group of checkboxes.
- Fixed alignment issue.
- Removed default two column layout. Now defaults to as many columns as the container is wide.
- Added
x2
class you can put ondd
elements to double the width of a form. Does not apply on small screens.
- Added a function to the JS files's global scope called
semanticForms
that you can call to initialize new forms that have been added to the DOM since the initial initialization. - Updated dependencies.
- Fixed a situation that could lead to a JS error.
- Fix minor alignment issue.
- Added all input types.
- Fixed clear field.
- Fixed markup mistakes in the examples.
- Fixed CSS to support
<menu>
elements correctly. - Refactored the JavaScript to modernize it.
- Updated dependencies.
- Replaced
<div class="buttonGroup">
with a<menu>
element. You will need to refactor your HTML accordingly. - Fixed alignment issue caused by browser engines changing their alignment calculations since the first release.
- Various other refactoring.
- Pinned deps.
- Updated dependencies.
- Restricted JS events to target elements within
semanticForms
class form elements. - Switched font sizes to % in case someone finds 16px too small and changes the default font size in the browser, these form fields will no longer stay fixed.
- Published to npm.
- Started CHANGELOG.
- Updated dependencies.